Build Information
Successful build of AVPlayerWrapper, reference master (e8f530), with Swift 6.1 for macOS (SPM) on 11 Aug 2026 15:45:18 UTC.
Swift 6 data race errors: 1
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCapturesBuild Log
========================================
RunAll
========================================
Builder version: undefined version: run 'make version' to update
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/moslienko/AVPlayerWrapper.git
Reference: master
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/moslienko/AVPlayerWrapper
* branch master -> FETCH_HEAD
* [new branch] master -> origin/master
HEAD is now at e8f5302 Merge pull request #3 from moslienko/develop
Cloned https://github.com/moslienko/AVPlayerWrapper.git
Revision (git rev-parse @):
e8f53021bc0de2a9bc56c4bb26ae9957186c7f9c
SUCCESS checkout https://github.com/moslienko/AVPlayerWrapper.git at master
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.1
Building package at path: $PWD
https://github.com/moslienko/AVPlayerWrapper.git
https://github.com/moslienko/AVPlayerWrapper.git
{
"dependencies" : [
{
"identity" : "appviewutilits",
"requirement" : {
"range" : [
{
"lower_bound" : "1.3.1",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/moslienko/AppViewUtilits.git"
}
],
"manifest_display_name" : "AVPlayerWrapper",
"name" : "AVPlayerWrapper",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "12.0"
},
{
"name" : "macos",
"version" : "10.13"
}
],
"products" : [
{
"name" : "AVPlayerWrapper",
"targets" : [
"AVPlayerWrapper"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "AVPlayerWrapperTests",
"module_type" : "SwiftTarget",
"name" : "AVPlayerWrapperTests",
"path" : "Tests/AVPlayerWrapperTests",
"sources" : [
"AVPlayerWrapperTests.swift"
],
"target_dependencies" : [
"AVPlayerWrapper"
],
"type" : "test"
},
{
"c99name" : "AVPlayerWrapper",
"module_type" : "SwiftTarget",
"name" : "AVPlayerWrapper",
"path" : "Sources/AVPlayerWrapper",
"product_dependencies" : [
"AppViewUtilits"
],
"product_memberships" : [
"AVPlayerWrapper"
],
"sources" : [
"Data/AVAssetTime.swift",
"Data/AVPlayerAfterAutoStopAction.swift",
"Data/AVPlayerAutoStopType.swift",
"Data/AVPlayerLoopType.swift",
"Data/AVPlayerWrapperMediaFile.swift",
"Data/Options/AVPlayerOptions.swift",
"Data/Options/AVSession.swift",
"Extensions/Extension+Bundle.swift",
"Service/AVPlayerAutoStopService.swift",
"Service/AVPlayerWrapper.swift",
"Service/NowPlayingService.swift"
],
"type" : "library"
}
],
"tools_version" : "5.9"
}
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures
Building for debugging...
[0/3] Write sources
[2/3] Write swift-version-2F0A5646E1D333AE.txt
[4/80] Emitting module AppViewUtilits
[5/88] Compiling AppViewUtilits AppSpacerView.swift
[6/88] Compiling AppViewUtilits AppStackView.swift
[7/88] Compiling AppViewUtilits AppTextField.swift
[8/88] Compiling AppViewUtilits AppTextView.swift
[9/88] Compiling AppViewUtilits AppTouchLabel.swift
[10/88] Compiling AppViewUtilits AppView.swift
[11/88] Compiling AppViewUtilits AppViewController.swift
[12/88] Compiling AppViewUtilits AppViewModel.swift
[13/88] Compiling AppViewUtilits AppViewCellIdentifiable.swift
[14/88] Compiling AppViewUtilits Extension+UIBezierPath.swift
[15/88] Compiling AppViewUtilits Extension+UIButton.swift
[16/88] Compiling AppViewUtilits Extension+UICollectionView.swift
[17/88] Compiling AppViewUtilits Extension+UIColor.swift
[18/88] Compiling AppViewUtilits Extension+UIImage.swift
[19/88] Compiling AppViewUtilits Extension+UIImageView.swift
[20/88] Compiling AppViewUtilits Extension+UILabel.swift
[21/88] Compiling AppViewUtilits Extension+UIScrollView.swift
[22/88] Compiling AppViewUtilits Extension+NSAttributedString.swift
[23/88] Compiling AppViewUtilits Extension+NSCountedSet.swift
[24/88] Compiling AppViewUtilits Extension+NSPredicate.swift
[25/88] Compiling AppViewUtilits Extension+Notifications.swift
[26/88] Compiling AppViewUtilits Extension+Optional.swift
[27/88] Compiling AppViewUtilits Extension+Sequence.swift
[28/88] Compiling AppViewUtilits Extension+String.swift
[29/88] Compiling AppViewUtilits Extension+UIApplication.swift
[30/88] Compiling AppViewUtilits AppViewSectionModel.swift
[31/88] Compiling AppViewUtilits AppViewCollectionCell.swift
[32/88] Compiling AppViewUtilits AppViewTableCell.swift
[33/88] Compiling AppViewUtilits ButtonState.swift
[34/88] Compiling AppViewUtilits DefaultPlaceholderType.swift
[35/88] Compiling AppViewUtilits PlaceholderButtonLayout.swift
[36/88] Compiling AppViewUtilits PlaceholderViewStyle.swift
[37/88] Compiling AppViewUtilits PlaceholderButtonOptions.swift
[38/88] Compiling AppViewUtilits PlaceholderContainerOptions.swift
[39/88] Compiling AppViewUtilits Decorate.swift
[40/88] Compiling AppViewUtilits Environment.swift
[41/88] Compiling AppViewUtilits EventObject.swift
[42/88] Compiling AppViewUtilits NotificationObserver.swift
[43/88] Compiling AppViewUtilits Reachability.swift
[44/88] Compiling AppViewUtilits DebouncedFunction.swift
[45/88] Compiling AppViewUtilits RecursionFunction.swift
[46/88] Compiling AppViewUtilits ThreadSwitching.swift
[47/88] Compiling AppViewUtilits PlaceholderIconOptions.swift
[48/88] Compiling AppViewUtilits PlaceholderOptions.swift
[49/88] Compiling AppViewUtilits PlaceholderType.swift
[50/88] Compiling AppViewUtilits PlaceholderView.swift
[51/88] Compiling AppViewUtilits Extension+AVPlayer.swift
[52/88] Compiling AppViewUtilits Extension+Array.swift
[53/88] Compiling AppViewUtilits Extension+CAAnimationDelegate.swift
[54/88] Compiling AppViewUtilits Extension+CALayer.swift
[55/88] Compiling AppViewUtilits Extension+CGFloat.swift
[56/88] Compiling AppViewUtilits Extension+UIStackView.swift
[57/88] Compiling AppViewUtilits Extension+UITabBar.swift
[58/88] Compiling AppViewUtilits Extension+UITableView.swift
[59/88] Compiling AppViewUtilits Extension+UITextField.swift
[60/88] Compiling AppViewUtilits Extension+UIView.swift
[61/88] Compiling AppViewUtilits Extension+UIViewController.swift
[62/88] Compiling AppViewUtilits Extension+UIWindow.swift
[63/88] Compiling AppViewUtilits Extension+View.swift
[64/88] Compiling AppViewUtilits Extensions+SKProduct.swift
[65/88] Compiling AppViewUtilits AppLayout.swift
[66/88] Compiling AppViewUtilits AppThemeManager.swift
[67/88] Compiling AppViewUtilits AppVersion.swift
[68/88] Compiling AppViewUtilits Callback.swift
[69/88] Compiling AppViewUtilits Log.swift
[70/88] Compiling AppViewUtilits Measure.swift
[71/88] Compiling AppViewUtilits TimeLogger.swift
[72/88] Compiling AppViewUtilits AlertAction.swift
[73/88] Compiling AppViewUtilits AppAlertController.swift
[74/88] Compiling AppViewUtilits AppAlertViewModel.swift
[75/88] Compiling AppViewUtilits AppBarButtonItem.swift
[76/88] Compiling AppViewUtilits AppButton.swift
[77/88] Compiling AppViewUtilits AppContentSizedTableView.swift
[78/88] Compiling AppViewUtilits AppLabel.swift
[79/88] Compiling AppViewUtilits AppLoaderView.swift
[80/88] Compiling AppViewUtilits AppScrollView.swift
[81/88] Compiling AppViewUtilits Extension+Collection.swift
[82/88] Compiling AppViewUtilits Extension+Color.swift
[83/88] Compiling AppViewUtilits Extension+Date.swift
[84/88] Compiling AppViewUtilits Extension+Dictionary.swift
[85/88] Compiling AppViewUtilits Extension+Double.swift
[86/88] Compiling AppViewUtilits Extension+Encodable.swift
[87/88] Compiling AppViewUtilits Extension+FileManager.swift
[88/88] Compiling AppViewUtilits Extension+Int.swift
[89/99] Compiling AVPlayerWrapper AVPlayerWrapperMediaFile.swift
[90/100] Compiling AVPlayerWrapper AVPlayerOptions.swift
[91/100] Compiling AVPlayerWrapper AVAssetTime.swift
[92/100] Compiling AVPlayerWrapper AVPlayerAfterAutoStopAction.swift
[93/100] Emitting module AVPlayerWrapper
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Extensions/Extension+Bundle.swift:15:5: warning: 'public' modifier is redundant for instance method declared in a public extension
13 | /// - Parameter fileName: The name of the resource file.
14 | /// - Returns: An optional `URL` pointing to the resource file.
15 | public func createFileUrl(forResource fileName: String) -> URL? {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
16 | let components = fileName.split(separator: ".", maxSplits: 1).map(String.init)
17 | guard components.count == 2 else {
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerAutoStopService.swift:74:5: warning: 'public' modifier is redundant for instance method declared in a public extension
72 | /// Sets up the auto stop playing with the specified type.
73 | /// - Parameter type: The type of auto-stop to be set.
74 | public func setupAutoStop(with type: AVPlayerAutoStopType) {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
75 | self.autoStopType = type
76 | switch type {
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerAutoStopService.swift:87:5: warning: 'public' modifier is redundant for instance method declared in a public extension
85 |
86 | /// Try starts the auto-stop player timer, if needed.
87 | public func startTimer() {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
88 | switch self.autoStopType {
89 | case .disable:
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerAutoStopService.swift:105:5: warning: 'public' modifier is redundant for instance method declared in a public extension
103 |
104 | /// Pause the auto-stop player timer.
105 | public func pauseTimer() {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
106 | autoStopTimer?.invalidate()
107 | }
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerAutoStopService.swift:110:5: warning: 'public' modifier is redundant for instance method declared in a public extension
108 |
109 | /// Cancel the auto-stop player timer.
110 | public func cancelTimer() {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
111 | autoStopTimer?.invalidate()
112 | autoStopTimer = nil
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:146:23: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'AVPlayerWrapper' may have shared mutable state; this is an error in the Swift 6 language mode
56 |
57 | /// A wrapper class for AVPlayer
58 | public class AVPlayerWrapper: NSObject {
| `- note: class 'AVPlayerWrapper' does not conform to the 'Sendable' protocol
59 |
60 | // MARK: - Private variables
:
144 |
145 | /// The shared singleton instance of AVPlayerWrapper.
146 | static public let shared = AVPlayerWrapper()
| |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'AVPlayerWrapper' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
147 |
148 | /// The playlist of media files to be played.
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:257:5: warning: 'public' modifier is redundant for instance method declared in a public extension
255 | /// Plays the track at the specified index in the playlist.
256 | /// - Parameter index: The index of the track to be played.
257 | public func playTrack(at index: Int) {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
258 | guard index < playlist.count else {
259 | return
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:272:5: warning: 'public' modifier is redundant for instance method declared in a public extension
270 |
271 | /// Plays the next track in the playlist.
272 | public func playNextTrack() {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
273 | if isCanPlayedNextAudio() {
274 | playTrack(at: currentTrackIndex + 1)
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:281:5: warning: 'public' modifier is redundant for instance method declared in a public extension
279 |
280 | /// Plays the previous track in the playlist.
281 | public func playPreviousTrack() {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
282 | if isCanPlayedPrevAudio() {
283 | playTrack(at: currentTrackIndex - 1)
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:288:5: warning: 'public' modifier is redundant for instance method declared in a public extension
286 |
287 | /// Starts playback of the current track.
288 | public func play() {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
289 | if options.isDisplayNowPlaying, let nowPlayingService = self.nowPlayingService {
290 | nowPlayingService.setupNowPlaying {
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:308:5: warning: 'public' modifier is redundant for instance method declared in a public extension
306 |
307 | /// Pauses playback of the current track.
308 | public func pause() {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
309 | player?.pause()
310 | autoStopService.pauseTimer()
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:318:5: warning: 'public' modifier is redundant for instance method declared in a public extension
316 |
317 | /// Stops playback of the current track.
318 | public func stop(isNeedCancelAutoStop: Bool = true) {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
319 | player?.pause()
320 | player?.seek(to: .zero)
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:353:5: warning: 'public' modifier is redundant for instance method declared in a public extension
351 | /// Seeks to the specified time in the current track.
352 | /// - Parameter time: The time to seek to.
353 | public func seek(to time: CMTime) {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
354 | player?.seek(to: time)
355 | }
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:359:5: warning: 'public' modifier is redundant for instance method declared in a public extension
357 | /// Sets the playback rate of the player.
358 | /// - Parameter rate: The new playback rate.
359 | public func setPlaybackRate(to rate: Float) {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
360 | guard let player = player else { return }
361 | player.rate = max(0.5, min(rate, 2.0))
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:366:5: warning: 'public' modifier is redundant for instance method declared in a public extension
364 | /// Sets up the auto-stop feature with the specified type.
365 | /// - Parameter type: The type of auto-stop to be set.
366 | public func setupAutoStop(with type: AVPlayerAutoStopType) {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
367 | autoStopService.setupAutoStop(with: type)
368 | }
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:372:5: warning: 'public' modifier is redundant for instance method declared in a public extension
370 | /// Seeks forward by the specified number of seconds in the current track.
371 | /// - Parameter seconds: The number of seconds to seek forward.
372 | public func seekForward(by seconds: TimeInterval) {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
373 | guard let player = player,
374 | let currentTime = player.currentItem?.currentTime() else {
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:385:5: warning: 'public' modifier is redundant for instance method declared in a public extension
383 | /// Seeks backward by the specified number of seconds in the current track.
384 | /// - Parameter seconds: The number of seconds to seek backward.
385 | public func seekBackward(by seconds: TimeInterval) {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
386 | guard let player = player,
387 | let currentTime = player.currentItem?.currentTime() else {
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:408:5: warning: 'public' modifier is redundant for instance method declared in a public extension
406 | /// - didHandleError: An optional callback to be invoked when an error is handled.
407 | /// - didFailedSetAudioSession: An optional callback to be invoked when setting the audio session fails.
408 | public func setPlaylist(
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
409 | _ files: [AVPlayerWrapperMediaFile],
410 | didStartPlaying: Callback? = nil,
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:440:5: warning: 'public' modifier is redundant for instance method declared in a public extension
438 | /// Indicates whether the previous audio track can be played.
439 | /// - Returns: A Boolean value indicating whether the previous audio track can be played.
440 | public func isCanPlayedPrevAudio() -> Bool {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
441 | return currentTrackIndex > 0
442 | }
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:446:5: warning: 'public' modifier is redundant for instance method declared in a public extension
444 | /// Indicates whether the next audio track can be played.
445 | /// - Returns: A Boolean value indicating whether the next audio track can be played.
446 | public func isCanPlayedNextAudio() -> Bool {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
447 | return currentTrackIndex + 1 < playlist.count
448 | }
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:452:5: warning: 'public' modifier is redundant for instance method declared in a public extension
450 | /// Gets the current auto-stop type.
451 | /// - Returns: The current auto-stop type.
452 | public func getAutoStopType() -> AVPlayerAutoStopType {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
453 | return autoStopService.autoStopType
454 | }
[94/100] Compiling AVPlayerWrapper AVPlayerAutoStopType.swift
[95/100] Compiling AVPlayerWrapper NowPlayingService.swift
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/NowPlayingService.swift:187:21: warning: capture of 'callback' with non-sendable type '(MultiPlatformImage?) -> Void' (aka '(Optional<NSImage>) -> ()') in a '@Sendable' closure
185 | if let data = data {
186 | let image = MultiPlatformImage(data: data)
187 | callback(image)
| |- warning: capture of 'callback' with non-sendable type '(MultiPlatformImage?) -> Void' (aka '(Optional<NSImage>) -> ()') in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
188 | } else {
189 | callback(nil)
[96/100] Compiling AVPlayerWrapper AVPlayerAutoStopService.swift
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerAutoStopService.swift:74:5: warning: 'public' modifier is redundant for instance method declared in a public extension
72 | /// Sets up the auto stop playing with the specified type.
73 | /// - Parameter type: The type of auto-stop to be set.
74 | public func setupAutoStop(with type: AVPlayerAutoStopType) {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
75 | self.autoStopType = type
76 | switch type {
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerAutoStopService.swift:87:5: warning: 'public' modifier is redundant for instance method declared in a public extension
85 |
86 | /// Try starts the auto-stop player timer, if needed.
87 | public func startTimer() {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
88 | switch self.autoStopType {
89 | case .disable:
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerAutoStopService.swift:105:5: warning: 'public' modifier is redundant for instance method declared in a public extension
103 |
104 | /// Pause the auto-stop player timer.
105 | public func pauseTimer() {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
106 | autoStopTimer?.invalidate()
107 | }
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerAutoStopService.swift:110:5: warning: 'public' modifier is redundant for instance method declared in a public extension
108 |
109 | /// Cancel the auto-stop player timer.
110 | public func cancelTimer() {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
111 | autoStopTimer?.invalidate()
112 | autoStopTimer = nil
[97/100] Compiling AVPlayerWrapper AVPlayerLoopType.swift
[98/100] Compiling AVPlayerWrapper AVSession.swift
[99/100] Compiling AVPlayerWrapper Extension+Bundle.swift
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Extensions/Extension+Bundle.swift:15:5: warning: 'public' modifier is redundant for instance method declared in a public extension
13 | /// - Parameter fileName: The name of the resource file.
14 | /// - Returns: An optional `URL` pointing to the resource file.
15 | public func createFileUrl(forResource fileName: String) -> URL? {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
16 | let components = fileName.split(separator: ".", maxSplits: 1).map(String.init)
17 | guard components.count == 2 else {
[100/100] Compiling AVPlayerWrapper AVPlayerWrapper.swift
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:146:23: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'AVPlayerWrapper' may have shared mutable state; this is an error in the Swift 6 language mode
56 |
57 | /// A wrapper class for AVPlayer
58 | public class AVPlayerWrapper: NSObject {
| `- note: class 'AVPlayerWrapper' does not conform to the 'Sendable' protocol
59 |
60 | // MARK: - Private variables
:
144 |
145 | /// The shared singleton instance of AVPlayerWrapper.
146 | static public let shared = AVPlayerWrapper()
| |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'AVPlayerWrapper' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
147 |
148 | /// The playlist of media files to be played.
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:257:5: warning: 'public' modifier is redundant for instance method declared in a public extension
255 | /// Plays the track at the specified index in the playlist.
256 | /// - Parameter index: The index of the track to be played.
257 | public func playTrack(at index: Int) {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
258 | guard index < playlist.count else {
259 | return
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:272:5: warning: 'public' modifier is redundant for instance method declared in a public extension
270 |
271 | /// Plays the next track in the playlist.
272 | public func playNextTrack() {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
273 | if isCanPlayedNextAudio() {
274 | playTrack(at: currentTrackIndex + 1)
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:281:5: warning: 'public' modifier is redundant for instance method declared in a public extension
279 |
280 | /// Plays the previous track in the playlist.
281 | public func playPreviousTrack() {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
282 | if isCanPlayedPrevAudio() {
283 | playTrack(at: currentTrackIndex - 1)
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:288:5: warning: 'public' modifier is redundant for instance method declared in a public extension
286 |
287 | /// Starts playback of the current track.
288 | public func play() {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
289 | if options.isDisplayNowPlaying, let nowPlayingService = self.nowPlayingService {
290 | nowPlayingService.setupNowPlaying {
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:308:5: warning: 'public' modifier is redundant for instance method declared in a public extension
306 |
307 | /// Pauses playback of the current track.
308 | public func pause() {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
309 | player?.pause()
310 | autoStopService.pauseTimer()
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:318:5: warning: 'public' modifier is redundant for instance method declared in a public extension
316 |
317 | /// Stops playback of the current track.
318 | public func stop(isNeedCancelAutoStop: Bool = true) {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
319 | player?.pause()
320 | player?.seek(to: .zero)
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:353:5: warning: 'public' modifier is redundant for instance method declared in a public extension
351 | /// Seeks to the specified time in the current track.
352 | /// - Parameter time: The time to seek to.
353 | public func seek(to time: CMTime) {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
354 | player?.seek(to: time)
355 | }
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:359:5: warning: 'public' modifier is redundant for instance method declared in a public extension
357 | /// Sets the playback rate of the player.
358 | /// - Parameter rate: The new playback rate.
359 | public func setPlaybackRate(to rate: Float) {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
360 | guard let player = player else { return }
361 | player.rate = max(0.5, min(rate, 2.0))
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:366:5: warning: 'public' modifier is redundant for instance method declared in a public extension
364 | /// Sets up the auto-stop feature with the specified type.
365 | /// - Parameter type: The type of auto-stop to be set.
366 | public func setupAutoStop(with type: AVPlayerAutoStopType) {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
367 | autoStopService.setupAutoStop(with: type)
368 | }
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:372:5: warning: 'public' modifier is redundant for instance method declared in a public extension
370 | /// Seeks forward by the specified number of seconds in the current track.
371 | /// - Parameter seconds: The number of seconds to seek forward.
372 | public func seekForward(by seconds: TimeInterval) {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
373 | guard let player = player,
374 | let currentTime = player.currentItem?.currentTime() else {
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:385:5: warning: 'public' modifier is redundant for instance method declared in a public extension
383 | /// Seeks backward by the specified number of seconds in the current track.
384 | /// - Parameter seconds: The number of seconds to seek backward.
385 | public func seekBackward(by seconds: TimeInterval) {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
386 | guard let player = player,
387 | let currentTime = player.currentItem?.currentTime() else {
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:408:5: warning: 'public' modifier is redundant for instance method declared in a public extension
406 | /// - didHandleError: An optional callback to be invoked when an error is handled.
407 | /// - didFailedSetAudioSession: An optional callback to be invoked when setting the audio session fails.
408 | public func setPlaylist(
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
409 | _ files: [AVPlayerWrapperMediaFile],
410 | didStartPlaying: Callback? = nil,
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:440:5: warning: 'public' modifier is redundant for instance method declared in a public extension
438 | /// Indicates whether the previous audio track can be played.
439 | /// - Returns: A Boolean value indicating whether the previous audio track can be played.
440 | public func isCanPlayedPrevAudio() -> Bool {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
441 | return currentTrackIndex > 0
442 | }
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:446:5: warning: 'public' modifier is redundant for instance method declared in a public extension
444 | /// Indicates whether the next audio track can be played.
445 | /// - Returns: A Boolean value indicating whether the next audio track can be played.
446 | public func isCanPlayedNextAudio() -> Bool {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
447 | return currentTrackIndex + 1 < playlist.count
448 | }
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:452:5: warning: 'public' modifier is redundant for instance method declared in a public extension
450 | /// Gets the current auto-stop type.
451 | /// - Returns: The current auto-stop type.
452 | public func getAutoStopType() -> AVPlayerAutoStopType {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
453 | return autoStopService.autoStopType
454 | }
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:159:24: warning: main actor-isolated property 'isPlaying' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
157 | /// Indicates whether the player is currently playing.
158 | public var isPlaying: Bool {
159 | return player?.isPlaying ?? false
| `- warning: main actor-isolated property 'isPlaying' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
160 | }
161 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/AppViewUtilits/Sources/AppViewUtilits/Extensions/Extension+AVPlayer.swift:13:9: note: property declared here
11 | public extension AVPlayer {
12 |
13 | var isPlaying: Bool {
| `- note: property declared here
14 | return rate != 0 && error == nil
15 | }
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:298:26: warning: call to main actor-isolated instance method 'play()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
295 | }
296 |
297 | func startPlaying() {
| `- note: add '@MainActor' to make local function 'startPlaying()' part of global actor 'MainActor'
298 | self.player?.play()
| `- warning: call to main actor-isolated instance method 'play()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
299 | self.autoStopService.startTimer()
300 | onMainThread { [weak self] in
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/AVPlayerWrapper/Service/AVPlayerWrapper.swift:309:17: warning: call to main actor-isolated instance method 'pause()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
306 |
307 | /// Pauses playback of the current track.
308 | public func pause() {
| `- note: add '@MainActor' to make instance method 'pause()' part of global actor 'MainActor'
309 | player?.pause()
| `- warning: call to main actor-isolated instance method 'pause()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
310 | autoStopService.pauseTimer()
311 | onMainThread { [weak self] in
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/AVPlayerWrapper/Service/AVPlayerWrapper.swift:319:17: warning: call to main actor-isolated instance method 'pause()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
316 |
317 | /// Stops playback of the current track.
318 | public func stop(isNeedCancelAutoStop: Bool = true) {
| `- note: add '@MainActor' to make instance method 'stop(isNeedCancelAutoStop:)' part of global actor 'MainActor'
319 | player?.pause()
| `- warning: call to main actor-isolated instance method 'pause()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
320 | player?.seek(to: .zero)
321 |
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/AVPlayerWrapper/Service/AVPlayerWrapper.swift:361:16: warning: main actor-isolated property 'rate' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
357 | /// Sets the playback rate of the player.
358 | /// - Parameter rate: The new playback rate.
359 | public func setPlaybackRate(to rate: Float) {
| `- note: add '@MainActor' to make instance method 'setPlaybackRate(to:)' part of global actor 'MainActor'
360 | guard let player = player else { return }
361 | player.rate = max(0.5, min(rate, 2.0))
| `- warning: main actor-isolated property 'rate' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
362 | }
363 |
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVPlayer.h:184:17: note: mutation of this property is only permitted within the actor
182 | Before macOS 13, iOS 16, tvOS 16, and watchOS 9, this property must be accessed on the main thread/queue.
183 | */
184 | @property float rate
| `- note: mutation of this property is only permitted within the actor
185 | #if AVF_DEPLOYING_TO_2022_RELEASES_AND_LATER
186 | NS_SWIFT_NONISOLATED
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:480:27: warning: immutable value 'currentItem' was never used; consider replacing with '_' or removing it
478 | self.timeObserverToken = self.player?.addPeriodicTimeObserver(forInterval: CMTime(seconds: 1, preferredTimescale: CMTimeScale(NSEC_PER_SEC)), queue: .main) { [weak self] time in
479 | guard let self = self,
480 | let currentItem = self.playerItem else {
| `- warning: immutable value 'currentItem' was never used; consider replacing with '_' or removing it
481 | return
482 | }
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:479:34: warning: capture of 'self' with non-sendable type 'AVPlayerWrapper?' in a '@Sendable' closure
56 |
57 | /// A wrapper class for AVPlayer
58 | public class AVPlayerWrapper: NSObject {
| `- note: class 'AVPlayerWrapper' does not conform to the 'Sendable' protocol
59 |
60 | // MARK: - Private variables
:
477 | }
478 | self.timeObserverToken = self.player?.addPeriodicTimeObserver(forInterval: CMTime(seconds: 1, preferredTimescale: CMTimeScale(NSEC_PER_SEC)), queue: .main) { [weak self] time in
479 | guard let self = self,
| `- warning: capture of 'self' with non-sendable type 'AVPlayerWrapper?' in a '@Sendable' closure
480 | let currentItem = self.playerItem else {
481 | return
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:499:34: warning: capture of 'self' with non-sendable type 'AVPlayerWrapper' in a '@Sendable' closure
56 |
57 | /// A wrapper class for AVPlayer
58 | public class AVPlayerWrapper: NSObject {
| `- note: class 'AVPlayerWrapper' does not conform to the 'Sendable' protocol
59 |
60 | // MARK: - Private variables
:
497 | NotificationCenter.default.addObserver(forName: .AVPlayerItemFailedToPlayToEndTime, object: self.playerItem, queue: .main) { notification in
498 | let error = notification.userInfo?[AVPlayerItemFailedToPlayToEndTimeErrorKey] as? Error
499 | onMainThread { [weak self] in
| `- warning: capture of 'self' with non-sendable type 'AVPlayerWrapper' in a '@Sendable' closure
500 | self?.didHandleError?(error)
501 | self?.delegate?.didHandleError(error: error)
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:510:39: warning: capture of 'self' with non-sendable type 'AVPlayerWrapper' in a '@Sendable' closure
56 |
57 | /// A wrapper class for AVPlayer
58 | public class AVPlayerWrapper: NSObject {
| `- note: class 'AVPlayerWrapper' does not conform to the 'Sendable' protocol
59 |
60 | // MARK: - Private variables
:
508 | options: [.old, .new, .initial],
509 | changeHandler: { item, change in
510 | onMainThread { [weak self] in
| `- warning: capture of 'self' with non-sendable type 'AVPlayerWrapper' in a '@Sendable' closure
511 | self?.didUpdateStatus?(item.status)
512 | self?.delegate?.didUpdateStatus(status: item.status)
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:538:19: warning: immutable value 'playerItem' was never used; consider replacing with '_' or removing it
536 | /// - Parameter callback: A closure to be executed with the current duration as `CMTime?`.
537 | func getCurrentDuration(callback: ((_: CMTime?) -> Void)?) {
538 | guard let playerItem = self.playerItem,
| `- warning: immutable value 'playerItem' was never used; consider replacing with '_' or removing it
539 | let player = self.player else {
540 | callback?(nil)
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:545:48: warning: main actor-isolated property 'asset' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
542 | }
543 |
544 | func getDurationFromAsset() {
| `- note: add '@MainActor' to make local function 'getDurationFromAsset()' part of global actor 'MainActor'
545 | let duration = player.currentItem?.asset.duration
| `- warning: main actor-isolated property 'asset' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
546 | callback?(duration)
547 | }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVPlayerItem.h:218:42: note: property declared here
216 | @abstract Accessor for underlying AVAsset.
217 | */
218 | @property (nonatomic, readonly) AVAsset *asset;
| `- note: property declared here
219 |
220 | /*!
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:568:71: warning: non-sendable type 'AVAsset' of property 'asset' cannot exit main actor-isolated context; this is an error in the Swift 6 language mode
566 | Task {
567 | do {
568 | let asyncDuration = try await player.currentItem?.asset.load(.duration)
| `- warning: non-sendable type 'AVAsset' of property 'asset' cannot exit main actor-isolated context; this is an error in the Swift 6 language mode
569 | DispatchQueue.main.async {
570 | callback?(asyncDuration)
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVAsset.h:62:12: note: class 'AVAsset' does not conform to the 'Sendable' protocol
60 |
61 | API_AVAILABLE(macos(10.7), ios(4.0), tvos(9.0), watchos(1.0), visionos(1.0))
62 | @interface AVAsset : NSObject <NSCopying, AVAsynchronousKeyValueLoading>
| `- note: class 'AVAsset' does not conform to the 'Sendable' protocol
63 | {
64 | @private
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:9:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'AVFoundation'
7 |
8 | import AppViewUtilits
9 | import AVFoundation
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'AVFoundation'
10 | import Foundation
11 | import MediaPlayer
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:636:24: warning: 'let' pattern has no effect; sub-pattern didn't bind any variables
634 |
635 | func continuePlayingPlaylist() {
636 | guard case let AVPlayerAutoStopType.afterTrackEnd = autoStopService.autoStopType else {
| `- warning: 'let' pattern has no effect; sub-pattern didn't bind any variables
637 | playNextTrack()
638 | return
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:682:21: warning: main actor-isolated property 'asset' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
679 | }
680 |
681 | public func getPlayerAssetDuration() -> Double? {
| `- note: add '@MainActor' to make instance method 'getPlayerAssetDuration()' part of global actor 'MainActor'
682 | playerItem?.asset.duration.seconds
| `- warning: main actor-isolated property 'asset' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
683 | }
684 |
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVPlayerItem.h:218:42: note: property declared here
216 | @abstract Accessor for underlying AVAsset.
217 | */
218 | @property (nonatomic, readonly) AVAsset *asset;
| `- note: property declared here
219 |
220 | /*!
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:686:17: warning: main actor-isolated property 'rate' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
683 | }
684 |
685 | public func getPlayerRate() -> Float? {
| `- note: add '@MainActor' to make instance method 'getPlayerRate()' part of global actor 'MainActor'
686 | player?.rate
| `- warning: main actor-isolated property 'rate' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
687 | }
688 | }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVPlayer.h:184:17: note: property declared here
182 | Before macOS 13, iOS 16, tvOS 16, and watchOS 9, this property must be accessed on the main thread/queue.
183 | */
184 | @property float rate
| `- note: property declared here
185 | #if AVF_DEPLOYING_TO_2022_RELEASES_AND_LATER
186 | NS_SWIFT_NONISOLATED
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:566:18: 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
564 | #elseif os(macOS)
565 | if #available(macOS 12, *) {
566 | 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
567 | do {
568 | let asyncDuration = try await player.currentItem?.asset.load(.duration)
569 | DispatchQueue.main.async {
570 | callback?(asyncDuration)
| `- note: closure captures 'callback' which is accessible to code in the current task
571 | }
572 | } catch {
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:570:25: warning: sending 'callback' risks causing data races; this is an error in the Swift 6 language mode
568 | let asyncDuration = try await player.currentItem?.asset.load(.duration)
569 | DispatchQueue.main.async {
570 | callback?(asyncDuration)
| |- warning: sending 'callback' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'callback' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
571 | }
572 | } catch {
/Users/admin/builder/spi-builder-workspace/Sources/AVPlayerWrapper/Service/AVPlayerWrapper.swift:630:17: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
628 | func playAgainCurrentTrack() {
629 | DispatchQueue.main.asyncAfter(deadline: .now() + self.options.loopDelay, execute: {
630 | self.player?.seek(to: .zero)
| |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
631 | self.player?.play()
632 | })
Build complete! (17.49s)
Fetching https://github.com/moslienko/AppViewUtilits.git
[1/877] Fetching appviewutilits
Fetched https://github.com/moslienko/AppViewUtilits.git from cache (1.37s)
Computing version for https://github.com/moslienko/AppViewUtilits.git
Computed https://github.com/moslienko/AppViewUtilits.git at 1.3.1 (4.50s)
Creating working copy for https://github.com/moslienko/AppViewUtilits.git
Working copy of https://github.com/moslienko/AppViewUtilits.git resolved at 1.3.1
Build complete.
{
"dependencies" : [
{
"identity" : "appviewutilits",
"requirement" : {
"range" : [
{
"lower_bound" : "1.3.1",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/moslienko/AppViewUtilits.git"
}
],
"manifest_display_name" : "AVPlayerWrapper",
"name" : "AVPlayerWrapper",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "12.0"
},
{
"name" : "macos",
"version" : "10.13"
}
],
"products" : [
{
"name" : "AVPlayerWrapper",
"targets" : [
"AVPlayerWrapper"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "AVPlayerWrapperTests",
"module_type" : "SwiftTarget",
"name" : "AVPlayerWrapperTests",
"path" : "Tests/AVPlayerWrapperTests",
"sources" : [
"AVPlayerWrapperTests.swift"
],
"target_dependencies" : [
"AVPlayerWrapper"
],
"type" : "test"
},
{
"c99name" : "AVPlayerWrapper",
"module_type" : "SwiftTarget",
"name" : "AVPlayerWrapper",
"path" : "Sources/AVPlayerWrapper",
"product_dependencies" : [
"AppViewUtilits"
],
"product_memberships" : [
"AVPlayerWrapper"
],
"sources" : [
"Data/AVAssetTime.swift",
"Data/AVPlayerAfterAutoStopAction.swift",
"Data/AVPlayerAutoStopType.swift",
"Data/AVPlayerLoopType.swift",
"Data/AVPlayerWrapperMediaFile.swift",
"Data/Options/AVPlayerOptions.swift",
"Data/Options/AVSession.swift",
"Extensions/Extension+Bundle.swift",
"Service/AVPlayerAutoStopService.swift",
"Service/AVPlayerWrapper.swift",
"Service/NowPlayingService.swift"
],
"type" : "library"
}
],
"tools_version" : "5.9"
}
Done.