Build Information
Successful build of KSPlayer, reference main (101cce), with Swift 6.2 for macOS (SPM) on 13 Dec 2025 00:03:55 UTC.
Swift 6 data race errors: 0
Build Command
env DEVELOPER_DIR=/Applications/Xcode-26.0.0.app xcrun swift build --arch arm64Build Log
173 | let bytesPerRow = CVPixelBufferGetBytesPerRowOfPlane(pbuf, i)
174 | var contents = pbuf.baseAddressOfPlane(at: i)
175 | var source = data[i]!
| `- warning: variable 'source' was never mutated; consider changing to 'let' constant
176 | if bufferPlaneCount < planeCount, i + 2 == planeCount {
177 | var sourceU = data[i]!
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/MEPlayer/ThumbnailController.swift:32:19: warning: type 'FFThumbnail' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
13 | import UIKit
14 | #endif
15 | public struct FFThumbnail {
| `- note: consider making struct 'FFThumbnail' conform to the 'Sendable' protocol
16 | public let image: UIImage
17 | public let time: TimeInterval
:
30 |
31 | public func generateThumbnail(for url: URL, thumbWidth: Int32 = 240) async throws -> [FFThumbnail] {
32 | try await Task {
| `- warning: type 'FFThumbnail' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
33 | try getPeeks(for: url, thumbWidth: thumbWidth)
34 | }.value
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/MEPlayer/ThumbnailController.swift:32:19: warning: type 'FFThumbnail' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
13 | import UIKit
14 | #endif
15 | public struct FFThumbnail {
| `- note: consider making struct 'FFThumbnail' conform to the 'Sendable' protocol
16 | public let image: UIImage
17 | public let time: TimeInterval
:
30 |
31 | public func generateThumbnail(for url: URL, thumbWidth: Int32 = 240) async throws -> [FFThumbnail] {
32 | try await Task {
| `- warning: type 'FFThumbnail' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
33 | try getPeeks(for: url, thumbWidth: thumbWidth)
34 | }.value
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/MEPlayer/ThumbnailController.swift:34:11: warning: type 'FFThumbnail' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
13 | import UIKit
14 | #endif
15 | public struct FFThumbnail {
| `- note: consider making struct 'FFThumbnail' conform to the 'Sendable' protocol
16 | public let image: UIImage
17 | public let time: TimeInterval
:
32 | try await Task {
33 | try getPeeks(for: url, thumbWidth: thumbWidth)
34 | }.value
| `- warning: type 'FFThumbnail' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
35 | }
36 |
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/MEPlayer/ThumbnailController.swift:72:13: warning: variable 'codecContext' was never mutated; consider changing to 'let' constant
70 | throw NSError(description: "Avg frame rate = 0, ignore")
71 | }
72 | var codecContext = try videoStream.pointee.codecpar.pointee.createContext(options: nil)
| `- warning: variable 'codecContext' was never mutated; consider changing to 'let' constant
73 | defer {
74 | avcodec_close(codecContext)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/MEPlayer/VideoToolboxDecode.swift:51:27: warning: capture of 'self' with non-Sendable type 'VideoToolboxDecode?' in a '@Sendable' closure [#SendableClosureCaptures]
11 | import VideoToolbox
12 |
13 | class VideoToolboxDecode: DecodeProtocol {
| `- note: class 'VideoToolboxDecode' does not conform to the 'Sendable' protocol
14 | private var session: DecompressionSession {
15 | didSet {
:
49 | let size = corePacket.size
50 | let status = VTDecompressionSessionDecodeFrame(session.decompressionSession, sampleBuffer: sampleBuffer, flags: flags, infoFlagsOut: &flagOut) { [weak self] status, infoFlags, imageBuffer, _, _ in
51 | guard let self, !infoFlags.contains(.frameDropped) else {
| `- warning: capture of 'self' with non-Sendable type 'VideoToolboxDecode?' in a '@Sendable' closure [#SendableClosureCaptures]
52 | return
53 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/MEPlayer/VideoToolboxDecode.swift:56:28: warning: capture of 'packet' with non-Sendable type 'Packet' in a '@Sendable' closure [#SendableClosureCaptures]
54 | guard status == noErr else {
55 | if status == kVTInvalidSessionErr || status == kVTVideoDecoderMalfunctionErr || status == kVTVideoDecoderBadDataErr {
56 | if packet.isKeyFrame {
| `- warning: capture of 'packet' with non-Sendable type 'Packet' in a '@Sendable' closure [#SendableClosureCaptures]
57 | completionHandler(.failure(NSError(errorCode: .codecVideoReceiveFrame, avErrorCode: status)))
58 | } else {
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/MEPlayer/Model.swift:195:13: note: class 'Packet' does not conform to the 'Sendable' protocol
193 | }
194 |
195 | final class Packet: ObjectQueueItem {
| `- note: class 'Packet' does not conform to the 'Sendable' protocol
196 | var duration: Int64 = 0
197 | var timestamp: Int64 = 0
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/MEPlayer/VideoToolboxDecode.swift:57:29: warning: capture of 'completionHandler' with non-Sendable type '(Result<any MEFrame, any Error>) -> Void' in a '@Sendable' closure [#SendableClosureCaptures]
55 | if status == kVTInvalidSessionErr || status == kVTVideoDecoderMalfunctionErr || status == kVTVideoDecoderBadDataErr {
56 | if packet.isKeyFrame {
57 | completionHandler(.failure(NSError(errorCode: .codecVideoReceiveFrame, avErrorCode: status)))
| |- warning: capture of 'completionHandler' with non-Sendable type '(Result<any MEFrame, any Error>) -> Void' in a '@Sendable' closure [#SendableClosureCaptures]
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
58 | } else {
59 | // 解决从后台切换到前台,解码失败的问题
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Metal/MetalRender.swift:34:77: warning: reference to var 'kvImage_YpCbCrToARGBMatrix_ITU_R_601_4' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
32 | }()
33 |
34 | private lazy var colorConversion601VideoRangeMatrixBuffer: MTLBuffer? = kvImage_YpCbCrToARGBMatrix_ITU_R_601_4.pointee.videoRange.buffer
| `- warning: reference to var 'kvImage_YpCbCrToARGBMatrix_ITU_R_601_4' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
35 |
36 | private lazy var colorConversion601FullRangeMatrixBuffer: MTLBuffer? = kvImage_YpCbCrToARGBMatrix_ITU_R_601_4.pointee.buffer
/Applications/Xcode-26.0.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.0.sdk/System/Library/Frameworks/Accelerate.framework/Frameworks/vImage.framework/Headers/vImage_Types.h:881:51: note: var declared here
879 | /*! @const kvImage_YpCbCrToARGBMatrix_ITU_R_601_4
880 | @abstract Y'CbCr->RGB conversion matrix for ITU-Recommendation BT.601-4 */
881 | extern VIMAGE_PF const vImage_YpCbCrToARGBMatrix *kvImage_YpCbCrToARGBMatrix_ITU_R_601_4 API_AVAILABLE(macos(10.10), ios(8.0), watchos(1.0), tvos(8.0));
| `- note: var declared here
882 |
883 | /*! @const kvImage_YpCbCrToARGBMatrix_ITU_R_709_2
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Metal/MetalRender.swift:36:76: warning: reference to var 'kvImage_YpCbCrToARGBMatrix_ITU_R_601_4' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
34 | private lazy var colorConversion601VideoRangeMatrixBuffer: MTLBuffer? = kvImage_YpCbCrToARGBMatrix_ITU_R_601_4.pointee.videoRange.buffer
35 |
36 | private lazy var colorConversion601FullRangeMatrixBuffer: MTLBuffer? = kvImage_YpCbCrToARGBMatrix_ITU_R_601_4.pointee.buffer
| `- warning: reference to var 'kvImage_YpCbCrToARGBMatrix_ITU_R_601_4' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
37 |
38 | private lazy var colorConversion709VideoRangeMatrixBuffer: MTLBuffer? = kvImage_YpCbCrToARGBMatrix_ITU_R_709_2.pointee.videoRange.buffer
/Applications/Xcode-26.0.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.0.sdk/System/Library/Frameworks/Accelerate.framework/Frameworks/vImage.framework/Headers/vImage_Types.h:881:51: note: var declared here
879 | /*! @const kvImage_YpCbCrToARGBMatrix_ITU_R_601_4
880 | @abstract Y'CbCr->RGB conversion matrix for ITU-Recommendation BT.601-4 */
881 | extern VIMAGE_PF const vImage_YpCbCrToARGBMatrix *kvImage_YpCbCrToARGBMatrix_ITU_R_601_4 API_AVAILABLE(macos(10.10), ios(8.0), watchos(1.0), tvos(8.0));
| `- note: var declared here
882 |
883 | /*! @const kvImage_YpCbCrToARGBMatrix_ITU_R_709_2
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Metal/MetalRender.swift:38:77: warning: reference to var 'kvImage_YpCbCrToARGBMatrix_ITU_R_709_2' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
36 | private lazy var colorConversion601FullRangeMatrixBuffer: MTLBuffer? = kvImage_YpCbCrToARGBMatrix_ITU_R_601_4.pointee.buffer
37 |
38 | private lazy var colorConversion709VideoRangeMatrixBuffer: MTLBuffer? = kvImage_YpCbCrToARGBMatrix_ITU_R_709_2.pointee.videoRange.buffer
| `- warning: reference to var 'kvImage_YpCbCrToARGBMatrix_ITU_R_709_2' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
39 |
40 | private lazy var colorConversion709FullRangeMatrixBuffer: MTLBuffer? = kvImage_YpCbCrToARGBMatrix_ITU_R_709_2.pointee.buffer
/Applications/Xcode-26.0.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.0.sdk/System/Library/Frameworks/Accelerate.framework/Frameworks/vImage.framework/Headers/vImage_Types.h:885:51: note: var declared here
883 | /*! @const kvImage_YpCbCrToARGBMatrix_ITU_R_709_2
884 | @abstract Y'CbCr->RGB conversion matrix for ITU-Recommendation BT.709-2 */
885 | extern VIMAGE_PF const vImage_YpCbCrToARGBMatrix *kvImage_YpCbCrToARGBMatrix_ITU_R_709_2 API_AVAILABLE(macos(10.10), ios(8.0), watchos(1.0), tvos(8.0));
| `- note: var declared here
886 | #endif
887 |
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Metal/MetalRender.swift:40:76: warning: reference to var 'kvImage_YpCbCrToARGBMatrix_ITU_R_709_2' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
38 | private lazy var colorConversion709VideoRangeMatrixBuffer: MTLBuffer? = kvImage_YpCbCrToARGBMatrix_ITU_R_709_2.pointee.videoRange.buffer
39 |
40 | private lazy var colorConversion709FullRangeMatrixBuffer: MTLBuffer? = kvImage_YpCbCrToARGBMatrix_ITU_R_709_2.pointee.buffer
| `- warning: reference to var 'kvImage_YpCbCrToARGBMatrix_ITU_R_709_2' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
41 |
42 | private lazy var colorConversionSMPTE240MVideoRangeMatrixBuffer: MTLBuffer? = kvImage_YpCbCrToARGBMatrix_SMPTE_240M_1995.videoRange.buffer
/Applications/Xcode-26.0.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.0.sdk/System/Library/Frameworks/Accelerate.framework/Frameworks/vImage.framework/Headers/vImage_Types.h:885:51: note: var declared here
883 | /*! @const kvImage_YpCbCrToARGBMatrix_ITU_R_709_2
884 | @abstract Y'CbCr->RGB conversion matrix for ITU-Recommendation BT.709-2 */
885 | extern VIMAGE_PF const vImage_YpCbCrToARGBMatrix *kvImage_YpCbCrToARGBMatrix_ITU_R_709_2 API_AVAILABLE(macos(10.10), ios(8.0), watchos(1.0), tvos(8.0));
| `- note: var declared here
886 | #endif
887 |
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/MEPlayer/ThumbnailController.swift:32:19: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
30 |
31 | public func generateThumbnail(for url: URL, thumbWidth: Int32 = 240) async throws -> [FFThumbnail] {
32 | try await Task {
| `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
33 | try getPeeks(for: url, thumbWidth: thumbWidth)
| `- note: closure captures 'self' which is accessible to code in the current task
34 | }.value
35 | }
[#SendableClosureCaptures]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures>
[78/91] Compiling KSPlayer VideoToolboxDecode.swift
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/MEPlayer/Resample.swift:175:25: warning: variable 'source' was never mutated; consider changing to 'let' constant
173 | let bytesPerRow = CVPixelBufferGetBytesPerRowOfPlane(pbuf, i)
174 | var contents = pbuf.baseAddressOfPlane(at: i)
175 | var source = data[i]!
| `- warning: variable 'source' was never mutated; consider changing to 'let' constant
176 | if bufferPlaneCount < planeCount, i + 2 == planeCount {
177 | var sourceU = data[i]!
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/MEPlayer/ThumbnailController.swift:32:19: warning: type 'FFThumbnail' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
13 | import UIKit
14 | #endif
15 | public struct FFThumbnail {
| `- note: consider making struct 'FFThumbnail' conform to the 'Sendable' protocol
16 | public let image: UIImage
17 | public let time: TimeInterval
:
30 |
31 | public func generateThumbnail(for url: URL, thumbWidth: Int32 = 240) async throws -> [FFThumbnail] {
32 | try await Task {
| `- warning: type 'FFThumbnail' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
33 | try getPeeks(for: url, thumbWidth: thumbWidth)
34 | }.value
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/MEPlayer/ThumbnailController.swift:32:19: warning: type 'FFThumbnail' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
13 | import UIKit
14 | #endif
15 | public struct FFThumbnail {
| `- note: consider making struct 'FFThumbnail' conform to the 'Sendable' protocol
16 | public let image: UIImage
17 | public let time: TimeInterval
:
30 |
31 | public func generateThumbnail(for url: URL, thumbWidth: Int32 = 240) async throws -> [FFThumbnail] {
32 | try await Task {
| `- warning: type 'FFThumbnail' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
33 | try getPeeks(for: url, thumbWidth: thumbWidth)
34 | }.value
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/MEPlayer/ThumbnailController.swift:34:11: warning: type 'FFThumbnail' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
13 | import UIKit
14 | #endif
15 | public struct FFThumbnail {
| `- note: consider making struct 'FFThumbnail' conform to the 'Sendable' protocol
16 | public let image: UIImage
17 | public let time: TimeInterval
:
32 | try await Task {
33 | try getPeeks(for: url, thumbWidth: thumbWidth)
34 | }.value
| `- warning: type 'FFThumbnail' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
35 | }
36 |
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/MEPlayer/ThumbnailController.swift:72:13: warning: variable 'codecContext' was never mutated; consider changing to 'let' constant
70 | throw NSError(description: "Avg frame rate = 0, ignore")
71 | }
72 | var codecContext = try videoStream.pointee.codecpar.pointee.createContext(options: nil)
| `- warning: variable 'codecContext' was never mutated; consider changing to 'let' constant
73 | defer {
74 | avcodec_close(codecContext)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/MEPlayer/VideoToolboxDecode.swift:51:27: warning: capture of 'self' with non-Sendable type 'VideoToolboxDecode?' in a '@Sendable' closure [#SendableClosureCaptures]
11 | import VideoToolbox
12 |
13 | class VideoToolboxDecode: DecodeProtocol {
| `- note: class 'VideoToolboxDecode' does not conform to the 'Sendable' protocol
14 | private var session: DecompressionSession {
15 | didSet {
:
49 | let size = corePacket.size
50 | let status = VTDecompressionSessionDecodeFrame(session.decompressionSession, sampleBuffer: sampleBuffer, flags: flags, infoFlagsOut: &flagOut) { [weak self] status, infoFlags, imageBuffer, _, _ in
51 | guard let self, !infoFlags.contains(.frameDropped) else {
| `- warning: capture of 'self' with non-Sendable type 'VideoToolboxDecode?' in a '@Sendable' closure [#SendableClosureCaptures]
52 | return
53 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/MEPlayer/VideoToolboxDecode.swift:56:28: warning: capture of 'packet' with non-Sendable type 'Packet' in a '@Sendable' closure [#SendableClosureCaptures]
54 | guard status == noErr else {
55 | if status == kVTInvalidSessionErr || status == kVTVideoDecoderMalfunctionErr || status == kVTVideoDecoderBadDataErr {
56 | if packet.isKeyFrame {
| `- warning: capture of 'packet' with non-Sendable type 'Packet' in a '@Sendable' closure [#SendableClosureCaptures]
57 | completionHandler(.failure(NSError(errorCode: .codecVideoReceiveFrame, avErrorCode: status)))
58 | } else {
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/MEPlayer/Model.swift:195:13: note: class 'Packet' does not conform to the 'Sendable' protocol
193 | }
194 |
195 | final class Packet: ObjectQueueItem {
| `- note: class 'Packet' does not conform to the 'Sendable' protocol
196 | var duration: Int64 = 0
197 | var timestamp: Int64 = 0
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/MEPlayer/VideoToolboxDecode.swift:57:29: warning: capture of 'completionHandler' with non-Sendable type '(Result<any MEFrame, any Error>) -> Void' in a '@Sendable' closure [#SendableClosureCaptures]
55 | if status == kVTInvalidSessionErr || status == kVTVideoDecoderMalfunctionErr || status == kVTVideoDecoderBadDataErr {
56 | if packet.isKeyFrame {
57 | completionHandler(.failure(NSError(errorCode: .codecVideoReceiveFrame, avErrorCode: status)))
| |- warning: capture of 'completionHandler' with non-Sendable type '(Result<any MEFrame, any Error>) -> Void' in a '@Sendable' closure [#SendableClosureCaptures]
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
58 | } else {
59 | // 解决从后台切换到前台,解码失败的问题
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Metal/MetalRender.swift:34:77: warning: reference to var 'kvImage_YpCbCrToARGBMatrix_ITU_R_601_4' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
32 | }()
33 |
34 | private lazy var colorConversion601VideoRangeMatrixBuffer: MTLBuffer? = kvImage_YpCbCrToARGBMatrix_ITU_R_601_4.pointee.videoRange.buffer
| `- warning: reference to var 'kvImage_YpCbCrToARGBMatrix_ITU_R_601_4' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
35 |
36 | private lazy var colorConversion601FullRangeMatrixBuffer: MTLBuffer? = kvImage_YpCbCrToARGBMatrix_ITU_R_601_4.pointee.buffer
/Applications/Xcode-26.0.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.0.sdk/System/Library/Frameworks/Accelerate.framework/Frameworks/vImage.framework/Headers/vImage_Types.h:881:51: note: var declared here
879 | /*! @const kvImage_YpCbCrToARGBMatrix_ITU_R_601_4
880 | @abstract Y'CbCr->RGB conversion matrix for ITU-Recommendation BT.601-4 */
881 | extern VIMAGE_PF const vImage_YpCbCrToARGBMatrix *kvImage_YpCbCrToARGBMatrix_ITU_R_601_4 API_AVAILABLE(macos(10.10), ios(8.0), watchos(1.0), tvos(8.0));
| `- note: var declared here
882 |
883 | /*! @const kvImage_YpCbCrToARGBMatrix_ITU_R_709_2
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Metal/MetalRender.swift:36:76: warning: reference to var 'kvImage_YpCbCrToARGBMatrix_ITU_R_601_4' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
34 | private lazy var colorConversion601VideoRangeMatrixBuffer: MTLBuffer? = kvImage_YpCbCrToARGBMatrix_ITU_R_601_4.pointee.videoRange.buffer
35 |
36 | private lazy var colorConversion601FullRangeMatrixBuffer: MTLBuffer? = kvImage_YpCbCrToARGBMatrix_ITU_R_601_4.pointee.buffer
| `- warning: reference to var 'kvImage_YpCbCrToARGBMatrix_ITU_R_601_4' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
37 |
38 | private lazy var colorConversion709VideoRangeMatrixBuffer: MTLBuffer? = kvImage_YpCbCrToARGBMatrix_ITU_R_709_2.pointee.videoRange.buffer
/Applications/Xcode-26.0.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.0.sdk/System/Library/Frameworks/Accelerate.framework/Frameworks/vImage.framework/Headers/vImage_Types.h:881:51: note: var declared here
879 | /*! @const kvImage_YpCbCrToARGBMatrix_ITU_R_601_4
880 | @abstract Y'CbCr->RGB conversion matrix for ITU-Recommendation BT.601-4 */
881 | extern VIMAGE_PF const vImage_YpCbCrToARGBMatrix *kvImage_YpCbCrToARGBMatrix_ITU_R_601_4 API_AVAILABLE(macos(10.10), ios(8.0), watchos(1.0), tvos(8.0));
| `- note: var declared here
882 |
883 | /*! @const kvImage_YpCbCrToARGBMatrix_ITU_R_709_2
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Metal/MetalRender.swift:38:77: warning: reference to var 'kvImage_YpCbCrToARGBMatrix_ITU_R_709_2' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
36 | private lazy var colorConversion601FullRangeMatrixBuffer: MTLBuffer? = kvImage_YpCbCrToARGBMatrix_ITU_R_601_4.pointee.buffer
37 |
38 | private lazy var colorConversion709VideoRangeMatrixBuffer: MTLBuffer? = kvImage_YpCbCrToARGBMatrix_ITU_R_709_2.pointee.videoRange.buffer
| `- warning: reference to var 'kvImage_YpCbCrToARGBMatrix_ITU_R_709_2' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
39 |
40 | private lazy var colorConversion709FullRangeMatrixBuffer: MTLBuffer? = kvImage_YpCbCrToARGBMatrix_ITU_R_709_2.pointee.buffer
/Applications/Xcode-26.0.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.0.sdk/System/Library/Frameworks/Accelerate.framework/Frameworks/vImage.framework/Headers/vImage_Types.h:885:51: note: var declared here
883 | /*! @const kvImage_YpCbCrToARGBMatrix_ITU_R_709_2
884 | @abstract Y'CbCr->RGB conversion matrix for ITU-Recommendation BT.709-2 */
885 | extern VIMAGE_PF const vImage_YpCbCrToARGBMatrix *kvImage_YpCbCrToARGBMatrix_ITU_R_709_2 API_AVAILABLE(macos(10.10), ios(8.0), watchos(1.0), tvos(8.0));
| `- note: var declared here
886 | #endif
887 |
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Metal/MetalRender.swift:40:76: warning: reference to var 'kvImage_YpCbCrToARGBMatrix_ITU_R_709_2' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
38 | private lazy var colorConversion709VideoRangeMatrixBuffer: MTLBuffer? = kvImage_YpCbCrToARGBMatrix_ITU_R_709_2.pointee.videoRange.buffer
39 |
40 | private lazy var colorConversion709FullRangeMatrixBuffer: MTLBuffer? = kvImage_YpCbCrToARGBMatrix_ITU_R_709_2.pointee.buffer
| `- warning: reference to var 'kvImage_YpCbCrToARGBMatrix_ITU_R_709_2' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
41 |
42 | private lazy var colorConversionSMPTE240MVideoRangeMatrixBuffer: MTLBuffer? = kvImage_YpCbCrToARGBMatrix_SMPTE_240M_1995.videoRange.buffer
/Applications/Xcode-26.0.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.0.sdk/System/Library/Frameworks/Accelerate.framework/Frameworks/vImage.framework/Headers/vImage_Types.h:885:51: note: var declared here
883 | /*! @const kvImage_YpCbCrToARGBMatrix_ITU_R_709_2
884 | @abstract Y'CbCr->RGB conversion matrix for ITU-Recommendation BT.709-2 */
885 | extern VIMAGE_PF const vImage_YpCbCrToARGBMatrix *kvImage_YpCbCrToARGBMatrix_ITU_R_709_2 API_AVAILABLE(macos(10.10), ios(8.0), watchos(1.0), tvos(8.0));
| `- note: var declared here
886 | #endif
887 |
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/MEPlayer/ThumbnailController.swift:32:19: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
30 |
31 | public func generateThumbnail(for url: URL, thumbWidth: Int32 = 240) async throws -> [FFThumbnail] {
32 | try await Task {
| `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
33 | try getPeeks(for: url, thumbWidth: thumbWidth)
| `- note: closure captures 'self' which is accessible to code in the current task
34 | }.value
35 | }
[#SendableClosureCaptures]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures>
[79/91] Compiling KSPlayer DisplayModel.swift
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/MEPlayer/Resample.swift:175:25: warning: variable 'source' was never mutated; consider changing to 'let' constant
173 | let bytesPerRow = CVPixelBufferGetBytesPerRowOfPlane(pbuf, i)
174 | var contents = pbuf.baseAddressOfPlane(at: i)
175 | var source = data[i]!
| `- warning: variable 'source' was never mutated; consider changing to 'let' constant
176 | if bufferPlaneCount < planeCount, i + 2 == planeCount {
177 | var sourceU = data[i]!
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/MEPlayer/ThumbnailController.swift:32:19: warning: type 'FFThumbnail' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
13 | import UIKit
14 | #endif
15 | public struct FFThumbnail {
| `- note: consider making struct 'FFThumbnail' conform to the 'Sendable' protocol
16 | public let image: UIImage
17 | public let time: TimeInterval
:
30 |
31 | public func generateThumbnail(for url: URL, thumbWidth: Int32 = 240) async throws -> [FFThumbnail] {
32 | try await Task {
| `- warning: type 'FFThumbnail' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
33 | try getPeeks(for: url, thumbWidth: thumbWidth)
34 | }.value
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/MEPlayer/ThumbnailController.swift:32:19: warning: type 'FFThumbnail' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
13 | import UIKit
14 | #endif
15 | public struct FFThumbnail {
| `- note: consider making struct 'FFThumbnail' conform to the 'Sendable' protocol
16 | public let image: UIImage
17 | public let time: TimeInterval
:
30 |
31 | public func generateThumbnail(for url: URL, thumbWidth: Int32 = 240) async throws -> [FFThumbnail] {
32 | try await Task {
| `- warning: type 'FFThumbnail' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
33 | try getPeeks(for: url, thumbWidth: thumbWidth)
34 | }.value
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/MEPlayer/ThumbnailController.swift:34:11: warning: type 'FFThumbnail' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
13 | import UIKit
14 | #endif
15 | public struct FFThumbnail {
| `- note: consider making struct 'FFThumbnail' conform to the 'Sendable' protocol
16 | public let image: UIImage
17 | public let time: TimeInterval
:
32 | try await Task {
33 | try getPeeks(for: url, thumbWidth: thumbWidth)
34 | }.value
| `- warning: type 'FFThumbnail' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
35 | }
36 |
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/MEPlayer/ThumbnailController.swift:72:13: warning: variable 'codecContext' was never mutated; consider changing to 'let' constant
70 | throw NSError(description: "Avg frame rate = 0, ignore")
71 | }
72 | var codecContext = try videoStream.pointee.codecpar.pointee.createContext(options: nil)
| `- warning: variable 'codecContext' was never mutated; consider changing to 'let' constant
73 | defer {
74 | avcodec_close(codecContext)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/MEPlayer/VideoToolboxDecode.swift:51:27: warning: capture of 'self' with non-Sendable type 'VideoToolboxDecode?' in a '@Sendable' closure [#SendableClosureCaptures]
11 | import VideoToolbox
12 |
13 | class VideoToolboxDecode: DecodeProtocol {
| `- note: class 'VideoToolboxDecode' does not conform to the 'Sendable' protocol
14 | private var session: DecompressionSession {
15 | didSet {
:
49 | let size = corePacket.size
50 | let status = VTDecompressionSessionDecodeFrame(session.decompressionSession, sampleBuffer: sampleBuffer, flags: flags, infoFlagsOut: &flagOut) { [weak self] status, infoFlags, imageBuffer, _, _ in
51 | guard let self, !infoFlags.contains(.frameDropped) else {
| `- warning: capture of 'self' with non-Sendable type 'VideoToolboxDecode?' in a '@Sendable' closure [#SendableClosureCaptures]
52 | return
53 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/MEPlayer/VideoToolboxDecode.swift:56:28: warning: capture of 'packet' with non-Sendable type 'Packet' in a '@Sendable' closure [#SendableClosureCaptures]
54 | guard status == noErr else {
55 | if status == kVTInvalidSessionErr || status == kVTVideoDecoderMalfunctionErr || status == kVTVideoDecoderBadDataErr {
56 | if packet.isKeyFrame {
| `- warning: capture of 'packet' with non-Sendable type 'Packet' in a '@Sendable' closure [#SendableClosureCaptures]
57 | completionHandler(.failure(NSError(errorCode: .codecVideoReceiveFrame, avErrorCode: status)))
58 | } else {
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/MEPlayer/Model.swift:195:13: note: class 'Packet' does not conform to the 'Sendable' protocol
193 | }
194 |
195 | final class Packet: ObjectQueueItem {
| `- note: class 'Packet' does not conform to the 'Sendable' protocol
196 | var duration: Int64 = 0
197 | var timestamp: Int64 = 0
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/MEPlayer/VideoToolboxDecode.swift:57:29: warning: capture of 'completionHandler' with non-Sendable type '(Result<any MEFrame, any Error>) -> Void' in a '@Sendable' closure [#SendableClosureCaptures]
55 | if status == kVTInvalidSessionErr || status == kVTVideoDecoderMalfunctionErr || status == kVTVideoDecoderBadDataErr {
56 | if packet.isKeyFrame {
57 | completionHandler(.failure(NSError(errorCode: .codecVideoReceiveFrame, avErrorCode: status)))
| |- warning: capture of 'completionHandler' with non-Sendable type '(Result<any MEFrame, any Error>) -> Void' in a '@Sendable' closure [#SendableClosureCaptures]
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
58 | } else {
59 | // 解决从后台切换到前台,解码失败的问题
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Metal/MetalRender.swift:34:77: warning: reference to var 'kvImage_YpCbCrToARGBMatrix_ITU_R_601_4' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
32 | }()
33 |
34 | private lazy var colorConversion601VideoRangeMatrixBuffer: MTLBuffer? = kvImage_YpCbCrToARGBMatrix_ITU_R_601_4.pointee.videoRange.buffer
| `- warning: reference to var 'kvImage_YpCbCrToARGBMatrix_ITU_R_601_4' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
35 |
36 | private lazy var colorConversion601FullRangeMatrixBuffer: MTLBuffer? = kvImage_YpCbCrToARGBMatrix_ITU_R_601_4.pointee.buffer
/Applications/Xcode-26.0.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.0.sdk/System/Library/Frameworks/Accelerate.framework/Frameworks/vImage.framework/Headers/vImage_Types.h:881:51: note: var declared here
879 | /*! @const kvImage_YpCbCrToARGBMatrix_ITU_R_601_4
880 | @abstract Y'CbCr->RGB conversion matrix for ITU-Recommendation BT.601-4 */
881 | extern VIMAGE_PF const vImage_YpCbCrToARGBMatrix *kvImage_YpCbCrToARGBMatrix_ITU_R_601_4 API_AVAILABLE(macos(10.10), ios(8.0), watchos(1.0), tvos(8.0));
| `- note: var declared here
882 |
883 | /*! @const kvImage_YpCbCrToARGBMatrix_ITU_R_709_2
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Metal/MetalRender.swift:36:76: warning: reference to var 'kvImage_YpCbCrToARGBMatrix_ITU_R_601_4' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
34 | private lazy var colorConversion601VideoRangeMatrixBuffer: MTLBuffer? = kvImage_YpCbCrToARGBMatrix_ITU_R_601_4.pointee.videoRange.buffer
35 |
36 | private lazy var colorConversion601FullRangeMatrixBuffer: MTLBuffer? = kvImage_YpCbCrToARGBMatrix_ITU_R_601_4.pointee.buffer
| `- warning: reference to var 'kvImage_YpCbCrToARGBMatrix_ITU_R_601_4' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
37 |
38 | private lazy var colorConversion709VideoRangeMatrixBuffer: MTLBuffer? = kvImage_YpCbCrToARGBMatrix_ITU_R_709_2.pointee.videoRange.buffer
/Applications/Xcode-26.0.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.0.sdk/System/Library/Frameworks/Accelerate.framework/Frameworks/vImage.framework/Headers/vImage_Types.h:881:51: note: var declared here
879 | /*! @const kvImage_YpCbCrToARGBMatrix_ITU_R_601_4
880 | @abstract Y'CbCr->RGB conversion matrix for ITU-Recommendation BT.601-4 */
881 | extern VIMAGE_PF const vImage_YpCbCrToARGBMatrix *kvImage_YpCbCrToARGBMatrix_ITU_R_601_4 API_AVAILABLE(macos(10.10), ios(8.0), watchos(1.0), tvos(8.0));
| `- note: var declared here
882 |
883 | /*! @const kvImage_YpCbCrToARGBMatrix_ITU_R_709_2
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Metal/MetalRender.swift:38:77: warning: reference to var 'kvImage_YpCbCrToARGBMatrix_ITU_R_709_2' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
36 | private lazy var colorConversion601FullRangeMatrixBuffer: MTLBuffer? = kvImage_YpCbCrToARGBMatrix_ITU_R_601_4.pointee.buffer
37 |
38 | private lazy var colorConversion709VideoRangeMatrixBuffer: MTLBuffer? = kvImage_YpCbCrToARGBMatrix_ITU_R_709_2.pointee.videoRange.buffer
| `- warning: reference to var 'kvImage_YpCbCrToARGBMatrix_ITU_R_709_2' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
39 |
40 | private lazy var colorConversion709FullRangeMatrixBuffer: MTLBuffer? = kvImage_YpCbCrToARGBMatrix_ITU_R_709_2.pointee.buffer
/Applications/Xcode-26.0.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.0.sdk/System/Library/Frameworks/Accelerate.framework/Frameworks/vImage.framework/Headers/vImage_Types.h:885:51: note: var declared here
883 | /*! @const kvImage_YpCbCrToARGBMatrix_ITU_R_709_2
884 | @abstract Y'CbCr->RGB conversion matrix for ITU-Recommendation BT.709-2 */
885 | extern VIMAGE_PF const vImage_YpCbCrToARGBMatrix *kvImage_YpCbCrToARGBMatrix_ITU_R_709_2 API_AVAILABLE(macos(10.10), ios(8.0), watchos(1.0), tvos(8.0));
| `- note: var declared here
886 | #endif
887 |
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Metal/MetalRender.swift:40:76: warning: reference to var 'kvImage_YpCbCrToARGBMatrix_ITU_R_709_2' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
38 | private lazy var colorConversion709VideoRangeMatrixBuffer: MTLBuffer? = kvImage_YpCbCrToARGBMatrix_ITU_R_709_2.pointee.videoRange.buffer
39 |
40 | private lazy var colorConversion709FullRangeMatrixBuffer: MTLBuffer? = kvImage_YpCbCrToARGBMatrix_ITU_R_709_2.pointee.buffer
| `- warning: reference to var 'kvImage_YpCbCrToARGBMatrix_ITU_R_709_2' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
41 |
42 | private lazy var colorConversionSMPTE240MVideoRangeMatrixBuffer: MTLBuffer? = kvImage_YpCbCrToARGBMatrix_SMPTE_240M_1995.videoRange.buffer
/Applications/Xcode-26.0.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.0.sdk/System/Library/Frameworks/Accelerate.framework/Frameworks/vImage.framework/Headers/vImage_Types.h:885:51: note: var declared here
883 | /*! @const kvImage_YpCbCrToARGBMatrix_ITU_R_709_2
884 | @abstract Y'CbCr->RGB conversion matrix for ITU-Recommendation BT.709-2 */
885 | extern VIMAGE_PF const vImage_YpCbCrToARGBMatrix *kvImage_YpCbCrToARGBMatrix_ITU_R_709_2 API_AVAILABLE(macos(10.10), ios(8.0), watchos(1.0), tvos(8.0));
| `- note: var declared here
886 | #endif
887 |
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/MEPlayer/ThumbnailController.swift:32:19: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
30 |
31 | public func generateThumbnail(for url: URL, thumbWidth: Int32 = 240) async throws -> [FFThumbnail] {
32 | try await Task {
| `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
33 | try getPeeks(for: url, thumbWidth: thumbWidth)
| `- note: closure captures 'self' which is accessible to code in the current task
34 | }.value
35 | }
[#SendableClosureCaptures]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures>
[80/91] Compiling KSPlayer MetalRender.swift
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/MEPlayer/Resample.swift:175:25: warning: variable 'source' was never mutated; consider changing to 'let' constant
173 | let bytesPerRow = CVPixelBufferGetBytesPerRowOfPlane(pbuf, i)
174 | var contents = pbuf.baseAddressOfPlane(at: i)
175 | var source = data[i]!
| `- warning: variable 'source' was never mutated; consider changing to 'let' constant
176 | if bufferPlaneCount < planeCount, i + 2 == planeCount {
177 | var sourceU = data[i]!
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/MEPlayer/ThumbnailController.swift:32:19: warning: type 'FFThumbnail' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
13 | import UIKit
14 | #endif
15 | public struct FFThumbnail {
| `- note: consider making struct 'FFThumbnail' conform to the 'Sendable' protocol
16 | public let image: UIImage
17 | public let time: TimeInterval
:
30 |
31 | public func generateThumbnail(for url: URL, thumbWidth: Int32 = 240) async throws -> [FFThumbnail] {
32 | try await Task {
| `- warning: type 'FFThumbnail' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
33 | try getPeeks(for: url, thumbWidth: thumbWidth)
34 | }.value
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/MEPlayer/ThumbnailController.swift:32:19: warning: type 'FFThumbnail' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
13 | import UIKit
14 | #endif
15 | public struct FFThumbnail {
| `- note: consider making struct 'FFThumbnail' conform to the 'Sendable' protocol
16 | public let image: UIImage
17 | public let time: TimeInterval
:
30 |
31 | public func generateThumbnail(for url: URL, thumbWidth: Int32 = 240) async throws -> [FFThumbnail] {
32 | try await Task {
| `- warning: type 'FFThumbnail' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
33 | try getPeeks(for: url, thumbWidth: thumbWidth)
34 | }.value
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/MEPlayer/ThumbnailController.swift:34:11: warning: type 'FFThumbnail' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
13 | import UIKit
14 | #endif
15 | public struct FFThumbnail {
| `- note: consider making struct 'FFThumbnail' conform to the 'Sendable' protocol
16 | public let image: UIImage
17 | public let time: TimeInterval
:
32 | try await Task {
33 | try getPeeks(for: url, thumbWidth: thumbWidth)
34 | }.value
| `- warning: type 'FFThumbnail' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
35 | }
36 |
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/MEPlayer/ThumbnailController.swift:72:13: warning: variable 'codecContext' was never mutated; consider changing to 'let' constant
70 | throw NSError(description: "Avg frame rate = 0, ignore")
71 | }
72 | var codecContext = try videoStream.pointee.codecpar.pointee.createContext(options: nil)
| `- warning: variable 'codecContext' was never mutated; consider changing to 'let' constant
73 | defer {
74 | avcodec_close(codecContext)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/MEPlayer/VideoToolboxDecode.swift:51:27: warning: capture of 'self' with non-Sendable type 'VideoToolboxDecode?' in a '@Sendable' closure [#SendableClosureCaptures]
11 | import VideoToolbox
12 |
13 | class VideoToolboxDecode: DecodeProtocol {
| `- note: class 'VideoToolboxDecode' does not conform to the 'Sendable' protocol
14 | private var session: DecompressionSession {
15 | didSet {
:
49 | let size = corePacket.size
50 | let status = VTDecompressionSessionDecodeFrame(session.decompressionSession, sampleBuffer: sampleBuffer, flags: flags, infoFlagsOut: &flagOut) { [weak self] status, infoFlags, imageBuffer, _, _ in
51 | guard let self, !infoFlags.contains(.frameDropped) else {
| `- warning: capture of 'self' with non-Sendable type 'VideoToolboxDecode?' in a '@Sendable' closure [#SendableClosureCaptures]
52 | return
53 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/MEPlayer/VideoToolboxDecode.swift:56:28: warning: capture of 'packet' with non-Sendable type 'Packet' in a '@Sendable' closure [#SendableClosureCaptures]
54 | guard status == noErr else {
55 | if status == kVTInvalidSessionErr || status == kVTVideoDecoderMalfunctionErr || status == kVTVideoDecoderBadDataErr {
56 | if packet.isKeyFrame {
| `- warning: capture of 'packet' with non-Sendable type 'Packet' in a '@Sendable' closure [#SendableClosureCaptures]
57 | completionHandler(.failure(NSError(errorCode: .codecVideoReceiveFrame, avErrorCode: status)))
58 | } else {
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/MEPlayer/Model.swift:195:13: note: class 'Packet' does not conform to the 'Sendable' protocol
193 | }
194 |
195 | final class Packet: ObjectQueueItem {
| `- note: class 'Packet' does not conform to the 'Sendable' protocol
196 | var duration: Int64 = 0
197 | var timestamp: Int64 = 0
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/MEPlayer/VideoToolboxDecode.swift:57:29: warning: capture of 'completionHandler' with non-Sendable type '(Result<any MEFrame, any Error>) -> Void' in a '@Sendable' closure [#SendableClosureCaptures]
55 | if status == kVTInvalidSessionErr || status == kVTVideoDecoderMalfunctionErr || status == kVTVideoDecoderBadDataErr {
56 | if packet.isKeyFrame {
57 | completionHandler(.failure(NSError(errorCode: .codecVideoReceiveFrame, avErrorCode: status)))
| |- warning: capture of 'completionHandler' with non-Sendable type '(Result<any MEFrame, any Error>) -> Void' in a '@Sendable' closure [#SendableClosureCaptures]
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
58 | } else {
59 | // 解决从后台切换到前台,解码失败的问题
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Metal/MetalRender.swift:34:77: warning: reference to var 'kvImage_YpCbCrToARGBMatrix_ITU_R_601_4' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
32 | }()
33 |
34 | private lazy var colorConversion601VideoRangeMatrixBuffer: MTLBuffer? = kvImage_YpCbCrToARGBMatrix_ITU_R_601_4.pointee.videoRange.buffer
| `- warning: reference to var 'kvImage_YpCbCrToARGBMatrix_ITU_R_601_4' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
35 |
36 | private lazy var colorConversion601FullRangeMatrixBuffer: MTLBuffer? = kvImage_YpCbCrToARGBMatrix_ITU_R_601_4.pointee.buffer
/Applications/Xcode-26.0.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.0.sdk/System/Library/Frameworks/Accelerate.framework/Frameworks/vImage.framework/Headers/vImage_Types.h:881:51: note: var declared here
879 | /*! @const kvImage_YpCbCrToARGBMatrix_ITU_R_601_4
880 | @abstract Y'CbCr->RGB conversion matrix for ITU-Recommendation BT.601-4 */
881 | extern VIMAGE_PF const vImage_YpCbCrToARGBMatrix *kvImage_YpCbCrToARGBMatrix_ITU_R_601_4 API_AVAILABLE(macos(10.10), ios(8.0), watchos(1.0), tvos(8.0));
| `- note: var declared here
882 |
883 | /*! @const kvImage_YpCbCrToARGBMatrix_ITU_R_709_2
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Metal/MetalRender.swift:36:76: warning: reference to var 'kvImage_YpCbCrToARGBMatrix_ITU_R_601_4' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
34 | private lazy var colorConversion601VideoRangeMatrixBuffer: MTLBuffer? = kvImage_YpCbCrToARGBMatrix_ITU_R_601_4.pointee.videoRange.buffer
35 |
36 | private lazy var colorConversion601FullRangeMatrixBuffer: MTLBuffer? = kvImage_YpCbCrToARGBMatrix_ITU_R_601_4.pointee.buffer
| `- warning: reference to var 'kvImage_YpCbCrToARGBMatrix_ITU_R_601_4' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
37 |
38 | private lazy var colorConversion709VideoRangeMatrixBuffer: MTLBuffer? = kvImage_YpCbCrToARGBMatrix_ITU_R_709_2.pointee.videoRange.buffer
/Applications/Xcode-26.0.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.0.sdk/System/Library/Frameworks/Accelerate.framework/Frameworks/vImage.framework/Headers/vImage_Types.h:881:51: note: var declared here
879 | /*! @const kvImage_YpCbCrToARGBMatrix_ITU_R_601_4
880 | @abstract Y'CbCr->RGB conversion matrix for ITU-Recommendation BT.601-4 */
881 | extern VIMAGE_PF const vImage_YpCbCrToARGBMatrix *kvImage_YpCbCrToARGBMatrix_ITU_R_601_4 API_AVAILABLE(macos(10.10), ios(8.0), watchos(1.0), tvos(8.0));
| `- note: var declared here
882 |
883 | /*! @const kvImage_YpCbCrToARGBMatrix_ITU_R_709_2
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Metal/MetalRender.swift:38:77: warning: reference to var 'kvImage_YpCbCrToARGBMatrix_ITU_R_709_2' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
36 | private lazy var colorConversion601FullRangeMatrixBuffer: MTLBuffer? = kvImage_YpCbCrToARGBMatrix_ITU_R_601_4.pointee.buffer
37 |
38 | private lazy var colorConversion709VideoRangeMatrixBuffer: MTLBuffer? = kvImage_YpCbCrToARGBMatrix_ITU_R_709_2.pointee.videoRange.buffer
| `- warning: reference to var 'kvImage_YpCbCrToARGBMatrix_ITU_R_709_2' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
39 |
40 | private lazy var colorConversion709FullRangeMatrixBuffer: MTLBuffer? = kvImage_YpCbCrToARGBMatrix_ITU_R_709_2.pointee.buffer
/Applications/Xcode-26.0.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.0.sdk/System/Library/Frameworks/Accelerate.framework/Frameworks/vImage.framework/Headers/vImage_Types.h:885:51: note: var declared here
883 | /*! @const kvImage_YpCbCrToARGBMatrix_ITU_R_709_2
884 | @abstract Y'CbCr->RGB conversion matrix for ITU-Recommendation BT.709-2 */
885 | extern VIMAGE_PF const vImage_YpCbCrToARGBMatrix *kvImage_YpCbCrToARGBMatrix_ITU_R_709_2 API_AVAILABLE(macos(10.10), ios(8.0), watchos(1.0), tvos(8.0));
| `- note: var declared here
886 | #endif
887 |
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Metal/MetalRender.swift:40:76: warning: reference to var 'kvImage_YpCbCrToARGBMatrix_ITU_R_709_2' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
38 | private lazy var colorConversion709VideoRangeMatrixBuffer: MTLBuffer? = kvImage_YpCbCrToARGBMatrix_ITU_R_709_2.pointee.videoRange.buffer
39 |
40 | private lazy var colorConversion709FullRangeMatrixBuffer: MTLBuffer? = kvImage_YpCbCrToARGBMatrix_ITU_R_709_2.pointee.buffer
| `- warning: reference to var 'kvImage_YpCbCrToARGBMatrix_ITU_R_709_2' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
41 |
42 | private lazy var colorConversionSMPTE240MVideoRangeMatrixBuffer: MTLBuffer? = kvImage_YpCbCrToARGBMatrix_SMPTE_240M_1995.videoRange.buffer
/Applications/Xcode-26.0.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.0.sdk/System/Library/Frameworks/Accelerate.framework/Frameworks/vImage.framework/Headers/vImage_Types.h:885:51: note: var declared here
883 | /*! @const kvImage_YpCbCrToARGBMatrix_ITU_R_709_2
884 | @abstract Y'CbCr->RGB conversion matrix for ITU-Recommendation BT.709-2 */
885 | extern VIMAGE_PF const vImage_YpCbCrToARGBMatrix *kvImage_YpCbCrToARGBMatrix_ITU_R_709_2 API_AVAILABLE(macos(10.10), ios(8.0), watchos(1.0), tvos(8.0));
| `- note: var declared here
886 | #endif
887 |
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/MEPlayer/ThumbnailController.swift:32:19: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
30 |
31 | public func generateThumbnail(for url: URL, thumbWidth: Int32 = 240) async throws -> [FFThumbnail] {
32 | try await Task {
| `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
33 | try getPeeks(for: url, thumbWidth: thumbWidth)
| `- note: closure captures 'self' which is accessible to code in the current task
34 | }.value
35 | }
[#SendableClosureCaptures]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures>
[81/91] Compiling KSPlayer PlayerDefines.swift
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:38:16: warning: static property 'traitItalic' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
36 | public typealias UIButton = KSButton
37 | public extension UIFontDescriptor.SymbolicTraits {
38 | static var traitItalic = italic
| |- warning: static property 'traitItalic' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'traitItalic' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'traitItalic' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
39 | static var traitBold = bold
40 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:39:16: warning: static property 'traitBold' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
37 | public extension UIFontDescriptor.SymbolicTraits {
38 | static var traitItalic = italic
39 | static var traitBold = bold
| |- warning: static property 'traitBold' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'traitBold' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'traitBold' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
40 | }
41 |
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:358:27: warning: static property 'normal' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
356 | public var rawValue: UInt
357 | public init(rawValue: UInt) { self.rawValue = rawValue }
358 | public static var normal = State(rawValue: 1 << 0)
| |- warning: static property 'normal' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'normal' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'normal' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
359 | public static var highlighted = State(rawValue: 1 << 1)
360 | public static var disabled = State(rawValue: 1 << 2)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:359:27: warning: static property 'highlighted' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
357 | public init(rawValue: UInt) { self.rawValue = rawValue }
358 | public static var normal = State(rawValue: 1 << 0)
359 | public static var highlighted = State(rawValue: 1 << 1)
| |- warning: static property 'highlighted' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'highlighted' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'highlighted' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
360 | public static var disabled = State(rawValue: 1 << 2)
361 | public static var selected = State(rawValue: 1 << 3)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:360:27: warning: static property 'disabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
358 | public static var normal = State(rawValue: 1 << 0)
359 | public static var highlighted = State(rawValue: 1 << 1)
360 | public static var disabled = State(rawValue: 1 << 2)
| |- warning: static property 'disabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'disabled' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'disabled' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
361 | public static var selected = State(rawValue: 1 << 3)
362 | public static var focused = State(rawValue: 1 << 4)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:361:27: warning: static property 'selected' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
359 | public static var highlighted = State(rawValue: 1 << 1)
360 | public static var disabled = State(rawValue: 1 << 2)
361 | public static var selected = State(rawValue: 1 << 3)
| |- warning: static property 'selected' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'selected' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'selected' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
362 | public static var focused = State(rawValue: 1 << 4)
363 | public static var application = State(rawValue: 1 << 5)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:362:27: warning: static property 'focused' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
360 | public static var disabled = State(rawValue: 1 << 2)
361 | public static var selected = State(rawValue: 1 << 3)
362 | public static var focused = State(rawValue: 1 << 4)
| |- warning: static property 'focused' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'focused' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'focused' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
363 | public static var application = State(rawValue: 1 << 5)
364 | public static var reserved = State(rawValue: 1 << 6)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:363:27: warning: static property 'application' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
361 | public static var selected = State(rawValue: 1 << 3)
362 | public static var focused = State(rawValue: 1 << 4)
363 | public static var application = State(rawValue: 1 << 5)
| |- warning: static property 'application' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'application' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'application' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
364 | public static var reserved = State(rawValue: 1 << 6)
365 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:364:27: warning: static property 'reserved' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
362 | public static var focused = State(rawValue: 1 << 4)
363 | public static var application = State(rawValue: 1 << 5)
364 | public static var reserved = State(rawValue: 1 << 6)
| |- warning: static property 'reserved' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'reserved' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'reserved' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
365 | }
366 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/PlayerView.swift:41:55: warning: conformance of 'PlayerView' to protocol 'KSSliderDelegate' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
39 | }
40 |
41 | open class PlayerView: UIView, KSPlayerLayerDelegate, KSSliderDelegate {
| | |- warning: conformance of 'PlayerView' to protocol 'KSSliderDelegate' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
| | |- note: isolate this conformance to the main actor with '@MainActor'
| | `- note: turn data races into runtime errors with '@preconcurrency'
| `- note: mark all declarations used in the conformance 'nonisolated'
42 | public typealias ControllerDelegate = PlayerControllerDelegate
43 | public var playerLayer: KSPlayerLayer? {
:
157 | // MARK: - KSSliderDelegate
158 |
159 | open func slider(value: Double, event: ControlEvents) {
| `- note: main actor-isolated instance method 'slider(value:event:)' cannot satisfy nonisolated requirement
160 | if event == .valueChanged {
161 | toolBar.currentTime = value
[#ConformanceIsolation]: <https://docs.swift.org/compiler/documentation/diagnostics/conformance-isolation>
[#MutableGlobalVariable]: <https://docs.swift.org/compiler/documentation/diagnostics/mutable-global-variable>
[82/91] Compiling KSPlayer AudioPlayerView.swift
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:38:16: warning: static property 'traitItalic' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
36 | public typealias UIButton = KSButton
37 | public extension UIFontDescriptor.SymbolicTraits {
38 | static var traitItalic = italic
| |- warning: static property 'traitItalic' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'traitItalic' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'traitItalic' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
39 | static var traitBold = bold
40 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:39:16: warning: static property 'traitBold' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
37 | public extension UIFontDescriptor.SymbolicTraits {
38 | static var traitItalic = italic
39 | static var traitBold = bold
| |- warning: static property 'traitBold' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'traitBold' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'traitBold' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
40 | }
41 |
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:358:27: warning: static property 'normal' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
356 | public var rawValue: UInt
357 | public init(rawValue: UInt) { self.rawValue = rawValue }
358 | public static var normal = State(rawValue: 1 << 0)
| |- warning: static property 'normal' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'normal' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'normal' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
359 | public static var highlighted = State(rawValue: 1 << 1)
360 | public static var disabled = State(rawValue: 1 << 2)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:359:27: warning: static property 'highlighted' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
357 | public init(rawValue: UInt) { self.rawValue = rawValue }
358 | public static var normal = State(rawValue: 1 << 0)
359 | public static var highlighted = State(rawValue: 1 << 1)
| |- warning: static property 'highlighted' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'highlighted' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'highlighted' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
360 | public static var disabled = State(rawValue: 1 << 2)
361 | public static var selected = State(rawValue: 1 << 3)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:360:27: warning: static property 'disabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
358 | public static var normal = State(rawValue: 1 << 0)
359 | public static var highlighted = State(rawValue: 1 << 1)
360 | public static var disabled = State(rawValue: 1 << 2)
| |- warning: static property 'disabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'disabled' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'disabled' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
361 | public static var selected = State(rawValue: 1 << 3)
362 | public static var focused = State(rawValue: 1 << 4)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:361:27: warning: static property 'selected' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
359 | public static var highlighted = State(rawValue: 1 << 1)
360 | public static var disabled = State(rawValue: 1 << 2)
361 | public static var selected = State(rawValue: 1 << 3)
| |- warning: static property 'selected' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'selected' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'selected' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
362 | public static var focused = State(rawValue: 1 << 4)
363 | public static var application = State(rawValue: 1 << 5)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:362:27: warning: static property 'focused' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
360 | public static var disabled = State(rawValue: 1 << 2)
361 | public static var selected = State(rawValue: 1 << 3)
362 | public static var focused = State(rawValue: 1 << 4)
| |- warning: static property 'focused' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'focused' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'focused' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
363 | public static var application = State(rawValue: 1 << 5)
364 | public static var reserved = State(rawValue: 1 << 6)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:363:27: warning: static property 'application' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
361 | public static var selected = State(rawValue: 1 << 3)
362 | public static var focused = State(rawValue: 1 << 4)
363 | public static var application = State(rawValue: 1 << 5)
| |- warning: static property 'application' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'application' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'application' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
364 | public static var reserved = State(rawValue: 1 << 6)
365 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:364:27: warning: static property 'reserved' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
362 | public static var focused = State(rawValue: 1 << 4)
363 | public static var application = State(rawValue: 1 << 5)
364 | public static var reserved = State(rawValue: 1 << 6)
| |- warning: static property 'reserved' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'reserved' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'reserved' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
365 | }
366 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/PlayerView.swift:41:55: warning: conformance of 'PlayerView' to protocol 'KSSliderDelegate' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
39 | }
40 |
41 | open class PlayerView: UIView, KSPlayerLayerDelegate, KSSliderDelegate {
| | |- warning: conformance of 'PlayerView' to protocol 'KSSliderDelegate' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
| | |- note: isolate this conformance to the main actor with '@MainActor'
| | `- note: turn data races into runtime errors with '@preconcurrency'
| `- note: mark all declarations used in the conformance 'nonisolated'
42 | public typealias ControllerDelegate = PlayerControllerDelegate
43 | public var playerLayer: KSPlayerLayer? {
:
157 | // MARK: - KSSliderDelegate
158 |
159 | open func slider(value: Double, event: ControlEvents) {
| `- note: main actor-isolated instance method 'slider(value:event:)' cannot satisfy nonisolated requirement
160 | if event == .valueChanged {
161 | toolBar.currentTime = value
[#ConformanceIsolation]: <https://docs.swift.org/compiler/documentation/diagnostics/conformance-isolation>
[#MutableGlobalVariable]: <https://docs.swift.org/compiler/documentation/diagnostics/mutable-global-variable>
[83/91] Compiling KSPlayer AppKitExtend.swift
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:38:16: warning: static property 'traitItalic' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
36 | public typealias UIButton = KSButton
37 | public extension UIFontDescriptor.SymbolicTraits {
38 | static var traitItalic = italic
| |- warning: static property 'traitItalic' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'traitItalic' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'traitItalic' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
39 | static var traitBold = bold
40 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:39:16: warning: static property 'traitBold' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
37 | public extension UIFontDescriptor.SymbolicTraits {
38 | static var traitItalic = italic
39 | static var traitBold = bold
| |- warning: static property 'traitBold' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'traitBold' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'traitBold' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
40 | }
41 |
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:358:27: warning: static property 'normal' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
356 | public var rawValue: UInt
357 | public init(rawValue: UInt) { self.rawValue = rawValue }
358 | public static var normal = State(rawValue: 1 << 0)
| |- warning: static property 'normal' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'normal' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'normal' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
359 | public static var highlighted = State(rawValue: 1 << 1)
360 | public static var disabled = State(rawValue: 1 << 2)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:359:27: warning: static property 'highlighted' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
357 | public init(rawValue: UInt) { self.rawValue = rawValue }
358 | public static var normal = State(rawValue: 1 << 0)
359 | public static var highlighted = State(rawValue: 1 << 1)
| |- warning: static property 'highlighted' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'highlighted' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'highlighted' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
360 | public static var disabled = State(rawValue: 1 << 2)
361 | public static var selected = State(rawValue: 1 << 3)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:360:27: warning: static property 'disabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
358 | public static var normal = State(rawValue: 1 << 0)
359 | public static var highlighted = State(rawValue: 1 << 1)
360 | public static var disabled = State(rawValue: 1 << 2)
| |- warning: static property 'disabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'disabled' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'disabled' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
361 | public static var selected = State(rawValue: 1 << 3)
362 | public static var focused = State(rawValue: 1 << 4)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:361:27: warning: static property 'selected' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
359 | public static var highlighted = State(rawValue: 1 << 1)
360 | public static var disabled = State(rawValue: 1 << 2)
361 | public static var selected = State(rawValue: 1 << 3)
| |- warning: static property 'selected' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'selected' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'selected' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
362 | public static var focused = State(rawValue: 1 << 4)
363 | public static var application = State(rawValue: 1 << 5)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:362:27: warning: static property 'focused' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
360 | public static var disabled = State(rawValue: 1 << 2)
361 | public static var selected = State(rawValue: 1 << 3)
362 | public static var focused = State(rawValue: 1 << 4)
| |- warning: static property 'focused' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'focused' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'focused' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
363 | public static var application = State(rawValue: 1 << 5)
364 | public static var reserved = State(rawValue: 1 << 6)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:363:27: warning: static property 'application' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
361 | public static var selected = State(rawValue: 1 << 3)
362 | public static var focused = State(rawValue: 1 << 4)
363 | public static var application = State(rawValue: 1 << 5)
| |- warning: static property 'application' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'application' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'application' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
364 | public static var reserved = State(rawValue: 1 << 6)
365 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:364:27: warning: static property 'reserved' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
362 | public static var focused = State(rawValue: 1 << 4)
363 | public static var application = State(rawValue: 1 << 5)
364 | public static var reserved = State(rawValue: 1 << 6)
| |- warning: static property 'reserved' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'reserved' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'reserved' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
365 | }
366 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/PlayerView.swift:41:55: warning: conformance of 'PlayerView' to protocol 'KSSliderDelegate' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
39 | }
40 |
41 | open class PlayerView: UIView, KSPlayerLayerDelegate, KSSliderDelegate {
| | |- warning: conformance of 'PlayerView' to protocol 'KSSliderDelegate' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
| | |- note: isolate this conformance to the main actor with '@MainActor'
| | `- note: turn data races into runtime errors with '@preconcurrency'
| `- note: mark all declarations used in the conformance 'nonisolated'
42 | public typealias ControllerDelegate = PlayerControllerDelegate
43 | public var playerLayer: KSPlayerLayer? {
:
157 | // MARK: - KSSliderDelegate
158 |
159 | open func slider(value: Double, event: ControlEvents) {
| `- note: main actor-isolated instance method 'slider(value:event:)' cannot satisfy nonisolated requirement
160 | if event == .valueChanged {
161 | toolBar.currentTime = value
[#ConformanceIsolation]: <https://docs.swift.org/compiler/documentation/diagnostics/conformance-isolation>
[#MutableGlobalVariable]: <https://docs.swift.org/compiler/documentation/diagnostics/mutable-global-variable>
[84/91] Compiling KSPlayer PlayerToolBar.swift
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:38:16: warning: static property 'traitItalic' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
36 | public typealias UIButton = KSButton
37 | public extension UIFontDescriptor.SymbolicTraits {
38 | static var traitItalic = italic
| |- warning: static property 'traitItalic' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'traitItalic' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'traitItalic' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
39 | static var traitBold = bold
40 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:39:16: warning: static property 'traitBold' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
37 | public extension UIFontDescriptor.SymbolicTraits {
38 | static var traitItalic = italic
39 | static var traitBold = bold
| |- warning: static property 'traitBold' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'traitBold' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'traitBold' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
40 | }
41 |
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:358:27: warning: static property 'normal' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
356 | public var rawValue: UInt
357 | public init(rawValue: UInt) { self.rawValue = rawValue }
358 | public static var normal = State(rawValue: 1 << 0)
| |- warning: static property 'normal' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'normal' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'normal' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
359 | public static var highlighted = State(rawValue: 1 << 1)
360 | public static var disabled = State(rawValue: 1 << 2)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:359:27: warning: static property 'highlighted' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
357 | public init(rawValue: UInt) { self.rawValue = rawValue }
358 | public static var normal = State(rawValue: 1 << 0)
359 | public static var highlighted = State(rawValue: 1 << 1)
| |- warning: static property 'highlighted' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'highlighted' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'highlighted' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
360 | public static var disabled = State(rawValue: 1 << 2)
361 | public static var selected = State(rawValue: 1 << 3)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:360:27: warning: static property 'disabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
358 | public static var normal = State(rawValue: 1 << 0)
359 | public static var highlighted = State(rawValue: 1 << 1)
360 | public static var disabled = State(rawValue: 1 << 2)
| |- warning: static property 'disabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'disabled' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'disabled' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
361 | public static var selected = State(rawValue: 1 << 3)
362 | public static var focused = State(rawValue: 1 << 4)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:361:27: warning: static property 'selected' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
359 | public static var highlighted = State(rawValue: 1 << 1)
360 | public static var disabled = State(rawValue: 1 << 2)
361 | public static var selected = State(rawValue: 1 << 3)
| |- warning: static property 'selected' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'selected' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'selected' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
362 | public static var focused = State(rawValue: 1 << 4)
363 | public static var application = State(rawValue: 1 << 5)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:362:27: warning: static property 'focused' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
360 | public static var disabled = State(rawValue: 1 << 2)
361 | public static var selected = State(rawValue: 1 << 3)
362 | public static var focused = State(rawValue: 1 << 4)
| |- warning: static property 'focused' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'focused' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'focused' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
363 | public static var application = State(rawValue: 1 << 5)
364 | public static var reserved = State(rawValue: 1 << 6)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:363:27: warning: static property 'application' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
361 | public static var selected = State(rawValue: 1 << 3)
362 | public static var focused = State(rawValue: 1 << 4)
363 | public static var application = State(rawValue: 1 << 5)
| |- warning: static property 'application' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'application' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'application' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
364 | public static var reserved = State(rawValue: 1 << 6)
365 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:364:27: warning: static property 'reserved' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
362 | public static var focused = State(rawValue: 1 << 4)
363 | public static var application = State(rawValue: 1 << 5)
364 | public static var reserved = State(rawValue: 1 << 6)
| |- warning: static property 'reserved' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'reserved' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'reserved' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
365 | }
366 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/PlayerView.swift:41:55: warning: conformance of 'PlayerView' to protocol 'KSSliderDelegate' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
39 | }
40 |
41 | open class PlayerView: UIView, KSPlayerLayerDelegate, KSSliderDelegate {
| | |- warning: conformance of 'PlayerView' to protocol 'KSSliderDelegate' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
| | |- note: isolate this conformance to the main actor with '@MainActor'
| | `- note: turn data races into runtime errors with '@preconcurrency'
| `- note: mark all declarations used in the conformance 'nonisolated'
42 | public typealias ControllerDelegate = PlayerControllerDelegate
43 | public var playerLayer: KSPlayerLayer? {
:
157 | // MARK: - KSSliderDelegate
158 |
159 | open func slider(value: Double, event: ControlEvents) {
| `- note: main actor-isolated instance method 'slider(value:event:)' cannot satisfy nonisolated requirement
160 | if event == .valueChanged {
161 | toolBar.currentTime = value
[#ConformanceIsolation]: <https://docs.swift.org/compiler/documentation/diagnostics/conformance-isolation>
[#MutableGlobalVariable]: <https://docs.swift.org/compiler/documentation/diagnostics/mutable-global-variable>
[85/91] Compiling KSPlayer PlayerView.swift
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:38:16: warning: static property 'traitItalic' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
36 | public typealias UIButton = KSButton
37 | public extension UIFontDescriptor.SymbolicTraits {
38 | static var traitItalic = italic
| |- warning: static property 'traitItalic' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'traitItalic' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'traitItalic' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
39 | static var traitBold = bold
40 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:39:16: warning: static property 'traitBold' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
37 | public extension UIFontDescriptor.SymbolicTraits {
38 | static var traitItalic = italic
39 | static var traitBold = bold
| |- warning: static property 'traitBold' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'traitBold' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'traitBold' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
40 | }
41 |
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:358:27: warning: static property 'normal' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
356 | public var rawValue: UInt
357 | public init(rawValue: UInt) { self.rawValue = rawValue }
358 | public static var normal = State(rawValue: 1 << 0)
| |- warning: static property 'normal' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'normal' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'normal' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
359 | public static var highlighted = State(rawValue: 1 << 1)
360 | public static var disabled = State(rawValue: 1 << 2)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:359:27: warning: static property 'highlighted' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
357 | public init(rawValue: UInt) { self.rawValue = rawValue }
358 | public static var normal = State(rawValue: 1 << 0)
359 | public static var highlighted = State(rawValue: 1 << 1)
| |- warning: static property 'highlighted' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'highlighted' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'highlighted' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
360 | public static var disabled = State(rawValue: 1 << 2)
361 | public static var selected = State(rawValue: 1 << 3)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:360:27: warning: static property 'disabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
358 | public static var normal = State(rawValue: 1 << 0)
359 | public static var highlighted = State(rawValue: 1 << 1)
360 | public static var disabled = State(rawValue: 1 << 2)
| |- warning: static property 'disabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'disabled' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'disabled' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
361 | public static var selected = State(rawValue: 1 << 3)
362 | public static var focused = State(rawValue: 1 << 4)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:361:27: warning: static property 'selected' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
359 | public static var highlighted = State(rawValue: 1 << 1)
360 | public static var disabled = State(rawValue: 1 << 2)
361 | public static var selected = State(rawValue: 1 << 3)
| |- warning: static property 'selected' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'selected' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'selected' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
362 | public static var focused = State(rawValue: 1 << 4)
363 | public static var application = State(rawValue: 1 << 5)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:362:27: warning: static property 'focused' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
360 | public static var disabled = State(rawValue: 1 << 2)
361 | public static var selected = State(rawValue: 1 << 3)
362 | public static var focused = State(rawValue: 1 << 4)
| |- warning: static property 'focused' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'focused' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'focused' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
363 | public static var application = State(rawValue: 1 << 5)
364 | public static var reserved = State(rawValue: 1 << 6)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:363:27: warning: static property 'application' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
361 | public static var selected = State(rawValue: 1 << 3)
362 | public static var focused = State(rawValue: 1 << 4)
363 | public static var application = State(rawValue: 1 << 5)
| |- warning: static property 'application' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'application' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'application' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
364 | public static var reserved = State(rawValue: 1 << 6)
365 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:364:27: warning: static property 'reserved' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
362 | public static var focused = State(rawValue: 1 << 4)
363 | public static var application = State(rawValue: 1 << 5)
364 | public static var reserved = State(rawValue: 1 << 6)
| |- warning: static property 'reserved' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'reserved' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'reserved' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
365 | }
366 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/PlayerView.swift:41:55: warning: conformance of 'PlayerView' to protocol 'KSSliderDelegate' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
39 | }
40 |
41 | open class PlayerView: UIView, KSPlayerLayerDelegate, KSSliderDelegate {
| | |- warning: conformance of 'PlayerView' to protocol 'KSSliderDelegate' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
| | |- note: isolate this conformance to the main actor with '@MainActor'
| | `- note: turn data races into runtime errors with '@preconcurrency'
| `- note: mark all declarations used in the conformance 'nonisolated'
42 | public typealias ControllerDelegate = PlayerControllerDelegate
43 | public var playerLayer: KSPlayerLayer? {
:
157 | // MARK: - KSSliderDelegate
158 |
159 | open func slider(value: Double, event: ControlEvents) {
| `- note: main actor-isolated instance method 'slider(value:event:)' cannot satisfy nonisolated requirement
160 | if event == .valueChanged {
161 | toolBar.currentTime = value
[#ConformanceIsolation]: <https://docs.swift.org/compiler/documentation/diagnostics/conformance-isolation>
[#MutableGlobalVariable]: <https://docs.swift.org/compiler/documentation/diagnostics/mutable-global-variable>
[86/91] Compiling KSPlayer UIKitExtend.swift
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:38:16: warning: static property 'traitItalic' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
36 | public typealias UIButton = KSButton
37 | public extension UIFontDescriptor.SymbolicTraits {
38 | static var traitItalic = italic
| |- warning: static property 'traitItalic' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'traitItalic' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'traitItalic' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
39 | static var traitBold = bold
40 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:39:16: warning: static property 'traitBold' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
37 | public extension UIFontDescriptor.SymbolicTraits {
38 | static var traitItalic = italic
39 | static var traitBold = bold
| |- warning: static property 'traitBold' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'traitBold' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'traitBold' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
40 | }
41 |
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:358:27: warning: static property 'normal' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
356 | public var rawValue: UInt
357 | public init(rawValue: UInt) { self.rawValue = rawValue }
358 | public static var normal = State(rawValue: 1 << 0)
| |- warning: static property 'normal' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'normal' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'normal' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
359 | public static var highlighted = State(rawValue: 1 << 1)
360 | public static var disabled = State(rawValue: 1 << 2)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:359:27: warning: static property 'highlighted' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
357 | public init(rawValue: UInt) { self.rawValue = rawValue }
358 | public static var normal = State(rawValue: 1 << 0)
359 | public static var highlighted = State(rawValue: 1 << 1)
| |- warning: static property 'highlighted' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'highlighted' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'highlighted' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
360 | public static var disabled = State(rawValue: 1 << 2)
361 | public static var selected = State(rawValue: 1 << 3)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:360:27: warning: static property 'disabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
358 | public static var normal = State(rawValue: 1 << 0)
359 | public static var highlighted = State(rawValue: 1 << 1)
360 | public static var disabled = State(rawValue: 1 << 2)
| |- warning: static property 'disabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'disabled' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'disabled' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
361 | public static var selected = State(rawValue: 1 << 3)
362 | public static var focused = State(rawValue: 1 << 4)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:361:27: warning: static property 'selected' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
359 | public static var highlighted = State(rawValue: 1 << 1)
360 | public static var disabled = State(rawValue: 1 << 2)
361 | public static var selected = State(rawValue: 1 << 3)
| |- warning: static property 'selected' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'selected' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'selected' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
362 | public static var focused = State(rawValue: 1 << 4)
363 | public static var application = State(rawValue: 1 << 5)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:362:27: warning: static property 'focused' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
360 | public static var disabled = State(rawValue: 1 << 2)
361 | public static var selected = State(rawValue: 1 << 3)
362 | public static var focused = State(rawValue: 1 << 4)
| |- warning: static property 'focused' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'focused' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'focused' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
363 | public static var application = State(rawValue: 1 << 5)
364 | public static var reserved = State(rawValue: 1 << 6)
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:363:27: warning: static property 'application' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
361 | public static var selected = State(rawValue: 1 << 3)
362 | public static var focused = State(rawValue: 1 << 4)
363 | public static var application = State(rawValue: 1 << 5)
| |- warning: static property 'application' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'application' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'application' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
364 | public static var reserved = State(rawValue: 1 << 6)
365 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/AppKitExtend.swift:364:27: warning: static property 'reserved' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
362 | public static var focused = State(rawValue: 1 << 4)
363 | public static var application = State(rawValue: 1 << 5)
364 | public static var reserved = State(rawValue: 1 << 6)
| |- warning: static property 'reserved' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: convert 'reserved' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'reserved' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
365 | }
366 | }
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Core/PlayerView.swift:41:55: warning: conformance of 'PlayerView' to protocol 'KSSliderDelegate' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
39 | }
40 |
41 | open class PlayerView: UIView, KSPlayerLayerDelegate, KSSliderDelegate {
| | |- warning: conformance of 'PlayerView' to protocol 'KSSliderDelegate' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
| | |- note: isolate this conformance to the main actor with '@MainActor'
| | `- note: turn data races into runtime errors with '@preconcurrency'
| `- note: mark all declarations used in the conformance 'nonisolated'
42 | public typealias ControllerDelegate = PlayerControllerDelegate
43 | public var playerLayer: KSPlayerLayer? {
:
157 | // MARK: - KSSliderDelegate
158 |
159 | open func slider(value: Double, event: ControlEvents) {
| `- note: main actor-isolated instance method 'slider(value:event:)' cannot satisfy nonisolated requirement
160 | if event == .valueChanged {
161 | toolBar.currentTime = value
[#ConformanceIsolation]: <https://docs.swift.org/compiler/documentation/diagnostics/conformance-isolation>
[#MutableGlobalVariable]: <https://docs.swift.org/compiler/documentation/diagnostics/mutable-global-variable>
[87/91] Compiling KSPlayer PlayerFullScreenViewController.swift
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Video/SeekView.swift:66:21: warning: conformance of 'SeekView' to protocol 'SeekViewProtocol' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
64 | }
65 |
66 | extension SeekView: SeekViewProtocol {
| | |- warning: conformance of 'SeekView' to protocol 'SeekViewProtocol' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
| | |- note: isolate this conformance to the main actor with '@MainActor'
| | `- note: turn data races into runtime errors with '@preconcurrency'
| `- note: mark all declarations used in the conformance 'nonisolated'
67 | public func set(text: String, isAdd: Bool) {
| `- note: main actor-isolated instance method 'set(text:isAdd:)' cannot satisfy nonisolated requirement
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 [#MutableGlobalVariable]
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 [#MutableGlobalVariable]
| |- 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 [#MutableGlobalVariable]
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 [#MutableGlobalVariable]
| |- 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 [#MutableGlobalVariable]
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 [#MutableGlobalVariable]
| |- 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 [#MutableGlobalVariable]
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 [#MutableGlobalVariable]
| |- 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 [#MutableGlobalVariable]
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 [#MutableGlobalVariable]
| |- 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 [#MutableGlobalVariable]
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 [#MutableGlobalVariable]
| |- 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 |
[#ConformanceIsolation]: <https://docs.swift.org/compiler/documentation/diagnostics/conformance-isolation>
[#MutableGlobalVariable]: <https://docs.swift.org/compiler/documentation/diagnostics/mutable-global-variable>
[88/91] Compiling KSPlayer PlayerTransitionAnimator.swift
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Video/SeekView.swift:66:21: warning: conformance of 'SeekView' to protocol 'SeekViewProtocol' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
64 | }
65 |
66 | extension SeekView: SeekViewProtocol {
| | |- warning: conformance of 'SeekView' to protocol 'SeekViewProtocol' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
| | |- note: isolate this conformance to the main actor with '@MainActor'
| | `- note: turn data races into runtime errors with '@preconcurrency'
| `- note: mark all declarations used in the conformance 'nonisolated'
67 | public func set(text: String, isAdd: Bool) {
| `- note: main actor-isolated instance method 'set(text:isAdd:)' cannot satisfy nonisolated requirement
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 [#MutableGlobalVariable]
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 [#MutableGlobalVariable]
| |- 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 [#MutableGlobalVariable]
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 [#MutableGlobalVariable]
| |- 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 [#MutableGlobalVariable]
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 [#MutableGlobalVariable]
| |- 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 [#MutableGlobalVariable]
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 [#MutableGlobalVariable]
| |- 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 [#MutableGlobalVariable]
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 [#MutableGlobalVariable]
| |- 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 [#MutableGlobalVariable]
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 [#MutableGlobalVariable]
| |- 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 |
[#ConformanceIsolation]: <https://docs.swift.org/compiler/documentation/diagnostics/conformance-isolation>
[#MutableGlobalVariable]: <https://docs.swift.org/compiler/documentation/diagnostics/mutable-global-variable>
[89/91] Compiling KSPlayer SeekView.swift
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Video/SeekView.swift:66:21: warning: conformance of 'SeekView' to protocol 'SeekViewProtocol' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
64 | }
65 |
66 | extension SeekView: SeekViewProtocol {
| | |- warning: conformance of 'SeekView' to protocol 'SeekViewProtocol' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
| | |- note: isolate this conformance to the main actor with '@MainActor'
| | `- note: turn data races into runtime errors with '@preconcurrency'
| `- note: mark all declarations used in the conformance 'nonisolated'
67 | public func set(text: String, isAdd: Bool) {
| `- note: main actor-isolated instance method 'set(text:isAdd:)' cannot satisfy nonisolated requirement
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 [#MutableGlobalVariable]
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 [#MutableGlobalVariable]
| |- 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 [#MutableGlobalVariable]
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 [#MutableGlobalVariable]
| |- 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 [#MutableGlobalVariable]
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 [#MutableGlobalVariable]
| |- 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 [#MutableGlobalVariable]
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 [#MutableGlobalVariable]
| |- 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 [#MutableGlobalVariable]
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 [#MutableGlobalVariable]
| |- 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 [#MutableGlobalVariable]
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 [#MutableGlobalVariable]
| |- 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 |
[#ConformanceIsolation]: <https://docs.swift.org/compiler/documentation/diagnostics/conformance-isolation>
[#MutableGlobalVariable]: <https://docs.swift.org/compiler/documentation/diagnostics/mutable-global-variable>
[90/91] Compiling KSPlayer VideoPlayerView.swift
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Video/SeekView.swift:66:21: warning: conformance of 'SeekView' to protocol 'SeekViewProtocol' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
64 | }
65 |
66 | extension SeekView: SeekViewProtocol {
| | |- warning: conformance of 'SeekView' to protocol 'SeekViewProtocol' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
| | |- note: isolate this conformance to the main actor with '@MainActor'
| | `- note: turn data races into runtime errors with '@preconcurrency'
| `- note: mark all declarations used in the conformance 'nonisolated'
67 | public func set(text: String, isAdd: Bool) {
| `- note: main actor-isolated instance method 'set(text:isAdd:)' cannot satisfy nonisolated requirement
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 [#MutableGlobalVariable]
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 [#MutableGlobalVariable]
| |- 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 [#MutableGlobalVariable]
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 [#MutableGlobalVariable]
| |- 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 [#MutableGlobalVariable]
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 [#MutableGlobalVariable]
| |- 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 [#MutableGlobalVariable]
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 [#MutableGlobalVariable]
| |- 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 [#MutableGlobalVariable]
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 [#MutableGlobalVariable]
| |- 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 [#MutableGlobalVariable]
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 [#MutableGlobalVariable]
| |- 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 |
[#ConformanceIsolation]: <https://docs.swift.org/compiler/documentation/diagnostics/conformance-isolation>
[#MutableGlobalVariable]: <https://docs.swift.org/compiler/documentation/diagnostics/mutable-global-variable>
[91/91] Compiling KSPlayer resource_bundle_accessor.swift
/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Video/SeekView.swift:66:21: warning: conformance of 'SeekView' to protocol 'SeekViewProtocol' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
64 | }
65 |
66 | extension SeekView: SeekViewProtocol {
| | |- warning: conformance of 'SeekView' to protocol 'SeekViewProtocol' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
| | |- note: isolate this conformance to the main actor with '@MainActor'
| | `- note: turn data races into runtime errors with '@preconcurrency'
| `- note: mark all declarations used in the conformance 'nonisolated'
67 | public func set(text: String, isAdd: Bool) {
| `- note: main actor-isolated instance method 'set(text:isAdd:)' cannot satisfy nonisolated requirement
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 [#MutableGlobalVariable]
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 [#MutableGlobalVariable]
| |- 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 [#MutableGlobalVariable]
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 [#MutableGlobalVariable]
| |- 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 [#MutableGlobalVariable]
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 [#MutableGlobalVariable]
| |- 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 [#MutableGlobalVariable]
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 [#MutableGlobalVariable]
| |- 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 [#MutableGlobalVariable]
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 [#MutableGlobalVariable]
| |- 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 [#MutableGlobalVariable]
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 [#MutableGlobalVariable]
| |- 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 |
[#ConformanceIsolation]: <https://docs.swift.org/compiler/documentation/diagnostics/conformance-isolation>
[#MutableGlobalVariable]: <https://docs.swift.org/compiler/documentation/diagnostics/mutable-global-variable>
Build complete! (16.23s)
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
Build complete.
{
"default_localization" : "en",
"dependencies" : [
{
"identity" : "ffmpegkit",
"requirement" : {
"range" : [
{
"lower_bound" : "6.1.3",
"upper_bound" : "7.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/kingslay/FFmpegKit.git"
}
],
"manifest_display_name" : "KSPlayer",
"name" : "KSPlayer",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "10.15"
},
{
"name" : "maccatalyst",
"version" : "13.0"
},
{
"name" : "ios",
"version" : "13.0"
},
{
"name" : "tvos",
"version" : "13.0"
},
{
"name" : "visionos",
"version" : "1.0"
}
],
"products" : [
{
"name" : "KSPlayer",
"targets" : [
"KSPlayer"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "KSPlayerTests",
"module_type" : "SwiftTarget",
"name" : "KSPlayerTests",
"path" : "Tests/KSPlayerTests",
"resources" : [
{
"path" : "/Users/admin/builder/spi-builder-workspace/Tests/KSPlayerTests/Resources/test.m3u",
"rule" : {
"process" : {
}
}
}
],
"sources" : [
"AudioTest.swift",
"KSAVPlayerTest.swift",
"KSMEPlayerTest.swift",
"KSPlayerLayerTest.swift",
"M3UParseTest.swift",
"SubtitleTest.swift",
"VideoPlayerControllerTest.swift",
"VideoPlayerViewTest.swift"
],
"target_dependencies" : [
"KSPlayer"
],
"type" : "test"
},
{
"c99name" : "KSPlayer",
"module_type" : "SwiftTarget",
"name" : "KSPlayer",
"path" : "Sources/KSPlayer",
"product_dependencies" : [
"FFmpegKit"
],
"product_memberships" : [
"KSPlayer"
],
"resources" : [
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/KSPlayer/Metal/Shaders.metal",
"rule" : {
"process" : {
}
}
}
],
"sources" : [
"AVPlayer/KSAVPlayer.swift",
"AVPlayer/KSOptions.swift",
"AVPlayer/KSPictureInPictureController.swift",
"AVPlayer/KSPlayerLayer.swift",
"AVPlayer/KSVideoPlayer.swift",
"AVPlayer/MediaPlayerProtocol.swift",
"AVPlayer/PlayerDefines.swift",
"Audio/AudioPlayerView.swift",
"Core/AppKitExtend.swift",
"Core/PlayerToolBar.swift",
"Core/PlayerView.swift",
"Core/UIKitExtend.swift",
"Core/UXKit.swift",
"Core/Utility.swift",
"MEPlayer/AVFFmpegExtension.swift",
"MEPlayer/AVFoundationExtension.swift",
"MEPlayer/AudioEnginePlayer.swift",
"MEPlayer/AudioGraphPlayer.swift",
"MEPlayer/AudioRendererPlayer.swift",
"MEPlayer/AudioUnitPlayer.swift",
"MEPlayer/CircularBuffer.swift",
"MEPlayer/EmbedDataSouce.swift",
"MEPlayer/FFmpegAssetTrack.swift",
"MEPlayer/FFmpegDecode.swift",
"MEPlayer/Filter.swift",
"MEPlayer/KSMEPlayer.swift",
"MEPlayer/MEPlayerItem.swift",
"MEPlayer/MEPlayerItemTrack.swift",
"MEPlayer/MetalPlayView.swift",
"MEPlayer/Model.swift",
"MEPlayer/Resample.swift",
"MEPlayer/SubtitleDecode.swift",
"MEPlayer/ThumbnailController.swift",
"MEPlayer/VideoToolboxDecode.swift",
"Metal/DisplayModel.swift",
"Metal/MetalRender.swift",
"Metal/MotionSensor.swift",
"Metal/PixelBufferProtocol.swift",
"Metal/Transforms.swift",
"Subtitle/AudioRecognize.swift",
"Subtitle/KSParseProtocol.swift",
"Subtitle/KSSubtitle.swift",
"Subtitle/SubtitleDataSouce.swift",
"SwiftUI/AirPlayView.swift",
"SwiftUI/KSVideoPlayerView.swift",
"SwiftUI/KSVideoPlayerViewBuilder.swift",
"SwiftUI/LiveTextImage.swift",
"SwiftUI/Slider.swift",
"Video/BrightnessVolume.swift",
"Video/IOSVideoPlayerView.swift",
"Video/KSMenu.swift",
"Video/KSPlayerItem.swift",
"Video/MacVideoPlayerView.swift",
"Video/PlayerFullScreenViewController.swift",
"Video/PlayerTransitionAnimator.swift",
"Video/SeekView.swift",
"Video/VideoPlayerView.swift"
],
"target_dependencies" : [
"DisplayCriteria"
],
"type" : "library"
},
{
"c99name" : "DisplayCriteria",
"module_type" : "ClangTarget",
"name" : "DisplayCriteria",
"path" : "Sources/DisplayCriteria",
"product_memberships" : [
"KSPlayer"
],
"sources" : [
"DisplayCriteria.m"
],
"type" : "library"
}
],
"tools_version" : "5.9"
}
✅ Doc result (pending) reported
========================================
GenerateDocs
========================================
Generating docs at path: $PWD/.docs/kingslay/ksplayer/main
Repository: kingslay/KSPlayer
Swift version used: 6.2
Target: KSPlayer
Extracting symbol information for 'KSPlayer'...
Fetching https://github.com/swiftlang/swift-docc-plugin
[1/2158] Fetching swift-docc-plugin
Updating https://github.com/kingslay/FFmpegKit.git
Fetched https://github.com/swiftlang/swift-docc-plugin from cache (1.28s)
Updated https://github.com/kingslay/FFmpegKit.git (0.44s)
Computing version for https://github.com/kingslay/FFmpegKit.git
Computed https://github.com/kingslay/FFmpegKit.git at 6.1.3 (2.28s)
Computing version for https://github.com/swiftlang/swift-docc-plugin
Computed https://github.com/swiftlang/swift-docc-plugin at 1.4.5 (0.65s)
Fetching https://github.com/swiftlang/swift-docc-symbolkit
[1/3596] Fetching swift-docc-symbolkit
Fetched https://github.com/swiftlang/swift-docc-symbolkit from cache (1.21s)
Computing version for https://github.com/swiftlang/swift-docc-symbolkit
Computed https://github.com/swiftlang/swift-docc-symbolkit at 1.0.0 (1.94s)
Creating working copy for https://github.com/swiftlang/swift-docc-plugin
Working copy of https://github.com/swiftlang/swift-docc-plugin resolved at 1.4.5
Creating working copy for https://github.com/swiftlang/swift-docc-symbolkit
Working copy of https://github.com/swiftlang/swift-docc-symbolkit resolved at 1.0.0
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/8] Write sources
[0/8] Write snippet-extract-tool-entitlement.plist
[0/8] Write sources
[4/8] Write swift-version-49B95AFC49DCD68C.txt
[6/53] Compiling Snippets SnippetParser.swift
[7/53] Compiling Snippets Snippet.swift
[8/53] Emitting module Snippets
[9/53] Emitting module SymbolKit
[10/53] Compiling SymbolKit Mixin+Equals.swift
[11/53] Compiling SymbolKit Mixin+Hash.swift
[12/53] Compiling SymbolKit Mixin.swift
[13/53] Compiling SymbolKit LineList.swift
[14/53] Compiling SymbolKit Position.swift
[15/57] Compiling SymbolKit GenericConstraint.swift
[16/57] Compiling SymbolKit GenericParameter.swift
[17/57] Compiling SymbolKit Generics.swift
[18/57] Compiling SymbolKit Namespace.swift
[19/57] Compiling SymbolKit Relationship.swift
[20/57] Compiling SymbolKit RelationshipKind.swift
[21/57] Compiling SymbolKit SourceOrigin.swift
[22/57] Compiling SymbolKit GenericConstraints.swift
[23/57] Compiling SymbolKit Swift.swift
[24/57] Compiling SymbolKit Identifier.swift
[25/57] Compiling SymbolKit KindIdentifier.swift
[26/57] Compiling SymbolKit Location.swift
[27/57] Compiling SymbolKit Mutability.swift
[28/57] Compiling SymbolKit SemanticVersion.swift
[29/57] Compiling SymbolKit AccessControl.swift
[30/57] Compiling SymbolKit Availability.swift
[31/57] Compiling SymbolKit AvailabilityItem.swift
[32/57] Compiling SymbolKit Domain.swift
[33/57] Compiling SymbolKit Names.swift
[34/57] Compiling SymbolKit SPI.swift
[35/57] Compiling SymbolKit Snippet.swift
[36/57] Compiling SymbolKit Extension.swift
[37/57] Compiling SymbolKit Symbol.swift
[38/57] Compiling SymbolKit SymbolKind.swift
[39/57] Compiling SymbolKit SymbolGraph.swift
[40/57] Compiling SymbolKit GraphCollector.swift
[41/57] Compiling SymbolKit SourceRange.swift
[42/57] Compiling SymbolKit Metadata.swift
[43/57] Compiling SymbolKit Module.swift
[44/57] Compiling SymbolKit OperatingSystem.swift
[45/57] Compiling SymbolKit Platform.swift
[46/57] Compiling SymbolKit DeclarationFragments.swift
[47/57] Compiling SymbolKit Fragment.swift
[48/57] Compiling SymbolKit FragmentKind.swift
[49/57] Compiling SymbolKit FunctionParameter.swift
[50/57] Compiling SymbolKit FunctionSignature.swift
[51/57] Compiling SymbolKit UnifiedSymbol+Encodable.swift
[52/57] Compiling SymbolKit UnifiedSymbol.swift
[53/57] Compiling SymbolKit UnifiedSymbolGraph+Encodable.swift
[54/57] Compiling SymbolKit UnifiedSymbolGraph.swift
[55/61] Compiling snippet_extract SymbolGraph+Snippet.swift
[56/61] Compiling snippet_extract URL+Status.swift
[57/61] Emitting module snippet_extract
[58/61] Compiling snippet_extract SnippetBuildCommand.swift
[58/61] Write Objects.LinkFileList
[59/61] Linking snippet-extract-tool
[60/61] Applying snippet-extract-tool
Build of product 'snippet-extract' complete! (3.38s)
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-49B95AFC49DCD68C.txt
Build of target: 'KSPlayer' complete! (0.55s)
error: unspecified("terminated(1): /Applications/Xcode-26.0.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 -plugin-path /Applications/Xcode-26.0.0.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/host/plugins/testing -sdk /Applications/Xcode-26.0.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.0.sdk -F /Applications/Xcode-26.0.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/Frameworks -F /Applications/Xcode-26.0.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/PrivateFrameworks -I /Applications/Xcode-26.0.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/usr/lib -L /Applications/Xcode-26.0.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.")
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-49B95AFC49DCD68C.txt
Build of product 'snippet-extract' complete! (0.24s)
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-49B95AFC49DCD68C.txt
Build of target: 'KSPlayer' complete! (0.55s)
error: unspecified("terminated(1): /Applications/Xcode-26.0.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 -plugin-path /Applications/Xcode-26.0.0.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/host/plugins/testing -sdk /Applications/Xcode-26.0.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.0.sdk -F /Applications/Xcode-26.0.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/Frameworks -F /Applications/Xcode-26.0.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/PrivateFrameworks -I /Applications/Xcode-26.0.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/usr/lib -L /Applications/Xcode-26.0.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.")
Error while generating docs: retryLimitExceeded(lastError: Optional(Shell command failed:
env DEVELOPER_DIR=/Applications/Xcode-26.0.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.