Build Information
Successful build of AudioVisualService, reference main (ba75d6), with Swift 6.2 for macOS (SPM) on 11 Dec 2025 02:08:08 UTC.
Swift 6 data race errors: 0
Build Command
env DEVELOPER_DIR=/Applications/Xcode-26.0.0.app xcrun swift build --arch arm64Build Log
========================================
RunAll
========================================
Builder version: 4.68.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/iankoex/AudioVisualService.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/iankoex/AudioVisualService
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at ba75d6c Add Swift package badges to README
Cloned https://github.com/iankoex/AudioVisualService.git
Revision (git rev-parse @):
ba75d6cc7113c2cc35ac87425a69c495e2acc8b0
SUCCESS checkout https://github.com/iankoex/AudioVisualService.git at main
========================================
ResolveProductDependencies
========================================
Resolving dependencies ...
{
"identity": ".resolve-product-dependencies",
"name": "resolve-dependencies",
"url": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
"dependencies": [
{
"identity": "audiovisualservice",
"name": "AudioVisualService",
"url": "https://github.com/iankoex/AudioVisualService.git",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/AudioVisualService",
"dependencies": [
]
}
]
}
Fetching https://github.com/iankoex/AudioVisualService.git
[1/245] Fetching audiovisualservice
Fetched https://github.com/iankoex/AudioVisualService.git from cache (0.81s)
Creating working copy for https://github.com/iankoex/AudioVisualService.git
Working copy of https://github.com/iankoex/AudioVisualService.git resolved at main (ba75d6c)
warning: '.resolve-product-dependencies': dependency 'audiovisualservice' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.2
Building package at path: $PWD
https://github.com/iankoex/AudioVisualService.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-26.0.0.app xcrun swift build --arch arm64
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-49B95AFC49DCD68C.txt
[3/25] Emitting module AudioVisualService
macro expansion @ObservationTracked:1:34: warning: stored property '_player' of 'Sendable'-conforming class 'AudioVisualService' is mutable; this is an error in the Swift 6 language mode
`- /Users/admin/builder/spi-builder-workspace/Sources/AudioVisualService/AudioVisualService.swift:15:33: note: expanded code originates here
13 | @Observable
14 | public final class AudioVisualService: Sendable {
15 | public var player: AVPlayer?
+--- macro expansion @ObservationTracked ---------------------------
|1 | @ObservationIgnored private var _player: AVPlayer?
| | `- warning: stored property '_player' of 'Sendable'-conforming class 'AudioVisualService' is mutable; this is an error in the Swift 6 language mode
+-------------------------------------------------------------------
16 | public var time: CMTime = .zero
17 | public var duration: CMTime = .zero
/Users/admin/builder/spi-builder-workspace/Sources/AudioVisualService/CacheManager/CacheManager.swift:54:9: warning: stored property 'cachedCodableURLResponse' of 'Sendable'-conforming class 'CacheManager' is mutable; this is an error in the Swift 6 language mode
52 | /// This property holds the decoded `CodableURLResponse` containing information
53 | /// about the video's content length, MIME type, and cached data ranges.
54 | var cachedCodableURLResponse: CodableURLResponse? = nil
| `- warning: stored property 'cachedCodableURLResponse' of 'Sendable'-conforming class 'CacheManager' is mutable; this is an error in the Swift 6 language mode
55 |
56 | /// The maximum duration to retain cached files before automatic cleanup.
[4/27] Compiling AudioVisualService AudioTapProcessor.swift
/Users/admin/builder/spi-builder-workspace/Sources/AudioVisualService/Utilities/AudioTapProcessor.swift:21:13: warning: initialization of variable 'callbacks' was never used; consider replacing with assignment to '_' or removing it [#no-usage]
19 | super.init()
20 |
21 | var callbacks = MTAudioProcessingTapCallbacks(
| `- warning: initialization of variable 'callbacks' was never used; consider replacing with assignment to '_' or removing it [#no-usage]
22 | version: kMTAudioProcessingTapCallbacksVersion_0,
23 | clientInfo: UnsafeMutableRawPointer(Unmanaged.passRetained(self).toOpaque()),
[5/27] Compiling AudioVisualService Preloader.swift
/Users/admin/builder/spi-builder-workspace/Sources/AudioVisualService/Utilities/AudioTapProcessor.swift:21:13: warning: initialization of variable 'callbacks' was never used; consider replacing with assignment to '_' or removing it [#no-usage]
19 | super.init()
20 |
21 | var callbacks = MTAudioProcessingTapCallbacks(
| `- warning: initialization of variable 'callbacks' was never used; consider replacing with assignment to '_' or removing it [#no-usage]
22 | version: kMTAudioProcessingTapCallbacksVersion_0,
23 | clientInfo: UnsafeMutableRawPointer(Unmanaged.passRetained(self).toOpaque()),
[6/27] Compiling AudioVisualService ResourceLoader+Delegate.swift
/Users/admin/builder/spi-builder-workspace/Sources/AudioVisualService/ResourceLoaderDelegate/ResourceLoader.swift:59:9: warning: actor-isolated instance method 'invalidate()' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
57 |
58 | deinit {
59 | invalidate()
| `- warning: actor-isolated instance method 'invalidate()' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
60 | }
61 |
:
65 | /// It ensures that all loading requests are properly completed and any ongoing
66 | /// network operations are cancelled. The URL session is also invalidated.
67 | public func invalidate() {
| `- note: calls to instance method 'invalidate()' from outside of its actor context are implicitly asynchronous
68 | let pendingRequests = pendingRequests
69 | self.loadingRequests.forEach {
[7/27] Compiling AudioVisualService ResourceLoader.swift
/Users/admin/builder/spi-builder-workspace/Sources/AudioVisualService/ResourceLoaderDelegate/ResourceLoader.swift:59:9: warning: actor-isolated instance method 'invalidate()' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
57 |
58 | deinit {
59 | invalidate()
| `- warning: actor-isolated instance method 'invalidate()' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
60 | }
61 |
:
65 | /// It ensures that all loading requests are properly completed and any ongoing
66 | /// network operations are cancelled. The URL session is also invalidated.
67 | public func invalidate() {
| `- note: calls to instance method 'invalidate()' from outside of its actor context are implicitly asynchronous
68 | let pendingRequests = pendingRequests
69 | self.loadingRequests.forEach {
[8/27] Compiling AudioVisualService IOSNowPlayableBehavior.swift
[9/27] Compiling AudioVisualService NowPlayable.swift
[10/27] Compiling AudioVisualService CacheManager+Data.swift
/Users/admin/builder/spi-builder-workspace/Sources/AudioVisualService/CacheManager/CacheManager+Helpers.swift:80:44: warning: instance method 'makeIterator' is unavailable from asynchronous contexts; this is an error in the Swift 6 language mode
78 |
79 | var cacheFiles: [(fileURL: URL, modificationDate: Date)] = []
80 | for case let fileURL as URL in enumerator {
| `- warning: instance method 'makeIterator' is unavailable from asynchronous contexts; this is an error in the Swift 6 language mode
81 | guard let resourceValues = try? fileURL.resourceValues(forKeys: Set(resourceKeys)) else { continue }
82 | guard resourceValues.isDirectory == false else { continue }
[11/27] Compiling AudioVisualService CacheManager+DataRange.swift
/Users/admin/builder/spi-builder-workspace/Sources/AudioVisualService/CacheManager/CacheManager+Helpers.swift:80:44: warning: instance method 'makeIterator' is unavailable from asynchronous contexts; this is an error in the Swift 6 language mode
78 |
79 | var cacheFiles: [(fileURL: URL, modificationDate: Date)] = []
80 | for case let fileURL as URL in enumerator {
| `- warning: instance method 'makeIterator' is unavailable from asynchronous contexts; this is an error in the Swift 6 language mode
81 | guard let resourceValues = try? fileURL.resourceValues(forKeys: Set(resourceKeys)) else { continue }
82 | guard resourceValues.isDirectory == false else { continue }
[12/27] Compiling AudioVisualService CacheManager+Helpers.swift
/Users/admin/builder/spi-builder-workspace/Sources/AudioVisualService/CacheManager/CacheManager+Helpers.swift:80:44: warning: instance method 'makeIterator' is unavailable from asynchronous contexts; this is an error in the Swift 6 language mode
78 |
79 | var cacheFiles: [(fileURL: URL, modificationDate: Date)] = []
80 | for case let fileURL as URL in enumerator {
| `- warning: instance method 'makeIterator' is unavailable from asynchronous contexts; this is an error in the Swift 6 language mode
81 | guard let resourceValues = try? fileURL.resourceValues(forKeys: Set(resourceKeys)) else { continue }
82 | guard resourceValues.isDirectory == false else { continue }
[13/27] Compiling AudioVisualService NowPlayableMetadata.swift
[14/27] Compiling AudioVisualService ContentInformationRequest.swift
[15/27] Compiling AudioVisualService NowPlayableCommand.swift
[16/27] Compiling AudioVisualService NowPlayableError.swift
[17/27] Compiling AudioVisualService DataRequest.swift
[18/27] Compiling AudioVisualService LoadingRequest.swift
[19/27] Compiling AudioVisualService CachingAVURLAsset.swift
[20/27] Compiling AudioVisualService CachingPlayerItem.swift
[21/27] Compiling AudioVisualService AVS+NowPlayable.swift
[22/27] Compiling AudioVisualService CacheManager.swift
/Users/admin/builder/spi-builder-workspace/Sources/AudioVisualService/CacheManager/CacheManager.swift:54:9: warning: stored property 'cachedCodableURLResponse' of 'Sendable'-conforming class 'CacheManager' is mutable; this is an error in the Swift 6 language mode
52 | /// This property holds the decoded `CodableURLResponse` containing information
53 | /// about the video's content length, MIME type, and cached data ranges.
54 | var cachedCodableURLResponse: CodableURLResponse? = nil
| `- warning: stored property 'cachedCodableURLResponse' of 'Sendable'-conforming class 'CacheManager' is mutable; this is an error in the Swift 6 language mode
55 |
56 | /// The maximum duration to retain cached files before automatic cleanup.
[23/27] Compiling AudioVisualService CodableURLResponse.swift
/Users/admin/builder/spi-builder-workspace/Sources/AudioVisualService/CacheManager/CacheManager.swift:54:9: warning: stored property 'cachedCodableURLResponse' of 'Sendable'-conforming class 'CacheManager' is mutable; this is an error in the Swift 6 language mode
52 | /// This property holds the decoded `CodableURLResponse` containing information
53 | /// about the video's content length, MIME type, and cached data ranges.
54 | var cachedCodableURLResponse: CodableURLResponse? = nil
| `- warning: stored property 'cachedCodableURLResponse' of 'Sendable'-conforming class 'CacheManager' is mutable; this is an error in the Swift 6 language mode
55 |
56 | /// The maximum duration to retain cached files before automatic cleanup.
[24/27] Compiling AudioVisualService URL+md5String.swift
/Users/admin/builder/spi-builder-workspace/Sources/AudioVisualService/CacheManager/CacheManager.swift:54:9: warning: stored property 'cachedCodableURLResponse' of 'Sendable'-conforming class 'CacheManager' is mutable; this is an error in the Swift 6 language mode
52 | /// This property holds the decoded `CodableURLResponse` containing information
53 | /// about the video's content length, MIME type, and cached data ranges.
54 | var cachedCodableURLResponse: CodableURLResponse? = nil
| `- warning: stored property 'cachedCodableURLResponse' of 'Sendable'-conforming class 'CacheManager' is mutable; this is an error in the Swift 6 language mode
55 |
56 | /// The maximum duration to retain cached files before automatic cleanup.
[25/27] Compiling AudioVisualService AudioVisualService.swift
macro expansion @ObservationTracked:1:34: warning: stored property '_player' of 'Sendable'-conforming class 'AudioVisualService' is mutable; this is an error in the Swift 6 language mode
`- /Users/admin/builder/spi-builder-workspace/Sources/AudioVisualService/AudioVisualService.swift:15:33: note: expanded code originates here
13 | @Observable
14 | public final class AudioVisualService: Sendable {
15 | public var player: AVPlayer?
+--- macro expansion @ObservationTracked ---------------------------
|1 | @ObservationIgnored private var _player: AVPlayer?
| | `- warning: stored property '_player' of 'Sendable'-conforming class 'AudioVisualService' is mutable; this is an error in the Swift 6 language mode
+-------------------------------------------------------------------
16 | public var time: CMTime = .zero
17 | public var duration: CMTime = .zero
/Users/admin/builder/spi-builder-workspace/Sources/AudioVisualService/AudioVisualService.swift:56:17: warning: call to main actor-isolated instance method 'play()' in a synchronous nonisolated context [#ActorIsolatedCall]
52 | }
53 |
54 | private func play() {
| `- note: add '@MainActor' to make instance method 'play()' part of global actor 'MainActor'
55 | initialisePlayer()
56 | player?.play()
| `- warning: call to main actor-isolated instance method 'play()' in a synchronous nonisolated context [#ActorIsolatedCall]
57 | }
58 |
AVFoundation.AVPlayer.play:2:22: note: calls to instance method 'play()' from outside of its actor context are implicitly asynchronous
1 | class AVPlayer {
2 | @MainActor open func play()}
| `- note: calls to instance method 'play()' from outside of its actor context are implicitly asynchronous
3 |
/Users/admin/builder/spi-builder-workspace/Sources/AudioVisualService/AudioVisualService.swift:60:17: warning: call to main actor-isolated instance method 'pause()' in a synchronous nonisolated context [#ActorIsolatedCall]
57 | }
58 |
59 | private func pause() {
| `- note: add '@MainActor' to make instance method 'pause()' part of global actor 'MainActor'
60 | player?.pause()
| `- warning: call to main actor-isolated instance method 'pause()' in a synchronous nonisolated context [#ActorIsolatedCall]
61 | }
62 |
AVFoundation.AVPlayer.pause:2:22: note: calls to instance method 'pause()' from outside of its actor context are implicitly asynchronous
1 | class AVPlayer {
2 | @MainActor open func pause()}
| `- note: calls to instance method 'pause()' from outside of its actor context are implicitly asynchronous
3 |
/Users/admin/builder/spi-builder-workspace/Sources/AudioVisualService/AudioVisualService.swift:75:27: warning: call to main actor-isolated instance method 'play()' in a synchronous nonisolated context [#ActorIsolatedCall]
73 | ) { [weak self] _ in
74 | self?.player?.seek(to: .zero)
75 | self?.player?.play()
| `- warning: call to main actor-isolated instance method 'play()' in a synchronous nonisolated context [#ActorIsolatedCall]
76 | }
77 |
AVFoundation.AVPlayer.play:2:22: note: calls to instance method 'play()' from outside of its actor context are implicitly asynchronous
1 | class AVPlayer {
2 | @MainActor open func play()}
| `- note: calls to instance method 'play()' from outside of its actor context are implicitly asynchronous
3 |
/Users/admin/builder/spi-builder-workspace/Sources/AudioVisualService/AudioVisualService.swift:93:26: warning: call to main actor-isolated initializer 'init(url:automaticallyLoadedAssetKeys:serviceDelegate:)' in a synchronous nonisolated context [#ActorIsolatedCall]
90 | }
91 |
92 | private func createAVPlayer(using url: URL) -> AVPlayer {
| `- note: add '@MainActor' to make instance method 'createAVPlayer(using:)' part of global actor 'MainActor'
93 | let playerItem = CachingPlayerItem(url: url)
| `- warning: call to main actor-isolated initializer 'init(url:automaticallyLoadedAssetKeys:serviceDelegate:)' in a synchronous nonisolated context [#ActorIsolatedCall]
94 | let player = AVPlayer(playerItem: playerItem)
95 | player.currentItem?.canUseNetworkResourcesForLiveStreamingWhilePaused = true
/Users/admin/builder/spi-builder-workspace/Sources/AudioVisualService/Helpers/CachingPlayerItem.swift:41:12: note: calls to initializer 'init(url:automaticallyLoadedAssetKeys:serviceDelegate:)' from outside of its actor context are implicitly asynchronous
39 | /// - automaticallyLoadedAssetKeys: Optional array of asset keys to load automatically.
40 | /// - serviceDelegate: An optional delegate to receive caching and loading events.
41 | public init(
| |- note: calls to initializer 'init(url:automaticallyLoadedAssetKeys:serviceDelegate:)' from outside of its actor context are implicitly asynchronous
| `- note: main actor isolation inferred from inheritance from class 'AVPlayerItem'
42 | url: URL,
43 | automaticallyLoadedAssetKeys: [String]? = ["duration", "isPlayable"],
/Users/admin/builder/spi-builder-workspace/Sources/AudioVisualService/AudioVisualService.swift:96:16: warning: main actor-isolated property 'automaticallyWaitsToMinimizeStalling' can not be mutated from a nonisolated context
90 | }
91 |
92 | private func createAVPlayer(using url: URL) -> AVPlayer {
| `- note: add '@MainActor' to make instance method 'createAVPlayer(using:)' part of global actor 'MainActor'
93 | let playerItem = CachingPlayerItem(url: url)
94 | let player = AVPlayer(playerItem: playerItem)
95 | player.currentItem?.canUseNetworkResourcesForLiveStreamingWhilePaused = true
96 | player.automaticallyWaitsToMinimizeStalling = true
| `- warning: main actor-isolated property 'automaticallyWaitsToMinimizeStalling' can not be mutated from a nonisolated context
97 | return player
98 | }
/Applications/Xcode-26.0.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.0.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVPlayer.h:378:28: note: mutation of this property is only permitted within the actor
376 | ///
377 | /// Before macOS 13, iOS 16, tvOS 16, and watchOS 9, this property must be accessed on the main thread/queue.
378 | @property (nonatomic) BOOL automaticallyWaitsToMinimizeStalling
| `- note: mutation of this property is only permitted within the actor
379 | #if AVF_DEPLOYING_TO_2022_RELEASES_AND_LATER
380 | NS_SWIFT_NONISOLATED
/Users/admin/builder/spi-builder-workspace/Sources/AudioVisualService/AudioVisualService.swift:113:17: warning: call to main actor-isolated instance method 'pause()' in a synchronous nonisolated context [#ActorIsolatedCall]
110 | }
111 |
112 | public func seek(to timeInSeconds: Double) {
| `- note: add '@MainActor' to make instance method 'seek(to:)' part of global actor 'MainActor'
113 | player?.pause()
| `- warning: call to main actor-isolated instance method 'pause()' in a synchronous nonisolated context [#ActorIsolatedCall]
114 | let time = CMTime(seconds: timeInSeconds, preferredTimescale: CMTimeScale(NSEC_PER_SEC))
115 | player?.seek(to: time, toleranceBefore: .positiveInfinity, toleranceAfter: .positiveInfinity)
AVFoundation.AVPlayer.pause:2:22: note: calls to instance method 'pause()' from outside of its actor context are implicitly asynchronous
1 | class AVPlayer {
2 | @MainActor open func pause()}
| `- note: calls to instance method 'pause()' from outside of its actor context are implicitly asynchronous
3 |
[#ActorIsolatedCall]: <https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call>
[26/27] Compiling AudioVisualService AudioVisualServiceDelegate.swift
macro expansion @ObservationTracked:1:34: warning: stored property '_player' of 'Sendable'-conforming class 'AudioVisualService' is mutable; this is an error in the Swift 6 language mode
`- /Users/admin/builder/spi-builder-workspace/Sources/AudioVisualService/AudioVisualService.swift:15:33: note: expanded code originates here
13 | @Observable
14 | public final class AudioVisualService: Sendable {
15 | public var player: AVPlayer?
+--- macro expansion @ObservationTracked ---------------------------
|1 | @ObservationIgnored private var _player: AVPlayer?
| | `- warning: stored property '_player' of 'Sendable'-conforming class 'AudioVisualService' is mutable; this is an error in the Swift 6 language mode
+-------------------------------------------------------------------
16 | public var time: CMTime = .zero
17 | public var duration: CMTime = .zero
/Users/admin/builder/spi-builder-workspace/Sources/AudioVisualService/AudioVisualService.swift:56:17: warning: call to main actor-isolated instance method 'play()' in a synchronous nonisolated context [#ActorIsolatedCall]
52 | }
53 |
54 | private func play() {
| `- note: add '@MainActor' to make instance method 'play()' part of global actor 'MainActor'
55 | initialisePlayer()
56 | player?.play()
| `- warning: call to main actor-isolated instance method 'play()' in a synchronous nonisolated context [#ActorIsolatedCall]
57 | }
58 |
AVFoundation.AVPlayer.play:2:22: note: calls to instance method 'play()' from outside of its actor context are implicitly asynchronous
1 | class AVPlayer {
2 | @MainActor open func play()}
| `- note: calls to instance method 'play()' from outside of its actor context are implicitly asynchronous
3 |
/Users/admin/builder/spi-builder-workspace/Sources/AudioVisualService/AudioVisualService.swift:60:17: warning: call to main actor-isolated instance method 'pause()' in a synchronous nonisolated context [#ActorIsolatedCall]
57 | }
58 |
59 | private func pause() {
| `- note: add '@MainActor' to make instance method 'pause()' part of global actor 'MainActor'
60 | player?.pause()
| `- warning: call to main actor-isolated instance method 'pause()' in a synchronous nonisolated context [#ActorIsolatedCall]
61 | }
62 |
AVFoundation.AVPlayer.pause:2:22: note: calls to instance method 'pause()' from outside of its actor context are implicitly asynchronous
1 | class AVPlayer {
2 | @MainActor open func pause()}
| `- note: calls to instance method 'pause()' from outside of its actor context are implicitly asynchronous
3 |
/Users/admin/builder/spi-builder-workspace/Sources/AudioVisualService/AudioVisualService.swift:75:27: warning: call to main actor-isolated instance method 'play()' in a synchronous nonisolated context [#ActorIsolatedCall]
73 | ) { [weak self] _ in
74 | self?.player?.seek(to: .zero)
75 | self?.player?.play()
| `- warning: call to main actor-isolated instance method 'play()' in a synchronous nonisolated context [#ActorIsolatedCall]
76 | }
77 |
AVFoundation.AVPlayer.play:2:22: note: calls to instance method 'play()' from outside of its actor context are implicitly asynchronous
1 | class AVPlayer {
2 | @MainActor open func play()}
| `- note: calls to instance method 'play()' from outside of its actor context are implicitly asynchronous
3 |
/Users/admin/builder/spi-builder-workspace/Sources/AudioVisualService/AudioVisualService.swift:93:26: warning: call to main actor-isolated initializer 'init(url:automaticallyLoadedAssetKeys:serviceDelegate:)' in a synchronous nonisolated context [#ActorIsolatedCall]
90 | }
91 |
92 | private func createAVPlayer(using url: URL) -> AVPlayer {
| `- note: add '@MainActor' to make instance method 'createAVPlayer(using:)' part of global actor 'MainActor'
93 | let playerItem = CachingPlayerItem(url: url)
| `- warning: call to main actor-isolated initializer 'init(url:automaticallyLoadedAssetKeys:serviceDelegate:)' in a synchronous nonisolated context [#ActorIsolatedCall]
94 | let player = AVPlayer(playerItem: playerItem)
95 | player.currentItem?.canUseNetworkResourcesForLiveStreamingWhilePaused = true
/Users/admin/builder/spi-builder-workspace/Sources/AudioVisualService/Helpers/CachingPlayerItem.swift:41:12: note: calls to initializer 'init(url:automaticallyLoadedAssetKeys:serviceDelegate:)' from outside of its actor context are implicitly asynchronous
39 | /// - automaticallyLoadedAssetKeys: Optional array of asset keys to load automatically.
40 | /// - serviceDelegate: An optional delegate to receive caching and loading events.
41 | public init(
| |- note: calls to initializer 'init(url:automaticallyLoadedAssetKeys:serviceDelegate:)' from outside of its actor context are implicitly asynchronous
| `- note: main actor isolation inferred from inheritance from class 'AVPlayerItem'
42 | url: URL,
43 | automaticallyLoadedAssetKeys: [String]? = ["duration", "isPlayable"],
/Users/admin/builder/spi-builder-workspace/Sources/AudioVisualService/AudioVisualService.swift:96:16: warning: main actor-isolated property 'automaticallyWaitsToMinimizeStalling' can not be mutated from a nonisolated context
90 | }
91 |
92 | private func createAVPlayer(using url: URL) -> AVPlayer {
| `- note: add '@MainActor' to make instance method 'createAVPlayer(using:)' part of global actor 'MainActor'
93 | let playerItem = CachingPlayerItem(url: url)
94 | let player = AVPlayer(playerItem: playerItem)
95 | player.currentItem?.canUseNetworkResourcesForLiveStreamingWhilePaused = true
96 | player.automaticallyWaitsToMinimizeStalling = true
| `- warning: main actor-isolated property 'automaticallyWaitsToMinimizeStalling' can not be mutated from a nonisolated context
97 | return player
98 | }
/Applications/Xcode-26.0.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.0.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVPlayer.h:378:28: note: mutation of this property is only permitted within the actor
376 | ///
377 | /// Before macOS 13, iOS 16, tvOS 16, and watchOS 9, this property must be accessed on the main thread/queue.
378 | @property (nonatomic) BOOL automaticallyWaitsToMinimizeStalling
| `- note: mutation of this property is only permitted within the actor
379 | #if AVF_DEPLOYING_TO_2022_RELEASES_AND_LATER
380 | NS_SWIFT_NONISOLATED
/Users/admin/builder/spi-builder-workspace/Sources/AudioVisualService/AudioVisualService.swift:113:17: warning: call to main actor-isolated instance method 'pause()' in a synchronous nonisolated context [#ActorIsolatedCall]
110 | }
111 |
112 | public func seek(to timeInSeconds: Double) {
| `- note: add '@MainActor' to make instance method 'seek(to:)' part of global actor 'MainActor'
113 | player?.pause()
| `- warning: call to main actor-isolated instance method 'pause()' in a synchronous nonisolated context [#ActorIsolatedCall]
114 | let time = CMTime(seconds: timeInSeconds, preferredTimescale: CMTimeScale(NSEC_PER_SEC))
115 | player?.seek(to: time, toleranceBefore: .positiveInfinity, toleranceAfter: .positiveInfinity)
AVFoundation.AVPlayer.pause:2:22: note: calls to instance method 'pause()' from outside of its actor context are implicitly asynchronous
1 | class AVPlayer {
2 | @MainActor open func pause()}
| `- note: calls to instance method 'pause()' from outside of its actor context are implicitly asynchronous
3 |
[#ActorIsolatedCall]: <https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call>
[27/27] Compiling AudioVisualService CacheManager+CachedResponse.swift
macro expansion @ObservationTracked:1:34: warning: stored property '_player' of 'Sendable'-conforming class 'AudioVisualService' is mutable; this is an error in the Swift 6 language mode
`- /Users/admin/builder/spi-builder-workspace/Sources/AudioVisualService/AudioVisualService.swift:15:33: note: expanded code originates here
13 | @Observable
14 | public final class AudioVisualService: Sendable {
15 | public var player: AVPlayer?
+--- macro expansion @ObservationTracked ---------------------------
|1 | @ObservationIgnored private var _player: AVPlayer?
| | `- warning: stored property '_player' of 'Sendable'-conforming class 'AudioVisualService' is mutable; this is an error in the Swift 6 language mode
+-------------------------------------------------------------------
16 | public var time: CMTime = .zero
17 | public var duration: CMTime = .zero
/Users/admin/builder/spi-builder-workspace/Sources/AudioVisualService/AudioVisualService.swift:56:17: warning: call to main actor-isolated instance method 'play()' in a synchronous nonisolated context [#ActorIsolatedCall]
52 | }
53 |
54 | private func play() {
| `- note: add '@MainActor' to make instance method 'play()' part of global actor 'MainActor'
55 | initialisePlayer()
56 | player?.play()
| `- warning: call to main actor-isolated instance method 'play()' in a synchronous nonisolated context [#ActorIsolatedCall]
57 | }
58 |
AVFoundation.AVPlayer.play:2:22: note: calls to instance method 'play()' from outside of its actor context are implicitly asynchronous
1 | class AVPlayer {
2 | @MainActor open func play()}
| `- note: calls to instance method 'play()' from outside of its actor context are implicitly asynchronous
3 |
/Users/admin/builder/spi-builder-workspace/Sources/AudioVisualService/AudioVisualService.swift:60:17: warning: call to main actor-isolated instance method 'pause()' in a synchronous nonisolated context [#ActorIsolatedCall]
57 | }
58 |
59 | private func pause() {
| `- note: add '@MainActor' to make instance method 'pause()' part of global actor 'MainActor'
60 | player?.pause()
| `- warning: call to main actor-isolated instance method 'pause()' in a synchronous nonisolated context [#ActorIsolatedCall]
61 | }
62 |
AVFoundation.AVPlayer.pause:2:22: note: calls to instance method 'pause()' from outside of its actor context are implicitly asynchronous
1 | class AVPlayer {
2 | @MainActor open func pause()}
| `- note: calls to instance method 'pause()' from outside of its actor context are implicitly asynchronous
3 |
/Users/admin/builder/spi-builder-workspace/Sources/AudioVisualService/AudioVisualService.swift:75:27: warning: call to main actor-isolated instance method 'play()' in a synchronous nonisolated context [#ActorIsolatedCall]
73 | ) { [weak self] _ in
74 | self?.player?.seek(to: .zero)
75 | self?.player?.play()
| `- warning: call to main actor-isolated instance method 'play()' in a synchronous nonisolated context [#ActorIsolatedCall]
76 | }
77 |
AVFoundation.AVPlayer.play:2:22: note: calls to instance method 'play()' from outside of its actor context are implicitly asynchronous
1 | class AVPlayer {
2 | @MainActor open func play()}
| `- note: calls to instance method 'play()' from outside of its actor context are implicitly asynchronous
3 |
/Users/admin/builder/spi-builder-workspace/Sources/AudioVisualService/AudioVisualService.swift:93:26: warning: call to main actor-isolated initializer 'init(url:automaticallyLoadedAssetKeys:serviceDelegate:)' in a synchronous nonisolated context [#ActorIsolatedCall]
90 | }
91 |
92 | private func createAVPlayer(using url: URL) -> AVPlayer {
| `- note: add '@MainActor' to make instance method 'createAVPlayer(using:)' part of global actor 'MainActor'
93 | let playerItem = CachingPlayerItem(url: url)
| `- warning: call to main actor-isolated initializer 'init(url:automaticallyLoadedAssetKeys:serviceDelegate:)' in a synchronous nonisolated context [#ActorIsolatedCall]
94 | let player = AVPlayer(playerItem: playerItem)
95 | player.currentItem?.canUseNetworkResourcesForLiveStreamingWhilePaused = true
/Users/admin/builder/spi-builder-workspace/Sources/AudioVisualService/Helpers/CachingPlayerItem.swift:41:12: note: calls to initializer 'init(url:automaticallyLoadedAssetKeys:serviceDelegate:)' from outside of its actor context are implicitly asynchronous
39 | /// - automaticallyLoadedAssetKeys: Optional array of asset keys to load automatically.
40 | /// - serviceDelegate: An optional delegate to receive caching and loading events.
41 | public init(
| |- note: calls to initializer 'init(url:automaticallyLoadedAssetKeys:serviceDelegate:)' from outside of its actor context are implicitly asynchronous
| `- note: main actor isolation inferred from inheritance from class 'AVPlayerItem'
42 | url: URL,
43 | automaticallyLoadedAssetKeys: [String]? = ["duration", "isPlayable"],
/Users/admin/builder/spi-builder-workspace/Sources/AudioVisualService/AudioVisualService.swift:96:16: warning: main actor-isolated property 'automaticallyWaitsToMinimizeStalling' can not be mutated from a nonisolated context
90 | }
91 |
92 | private func createAVPlayer(using url: URL) -> AVPlayer {
| `- note: add '@MainActor' to make instance method 'createAVPlayer(using:)' part of global actor 'MainActor'
93 | let playerItem = CachingPlayerItem(url: url)
94 | let player = AVPlayer(playerItem: playerItem)
95 | player.currentItem?.canUseNetworkResourcesForLiveStreamingWhilePaused = true
96 | player.automaticallyWaitsToMinimizeStalling = true
| `- warning: main actor-isolated property 'automaticallyWaitsToMinimizeStalling' can not be mutated from a nonisolated context
97 | return player
98 | }
/Applications/Xcode-26.0.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.0.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVPlayer.h:378:28: note: mutation of this property is only permitted within the actor
376 | ///
377 | /// Before macOS 13, iOS 16, tvOS 16, and watchOS 9, this property must be accessed on the main thread/queue.
378 | @property (nonatomic) BOOL automaticallyWaitsToMinimizeStalling
| `- note: mutation of this property is only permitted within the actor
379 | #if AVF_DEPLOYING_TO_2022_RELEASES_AND_LATER
380 | NS_SWIFT_NONISOLATED
/Users/admin/builder/spi-builder-workspace/Sources/AudioVisualService/AudioVisualService.swift:113:17: warning: call to main actor-isolated instance method 'pause()' in a synchronous nonisolated context [#ActorIsolatedCall]
110 | }
111 |
112 | public func seek(to timeInSeconds: Double) {
| `- note: add '@MainActor' to make instance method 'seek(to:)' part of global actor 'MainActor'
113 | player?.pause()
| `- warning: call to main actor-isolated instance method 'pause()' in a synchronous nonisolated context [#ActorIsolatedCall]
114 | let time = CMTime(seconds: timeInSeconds, preferredTimescale: CMTimeScale(NSEC_PER_SEC))
115 | player?.seek(to: time, toleranceBefore: .positiveInfinity, toleranceAfter: .positiveInfinity)
AVFoundation.AVPlayer.pause:2:22: note: calls to instance method 'pause()' from outside of its actor context are implicitly asynchronous
1 | class AVPlayer {
2 | @MainActor open func pause()}
| `- note: calls to instance method 'pause()' from outside of its actor context are implicitly asynchronous
3 |
[#ActorIsolatedCall]: <https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call>
Build complete! (10.81s)
Build complete.
{
"dependencies" : [
],
"manifest_display_name" : "AudioVisualService",
"name" : "AudioVisualService",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
],
"products" : [
{
"name" : "AudioVisualService",
"targets" : [
"AudioVisualService"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "AudioVisualServiceTests",
"module_type" : "SwiftTarget",
"name" : "AudioVisualServiceTests",
"path" : "Tests/AudioVisualServiceTests",
"sources" : [
"CachingPlayerItemTests.swift"
],
"target_dependencies" : [
"AudioVisualService"
],
"type" : "test"
},
{
"c99name" : "AudioVisualService",
"module_type" : "SwiftTarget",
"name" : "AudioVisualService",
"path" : "Sources/AudioVisualService",
"product_memberships" : [
"AudioVisualService"
],
"sources" : [
"AudioVisualService.swift",
"AudioVisualServiceDelegate.swift",
"CacheManager/CacheManager+CachedResponse.swift",
"CacheManager/CacheManager+Data.swift",
"CacheManager/CacheManager+DataRange.swift",
"CacheManager/CacheManager+Helpers.swift",
"CacheManager/CacheManager.swift",
"CacheManager/CodableURLResponse.swift",
"Extensions/URL+md5String.swift",
"Helpers/CachingAVURLAsset.swift",
"Helpers/CachingPlayerItem.swift",
"NowPlayable/AVS+NowPlayable.swift",
"NowPlayable/IOSNowPlayableBehavior.swift",
"NowPlayable/NowPlayable.swift",
"NowPlayable/NowPlayableCommand.swift",
"NowPlayable/NowPlayableError.swift",
"NowPlayable/NowPlayableMetadata.swift",
"ResourceLoaderDelegate/ContentInformationRequest.swift",
"ResourceLoaderDelegate/DataRequest.swift",
"ResourceLoaderDelegate/LoadingRequest.swift",
"ResourceLoaderDelegate/ResourceLoader+Delegate.swift",
"ResourceLoaderDelegate/ResourceLoader.swift",
"Utilities/AudioTapProcessor.swift",
"Utilities/Preloader.swift"
],
"type" : "library"
}
],
"tools_version" : "5.8"
}
Done.