Build Information
Successful build of KSPlayer, reference main (8fe5fe
), with Swift 6.1 for macOS (SPM) on 5 Aug 2025 07:28:12 UTC.
Swift 6 data race errors: 135
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures
Build Log
225 | @property (readonly, strong) NSLayoutXAxisAnchor *trailingAnchor API_AVAILABLE(macos(10.11));
| `- note: property declared here
226 | @property (readonly, strong) NSLayoutXAxisAnchor *leftAnchor API_AVAILABLE(macos(10.11));
227 | @property (readonly, strong) NSLayoutXAxisAnchor *rightAnchor API_AVAILABLE(macos(10.11));
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:113:75: warning: main actor-isolated property 'trailingAnchor' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
111 | view.leadingAnchor.constraint(equalTo: superview.leadingAnchor),
112 | view.bottomAnchor.constraint(equalTo: superview.bottomAnchor),
113 | view.trailingAnchor.constraint(equalTo: superview.trailingAnchor),
| `- warning: main actor-isolated property 'trailingAnchor' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
114 | ])
115 | }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSLayoutConstraint.h:225:51: note: property declared here
223 | */
224 | @property (readonly, strong) NSLayoutXAxisAnchor *leadingAnchor API_AVAILABLE(macos(10.11));
225 | @property (readonly, strong) NSLayoutXAxisAnchor *trailingAnchor API_AVAILABLE(macos(10.11));
| `- note: property declared here
226 | @property (readonly, strong) NSLayoutXAxisAnchor *leftAnchor API_AVAILABLE(macos(10.11));
227 | @property (readonly, strong) NSLayoutXAxisAnchor *rightAnchor API_AVAILABLE(macos(10.11));
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:116:32: warning: call to main actor-isolated instance method 'removeFromSuperview()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
114 | ])
115 | }
116 | oldValue.view?.removeFromSuperview()
| `- warning: call to main actor-isolated instance method 'removeFromSuperview()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
117 | }
118 | player.playbackRate = oldValue.playbackRate
AppKit.NSView.removeFromSuperview:2:22: note: calls to instance method 'removeFromSuperview()' from outside of its actor context are implicitly asynchronous
1 | class NSView {
2 | @MainActor open func removeFromSuperview()}
| |- note: calls to instance method 'removeFromSuperview()' from outside of its actor context are implicitly asynchronous
| `- note: main actor isolation inferred from inheritance from class 'NSResponder'
3 |
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:176:19: warning: capture of 'self' with non-sendable type 'KSPlayerLayer?' in a '@Sendable' closure
65 | }
66 |
67 | open class KSPlayerLayer: NSObject {
| `- note: class 'KSPlayerLayer' does not conform to the 'Sendable' protocol
68 | public weak var delegate: KSPlayerLayerDelegate?
69 | @Published
:
174 |
175 | private lazy var timer: Timer = .scheduledTimer(withTimeInterval: 0.1, repeats: true) { [weak self] _ in
176 | guard let self, self.player.isReadyToPlay else {
| `- warning: capture of 'self' with non-sendable type 'KSPlayerLayer?' in a '@Sendable' closure
177 | return
178 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:179:24: warning: call to main actor-isolated instance method 'player(layer:currentTime:totalTime:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
60 | public protocol KSPlayerLayerDelegate: AnyObject {
61 | func player(layer: KSPlayerLayer, state: KSPlayerState)
62 | func player(layer: KSPlayerLayer, currentTime: TimeInterval, totalTime: TimeInterval)
| `- note: calls to instance method 'player(layer:currentTime:totalTime:)' from outside of its actor context are implicitly asynchronous
63 | func player(layer: KSPlayerLayer, finish error: Error?)
64 | func player(layer: KSPlayerLayer, bufferedCount: Int, consumeTime: TimeInterval)
:
177 | return
178 | }
179 | self.delegate?.player(layer: self, currentTime: self.player.currentPlaybackTime, totalTime: self.player.duration)
| `- warning: call to main actor-isolated instance method 'player(layer:currentTime:totalTime:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
180 | if self.player.playbackState == .playing, self.player.loadState == .playable, self.state == .buffering {
181 | // 一个兜底保护,正常不能走到这里
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:488:5: warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
486 |
487 | extension KSPlayerLayer {
488 | open func prepareToPlay() {
| `- warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
489 | state = .preparing
490 | startTime = CACurrentMediaTime()
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:169:36: warning: call to main actor-isolated instance method 'player(layer:state:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
59 | @MainActor
60 | public protocol KSPlayerLayerDelegate: AnyObject {
61 | func player(layer: KSPlayerLayer, state: KSPlayerState)
| `- note: calls to instance method 'player(layer:state:)' from outside of its actor context are implicitly asynchronous
62 | func player(layer: KSPlayerLayer, currentTime: TimeInterval, totalTime: TimeInterval)
63 | func player(layer: KSPlayerLayer, finish error: Error?)
:
167 | guard let self else { return }
168 | KSLog("playerStateDidChange - \(newValue)")
169 | self.delegate?.player(layer: self, state: newValue)
| `- warning: call to main actor-isolated instance method 'player(layer:state:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
170 | }
171 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:281:34: warning: main actor-isolated property 'isIdleTimerDisabled' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
279 | open func play() {
280 | runOnMainThread {
281 | UIApplication.shared.isIdleTimerDisabled = true
| `- warning: main actor-isolated property 'isIdleTimerDisabled' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
282 | }
283 | isAutoPlay = true
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:315:9: note: mutation of this property is only permitted within the actor
313 | }
314 |
315 | var isIdleTimerDisabled: Bool {
| `- note: mutation of this property is only permitted within the actor
316 | get {
317 | UIApplication.isIdleTimerDisabled
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:281:27: warning: main actor-isolated class property 'shared' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
279 | open func play() {
280 | runOnMainThread {
281 | UIApplication.shared.isIdleTimerDisabled = true
| `- warning: main actor-isolated class property 'shared' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
282 | }
283 | isAutoPlay = true
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSApplication.h:193:61: note: mutation of this class property is only permitted within the actor
191 | APPKIT_EXTERN __kindof NSApplication * _Null_unspecified NSApp NS_SWIFT_UI_ACTOR;
192 |
193 | @property (class, readonly, strong) __kindof NSApplication *sharedApplication;
| `- note: mutation of this class property is only permitted within the actor
194 | @property (nullable, weak) id<NSApplicationDelegate> delegate;
195 |
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:314:34: warning: main actor-isolated property 'isIdleTimerDisabled' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
312 | MPNowPlayingInfoCenter.default().playbackState = .paused
313 | runOnMainThread {
314 | UIApplication.shared.isIdleTimerDisabled = false
| `- warning: main actor-isolated property 'isIdleTimerDisabled' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
315 | }
316 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:315:9: note: mutation of this property is only permitted within the actor
313 | }
314 |
315 | var isIdleTimerDisabled: Bool {
| `- note: mutation of this property is only permitted within the actor
316 | get {
317 | UIApplication.isIdleTimerDisabled
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:314:27: warning: main actor-isolated class property 'shared' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
312 | MPNowPlayingInfoCenter.default().playbackState = .paused
313 | runOnMainThread {
314 | UIApplication.shared.isIdleTimerDisabled = false
| `- warning: main actor-isolated class property 'shared' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
315 | }
316 | }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSApplication.h:193:61: note: mutation of this class property is only permitted within the actor
191 | APPKIT_EXTERN __kindof NSApplication * _Null_unspecified NSApp NS_SWIFT_UI_ACTOR;
192 |
193 | @property (class, readonly, strong) __kindof NSApplication *sharedApplication;
| `- note: mutation of this class property is only permitted within the actor
194 | @property (nullable, weak) id<NSApplicationDelegate> delegate;
195 |
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:328:34: warning: main actor-isolated property 'isIdleTimerDisabled' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
326 | MPNowPlayingInfoCenter.default().nowPlayingInfo = nil
327 | runOnMainThread {
328 | UIApplication.shared.isIdleTimerDisabled = false
| `- warning: main actor-isolated property 'isIdleTimerDisabled' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
329 | }
330 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:315:9: note: mutation of this property is only permitted within the actor
313 | }
314 |
315 | var isIdleTimerDisabled: Bool {
| `- note: mutation of this property is only permitted within the actor
316 | get {
317 | UIApplication.isIdleTimerDisabled
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:328:27: warning: main actor-isolated class property 'shared' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
326 | MPNowPlayingInfoCenter.default().nowPlayingInfo = nil
327 | runOnMainThread {
328 | UIApplication.shared.isIdleTimerDisabled = false
| `- warning: main actor-isolated class property 'shared' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
329 | }
330 | }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSApplication.h:193:61: note: mutation of this class property is only permitted within the actor
191 | APPKIT_EXTERN __kindof NSApplication * _Null_unspecified NSApp NS_SWIFT_UI_ACTOR;
192 |
193 | @property (class, readonly, strong) __kindof NSApplication *sharedApplication;
| `- note: mutation of this class property is only permitted within the actor
194 | @property (nullable, weak) id<NSApplicationDelegate> delegate;
195 |
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:84:35: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
82 | // 一定要async才不会pip之后就暂停播放
83 | DispatchQueue.main.async { [weak self] in
84 | guard let 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
85 | pipController.start(view: self)
86 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:85:25: warning: sending 'pipController' risks causing data races; this is an error in the Swift 6 language mode
83 | DispatchQueue.main.async { [weak self] in
84 | guard let self else { return }
85 | pipController.start(view: self)
| |- warning: sending 'pipController' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'pipController' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
86 | }
87 | } else {
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:169:36: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
167 | guard let self else { return }
168 | KSLog("playerStateDidChange - \(newValue)")
169 | self.delegate?.player(layer: self, state: newValue)
| |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
| `- note: sending task-isolated 'self' to main actor-isolated instance method 'player(layer:state:)' risks causing data races between main actor-isolated and task-isolated uses
170 | }
171 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:169:36: warning: sending 'newValue' risks causing data races; this is an error in the Swift 6 language mode
167 | guard let self else { return }
168 | KSLog("playerStateDidChange - \(newValue)")
169 | self.delegate?.player(layer: self, state: newValue)
| |- warning: sending 'newValue' risks causing data races; this is an error in the Swift 6 language mode
| `- note: sending task-isolated 'newValue' to main actor-isolated instance method 'player(layer:state:)' risks causing data races between main actor-isolated and task-isolated uses
170 | }
171 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:169:36: warning: sending value of non-Sendable type 'any KSPlayerLayerDelegate' risks causing data races; this is an error in the Swift 6 language mode
167 | guard let self else { return }
168 | KSLog("playerStateDidChange - \(newValue)")
169 | self.delegate?.player(layer: self, state: newValue)
| |- warning: sending value of non-Sendable type 'any KSPlayerLayerDelegate' risks causing data races; this is an error in the Swift 6 language mode
| `- note: sending task-isolated value of non-Sendable type 'any KSPlayerLayerDelegate' to main actor-isolated instance method 'player(layer:state:)' risks causing races in between task-isolated and main actor-isolated uses
170 | }
171 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:179:24: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
177 | return
178 | }
179 | self.delegate?.player(layer: self, currentTime: self.player.currentPlaybackTime, totalTime: self.player.duration)
| |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
| `- note: sending 'self' to main actor-isolated instance method 'player(layer:currentTime:totalTime:)' risks causing data races between main actor-isolated and local nonisolated uses
180 | if self.player.playbackState == .playing, self.player.loadState == .playable, self.state == .buffering {
| `- note: access can happen concurrently
181 | // 一个兜底保护,正常不能走到这里
182 | self.state = .bufferFinished
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:179:24: warning: sending value of non-Sendable type 'any KSPlayerLayerDelegate' risks causing data races; this is an error in the Swift 6 language mode
177 | return
178 | }
179 | self.delegate?.player(layer: self, currentTime: self.player.currentPlaybackTime, totalTime: self.player.duration)
| |- warning: sending value of non-Sendable type 'any KSPlayerLayerDelegate' risks causing data races; this is an error in the Swift 6 language mode
| `- note: sending value of non-Sendable type 'any KSPlayerLayerDelegate' to main actor-isolated instance method 'player(layer:currentTime:totalTime:)' risks causing data races between main actor-isolated and local nonisolated uses
180 | if self.player.playbackState == .playing, self.player.loadState == .playable, self.state == .buffering {
| `- note: access can happen concurrently
181 | // 一个兜底保护,正常不能走到这里
182 | self.state = .bufferFinished
[56/61] Compiling KSPlayer MediaPlayerProtocol.swift
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:128:21: warning: main actor-isolated property 'delegate' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
126 | }
127 |
128 | public weak var delegate: MediaPlayerDelegate?
| `- warning: main actor-isolated property 'delegate' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
129 | public private(set) var duration: TimeInterval = 0
130 | public private(set) var fileSize: Double = 0
:
360 | }
361 |
362 | extension KSAVPlayer: MediaPlayerProtocol {
| `- note: add '@preconcurrency' to the 'MediaPlayerProtocol' conformance to defer isolation checking to run time
363 | public var subtitleDataSouce: SubtitleDataSouce? { nil }
364 | public var isPlaying: Bool { player.rate > 0 ? true : playbackState == .playing }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/MediaPlayerProtocol.swift:68:9: note: requirement 'delegate' declared here
66 |
67 | public protocol MediaPlayerProtocol: MediaPlayback {
68 | var delegate: MediaPlayerDelegate? { get set }
| `- note: requirement 'delegate' declared here
69 | var view: UIView? { get }
70 | var playableTime: TimeInterval { get }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:365:16: warning: main actor-isolated property 'view' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
363 | public var subtitleDataSouce: SubtitleDataSouce? { nil }
364 | public var isPlaying: Bool { player.rate > 0 ? true : playbackState == .playing }
365 | public var view: UIView? { playerView }
| `- warning: main actor-isolated property 'view' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
366 | public var currentPlaybackTime: TimeInterval {
367 | get {
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/MediaPlayerProtocol.swift:69:9: note: requirement 'view' declared here
67 | public protocol MediaPlayerProtocol: MediaPlayback {
68 | var delegate: MediaPlayerDelegate? { get set }
69 | var view: UIView? { get }
| `- note: requirement 'view' declared here
70 | var playableTime: TimeInterval { get }
71 | var isReadyToPlay: Bool { get }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:131:29: warning: main actor-isolated property 'playableTime' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
129 | public private(set) var duration: TimeInterval = 0
130 | public private(set) var fileSize: Double = 0
131 | public private(set) var playableTime: TimeInterval = 0
| `- warning: main actor-isolated property 'playableTime' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
132 | public let chapters: [Chapter] = []
133 | public var playbackRate: Float = 1 {
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/MediaPlayerProtocol.swift:70:9: note: requirement 'playableTime' declared here
68 | var delegate: MediaPlayerDelegate? { get set }
69 | var view: UIView? { get }
70 | var playableTime: TimeInterval { get }
| `- note: requirement 'playableTime' declared here
71 | var isReadyToPlay: Bool { get }
72 | var playbackState: MediaPlaybackState { get }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:171:29: warning: main actor-isolated property 'isReadyToPlay' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
169 | }
170 |
171 | public private(set) var isReadyToPlay = false {
| `- warning: main actor-isolated property 'isReadyToPlay' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
172 | didSet {
173 | if isReadyToPlay != oldValue {
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/MediaPlayerProtocol.swift:71:9: note: requirement 'isReadyToPlay' declared here
69 | var view: UIView? { get }
70 | var playableTime: TimeInterval { get }
71 | var isReadyToPlay: Bool { get }
| `- note: requirement 'isReadyToPlay' declared here
72 | var playbackState: MediaPlaybackState { get }
73 | var loadState: MediaLoadState { get }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:160:29: warning: main actor-isolated property 'playbackState' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
158 | }
159 |
160 | public private(set) var playbackState = MediaPlaybackState.idle {
| `- warning: main actor-isolated property 'playbackState' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
161 | didSet {
162 | if playbackState != oldValue {
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/MediaPlayerProtocol.swift:72:9: note: requirement 'playbackState' declared here
70 | var playableTime: TimeInterval { get }
71 | var isReadyToPlay: Bool { get }
72 | var playbackState: MediaPlaybackState { get }
| `- note: requirement 'playbackState' declared here
73 | var loadState: MediaLoadState { get }
74 | var isPlaying: Bool { get }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:149:29: warning: main actor-isolated property 'loadState' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
147 | }
148 |
149 | public private(set) var loadState = MediaLoadState.idle {
| `- warning: main actor-isolated property 'loadState' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
150 | didSet {
151 | if loadState != oldValue {
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/MediaPlayerProtocol.swift:73:9: note: requirement 'loadState' declared here
71 | var isReadyToPlay: Bool { get }
72 | var playbackState: MediaPlaybackState { get }
73 | var loadState: MediaLoadState { get }
| `- note: requirement 'loadState' declared here
74 | var isPlaying: Bool { get }
75 | var seekable: Bool { get }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:364:16: warning: main actor-isolated property 'isPlaying' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
362 | extension KSAVPlayer: MediaPlayerProtocol {
363 | public var subtitleDataSouce: SubtitleDataSouce? { nil }
364 | public var isPlaying: Bool { player.rate > 0 ? true : playbackState == .playing }
| `- warning: main actor-isolated property 'isPlaying' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
365 | public var view: UIView? { playerView }
366 | public var currentPlaybackTime: TimeInterval {
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/MediaPlayerProtocol.swift:74:9: note: requirement 'isPlaying' declared here
72 | var playbackState: MediaPlaybackState { get }
73 | var loadState: MediaLoadState { get }
74 | var isPlaying: Bool { get }
| `- note: requirement 'isPlaying' declared here
75 | var seekable: Bool { get }
76 | // var numberOfBytesTransferred: Int64 { get }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:472:16: warning: main actor-isolated property 'seekable' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
470 | }
471 |
472 | public var seekable: Bool {
| `- warning: main actor-isolated property 'seekable' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
473 | !(player.currentItem?.seekableTimeRanges.isEmpty ?? true)
474 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/MediaPlayerProtocol.swift:75:9: note: requirement 'seekable' declared here
73 | var loadState: MediaLoadState { get }
74 | var isPlaying: Bool { get }
75 | var seekable: Bool { get }
| `- note: requirement 'seekable' declared here
76 | // var numberOfBytesTransferred: Int64 { get }
77 | var isMuted: Bool { get set }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:476:16: warning: main actor-isolated property 'isMuted' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
474 | }
475 |
476 | public var isMuted: Bool {
| `- warning: main actor-isolated property 'isMuted' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
477 | get {
478 | player.isMuted
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/MediaPlayerProtocol.swift:77:9: note: requirement 'isMuted' declared here
75 | var seekable: Bool { get }
76 | // var numberOfBytesTransferred: Int64 { get }
77 | var isMuted: Bool { get set }
| `- note: requirement 'isMuted' declared here
78 | var allowsExternalPlayback: Bool { get set }
79 | var usesExternalPlaybackWhileExternalScreenIsActive: Bool { get set }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:187:16: warning: main actor-isolated property 'allowsExternalPlayback' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
185 | public let isExternalPlaybackActive = false
186 | #else
187 | public var allowsExternalPlayback: Bool {
| `- warning: main actor-isolated property 'allowsExternalPlayback' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
188 | get {
189 | player.allowsExternalPlayback
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/MediaPlayerProtocol.swift:78:9: note: requirement 'allowsExternalPlayback' declared here
76 | // var numberOfBytesTransferred: Int64 { get }
77 | var isMuted: Bool { get set }
78 | var allowsExternalPlayback: Bool { get set }
| `- note: requirement 'allowsExternalPlayback' declared here
79 | var usesExternalPlaybackWhileExternalScreenIsActive: Bool { get set }
80 | var isExternalPlaybackActive: Bool { get }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:197:16: warning: main actor-isolated property 'usesExternalPlaybackWhileExternalScreenIsActive' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
195 |
196 | #if os(macOS)
197 | public var usesExternalPlaybackWhileExternalScreenIsActive = false
| `- warning: main actor-isolated property 'usesExternalPlaybackWhileExternalScreenIsActive' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
198 | #else
199 | public var usesExternalPlaybackWhileExternalScreenIsActive: Bool {
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/MediaPlayerProtocol.swift:79:9: note: requirement 'usesExternalPlaybackWhileExternalScreenIsActive' declared here
77 | var isMuted: Bool { get set }
78 | var allowsExternalPlayback: Bool { get set }
79 | var usesExternalPlaybackWhileExternalScreenIsActive: Bool { get set }
| `- note: requirement 'usesExternalPlaybackWhileExternalScreenIsActive' declared here
80 | var isExternalPlaybackActive: Bool { get }
81 | var playbackRate: Float { get set }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:209:16: warning: main actor-isolated property 'isExternalPlaybackActive' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
207 | #endif
208 |
209 | public var isExternalPlaybackActive: Bool {
| `- warning: main actor-isolated property 'isExternalPlaybackActive' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
210 | player.isExternalPlaybackActive
211 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/MediaPlayerProtocol.swift:80:9: note: requirement 'isExternalPlaybackActive' declared here
78 | var allowsExternalPlayback: Bool { get set }
79 | var usesExternalPlaybackWhileExternalScreenIsActive: Bool { get set }
80 | var isExternalPlaybackActive: Bool { get }
| `- note: requirement 'isExternalPlaybackActive' declared here
81 | var playbackRate: Float { get set }
82 | var playbackVolume: Float { get set }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:133:16: warning: main actor-isolated property 'playbackRate' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
131 | public private(set) var playableTime: TimeInterval = 0
132 | public let chapters: [Chapter] = []
133 | public var playbackRate: Float = 1 {
| `- warning: main actor-isolated property 'playbackRate' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
134 | didSet {
135 | if playbackState == .playing {
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/MediaPlayerProtocol.swift:81:9: note: requirement 'playbackRate' declared here
79 | var usesExternalPlaybackWhileExternalScreenIsActive: Bool { get set }
80 | var isExternalPlaybackActive: Bool { get }
81 | var playbackRate: Float { get set }
| `- note: requirement 'playbackRate' declared here
82 | var playbackVolume: Float { get set }
83 | var contentMode: UIViewContentMode { get set }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:141:16: warning: main actor-isolated property 'playbackVolume' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
139 | }
140 |
141 | public var playbackVolume: Float = 1.0 {
| `- warning: main actor-isolated property 'playbackVolume' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
142 | didSet {
143 | if player.volume != playbackVolume {
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/MediaPlayerProtocol.swift:82:9: note: requirement 'playbackVolume' declared here
80 | var isExternalPlaybackActive: Bool { get }
81 | var playbackRate: Float { get set }
82 | var playbackVolume: Float { get set }
| `- note: requirement 'playbackVolume' declared here
83 | var contentMode: UIViewContentMode { get set }
84 | var subtitleDataSouce: SubtitleDataSouce? { get }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:455:16: warning: main actor-isolated property 'contentMode' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
453 | }
454 |
455 | public var contentMode: UIViewContentMode {
| `- warning: main actor-isolated property 'contentMode' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
456 | get {
457 | playerView.contentMode
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/MediaPlayerProtocol.swift:83:9: note: requirement 'contentMode' declared here
81 | var playbackRate: Float { get set }
82 | var playbackVolume: Float { get set }
83 | var contentMode: UIViewContentMode { get set }
| `- note: requirement 'contentMode' declared here
84 | var subtitleDataSouce: SubtitleDataSouce? { get }
85 | @available(macOS 12.0, iOS 15.0, tvOS 15.0, *)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:363:16: warning: main actor-isolated property 'subtitleDataSouce' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
361 |
362 | extension KSAVPlayer: MediaPlayerProtocol {
363 | public var subtitleDataSouce: SubtitleDataSouce? { nil }
| `- warning: main actor-isolated property 'subtitleDataSouce' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
364 | public var isPlaying: Bool { player.rate > 0 ? true : playbackState == .playing }
365 | public var view: UIView? { playerView }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/MediaPlayerProtocol.swift:84:9: note: requirement 'subtitleDataSouce' declared here
82 | var playbackVolume: Float { get set }
83 | var contentMode: UIViewContentMode { get set }
84 | var subtitleDataSouce: SubtitleDataSouce? { get }
| `- note: requirement 'subtitleDataSouce' declared here
85 | @available(macOS 12.0, iOS 15.0, tvOS 15.0, *)
86 | var playbackCoordinator: AVPlaybackCoordinator { get }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:118:16: warning: main actor-isolated property 'playbackCoordinator' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
116 | public let dynamicInfo: DynamicInfo? = nil
117 | @available(macOS 12.0, iOS 15.0, tvOS 15.0, *)
118 | public var playbackCoordinator: AVPlaybackCoordinator {
| `- warning: main actor-isolated property 'playbackCoordinator' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
119 | playerView.player.playbackCoordinator
120 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/MediaPlayerProtocol.swift:86:9: note: requirement 'playbackCoordinator' declared here
84 | var subtitleDataSouce: SubtitleDataSouce? { get }
85 | @available(macOS 12.0, iOS 15.0, tvOS 15.0, *)
86 | var playbackCoordinator: AVPlaybackCoordinator { get }
| `- note: requirement 'playbackCoordinator' declared here
87 | @available(tvOS 14.0, *)
88 | var pipController: KSPictureInPictureController? { get }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:111:16: warning: main actor-isolated property 'pipController' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
109 |
110 | @available(tvOS 14.0, *)
111 | public var pipController: KSPictureInPictureController? {
| `- warning: main actor-isolated property 'pipController' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
112 | _pipController as? KSPictureInPictureController
113 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/MediaPlayerProtocol.swift:88:9: note: requirement 'pipController' declared here
86 | var playbackCoordinator: AVPlaybackCoordinator { get }
87 | @available(tvOS 14.0, *)
88 | var pipController: KSPictureInPictureController? { get }
| `- note: requirement 'pipController' declared here
89 | var dynamicInfo: DynamicInfo? { get }
90 | init(url: URL, options: KSOptions)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:116:16: warning: main actor-isolated property 'dynamicInfo' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
114 |
115 | public var naturalSize: CGSize = .zero
116 | public let dynamicInfo: DynamicInfo? = nil
| `- warning: main actor-isolated property 'dynamicInfo' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
117 | @available(macOS 12.0, iOS 15.0, tvOS 15.0, *)
118 | public var playbackCoordinator: AVPlaybackCoordinator {
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/MediaPlayerProtocol.swift:89:9: note: requirement 'dynamicInfo' declared here
87 | @available(tvOS 14.0, *)
88 | var pipController: KSPictureInPictureController? { get }
89 | var dynamicInfo: DynamicInfo? { get }
| `- note: requirement 'dynamicInfo' declared here
90 | init(url: URL, options: KSOptions)
91 | func replace(url: URL, options: KSOptions)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:214:21: warning: main actor-isolated initializer 'init(url:options:)' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
212 | #endif
213 |
214 | public required init(url: URL, options: KSOptions) {
| |- warning: main actor-isolated initializer 'init(url:options:)' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'init(url:options:)' to make this initializer not isolated to the actor
215 | KSOptions.setAudioSession()
216 | urlAsset = AVURLAsset(url: url, options: options.avOptions)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/MediaPlayerProtocol.swift:90:5: note: mark the protocol requirement 'init(url:options:)' 'async' to allow actor-isolated conformances
88 | var pipController: KSPictureInPictureController? { get }
89 | var dynamicInfo: DynamicInfo? { get }
90 | init(url: URL, options: KSOptions)
| `- note: mark the protocol requirement 'init(url:options:)' 'async' to allow actor-isolated conformances
91 | func replace(url: URL, options: KSOptions)
92 | func play()
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:448:17: warning: main actor-isolated instance method 'replace(url:options:)' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
446 | }
447 |
448 | public func replace(url: URL, options: KSOptions) {
| |- warning: main actor-isolated instance method 'replace(url:options:)' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'replace(url:options:)' to make this instance method not isolated to the actor
449 | KSLog("replaceUrl \(self)")
450 | shutdown()
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/MediaPlayerProtocol.swift:91:10: note: mark the protocol requirement 'replace(url:options:)' 'async' to allow actor-isolated conformances
89 | var dynamicInfo: DynamicInfo? { get }
90 | init(url: URL, options: KSOptions)
91 | func replace(url: URL, options: KSOptions)
| `- note: mark the protocol requirement 'replace(url:options:)' 'async' to allow actor-isolated conformances
92 | func play()
93 | func pause()
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:429:17: warning: main actor-isolated instance method 'play()' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
427 | }
428 |
429 | public func play() {
| |- warning: main actor-isolated instance method 'play()' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'play()' to make this instance method not isolated to the actor
430 | KSLog("play \(self)")
431 | playbackState = .playing
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/MediaPlayerProtocol.swift:92:10: note: mark the protocol requirement 'play()' 'async' to allow actor-isolated conformances
90 | init(url: URL, options: KSOptions)
91 | func replace(url: URL, options: KSOptions)
92 | func play()
| `- note: mark the protocol requirement 'play()' 'async' to allow actor-isolated conformances
93 | func pause()
94 | func enterBackground()
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:434:17: warning: main actor-isolated instance method 'pause()' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
432 | }
433 |
434 | public func pause() {
| |- warning: main actor-isolated instance method 'pause()' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'pause()' to make this instance method not isolated to the actor
435 | KSLog("pause \(self)")
436 | playbackState = .paused
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/MediaPlayerProtocol.swift:93:10: note: mark the protocol requirement 'pause()' 'async' to allow actor-isolated conformances
91 | func replace(url: URL, options: KSOptions)
92 | func play()
93 | func pause()
| `- note: mark the protocol requirement 'pause()' 'async' to allow actor-isolated conformances
94 | func enterBackground()
95 | func enterForeground()
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:464:17: warning: main actor-isolated instance method 'enterBackground()' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
462 | }
463 |
464 | public func enterBackground() {
| |- warning: main actor-isolated instance method 'enterBackground()' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'enterBackground()' to make this instance method not isolated to the actor
465 | playerView.playerLayer.player = nil
466 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/MediaPlayerProtocol.swift:94:10: note: mark the protocol requirement 'enterBackground()' 'async' to allow actor-isolated conformances
92 | func play()
93 | func pause()
94 | func enterBackground()
| `- note: mark the protocol requirement 'enterBackground()' 'async' to allow actor-isolated conformances
95 | func enterForeground()
96 | func thumbnailImageAtCurrentTime() async -> CGImage?
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:468:17: warning: main actor-isolated instance method 'enterForeground()' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
466 | }
467 |
468 | public func enterForeground() {
| |- warning: main actor-isolated instance method 'enterForeground()' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'enterForeground()' to make this instance method not isolated to the actor
469 | playerView.playerLayer.player = playerView.player
470 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/MediaPlayerProtocol.swift:95:10: note: mark the protocol requirement 'enterForeground()' 'async' to allow actor-isolated conformances
93 | func pause()
94 | func enterBackground()
95 | func enterForeground()
| `- note: mark the protocol requirement 'enterForeground()' 'async' to allow actor-isolated conformances
96 | func thumbnailImageAtCurrentTime() async -> CGImage?
97 | func tracks(mediaType: AVFoundation.AVMediaType) -> [MediaPlayerTrack]
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:485:17: warning: main actor-isolated instance method 'tracks(mediaType:)' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
483 | }
484 |
485 | public func tracks(mediaType: AVFoundation.AVMediaType) -> [MediaPlayerTrack] {
| |- warning: main actor-isolated instance method 'tracks(mediaType:)' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'tracks(mediaType:)' to make this instance method not isolated to the actor
486 | player.currentItem?.tracks.filter { $0.assetTrack?.mediaType == mediaType }.map { AVMediaPlayerTrack(track: $0) } ?? []
487 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/MediaPlayerProtocol.swift:97:10: note: mark the protocol requirement 'tracks(mediaType:)' 'async' to allow actor-isolated conformances
95 | func enterForeground()
96 | func thumbnailImageAtCurrentTime() async -> CGImage?
97 | func tracks(mediaType: AVFoundation.AVMediaType) -> [MediaPlayerTrack]
| `- note: mark the protocol requirement 'tracks(mediaType:)' 'async' to allow actor-isolated conformances
98 | func select(track: some MediaPlayerTrack)
99 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:489:17: warning: main actor-isolated instance method 'select(track:)' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
487 | }
488 |
489 | public func select(track: some MediaPlayerTrack) {
| |- warning: main actor-isolated instance method 'select(track:)' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerProtocol'; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'select(track:)' to make this instance method not isolated to the actor
490 | player.currentItem?.tracks.filter { $0.assetTrack?.mediaType == track.mediaType }.forEach { $0.isEnabled = false }
491 | track.isEnabled = true
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/MediaPlayerProtocol.swift:98:10: note: mark the protocol requirement 'select(track:)' 'async' to allow actor-isolated conformances
96 | func thumbnailImageAtCurrentTime() async -> CGImage?
97 | func tracks(mediaType: AVFoundation.AVMediaType) -> [MediaPlayerTrack]
98 | func select(track: some MediaPlayerTrack)
| `- note: mark the protocol requirement 'select(track:)' 'async' to allow actor-isolated conformances
99 | }
100 |
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:129:29: warning: main actor-isolated property 'duration' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayback'; this is an error in the Swift 6 language mode
127 |
128 | public weak var delegate: MediaPlayerDelegate?
129 | public private(set) var duration: TimeInterval = 0
| `- warning: main actor-isolated property 'duration' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayback'; this is an error in the Swift 6 language mode
130 | public private(set) var fileSize: Double = 0
131 | public private(set) var playableTime: TimeInterval = 0
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/MediaPlayerProtocol.swift:17:9: note: requirement 'duration' declared here
15 |
16 | public protocol MediaPlayback: AnyObject {
17 | var duration: TimeInterval { get }
| `- note: requirement 'duration' declared here
18 | var fileSize: Double { get }
19 | var naturalSize: CGSize { get }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:130:29: warning: main actor-isolated property 'fileSize' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayback'; this is an error in the Swift 6 language mode
128 | public weak var delegate: MediaPlayerDelegate?
129 | public private(set) var duration: TimeInterval = 0
130 | public private(set) var fileSize: Double = 0
| `- warning: main actor-isolated property 'fileSize' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayback'; this is an error in the Swift 6 language mode
131 | public private(set) var playableTime: TimeInterval = 0
132 | public let chapters: [Chapter] = []
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/MediaPlayerProtocol.swift:18:9: note: requirement 'fileSize' declared here
16 | public protocol MediaPlayback: AnyObject {
17 | var duration: TimeInterval { get }
18 | var fileSize: Double { get }
| `- note: requirement 'fileSize' declared here
19 | var naturalSize: CGSize { get }
20 | var chapters: [Chapter] { get }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:115:16: warning: main actor-isolated property 'naturalSize' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayback'; this is an error in the Swift 6 language mode
113 | }
114 |
115 | public var naturalSize: CGSize = .zero
| `- warning: main actor-isolated property 'naturalSize' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayback'; this is an error in the Swift 6 language mode
116 | public let dynamicInfo: DynamicInfo? = nil
117 | @available(macOS 12.0, iOS 15.0, tvOS 15.0, *)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/MediaPlayerProtocol.swift:19:9: note: requirement 'naturalSize' declared here
17 | var duration: TimeInterval { get }
18 | var fileSize: Double { get }
19 | var naturalSize: CGSize { get }
| `- note: requirement 'naturalSize' declared here
20 | var chapters: [Chapter] { get }
21 | var currentPlaybackTime: TimeInterval { get }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:132:16: warning: main actor-isolated property 'chapters' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayback'; this is an error in the Swift 6 language mode
130 | public private(set) var fileSize: Double = 0
131 | public private(set) var playableTime: TimeInterval = 0
132 | public let chapters: [Chapter] = []
| `- warning: main actor-isolated property 'chapters' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayback'; this is an error in the Swift 6 language mode
133 | public var playbackRate: Float = 1 {
134 | didSet {
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/MediaPlayerProtocol.swift:20:9: note: requirement 'chapters' declared here
18 | var fileSize: Double { get }
19 | var naturalSize: CGSize { get }
20 | var chapters: [Chapter] { get }
| `- note: requirement 'chapters' declared here
21 | var currentPlaybackTime: TimeInterval { get }
22 | func prepareToPlay()
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:366:16: warning: main actor-isolated property 'currentPlaybackTime' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayback'; this is an error in the Swift 6 language mode
364 | public var isPlaying: Bool { player.rate > 0 ? true : playbackState == .playing }
365 | public var view: UIView? { playerView }
366 | public var currentPlaybackTime: TimeInterval {
| `- warning: main actor-isolated property 'currentPlaybackTime' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayback'; this is an error in the Swift 6 language mode
367 | get {
368 | if shouldSeekTo > 0 {
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/MediaPlayerProtocol.swift:21:9: note: requirement 'currentPlaybackTime' declared here
19 | var naturalSize: CGSize { get }
20 | var chapters: [Chapter] { get }
21 | var currentPlaybackTime: TimeInterval { get }
| `- note: requirement 'currentPlaybackTime' declared here
22 | func prepareToPlay()
23 | func shutdown()
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:415:17: warning: main actor-isolated instance method 'prepareToPlay()' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayback'; this is an error in the Swift 6 language mode
413 | }
414 |
415 | public func prepareToPlay() {
| |- warning: main actor-isolated instance method 'prepareToPlay()' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayback'; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'prepareToPlay()' to make this instance method not isolated to the actor
416 | KSLog("prepareToPlay \(self)")
417 | options.prepareTime = CACurrentMediaTime()
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/MediaPlayerProtocol.swift:22:10: note: mark the protocol requirement 'prepareToPlay()' 'async' to allow actor-isolated conformances
20 | var chapters: [Chapter] { get }
21 | var currentPlaybackTime: TimeInterval { get }
22 | func prepareToPlay()
| `- note: mark the protocol requirement 'prepareToPlay()' 'async' to allow actor-isolated conformances
23 | func shutdown()
24 | func seek(time: TimeInterval, completion: @escaping ((Bool) -> Void))
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:439:17: warning: main actor-isolated instance method 'shutdown()' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayback'; this is an error in the Swift 6 language mode
437 | }
438 |
439 | public func shutdown() {
| |- warning: main actor-isolated instance method 'shutdown()' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayback'; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'shutdown()' to make this instance method not isolated to the actor
440 | KSLog("shutdown \(self)")
441 | isReadyToPlay = false
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/MediaPlayerProtocol.swift:23:10: note: mark the protocol requirement 'shutdown()' 'async' to allow actor-isolated conformances
21 | var currentPlaybackTime: TimeInterval { get }
22 | func prepareToPlay()
23 | func shutdown()
| `- note: mark the protocol requirement 'shutdown()' 'async' to allow actor-isolated conformances
24 | func seek(time: TimeInterval, completion: @escaping ((Bool) -> Void))
25 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:399:17: warning: main actor-isolated instance method 'seek(time:completion:)' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayback'; this is an error in the Swift 6 language mode
397 | }
398 |
399 | public func seek(time: TimeInterval, completion: @escaping ((Bool) -> Void)) {
| |- warning: main actor-isolated instance method 'seek(time:completion:)' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayback'; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'seek(time:completion:)' to make this instance method not isolated to the actor
400 | let time = max(time, 0)
401 | shouldSeekTo = time
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/MediaPlayerProtocol.swift:24:10: note: mark the protocol requirement 'seek(time:completion:)' 'async' to allow actor-isolated conformances
22 | func prepareToPlay()
23 | func shutdown()
24 | func seek(time: TimeInterval, completion: @escaping ((Bool) -> Void))
| `- note: mark the protocol requirement 'seek(time:completion:)' 'async' to allow actor-isolated conformances
25 | }
26 |
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:531:9: warning: main actor-isolated property 'isEnabled' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerTrack'; this is an error in the Swift 6 language mode
512 | }
513 |
514 | class AVMediaPlayerTrack: MediaPlayerTrack {
| `- note: add '@preconcurrency' to the 'MediaPlayerTrack' conformance to defer isolation checking to run time
515 | let formatDescription: CMFormatDescription?
516 | let description: String
:
529 | var isPlayable: Bool
530 | @MainActor
531 | var isEnabled: Bool {
| `- warning: main actor-isolated property 'isEnabled' cannot be used to satisfy nonisolated requirement from protocol 'MediaPlayerTrack'; this is an error in the Swift 6 language mode
532 | get {
533 | track.isEnabled
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/MediaPlayerProtocol.swift:125:9: note: requirement 'isEnabled' declared here
123 | var bitRate: Int64 { get }
124 | var bitDepth: Int32 { get }
125 | var isEnabled: Bool { get set }
| `- note: requirement 'isEnabled' declared here
126 | var isImageSubtitle: Bool { get }
127 | var rotation: Int16 { get }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:220:18: warning: call to main actor-isolated instance method 'observer(playerItem:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
218 | itemObservation = player.observe(\.currentItem) { [weak self] player, _ in
219 | guard let self else { return }
220 | self.observer(playerItem: player.currentItem)
| `- warning: call to main actor-isolated instance method 'observer(playerItem:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
221 | }
222 | }
:
324 | }
325 |
326 | private func observer(playerItem: AVPlayerItem?) {
| `- note: calls to instance method 'observer(playerItem:)' from outside of its actor context are implicitly asynchronous
327 | NotificationCenter.default.removeObserver(self, name: .AVPlayerItemDidPlayToEndTime, object: playerItem)
328 | NotificationCenter.default.removeObserver(self, name: .AVPlayerItemFailedToPlayToEndTime, object: playerItem)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:313:22: warning: main actor-isolated property 'delegate' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
126 | }
127 |
128 | public weak var delegate: MediaPlayerDelegate?
| `- note: property declared here
129 | public private(set) var duration: TimeInterval = 0
130 | public private(set) var fileSize: Double = 0
:
311 | loopCountObservation = playerLooper?.observe(\.loopCount) { [weak self] playerLooper, _ in
312 | guard let self else { return }
313 | self.delegate?.playBack(player: self, loopCount: playerLooper.loopCount)
| `- warning: main actor-isolated property 'delegate' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
314 | }
315 | loopStatusObservation = playerLooper?.observe(\.status) { [weak self] playerLooper, _ in
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:313:32: warning: call to main actor-isolated instance method 'playBack(player:loopCount:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
311 | loopCountObservation = playerLooper?.observe(\.loopCount) { [weak self] playerLooper, _ in
312 | guard let self else { return }
313 | self.delegate?.playBack(player: self, loopCount: playerLooper.loopCount)
| `- warning: call to main actor-isolated instance method 'playBack(player:loopCount:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
314 | }
315 | loopStatusObservation = playerLooper?.observe(\.status) { [weak self] playerLooper, _ in
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/MediaPlayerProtocol.swift:113:10: note: calls to instance method 'playBack(player:loopCount:)' from outside of its actor context are implicitly asynchronous
111 | // 缓冲加载进度,0-100
112 | func changeBuffering(player: some MediaPlayerProtocol, progress: Int)
113 | func playBack(player: some MediaPlayerProtocol, loopCount: Int)
| `- note: calls to instance method 'playBack(player:loopCount:)' from outside of its actor context are implicitly asynchronous
114 | func finish(player: some MediaPlayerProtocol, error: Error?)
115 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:318:26: warning: main actor-isolated property 'error' can not be mutated from a Sendable closure; this is an error in the Swift 6 language mode
91 | private var loopStatusObservation: NSKeyValueObservation?
92 | private var mediaPlayerTracks = [AVMediaPlayerTrack]()
93 | private var error: Error? {
| `- note: mutation of this property is only permitted within the actor
94 | didSet {
95 | if let error {
:
316 | guard let self else { return }
317 | if playerLooper.status == .failed {
318 | self.error = playerLooper.error
| `- warning: main actor-isolated property 'error' can not be mutated from a Sendable closure; this is an error in the Swift 6 language mode
319 | }
320 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:356:93: warning: converting non-sendable function value to '@Sendable (AVPlayerItem, NSKeyValueObservedChange<Bool>) -> Void' may introduce data races
354 | }
355 | }
356 | bufferEmptyObservation = playerItem.observe(\.isPlaybackBufferEmpty, changeHandler: changeHandler)
| `- warning: converting non-sendable function value to '@Sendable (AVPlayerItem, NSKeyValueObservedChange<Bool>) -> Void' may introduce data races
357 | likelyToKeepUpObservation = playerItem.observe(\.isPlaybackLikelyToKeepUp, changeHandler: changeHandler)
358 | bufferFullObservation = playerItem.observe(\.isPlaybackBufferFull, changeHandler: changeHandler)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:357:99: warning: converting non-sendable function value to '@Sendable (AVPlayerItem, NSKeyValueObservedChange<Bool>) -> Void' may introduce data races
355 | }
356 | bufferEmptyObservation = playerItem.observe(\.isPlaybackBufferEmpty, changeHandler: changeHandler)
357 | likelyToKeepUpObservation = playerItem.observe(\.isPlaybackLikelyToKeepUp, changeHandler: changeHandler)
| `- warning: converting non-sendable function value to '@Sendable (AVPlayerItem, NSKeyValueObservedChange<Bool>) -> Void' may introduce data races
358 | bufferFullObservation = playerItem.observe(\.isPlaybackBufferFull, changeHandler: changeHandler)
359 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:358:91: warning: converting non-sendable function value to '@Sendable (AVPlayerItem, NSKeyValueObservedChange<Bool>) -> Void' may introduce data races
356 | bufferEmptyObservation = playerItem.observe(\.isPlaybackBufferEmpty, changeHandler: changeHandler)
357 | likelyToKeepUpObservation = playerItem.observe(\.isPlaybackLikelyToKeepUp, changeHandler: changeHandler)
358 | bufferFullObservation = playerItem.observe(\.isPlaybackBufferFull, changeHandler: changeHandler)
| `- warning: converting non-sendable function value to '@Sendable (AVPlayerItem, NSKeyValueObservedChange<Bool>) -> Void' may introduce data races
359 | }
360 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:339:18: warning: call to main actor-isolated instance method 'updateStatus(item:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
246 | }
247 |
248 | private func updateStatus(item: AVPlayerItem) {
| `- note: calls to instance method 'updateStatus(item:)' from outside of its actor context are implicitly asynchronous
249 | if item.status == .readyToPlay {
250 | options.findTime = CACurrentMediaTime()
:
337 | statusObservation = playerItem.observe(\.status) { [weak self] item, _ in
338 | guard let self else { return }
339 | self.updateStatus(item: item)
| `- warning: call to main actor-isolated instance method 'updateStatus(item:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
340 | }
341 | loadedTimeRangesObservation = playerItem.observe(\.loadedTimeRanges) { [weak self] item, _ in
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:344:18: warning: call to main actor-isolated instance method 'updatePlayableDuration(item:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
272 | }
273 |
274 | private func updatePlayableDuration(item: AVPlayerItem) {
| `- note: calls to instance method 'updatePlayableDuration(item:)' from outside of its actor context are implicitly asynchronous
275 | let first = item.loadedTimeRanges.first { CMTimeRangeContainsTime($0.timeRangeValue, time: item.currentTime()) }
276 | if let first {
:
342 | guard let self else { return }
343 | // 计算缓冲进度
344 | self.updatePlayableDuration(item: item)
| `- warning: call to main actor-isolated instance method 'updatePlayableDuration(item:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
345 | }
346 |
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:411:13: warning: capture of 'completion' with non-sendable type '(Bool) -> Void' in a '@Sendable' closure
409 | guard let self else { return }
410 | self.shouldSeekTo = 0
411 | completion(finished)
| |- warning: capture of 'completion' with non-sendable type '(Bool) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
412 | }
413 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:410:18: warning: main actor-isolated property 'shouldSeekTo' can not be mutated from a Sendable closure; this is an error in the Swift 6 language mode
80 | private let playerView = KSAVPlayerView()
81 | private var urlAsset: AVURLAsset
82 | private var shouldSeekTo = TimeInterval(0)
| `- note: mutation of this property is only permitted within the actor
83 | private var playerLooper: AVPlayerLooper?
84 | private var statusObservation: NSKeyValueObservation?
:
408 | [weak self] finished in
409 | guard let self else { return }
410 | self.shouldSeekTo = 0
| `- warning: main actor-isolated property 'shouldSeekTo' can not be mutated from a Sendable closure; this is an error in the Swift 6 language mode
411 | completion(finished)
412 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:555:39: warning: treating a forced downcast to 'CMFormatDescription' as optional will never produce 'nil'
553 | // swiftlint:disable force_cast
554 | if let first = track.assetTrack?.formatDescriptions.first {
555 | formatDescription = first as! CMFormatDescription
| | | `- note: use 'as?' to perform a conditional downcast to 'CMFormatDescription'
| | `- warning: treating a forced downcast to 'CMFormatDescription' as optional will never produce 'nil'
| `- note: add parentheses around the cast to silence this warning
556 | } else {
557 | formatDescription = nil
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:542:25: warning: main actor-isolated property 'assetTrack' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
540 | init(track: AVPlayerItemTrack) {
541 | self.track = track
542 | trackID = track.assetTrack?.trackID ?? 0
| `- warning: main actor-isolated property 'assetTrack' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
543 | mediaType = track.assetTrack?.mediaType ?? .video
544 | name = track.assetTrack?.languageCode ?? ""
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVPlayerItemTrack.h:45:57: note: property declared here
43 | notification queue. By default, this queue is the main queue.
44 | */
45 | @property (nonatomic, readonly, nullable) AVAssetTrack *assetTrack;
| `- note: property declared here
46 |
47 | /*!
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:543:27: warning: main actor-isolated property 'assetTrack' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
541 | self.track = track
542 | trackID = track.assetTrack?.trackID ?? 0
543 | mediaType = track.assetTrack?.mediaType ?? .video
| `- warning: main actor-isolated property 'assetTrack' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
544 | name = track.assetTrack?.languageCode ?? ""
545 | languageCode = track.assetTrack?.languageCode
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVPlayerItemTrack.h:45:57: note: property declared here
43 | notification queue. By default, this queue is the main queue.
44 | */
45 | @property (nonatomic, readonly, nullable) AVAssetTrack *assetTrack;
| `- note: property declared here
46 |
47 | /*!
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:544:22: warning: main actor-isolated property 'assetTrack' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
542 | trackID = track.assetTrack?.trackID ?? 0
543 | mediaType = track.assetTrack?.mediaType ?? .video
544 | name = track.assetTrack?.languageCode ?? ""
| `- warning: main actor-isolated property 'assetTrack' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
545 | languageCode = track.assetTrack?.languageCode
546 | nominalFrameRate = track.assetTrack?.nominalFrameRate ?? 24.0
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVPlayerItemTrack.h:45:57: note: property declared here
43 | notification queue. By default, this queue is the main queue.
44 | */
45 | @property (nonatomic, readonly, nullable) AVAssetTrack *assetTrack;
| `- note: property declared here
46 |
47 | /*!
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:545:30: warning: main actor-isolated property 'assetTrack' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
543 | mediaType = track.assetTrack?.mediaType ?? .video
544 | name = track.assetTrack?.languageCode ?? ""
545 | languageCode = track.assetTrack?.languageCode
| `- warning: main actor-isolated property 'assetTrack' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
546 | nominalFrameRate = track.assetTrack?.nominalFrameRate ?? 24.0
547 | bitRate = Int64(track.assetTrack?.estimatedDataRate ?? 0)
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVPlayerItemTrack.h:45:57: note: property declared here
43 | notification queue. By default, this queue is the main queue.
44 | */
45 | @property (nonatomic, readonly, nullable) AVAssetTrack *assetTrack;
| `- note: property declared here
46 |
47 | /*!
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:546:34: warning: main actor-isolated property 'assetTrack' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
544 | name = track.assetTrack?.languageCode ?? ""
545 | languageCode = track.assetTrack?.languageCode
546 | nominalFrameRate = track.assetTrack?.nominalFrameRate ?? 24.0
| `- warning: main actor-isolated property 'assetTrack' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
547 | bitRate = Int64(track.assetTrack?.estimatedDataRate ?? 0)
548 | #if os(xrOS)
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVPlayerItemTrack.h:45:57: note: property declared here
43 | notification queue. By default, this queue is the main queue.
44 | */
45 | @property (nonatomic, readonly, nullable) AVAssetTrack *assetTrack;
| `- note: property declared here
46 |
47 | /*!
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:547:31: warning: main actor-isolated property 'assetTrack' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
545 | languageCode = track.assetTrack?.languageCode
546 | nominalFrameRate = track.assetTrack?.nominalFrameRate ?? 24.0
547 | bitRate = Int64(track.assetTrack?.estimatedDataRate ?? 0)
| `- warning: main actor-isolated property 'assetTrack' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
548 | #if os(xrOS)
549 | isPlayable = false
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVPlayerItemTrack.h:45:57: note: property declared here
43 | notification queue. By default, this queue is the main queue.
44 | */
45 | @property (nonatomic, readonly, nullable) AVAssetTrack *assetTrack;
| `- note: property declared here
46 |
47 | /*!
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:551:28: warning: main actor-isolated property 'assetTrack' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
549 | isPlayable = false
550 | #else
551 | isPlayable = track.assetTrack?.isPlayable ?? false
| `- warning: main actor-isolated property 'assetTrack' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
552 | #endif
553 | // swiftlint:disable force_cast
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVPlayerItemTrack.h:45:57: note: property declared here
43 | notification queue. By default, this queue is the main queue.
44 | */
45 | @property (nonatomic, readonly, nullable) AVAssetTrack *assetTrack;
| `- note: property declared here
46 |
47 | /*!
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:554:30: warning: main actor-isolated property 'assetTrack' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
552 | #endif
553 | // swiftlint:disable force_cast
554 | if let first = track.assetTrack?.formatDescriptions.first {
| `- warning: main actor-isolated property 'assetTrack' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
555 | formatDescription = first as! CMFormatDescription
556 | } else {
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVPlayerItemTrack.h:45:57: note: property declared here
43 | notification queue. By default, this queue is the main queue.
44 | */
45 | @property (nonatomic, readonly, nullable) AVAssetTrack *assetTrack;
| `- note: property declared here
46 |
47 | /*!
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSAVPlayer.swift:586:17: warning: capture of 'handler' with non-sendable type '(CGImage?) -> Void' in a '@Sendable' closure
584 | imageGenerator.generateCGImagesAsynchronously(forTimes: [NSValue(time: currentTime)]) { _, cgImage, _, _, _ in
585 | if let cgImage {
586 | handler(cgImage)
| |- warning: capture of 'handler' with non-sendable type '(CGImage?) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
587 | } else {
588 | handler(nil)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSOptions.swift:458:16: warning: static property 'firstPlayerType' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
456 |
457 | public extension KSOptions {
458 | static var firstPlayerType: MediaPlayerProtocol.Type = KSAVPlayer.self
| |- warning: static property 'firstPlayerType' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'firstPlayerType' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'firstPlayerType' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
459 | static var secondPlayerType: MediaPlayerProtocol.Type? = KSMEPlayer.self
460 | /// 最低缓存视频时间
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSOptions.swift:459:16: warning: static property 'secondPlayerType' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
457 | public extension KSOptions {
458 | static var firstPlayerType: MediaPlayerProtocol.Type = KSAVPlayer.self
459 | static var secondPlayerType: MediaPlayerProtocol.Type? = KSMEPlayer.self
| |- warning: static property 'secondPlayerType' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'secondPlayerType' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'secondPlayerType' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
460 | /// 最低缓存视频时间
461 | static var preferredForwardBufferDuration = 3.0
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSOptions.swift:461:16: warning: static property 'preferredForwardBufferDuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
459 | static var secondPlayerType: MediaPlayerProtocol.Type? = KSMEPlayer.self
460 | /// 最低缓存视频时间
461 | static var preferredForwardBufferDuration = 3.0
| |- warning: static property 'preferredForwardBufferDuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'preferredForwardBufferDuration' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'preferredForwardBufferDuration' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
462 | /// 最大缓存视频时间
463 | static var maxBufferDuration = 30.0
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSOptions.swift:463:16: warning: static property 'maxBufferDuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
461 | static var preferredForwardBufferDuration = 3.0
462 | /// 最大缓存视频时间
463 | static var maxBufferDuration = 30.0
| |- warning: static property 'maxBufferDuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'maxBufferDuration' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'maxBufferDuration' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
464 | /// 是否开启秒开
465 | static var isSecondOpen = false
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSOptions.swift:465:16: warning: static property 'isSecondOpen' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
463 | static var maxBufferDuration = 30.0
464 | /// 是否开启秒开
465 | static var isSecondOpen = false
| |- warning: static property 'isSecondOpen' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'isSecondOpen' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'isSecondOpen' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
466 | /// 开启精确seek
467 | static var isAccurateSeek = false
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSOptions.swift:467:16: warning: static property 'isAccurateSeek' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
465 | static var isSecondOpen = false
466 | /// 开启精确seek
467 | static var isAccurateSeek = false
| |- warning: static property 'isAccurateSeek' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'isAccurateSeek' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'isAccurateSeek' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
468 | /// Applies to short videos only
469 | static var isLoopPlay = false
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSOptions.swift:469:16: warning: static property 'isLoopPlay' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
467 | static var isAccurateSeek = false
468 | /// Applies to short videos only
469 | static var isLoopPlay = false
| |- warning: static property 'isLoopPlay' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'isLoopPlay' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'isLoopPlay' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
470 | /// 是否自动播放,默认true
471 | static var isAutoPlay = true
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSOptions.swift:471:16: warning: static property 'isAutoPlay' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
469 | static var isLoopPlay = false
470 | /// 是否自动播放,默认true
471 | static var isAutoPlay = true
| |- warning: static property 'isAutoPlay' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'isAutoPlay' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'isAutoPlay' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
472 | /// seek完是否自动播放
473 | static var isSeekedAutoPlay = true
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSOptions.swift:473:16: warning: static property 'isSeekedAutoPlay' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
471 | static var isAutoPlay = true
472 | /// seek完是否自动播放
473 | static var isSeekedAutoPlay = true
| |- warning: static property 'isSeekedAutoPlay' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'isSeekedAutoPlay' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'isSeekedAutoPlay' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
474 | static var hardwareDecode = true
475 | // 默认不用自研的硬解,因为有些视频的AVPacket的pts顺序是不对的,只有解码后的AVFrame里面的pts是对的。
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSOptions.swift:474:16: warning: static property 'hardwareDecode' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
472 | /// seek完是否自动播放
473 | static var isSeekedAutoPlay = true
474 | static var hardwareDecode = true
| |- warning: static property 'hardwareDecode' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'hardwareDecode' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'hardwareDecode' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
475 | // 默认不用自研的硬解,因为有些视频的AVPacket的pts顺序是不对的,只有解码后的AVFrame里面的pts是对的。
476 | static var asynchronousDecompression = false
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSOptions.swift:476:16: warning: static property 'asynchronousDecompression' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
474 | static var hardwareDecode = true
475 | // 默认不用自研的硬解,因为有些视频的AVPacket的pts顺序是不对的,只有解码后的AVFrame里面的pts是对的。
476 | static var asynchronousDecompression = false
| |- warning: static property 'asynchronousDecompression' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'asynchronousDecompression' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'asynchronousDecompression' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
477 | static var isPipPopViewController = false
478 | static var canStartPictureInPictureAutomaticallyFromInline = true
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSOptions.swift:477:16: warning: static property 'isPipPopViewController' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
475 | // 默认不用自研的硬解,因为有些视频的AVPacket的pts顺序是不对的,只有解码后的AVFrame里面的pts是对的。
476 | static var asynchronousDecompression = false
477 | static var isPipPopViewController = false
| |- warning: static property 'isPipPopViewController' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'isPipPopViewController' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'isPipPopViewController' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
478 | static var canStartPictureInPictureAutomaticallyFromInline = true
479 | static var preferredFrame = true
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSOptions.swift:478:16: warning: static property 'canStartPictureInPictureAutomaticallyFromInline' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
476 | static var asynchronousDecompression = false
477 | static var isPipPopViewController = false
478 | static var canStartPictureInPictureAutomaticallyFromInline = true
| |- warning: static property 'canStartPictureInPictureAutomaticallyFromInline' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'canStartPictureInPictureAutomaticallyFromInline' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'canStartPictureInPictureAutomaticallyFromInline' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
479 | static var preferredFrame = true
480 | static var useSystemHTTPProxy = true
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSOptions.swift:479:16: warning: static property 'preferredFrame' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
477 | static var isPipPopViewController = false
478 | static var canStartPictureInPictureAutomaticallyFromInline = true
479 | static var preferredFrame = true
| |- warning: static property 'preferredFrame' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'preferredFrame' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'preferredFrame' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
480 | static var useSystemHTTPProxy = true
481 | /// 日志级别
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSOptions.swift:480:16: warning: static property 'useSystemHTTPProxy' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
478 | static var canStartPictureInPictureAutomaticallyFromInline = true
479 | static var preferredFrame = true
480 | static var useSystemHTTPProxy = true
| |- warning: static property 'useSystemHTTPProxy' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'useSystemHTTPProxy' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'useSystemHTTPProxy' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
481 | /// 日志级别
482 | static var logLevel = LogLevel.warning
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSOptions.swift:482:16: warning: static property 'logLevel' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
480 | static var useSystemHTTPProxy = true
481 | /// 日志级别
482 | static var logLevel = LogLevel.warning
| |- warning: static property 'logLevel' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'logLevel' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'logLevel' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
483 | static var logger: LogHandler = OSLog(lable: "KSPlayer")
484 | internal static func deviceCpuCount() -> Int {
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSOptions.swift:483:16: warning: static property 'logger' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
481 | /// 日志级别
482 | static var logLevel = LogLevel.warning
483 | static var logger: LogHandler = OSLog(lable: "KSPlayer")
| |- warning: static property 'logger' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'logger' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'logger' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
484 | internal static func deviceCpuCount() -> Int {
485 | var ncpu = UInt(0)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSOptions.swift:317:21: warning: variable 'yadifMode' was never mutated; consider changing to 'let' constant
315 | asynchronousDecompression = false
316 | let yadif = hardwareDecode ? "yadif_videotoolbox" : "yadif"
317 | var yadifMode = KSOptions.yadifMode
| `- warning: variable 'yadifMode' was never mutated; consider changing to 'let' constant
318 | // if let assetTrack = assetTrack as? FFmpegAssetTrack {
319 | // if assetTrack.realFrameRate.num == 2 * assetTrack.avgFrameRate.num, assetTrack.realFrameRate.den == assetTrack.avgFrameRate.den {
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPictureInPictureController.swift:12:24: warning: static property 'pipController' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
10 | @available(tvOS 14.0, *)
11 | public class KSPictureInPictureController: AVPictureInPictureController {
12 | private static var pipController: KSPictureInPictureController?
| |- warning: static property 'pipController' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'pipController' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'pipController' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
13 | private var originalViewController: UIViewController?
14 | private var view: KSPlayerLayer?
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:84:35: warning: capture of 'self' with non-sendable type 'KSPlayerLayer?' in a '@Sendable' closure
65 | }
66 |
67 | open class KSPlayerLayer: NSObject {
| `- note: class 'KSPlayerLayer' does not conform to the 'Sendable' protocol
68 | public weak var delegate: KSPlayerLayerDelegate?
69 | @Published
:
82 | // 一定要async才不会pip之后就暂停播放
83 | DispatchQueue.main.async { [weak self] in
84 | guard let self else { return }
| `- warning: capture of 'self' with non-sendable type 'KSPlayerLayer?' in a '@Sendable' closure
85 | pipController.start(view: self)
86 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:85:25: warning: capture of 'pipController' with non-sendable type 'KSPictureInPictureController' in a '@Sendable' closure
83 | DispatchQueue.main.async { [weak self] in
84 | guard let self else { return }
85 | pipController.start(view: self)
| `- warning: capture of 'pipController' with non-sendable type 'KSPictureInPictureController' in a '@Sendable' closure
86 | }
87 | } else {
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPictureInPictureController.swift:11:14: note: class 'KSPictureInPictureController' does not conform to the 'Sendable' protocol
9 |
10 | @available(tvOS 14.0, *)
11 | public class KSPictureInPictureController: AVPictureInPictureController {
| `- note: class 'KSPictureInPictureController' does not conform to the 'Sendable' protocol
12 | private static var pipController: KSPictureInPictureController?
13 | private var originalViewController: UIViewController?
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:102:73: warning: main actor-isolated property 'superview' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
100 | runOnMainThread { [weak self] in
101 | guard let self else { return }
102 | if let oldView = oldValue.view, let superview = oldView.superview, let view = player.view {
| `- warning: main actor-isolated property 'superview' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
103 | #if canImport(UIKit)
104 | superview.insertSubview(view, belowSubview: oldView)
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSView.h:87:59: note: property declared here
85 |
86 | @property (nullable, readonly, unsafe_unretained) NSWindow *window;
87 | @property (nullable, readonly, unsafe_unretained) NSView *superview;
| `- note: property declared here
88 | @property (copy) NSArray<__kindof NSView *> *subviews;
89 | - (BOOL)isDescendantOf:(NSView *)view;
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:106:31: warning: call to main actor-isolated instance method 'addSubview(_:positioned:relativeTo:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
104 | superview.insertSubview(view, belowSubview: oldView)
105 | #else
106 | superview.addSubview(view, positioned: .below, relativeTo: oldView)
| `- warning: call to main actor-isolated instance method 'addSubview(_:positioned:relativeTo:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
107 | #endif
108 | view.translatesAutoresizingMaskIntoConstraints = false
AppKit.NSView.addSubview:2:22: note: calls to instance method 'addSubview(_:positioned:relativeTo:)' from outside of its actor context are implicitly asynchronous
1 | class NSView {
2 | @MainActor open func addSubview(_ view: NSView, positioned place: NSWindow.OrderingMode, relativeTo otherView: NSView?)}
| |- note: calls to instance method 'addSubview(_:positioned:relativeTo:)' from outside of its actor context are implicitly asynchronous
| `- note: main actor isolation inferred from inheritance from class 'NSResponder'
3 |
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:108:26: warning: main actor-isolated property 'translatesAutoresizingMaskIntoConstraints' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
106 | superview.addSubview(view, positioned: .below, relativeTo: oldView)
107 | #endif
108 | view.translatesAutoresizingMaskIntoConstraints = false
| `- warning: main actor-isolated property 'translatesAutoresizingMaskIntoConstraints' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
109 | NSLayoutConstraint.activate([
110 | view.topAnchor.constraint(equalTo: superview.topAnchor),
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSLayoutConstraint.h:276:16: note: mutation of this property is only permitted within the actor
274 | /* by default, the autoresizing mask on a view gives rise to constraints that fully determine the view's position. To do anything interesting with constraints, you need to turn that off. IB will turn it off.
275 | */
276 | @property BOOL translatesAutoresizingMaskIntoConstraints API_AVAILABLE(macos(10.7));
| `- note: mutation of this property is only permitted within the actor
277 |
278 | /* constraint based layout engages lazily when someone tries to use it. If you do all of your constraint set up in -updateConstraints, you might never even receive updateConstraints if no one makes a constraint. To fix this chicken and egg problem, override this method to return YES if your view needs the window to use constraint based layout.
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:110:30: warning: main actor-isolated property 'topAnchor' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
108 | view.translatesAutoresizingMaskIntoConstraints = false
109 | NSLayoutConstraint.activate([
110 | view.topAnchor.constraint(equalTo: superview.topAnchor),
| `- warning: main actor-isolated property 'topAnchor' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
111 | view.leadingAnchor.constraint(equalTo: superview.leadingAnchor),
112 | view.bottomAnchor.constraint(equalTo: superview.bottomAnchor),
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSLayoutConstraint.h:228:51: note: property declared here
226 | @property (readonly, strong) NSLayoutXAxisAnchor *leftAnchor API_AVAILABLE(macos(10.11));
227 | @property (readonly, strong) NSLayoutXAxisAnchor *rightAnchor API_AVAILABLE(macos(10.11));
228 | @property (readonly, strong) NSLayoutYAxisAnchor *topAnchor API_AVAILABLE(macos(10.11));
| `- note: property declared here
229 | @property (readonly, strong) NSLayoutYAxisAnchor *bottomAnchor API_AVAILABLE(macos(10.11));
230 | @property (readonly, strong) NSLayoutDimension *widthAnchor API_AVAILABLE(macos(10.11));
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:110:70: warning: main actor-isolated property 'topAnchor' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
108 | view.translatesAutoresizingMaskIntoConstraints = false
109 | NSLayoutConstraint.activate([
110 | view.topAnchor.constraint(equalTo: superview.topAnchor),
| `- warning: main actor-isolated property 'topAnchor' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
111 | view.leadingAnchor.constraint(equalTo: superview.leadingAnchor),
112 | view.bottomAnchor.constraint(equalTo: superview.bottomAnchor),
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSLayoutConstraint.h:228:51: note: property declared here
226 | @property (readonly, strong) NSLayoutXAxisAnchor *leftAnchor API_AVAILABLE(macos(10.11));
227 | @property (readonly, strong) NSLayoutXAxisAnchor *rightAnchor API_AVAILABLE(macos(10.11));
228 | @property (readonly, strong) NSLayoutYAxisAnchor *topAnchor API_AVAILABLE(macos(10.11));
| `- note: property declared here
229 | @property (readonly, strong) NSLayoutYAxisAnchor *bottomAnchor API_AVAILABLE(macos(10.11));
230 | @property (readonly, strong) NSLayoutDimension *widthAnchor API_AVAILABLE(macos(10.11));
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:111:30: warning: main actor-isolated property 'leadingAnchor' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
109 | NSLayoutConstraint.activate([
110 | view.topAnchor.constraint(equalTo: superview.topAnchor),
111 | view.leadingAnchor.constraint(equalTo: superview.leadingAnchor),
| `- warning: main actor-isolated property 'leadingAnchor' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
112 | view.bottomAnchor.constraint(equalTo: superview.bottomAnchor),
113 | view.trailingAnchor.constraint(equalTo: superview.trailingAnchor),
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSLayoutConstraint.h:224:51: note: property declared here
222 | See NSLayoutAnchor.h for more details.
223 | */
224 | @property (readonly, strong) NSLayoutXAxisAnchor *leadingAnchor API_AVAILABLE(macos(10.11));
| `- note: property declared here
225 | @property (readonly, strong) NSLayoutXAxisAnchor *trailingAnchor API_AVAILABLE(macos(10.11));
226 | @property (readonly, strong) NSLayoutXAxisAnchor *leftAnchor API_AVAILABLE(macos(10.11));
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:111:74: warning: main actor-isolated property 'leadingAnchor' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
109 | NSLayoutConstraint.activate([
110 | view.topAnchor.constraint(equalTo: superview.topAnchor),
111 | view.leadingAnchor.constraint(equalTo: superview.leadingAnchor),
| `- warning: main actor-isolated property 'leadingAnchor' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
112 | view.bottomAnchor.constraint(equalTo: superview.bottomAnchor),
113 | view.trailingAnchor.constraint(equalTo: superview.trailingAnchor),
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSLayoutConstraint.h:224:51: note: property declared here
222 | See NSLayoutAnchor.h for more details.
223 | */
224 | @property (readonly, strong) NSLayoutXAxisAnchor *leadingAnchor API_AVAILABLE(macos(10.11));
| `- note: property declared here
225 | @property (readonly, strong) NSLayoutXAxisAnchor *trailingAnchor API_AVAILABLE(macos(10.11));
226 | @property (readonly, strong) NSLayoutXAxisAnchor *leftAnchor API_AVAILABLE(macos(10.11));
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:112:30: warning: main actor-isolated property 'bottomAnchor' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
110 | view.topAnchor.constraint(equalTo: superview.topAnchor),
111 | view.leadingAnchor.constraint(equalTo: superview.leadingAnchor),
112 | view.bottomAnchor.constraint(equalTo: superview.bottomAnchor),
| `- warning: main actor-isolated property 'bottomAnchor' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
113 | view.trailingAnchor.constraint(equalTo: superview.trailingAnchor),
114 | ])
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSLayoutConstraint.h:229:51: note: property declared here
227 | @property (readonly, strong) NSLayoutXAxisAnchor *rightAnchor API_AVAILABLE(macos(10.11));
228 | @property (readonly, strong) NSLayoutYAxisAnchor *topAnchor API_AVAILABLE(macos(10.11));
229 | @property (readonly, strong) NSLayoutYAxisAnchor *bottomAnchor API_AVAILABLE(macos(10.11));
| `- note: property declared here
230 | @property (readonly, strong) NSLayoutDimension *widthAnchor API_AVAILABLE(macos(10.11));
231 | @property (readonly, strong) NSLayoutDimension *heightAnchor API_AVAILABLE(macos(10.11));
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:112:73: warning: main actor-isolated property 'bottomAnchor' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
110 | view.topAnchor.constraint(equalTo: superview.topAnchor),
111 | view.leadingAnchor.constraint(equalTo: superview.leadingAnchor),
112 | view.bottomAnchor.constraint(equalTo: superview.bottomAnchor),
| `- warning: main actor-isolated property 'bottomAnchor' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
113 | view.trailingAnchor.constraint(equalTo: superview.trailingAnchor),
114 | ])
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSLayoutConstraint.h:229:51: note: property declared here
227 | @property (readonly, strong) NSLayoutXAxisAnchor *rightAnchor API_AVAILABLE(macos(10.11));
228 | @property (readonly, strong) NSLayoutYAxisAnchor *topAnchor API_AVAILABLE(macos(10.11));
229 | @property (readonly, strong) NSLayoutYAxisAnchor *bottomAnchor API_AVAILABLE(macos(10.11));
| `- note: property declared here
230 | @property (readonly, strong) NSLayoutDimension *widthAnchor API_AVAILABLE(macos(10.11));
231 | @property (readonly, strong) NSLayoutDimension *heightAnchor API_AVAILABLE(macos(10.11));
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:113:30: warning: main actor-isolated property 'trailingAnchor' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
111 | view.leadingAnchor.constraint(equalTo: superview.leadingAnchor),
112 | view.bottomAnchor.constraint(equalTo: superview.bottomAnchor),
113 | view.trailingAnchor.constraint(equalTo: superview.trailingAnchor),
| `- warning: main actor-isolated property 'trailingAnchor' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
114 | ])
115 | }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSLayoutConstraint.h:225:51: note: property declared here
223 | */
224 | @property (readonly, strong) NSLayoutXAxisAnchor *leadingAnchor API_AVAILABLE(macos(10.11));
225 | @property (readonly, strong) NSLayoutXAxisAnchor *trailingAnchor API_AVAILABLE(macos(10.11));
| `- note: property declared here
226 | @property (readonly, strong) NSLayoutXAxisAnchor *leftAnchor API_AVAILABLE(macos(10.11));
227 | @property (readonly, strong) NSLayoutXAxisAnchor *rightAnchor API_AVAILABLE(macos(10.11));
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:113:75: warning: main actor-isolated property 'trailingAnchor' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
111 | view.leadingAnchor.constraint(equalTo: superview.leadingAnchor),
112 | view.bottomAnchor.constraint(equalTo: superview.bottomAnchor),
113 | view.trailingAnchor.constraint(equalTo: superview.trailingAnchor),
| `- warning: main actor-isolated property 'trailingAnchor' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
114 | ])
115 | }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSLayoutConstraint.h:225:51: note: property declared here
223 | */
224 | @property (readonly, strong) NSLayoutXAxisAnchor *leadingAnchor API_AVAILABLE(macos(10.11));
225 | @property (readonly, strong) NSLayoutXAxisAnchor *trailingAnchor API_AVAILABLE(macos(10.11));
| `- note: property declared here
226 | @property (readonly, strong) NSLayoutXAxisAnchor *leftAnchor API_AVAILABLE(macos(10.11));
227 | @property (readonly, strong) NSLayoutXAxisAnchor *rightAnchor API_AVAILABLE(macos(10.11));
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:116:32: warning: call to main actor-isolated instance method 'removeFromSuperview()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
114 | ])
115 | }
116 | oldValue.view?.removeFromSuperview()
| `- warning: call to main actor-isolated instance method 'removeFromSuperview()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
117 | }
118 | player.playbackRate = oldValue.playbackRate
AppKit.NSView.removeFromSuperview:2:22: note: calls to instance method 'removeFromSuperview()' from outside of its actor context are implicitly asynchronous
1 | class NSView {
2 | @MainActor open func removeFromSuperview()}
| |- note: calls to instance method 'removeFromSuperview()' from outside of its actor context are implicitly asynchronous
| `- note: main actor isolation inferred from inheritance from class 'NSResponder'
3 |
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:176:19: warning: capture of 'self' with non-sendable type 'KSPlayerLayer?' in a '@Sendable' closure
65 | }
66 |
67 | open class KSPlayerLayer: NSObject {
| `- note: class 'KSPlayerLayer' does not conform to the 'Sendable' protocol
68 | public weak var delegate: KSPlayerLayerDelegate?
69 | @Published
:
174 |
175 | private lazy var timer: Timer = .scheduledTimer(withTimeInterval: 0.1, repeats: true) { [weak self] _ in
176 | guard let self, self.player.isReadyToPlay else {
| `- warning: capture of 'self' with non-sendable type 'KSPlayerLayer?' in a '@Sendable' closure
177 | return
178 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:179:24: warning: call to main actor-isolated instance method 'player(layer:currentTime:totalTime:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
60 | public protocol KSPlayerLayerDelegate: AnyObject {
61 | func player(layer: KSPlayerLayer, state: KSPlayerState)
62 | func player(layer: KSPlayerLayer, currentTime: TimeInterval, totalTime: TimeInterval)
| `- note: calls to instance method 'player(layer:currentTime:totalTime:)' from outside of its actor context are implicitly asynchronous
63 | func player(layer: KSPlayerLayer, finish error: Error?)
64 | func player(layer: KSPlayerLayer, bufferedCount: Int, consumeTime: TimeInterval)
:
177 | return
178 | }
179 | self.delegate?.player(layer: self, currentTime: self.player.currentPlaybackTime, totalTime: self.player.duration)
| `- warning: call to main actor-isolated instance method 'player(layer:currentTime:totalTime:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
180 | if self.player.playbackState == .playing, self.player.loadState == .playable, self.state == .buffering {
181 | // 一个兜底保护,正常不能走到这里
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:488:5: warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
486 |
487 | extension KSPlayerLayer {
488 | open func prepareToPlay() {
| `- warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
489 | state = .preparing
490 | startTime = CACurrentMediaTime()
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:169:36: warning: call to main actor-isolated instance method 'player(layer:state:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
59 | @MainActor
60 | public protocol KSPlayerLayerDelegate: AnyObject {
61 | func player(layer: KSPlayerLayer, state: KSPlayerState)
| `- note: calls to instance method 'player(layer:state:)' from outside of its actor context are implicitly asynchronous
62 | func player(layer: KSPlayerLayer, currentTime: TimeInterval, totalTime: TimeInterval)
63 | func player(layer: KSPlayerLayer, finish error: Error?)
:
167 | guard let self else { return }
168 | KSLog("playerStateDidChange - \(newValue)")
169 | self.delegate?.player(layer: self, state: newValue)
| `- warning: call to main actor-isolated instance method 'player(layer:state:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
170 | }
171 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:281:34: warning: main actor-isolated property 'isIdleTimerDisabled' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
279 | open func play() {
280 | runOnMainThread {
281 | UIApplication.shared.isIdleTimerDisabled = true
| `- warning: main actor-isolated property 'isIdleTimerDisabled' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
282 | }
283 | isAutoPlay = true
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:315:9: note: mutation of this property is only permitted within the actor
313 | }
314 |
315 | var isIdleTimerDisabled: Bool {
| `- note: mutation of this property is only permitted within the actor
316 | get {
317 | UIApplication.isIdleTimerDisabled
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:281:27: warning: main actor-isolated class property 'shared' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
279 | open func play() {
280 | runOnMainThread {
281 | UIApplication.shared.isIdleTimerDisabled = true
| `- warning: main actor-isolated class property 'shared' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
282 | }
283 | isAutoPlay = true
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSApplication.h:193:61: note: mutation of this class property is only permitted within the actor
191 | APPKIT_EXTERN __kindof NSApplication * _Null_unspecified NSApp NS_SWIFT_UI_ACTOR;
192 |
193 | @property (class, readonly, strong) __kindof NSApplication *sharedApplication;
| `- note: mutation of this class property is only permitted within the actor
194 | @property (nullable, weak) id<NSApplicationDelegate> delegate;
195 |
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:314:34: warning: main actor-isolated property 'isIdleTimerDisabled' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
312 | MPNowPlayingInfoCenter.default().playbackState = .paused
313 | runOnMainThread {
314 | UIApplication.shared.isIdleTimerDisabled = false
| `- warning: main actor-isolated property 'isIdleTimerDisabled' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
315 | }
316 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:315:9: note: mutation of this property is only permitted within the actor
313 | }
314 |
315 | var isIdleTimerDisabled: Bool {
| `- note: mutation of this property is only permitted within the actor
316 | get {
317 | UIApplication.isIdleTimerDisabled
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:314:27: warning: main actor-isolated class property 'shared' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
312 | MPNowPlayingInfoCenter.default().playbackState = .paused
313 | runOnMainThread {
314 | UIApplication.shared.isIdleTimerDisabled = false
| `- warning: main actor-isolated class property 'shared' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
315 | }
316 | }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSApplication.h:193:61: note: mutation of this class property is only permitted within the actor
191 | APPKIT_EXTERN __kindof NSApplication * _Null_unspecified NSApp NS_SWIFT_UI_ACTOR;
192 |
193 | @property (class, readonly, strong) __kindof NSApplication *sharedApplication;
| `- note: mutation of this class property is only permitted within the actor
194 | @property (nullable, weak) id<NSApplicationDelegate> delegate;
195 |
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:328:34: warning: main actor-isolated property 'isIdleTimerDisabled' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
326 | MPNowPlayingInfoCenter.default().nowPlayingInfo = nil
327 | runOnMainThread {
328 | UIApplication.shared.isIdleTimerDisabled = false
| `- warning: main actor-isolated property 'isIdleTimerDisabled' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
329 | }
330 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:315:9: note: mutation of this property is only permitted within the actor
313 | }
314 |
315 | var isIdleTimerDisabled: Bool {
| `- note: mutation of this property is only permitted within the actor
316 | get {
317 | UIApplication.isIdleTimerDisabled
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:328:27: warning: main actor-isolated class property 'shared' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
326 | MPNowPlayingInfoCenter.default().nowPlayingInfo = nil
327 | runOnMainThread {
328 | UIApplication.shared.isIdleTimerDisabled = false
| `- warning: main actor-isolated class property 'shared' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
329 | }
330 | }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSApplication.h:193:61: note: mutation of this class property is only permitted within the actor
191 | APPKIT_EXTERN __kindof NSApplication * _Null_unspecified NSApp NS_SWIFT_UI_ACTOR;
192 |
193 | @property (class, readonly, strong) __kindof NSApplication *sharedApplication;
| `- note: mutation of this class property is only permitted within the actor
194 | @property (nullable, weak) id<NSApplicationDelegate> delegate;
195 |
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:84:35: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
82 | // 一定要async才不会pip之后就暂停播放
83 | DispatchQueue.main.async { [weak self] in
84 | guard let 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
85 | pipController.start(view: self)
86 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:85:25: warning: sending 'pipController' risks causing data races; this is an error in the Swift 6 language mode
83 | DispatchQueue.main.async { [weak self] in
84 | guard let self else { return }
85 | pipController.start(view: self)
| |- warning: sending 'pipController' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'pipController' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
86 | }
87 | } else {
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:169:36: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
167 | guard let self else { return }
168 | KSLog("playerStateDidChange - \(newValue)")
169 | self.delegate?.player(layer: self, state: newValue)
| |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
| `- note: sending task-isolated 'self' to main actor-isolated instance method 'player(layer:state:)' risks causing data races between main actor-isolated and task-isolated uses
170 | }
171 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:169:36: warning: sending 'newValue' risks causing data races; this is an error in the Swift 6 language mode
167 | guard let self else { return }
168 | KSLog("playerStateDidChange - \(newValue)")
169 | self.delegate?.player(layer: self, state: newValue)
| |- warning: sending 'newValue' risks causing data races; this is an error in the Swift 6 language mode
| `- note: sending task-isolated 'newValue' to main actor-isolated instance method 'player(layer:state:)' risks causing data races between main actor-isolated and task-isolated uses
170 | }
171 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:169:36: warning: sending value of non-Sendable type 'any KSPlayerLayerDelegate' risks causing data races; this is an error in the Swift 6 language mode
167 | guard let self else { return }
168 | KSLog("playerStateDidChange - \(newValue)")
169 | self.delegate?.player(layer: self, state: newValue)
| |- warning: sending value of non-Sendable type 'any KSPlayerLayerDelegate' risks causing data races; this is an error in the Swift 6 language mode
| `- note: sending task-isolated value of non-Sendable type 'any KSPlayerLayerDelegate' to main actor-isolated instance method 'player(layer:state:)' risks causing races in between task-isolated and main actor-isolated uses
170 | }
171 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:179:24: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
177 | return
178 | }
179 | self.delegate?.player(layer: self, currentTime: self.player.currentPlaybackTime, totalTime: self.player.duration)
| |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
| `- note: sending 'self' to main actor-isolated instance method 'player(layer:currentTime:totalTime:)' risks causing data races between main actor-isolated and local nonisolated uses
180 | if self.player.playbackState == .playing, self.player.loadState == .playable, self.state == .buffering {
| `- note: access can happen concurrently
181 | // 一个兜底保护,正常不能走到这里
182 | self.state = .bufferFinished
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/AVPlayer/KSPlayerLayer.swift:179:24: warning: sending value of non-Sendable type 'any KSPlayerLayerDelegate' risks causing data races; this is an error in the Swift 6 language mode
177 | return
178 | }
179 | self.delegate?.player(layer: self, currentTime: self.player.currentPlaybackTime, totalTime: self.player.duration)
| |- warning: sending value of non-Sendable type 'any KSPlayerLayerDelegate' risks causing data races; this is an error in the Swift 6 language mode
| `- note: sending value of non-Sendable type 'any KSPlayerLayerDelegate' to main actor-isolated instance method 'player(layer:currentTime:totalTime:)' risks causing data races between main actor-isolated and local nonisolated uses
180 | if self.player.playbackState == .playing, self.player.loadState == .playable, self.state == .buffering {
| `- note: access can happen concurrently
181 | // 一个兜底保护,正常不能走到这里
182 | self.state = .bufferFinished
[57/61] Compiling KSPlayer PlayerFullScreenViewController.swift
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Video/SeekView.swift:67:17: warning: main actor-isolated instance method 'set(text:isAdd:)' cannot be used to satisfy nonisolated requirement from protocol 'SeekViewProtocol'; this is an error in the Swift 6 language mode
11 | #endif
12 | public protocol SeekViewProtocol {
13 | func set(text: String, isAdd: Bool)
| `- note: mark the protocol requirement 'set(text:isAdd:)' 'async' to allow actor-isolated conformances
14 | }
15 |
:
64 | }
65 |
66 | extension SeekView: SeekViewProtocol {
| `- note: add '@preconcurrency' to the 'SeekViewProtocol' conformance to defer isolation checking to run time
67 | public func set(text: String, isAdd: Bool) {
| |- warning: main actor-isolated instance method 'set(text:isAdd:)' cannot be used to satisfy nonisolated requirement from protocol 'SeekViewProtocol'; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'set(text:isAdd:)' to make this instance method not isolated to the actor
68 | seekToLabel.text = text
69 | if !isAdd {
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Video/VideoPlayerView.swift:954:16: warning: static property 'topBarShowInCase' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
952 | public extension KSOptions {
953 | /// 顶部返回、标题、AirPlay按钮 显示选项,默认.Always,可选.HorizantalOnly、.None
954 | static var topBarShowInCase = KSPlayerTopBarShowCase.always
| |- warning: static property 'topBarShowInCase' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'topBarShowInCase' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'topBarShowInCase' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
955 | /// 自动隐藏操作栏的时间间隔 默认5秒
956 | static var animateDelayTimeInterval = TimeInterval(5)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Video/VideoPlayerView.swift:956:16: warning: static property 'animateDelayTimeInterval' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
954 | static var topBarShowInCase = KSPlayerTopBarShowCase.always
955 | /// 自动隐藏操作栏的时间间隔 默认5秒
956 | static var animateDelayTimeInterval = TimeInterval(5)
| |- warning: static property 'animateDelayTimeInterval' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'animateDelayTimeInterval' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'animateDelayTimeInterval' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
957 | /// 开启亮度手势 默认true
958 | static var enableBrightnessGestures = true
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Video/VideoPlayerView.swift:958:16: warning: static property 'enableBrightnessGestures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
956 | static var animateDelayTimeInterval = TimeInterval(5)
957 | /// 开启亮度手势 默认true
958 | static var enableBrightnessGestures = true
| |- warning: static property 'enableBrightnessGestures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'enableBrightnessGestures' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'enableBrightnessGestures' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
959 | /// 开启音量手势 默认true
960 | static var enableVolumeGestures = true
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Video/VideoPlayerView.swift:960:16: warning: static property 'enableVolumeGestures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
958 | static var enableBrightnessGestures = true
959 | /// 开启音量手势 默认true
960 | static var enableVolumeGestures = true
| |- warning: static property 'enableVolumeGestures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'enableVolumeGestures' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'enableVolumeGestures' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
961 | /// 开启进度滑动手势 默认true
962 | static var enablePlaytimeGestures = true
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Video/VideoPlayerView.swift:962:16: warning: static property 'enablePlaytimeGestures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
960 | static var enableVolumeGestures = true
961 | /// 开启进度滑动手势 默认true
962 | static var enablePlaytimeGestures = true
| |- warning: static property 'enablePlaytimeGestures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'enablePlaytimeGestures' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'enablePlaytimeGestures' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
963 | /// 播放内核选择策略 先使用firstPlayer,失败了自动切换到secondPlayer,播放内核有KSAVPlayer、KSMEPlayer两个选项
964 | /// 是否能后台播放视频
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Video/VideoPlayerView.swift:965:16: warning: static property 'canBackgroundPlay' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
963 | /// 播放内核选择策略 先使用firstPlayer,失败了自动切换到secondPlayer,播放内核有KSAVPlayer、KSMEPlayer两个选项
964 | /// 是否能后台播放视频
965 | static var canBackgroundPlay = false
| |- warning: static property 'canBackgroundPlay' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'canBackgroundPlay' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'canBackgroundPlay' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
966 | }
967 |
[58/61] Compiling KSPlayer PlayerTransitionAnimator.swift
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Video/SeekView.swift:67:17: warning: main actor-isolated instance method 'set(text:isAdd:)' cannot be used to satisfy nonisolated requirement from protocol 'SeekViewProtocol'; this is an error in the Swift 6 language mode
11 | #endif
12 | public protocol SeekViewProtocol {
13 | func set(text: String, isAdd: Bool)
| `- note: mark the protocol requirement 'set(text:isAdd:)' 'async' to allow actor-isolated conformances
14 | }
15 |
:
64 | }
65 |
66 | extension SeekView: SeekViewProtocol {
| `- note: add '@preconcurrency' to the 'SeekViewProtocol' conformance to defer isolation checking to run time
67 | public func set(text: String, isAdd: Bool) {
| |- warning: main actor-isolated instance method 'set(text:isAdd:)' cannot be used to satisfy nonisolated requirement from protocol 'SeekViewProtocol'; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'set(text:isAdd:)' to make this instance method not isolated to the actor
68 | seekToLabel.text = text
69 | if !isAdd {
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Video/VideoPlayerView.swift:954:16: warning: static property 'topBarShowInCase' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
952 | public extension KSOptions {
953 | /// 顶部返回、标题、AirPlay按钮 显示选项,默认.Always,可选.HorizantalOnly、.None
954 | static var topBarShowInCase = KSPlayerTopBarShowCase.always
| |- warning: static property 'topBarShowInCase' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'topBarShowInCase' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'topBarShowInCase' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
955 | /// 自动隐藏操作栏的时间间隔 默认5秒
956 | static var animateDelayTimeInterval = TimeInterval(5)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Video/VideoPlayerView.swift:956:16: warning: static property 'animateDelayTimeInterval' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
954 | static var topBarShowInCase = KSPlayerTopBarShowCase.always
955 | /// 自动隐藏操作栏的时间间隔 默认5秒
956 | static var animateDelayTimeInterval = TimeInterval(5)
| |- warning: static property 'animateDelayTimeInterval' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'animateDelayTimeInterval' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'animateDelayTimeInterval' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
957 | /// 开启亮度手势 默认true
958 | static var enableBrightnessGestures = true
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Video/VideoPlayerView.swift:958:16: warning: static property 'enableBrightnessGestures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
956 | static var animateDelayTimeInterval = TimeInterval(5)
957 | /// 开启亮度手势 默认true
958 | static var enableBrightnessGestures = true
| |- warning: static property 'enableBrightnessGestures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'enableBrightnessGestures' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'enableBrightnessGestures' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
959 | /// 开启音量手势 默认true
960 | static var enableVolumeGestures = true
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Video/VideoPlayerView.swift:960:16: warning: static property 'enableVolumeGestures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
958 | static var enableBrightnessGestures = true
959 | /// 开启音量手势 默认true
960 | static var enableVolumeGestures = true
| |- warning: static property 'enableVolumeGestures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'enableVolumeGestures' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'enableVolumeGestures' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
961 | /// 开启进度滑动手势 默认true
962 | static var enablePlaytimeGestures = true
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Video/VideoPlayerView.swift:962:16: warning: static property 'enablePlaytimeGestures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
960 | static var enableVolumeGestures = true
961 | /// 开启进度滑动手势 默认true
962 | static var enablePlaytimeGestures = true
| |- warning: static property 'enablePlaytimeGestures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'enablePlaytimeGestures' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'enablePlaytimeGestures' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
963 | /// 播放内核选择策略 先使用firstPlayer,失败了自动切换到secondPlayer,播放内核有KSAVPlayer、KSMEPlayer两个选项
964 | /// 是否能后台播放视频
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Video/VideoPlayerView.swift:965:16: warning: static property 'canBackgroundPlay' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
963 | /// 播放内核选择策略 先使用firstPlayer,失败了自动切换到secondPlayer,播放内核有KSAVPlayer、KSMEPlayer两个选项
964 | /// 是否能后台播放视频
965 | static var canBackgroundPlay = false
| |- warning: static property 'canBackgroundPlay' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'canBackgroundPlay' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'canBackgroundPlay' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
966 | }
967 |
[59/61] Compiling KSPlayer SeekView.swift
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Video/SeekView.swift:67:17: warning: main actor-isolated instance method 'set(text:isAdd:)' cannot be used to satisfy nonisolated requirement from protocol 'SeekViewProtocol'; this is an error in the Swift 6 language mode
11 | #endif
12 | public protocol SeekViewProtocol {
13 | func set(text: String, isAdd: Bool)
| `- note: mark the protocol requirement 'set(text:isAdd:)' 'async' to allow actor-isolated conformances
14 | }
15 |
:
64 | }
65 |
66 | extension SeekView: SeekViewProtocol {
| `- note: add '@preconcurrency' to the 'SeekViewProtocol' conformance to defer isolation checking to run time
67 | public func set(text: String, isAdd: Bool) {
| |- warning: main actor-isolated instance method 'set(text:isAdd:)' cannot be used to satisfy nonisolated requirement from protocol 'SeekViewProtocol'; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'set(text:isAdd:)' to make this instance method not isolated to the actor
68 | seekToLabel.text = text
69 | if !isAdd {
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Video/VideoPlayerView.swift:954:16: warning: static property 'topBarShowInCase' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
952 | public extension KSOptions {
953 | /// 顶部返回、标题、AirPlay按钮 显示选项,默认.Always,可选.HorizantalOnly、.None
954 | static var topBarShowInCase = KSPlayerTopBarShowCase.always
| |- warning: static property 'topBarShowInCase' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'topBarShowInCase' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'topBarShowInCase' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
955 | /// 自动隐藏操作栏的时间间隔 默认5秒
956 | static var animateDelayTimeInterval = TimeInterval(5)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Video/VideoPlayerView.swift:956:16: warning: static property 'animateDelayTimeInterval' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
954 | static var topBarShowInCase = KSPlayerTopBarShowCase.always
955 | /// 自动隐藏操作栏的时间间隔 默认5秒
956 | static var animateDelayTimeInterval = TimeInterval(5)
| |- warning: static property 'animateDelayTimeInterval' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'animateDelayTimeInterval' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'animateDelayTimeInterval' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
957 | /// 开启亮度手势 默认true
958 | static var enableBrightnessGestures = true
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Video/VideoPlayerView.swift:958:16: warning: static property 'enableBrightnessGestures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
956 | static var animateDelayTimeInterval = TimeInterval(5)
957 | /// 开启亮度手势 默认true
958 | static var enableBrightnessGestures = true
| |- warning: static property 'enableBrightnessGestures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'enableBrightnessGestures' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'enableBrightnessGestures' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
959 | /// 开启音量手势 默认true
960 | static var enableVolumeGestures = true
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Video/VideoPlayerView.swift:960:16: warning: static property 'enableVolumeGestures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
958 | static var enableBrightnessGestures = true
959 | /// 开启音量手势 默认true
960 | static var enableVolumeGestures = true
| |- warning: static property 'enableVolumeGestures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'enableVolumeGestures' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'enableVolumeGestures' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
961 | /// 开启进度滑动手势 默认true
962 | static var enablePlaytimeGestures = true
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Video/VideoPlayerView.swift:962:16: warning: static property 'enablePlaytimeGestures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
960 | static var enableVolumeGestures = true
961 | /// 开启进度滑动手势 默认true
962 | static var enablePlaytimeGestures = true
| |- warning: static property 'enablePlaytimeGestures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'enablePlaytimeGestures' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'enablePlaytimeGestures' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
963 | /// 播放内核选择策略 先使用firstPlayer,失败了自动切换到secondPlayer,播放内核有KSAVPlayer、KSMEPlayer两个选项
964 | /// 是否能后台播放视频
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Video/VideoPlayerView.swift:965:16: warning: static property 'canBackgroundPlay' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
963 | /// 播放内核选择策略 先使用firstPlayer,失败了自动切换到secondPlayer,播放内核有KSAVPlayer、KSMEPlayer两个选项
964 | /// 是否能后台播放视频
965 | static var canBackgroundPlay = false
| |- warning: static property 'canBackgroundPlay' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'canBackgroundPlay' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'canBackgroundPlay' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
966 | }
967 |
[60/61] Compiling KSPlayer VideoPlayerView.swift
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Video/SeekView.swift:67:17: warning: main actor-isolated instance method 'set(text:isAdd:)' cannot be used to satisfy nonisolated requirement from protocol 'SeekViewProtocol'; this is an error in the Swift 6 language mode
11 | #endif
12 | public protocol SeekViewProtocol {
13 | func set(text: String, isAdd: Bool)
| `- note: mark the protocol requirement 'set(text:isAdd:)' 'async' to allow actor-isolated conformances
14 | }
15 |
:
64 | }
65 |
66 | extension SeekView: SeekViewProtocol {
| `- note: add '@preconcurrency' to the 'SeekViewProtocol' conformance to defer isolation checking to run time
67 | public func set(text: String, isAdd: Bool) {
| |- warning: main actor-isolated instance method 'set(text:isAdd:)' cannot be used to satisfy nonisolated requirement from protocol 'SeekViewProtocol'; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'set(text:isAdd:)' to make this instance method not isolated to the actor
68 | seekToLabel.text = text
69 | if !isAdd {
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Video/VideoPlayerView.swift:954:16: warning: static property 'topBarShowInCase' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
952 | public extension KSOptions {
953 | /// 顶部返回、标题、AirPlay按钮 显示选项,默认.Always,可选.HorizantalOnly、.None
954 | static var topBarShowInCase = KSPlayerTopBarShowCase.always
| |- warning: static property 'topBarShowInCase' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'topBarShowInCase' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'topBarShowInCase' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
955 | /// 自动隐藏操作栏的时间间隔 默认5秒
956 | static var animateDelayTimeInterval = TimeInterval(5)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Video/VideoPlayerView.swift:956:16: warning: static property 'animateDelayTimeInterval' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
954 | static var topBarShowInCase = KSPlayerTopBarShowCase.always
955 | /// 自动隐藏操作栏的时间间隔 默认5秒
956 | static var animateDelayTimeInterval = TimeInterval(5)
| |- warning: static property 'animateDelayTimeInterval' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'animateDelayTimeInterval' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'animateDelayTimeInterval' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
957 | /// 开启亮度手势 默认true
958 | static var enableBrightnessGestures = true
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Video/VideoPlayerView.swift:958:16: warning: static property 'enableBrightnessGestures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
956 | static var animateDelayTimeInterval = TimeInterval(5)
957 | /// 开启亮度手势 默认true
958 | static var enableBrightnessGestures = true
| |- warning: static property 'enableBrightnessGestures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'enableBrightnessGestures' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'enableBrightnessGestures' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
959 | /// 开启音量手势 默认true
960 | static var enableVolumeGestures = true
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Video/VideoPlayerView.swift:960:16: warning: static property 'enableVolumeGestures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
958 | static var enableBrightnessGestures = true
959 | /// 开启音量手势 默认true
960 | static var enableVolumeGestures = true
| |- warning: static property 'enableVolumeGestures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'enableVolumeGestures' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'enableVolumeGestures' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
961 | /// 开启进度滑动手势 默认true
962 | static var enablePlaytimeGestures = true
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Video/VideoPlayerView.swift:962:16: warning: static property 'enablePlaytimeGestures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
960 | static var enableVolumeGestures = true
961 | /// 开启进度滑动手势 默认true
962 | static var enablePlaytimeGestures = true
| |- warning: static property 'enablePlaytimeGestures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'enablePlaytimeGestures' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'enablePlaytimeGestures' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
963 | /// 播放内核选择策略 先使用firstPlayer,失败了自动切换到secondPlayer,播放内核有KSAVPlayer、KSMEPlayer两个选项
964 | /// 是否能后台播放视频
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Video/VideoPlayerView.swift:965:16: warning: static property 'canBackgroundPlay' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
963 | /// 播放内核选择策略 先使用firstPlayer,失败了自动切换到secondPlayer,播放内核有KSAVPlayer、KSMEPlayer两个选项
964 | /// 是否能后台播放视频
965 | static var canBackgroundPlay = false
| |- warning: static property 'canBackgroundPlay' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'canBackgroundPlay' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'canBackgroundPlay' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
966 | }
967 |
[61/61] Compiling KSPlayer resource_bundle_accessor.swift
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Video/SeekView.swift:67:17: warning: main actor-isolated instance method 'set(text:isAdd:)' cannot be used to satisfy nonisolated requirement from protocol 'SeekViewProtocol'; this is an error in the Swift 6 language mode
11 | #endif
12 | public protocol SeekViewProtocol {
13 | func set(text: String, isAdd: Bool)
| `- note: mark the protocol requirement 'set(text:isAdd:)' 'async' to allow actor-isolated conformances
14 | }
15 |
:
64 | }
65 |
66 | extension SeekView: SeekViewProtocol {
| `- note: add '@preconcurrency' to the 'SeekViewProtocol' conformance to defer isolation checking to run time
67 | public func set(text: String, isAdd: Bool) {
| |- warning: main actor-isolated instance method 'set(text:isAdd:)' cannot be used to satisfy nonisolated requirement from protocol 'SeekViewProtocol'; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'set(text:isAdd:)' to make this instance method not isolated to the actor
68 | seekToLabel.text = text
69 | if !isAdd {
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Video/VideoPlayerView.swift:954:16: warning: static property 'topBarShowInCase' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
952 | public extension KSOptions {
953 | /// 顶部返回、标题、AirPlay按钮 显示选项,默认.Always,可选.HorizantalOnly、.None
954 | static var topBarShowInCase = KSPlayerTopBarShowCase.always
| |- warning: static property 'topBarShowInCase' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'topBarShowInCase' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'topBarShowInCase' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
955 | /// 自动隐藏操作栏的时间间隔 默认5秒
956 | static var animateDelayTimeInterval = TimeInterval(5)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Video/VideoPlayerView.swift:956:16: warning: static property 'animateDelayTimeInterval' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
954 | static var topBarShowInCase = KSPlayerTopBarShowCase.always
955 | /// 自动隐藏操作栏的时间间隔 默认5秒
956 | static var animateDelayTimeInterval = TimeInterval(5)
| |- warning: static property 'animateDelayTimeInterval' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'animateDelayTimeInterval' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'animateDelayTimeInterval' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
957 | /// 开启亮度手势 默认true
958 | static var enableBrightnessGestures = true
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Video/VideoPlayerView.swift:958:16: warning: static property 'enableBrightnessGestures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
956 | static var animateDelayTimeInterval = TimeInterval(5)
957 | /// 开启亮度手势 默认true
958 | static var enableBrightnessGestures = true
| |- warning: static property 'enableBrightnessGestures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'enableBrightnessGestures' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'enableBrightnessGestures' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
959 | /// 开启音量手势 默认true
960 | static var enableVolumeGestures = true
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Video/VideoPlayerView.swift:960:16: warning: static property 'enableVolumeGestures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
958 | static var enableBrightnessGestures = true
959 | /// 开启音量手势 默认true
960 | static var enableVolumeGestures = true
| |- warning: static property 'enableVolumeGestures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'enableVolumeGestures' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'enableVolumeGestures' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
961 | /// 开启进度滑动手势 默认true
962 | static var enablePlaytimeGestures = true
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Video/VideoPlayerView.swift:962:16: warning: static property 'enablePlaytimeGestures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
960 | static var enableVolumeGestures = true
961 | /// 开启进度滑动手势 默认true
962 | static var enablePlaytimeGestures = true
| |- warning: static property 'enablePlaytimeGestures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'enablePlaytimeGestures' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'enablePlaytimeGestures' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
963 | /// 播放内核选择策略 先使用firstPlayer,失败了自动切换到secondPlayer,播放内核有KSAVPlayer、KSMEPlayer两个选项
964 | /// 是否能后台播放视频
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Video/VideoPlayerView.swift:965:16: warning: static property 'canBackgroundPlay' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
963 | /// 播放内核选择策略 先使用firstPlayer,失败了自动切换到secondPlayer,播放内核有KSAVPlayer、KSMEPlayer两个选项
964 | /// 是否能后台播放视频
965 | static var canBackgroundPlay = false
| |- warning: static property 'canBackgroundPlay' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'canBackgroundPlay' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'canBackgroundPlay' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
966 | }
967 |
Build of target: 'KSPlayer' complete! (3.19s)
error: unspecified("terminated(1): /Applications/Xcode-16.3.0.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift-symbolgraph-extract -module-name KSPlayer -target arm64-apple-macosx10.15 -module-cache-path /Users/admin/builder/spi-builder-workspace/.build/arm64-apple-macosx/debug/ModuleCache -sdk /Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk -F /Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/Frameworks -F /Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/PrivateFrameworks -I /Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/usr/lib -L /Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/usr/lib -Xcc -fmodule-map-file=/Users/admin/builder/spi-builder-workspace/.build/arm64-apple-macosx/debug/DisplayCriteria.build/module.modulemap -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/Sources/DisplayCriteria/include -Xcc -fmodule-map-file=/Users/admin/builder/spi-builder-workspace/.build/arm64-apple-macosx/debug/FFmpegKit.build/module.modulemap -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/FFmpegKit/include -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/Libswscale.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/Libswscale.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/Libswresample.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/Libswresample.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/Libavutil.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/Libavutil.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/Libavformat.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/Libavformat.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/Libavfilter.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/Libavfilter.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/Libavdevice.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/Libavdevice.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/Libavcodec.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/Libavcodec.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libsmbclient.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libsmbclient.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/gnutls.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/gnutls.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/hogweed.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/hogweed.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/nettle.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/nettle.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/gmp.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/gmp.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libbluray.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libbluray.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libfontconfig.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libfontconfig.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libass.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libass.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libharfbuzz.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libharfbuzz.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libfribidi.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libfribidi.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libfreetype.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libfreetype.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libsrt.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libsrt.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libzvbi.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libzvbi.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libplacebo.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libplacebo.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libdav1d.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libdav1d.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/lcms2.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/lcms2.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libshaderc_combined.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libshaderc_combined.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/MoltenVK.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/MoltenVK.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/arm64-apple-macosx/debug/Modules -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/KSPlayer output:\n <module-includes>:4:9: note: in file included from <module-includes>:4:\n #import \"/Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/FFmpegKit/include/avformat_shim.h\"\n ^\n /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/FFmpegKit/include/avformat_shim.h:4:9: error: \'Libavformat/avformat.h\' file not found\n #import <Libavformat/avformat.h>\n ^\n <unknown>:0: error: could not build Objective-C module \'FFmpegKit\'\n Error: Failed to load the module \'KSPlayer\'. Are you missing build dependencies or include/framework directories?\n See the previous error messages for details. Aborting.\n ")
Extracting symbol information for 'KSPlayer'...
warning: failed to retrieve search paths with pkg-config; maybe pkg-config is not installed
warning: you may be able to install sdl2 using your system-packager:
brew install sdl2
warning: you may be able to install sdl2 using your system-packager:
brew install sdl2
Building for debugging...
[0/3] Write swift-version-2F0A5646E1D333AE.txt
Build of product 'snippet-extract' complete! (0.29s)
warning: you may be able to install sdl2 using your system-packager:
brew install sdl2
warning: you may be able to install sdl2 using your system-packager:
brew install sdl2
Building for debugging...
[0/2] Compiling FFmpegKit FFmpegKit.c
[1/2] Write swift-version-2F0A5646E1D333AE.txt
Build of target: 'KSPlayer' complete! (0.60s)
error: unspecified("terminated(1): /Applications/Xcode-16.3.0.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift-symbolgraph-extract -module-name KSPlayer -target arm64-apple-macosx10.15 -module-cache-path /Users/admin/builder/spi-builder-workspace/.build/arm64-apple-macosx/debug/ModuleCache -sdk /Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk -F /Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/Frameworks -F /Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/PrivateFrameworks -I /Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/usr/lib -L /Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/usr/lib -Xcc -fmodule-map-file=/Users/admin/builder/spi-builder-workspace/.build/arm64-apple-macosx/debug/DisplayCriteria.build/module.modulemap -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/Sources/DisplayCriteria/include -Xcc -fmodule-map-file=/Users/admin/builder/spi-builder-workspace/.build/arm64-apple-macosx/debug/FFmpegKit.build/module.modulemap -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/FFmpegKit/include -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/Libswscale.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/Libswscale.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/Libswresample.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/Libswresample.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/Libavutil.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/Libavutil.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/Libavformat.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/Libavformat.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/Libavfilter.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/Libavfilter.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/Libavdevice.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/Libavdevice.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/Libavcodec.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/Libavcodec.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libsmbclient.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libsmbclient.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/gnutls.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/gnutls.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/hogweed.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/hogweed.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/nettle.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/nettle.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/gmp.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/gmp.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libbluray.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libbluray.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libfontconfig.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libfontconfig.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libass.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libass.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libharfbuzz.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libharfbuzz.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libfribidi.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libfribidi.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libfreetype.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libfreetype.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libsrt.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libsrt.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libzvbi.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libzvbi.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libplacebo.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libplacebo.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libdav1d.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libdav1d.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/lcms2.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/lcms2.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libshaderc_combined.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/libshaderc_combined.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/MoltenVK.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/MoltenVK.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/arm64-apple-macosx/debug/Modules -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/KSPlayer output:\n <module-includes>:4:9: note: in file included from <module-includes>:4:\n #import \"/Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/FFmpegKit/include/avformat_shim.h\"\n ^\n /Users/admin/builder/spi-builder-workspace/.build/checkouts/FFmpegKit/Sources/FFmpegKit/include/avformat_shim.h:4:9: error: \'Libavformat/avformat.h\' file not found\n #import <Libavformat/avformat.h>\n ^\n <unknown>:0: error: could not build Objective-C module \'FFmpegKit\'\n Error: Failed to load the module \'KSPlayer\'. 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.3.0.app xcrun swift package --allow-writing-to-directory .docs/kingslay/ksplayer/main generate-documentation --emit-digest --disable-indexing --output-path .docs/kingslay/ksplayer/main --hosting-base-path kingslay/ksplayer/main --source-service github --source-service-base-url https://github.com/kingslay/KSPlayer/blob/main --checkout-path $PWD --target KSPlayer))
✅ Doc result (failed) reported
Done.