The Swift Package Index logo.Swift Package Index

Build Information

Successful build of AVPlayerWrapper, reference 1.0.1 (e8f530), with Swift 6.1 for macOS (SPM) on 11 Aug 2026 15:47:10 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 InferSendableFromCaptures

Build 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: 1.0.1
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/moslienko/AVPlayerWrapper
 * tag               1.0.1      -> FETCH_HEAD
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 1.0.1
========================================
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 AlertAction.swift
[6/88] Compiling AppViewUtilits AppAlertController.swift
[7/88] Compiling AppViewUtilits AppAlertViewModel.swift
[8/88] Compiling AppViewUtilits AppBarButtonItem.swift
[9/88] Compiling AppViewUtilits AppButton.swift
[10/88] Compiling AppViewUtilits AppContentSizedTableView.swift
[11/88] Compiling AppViewUtilits AppLabel.swift
[12/88] Compiling AppViewUtilits AppLoaderView.swift
[13/88] Compiling AppViewUtilits AppScrollView.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 AppSpacerView.swift
[23/88] Compiling AppViewUtilits AppStackView.swift
[24/88] Compiling AppViewUtilits AppTextField.swift
[25/88] Compiling AppViewUtilits AppTextView.swift
[26/88] Compiling AppViewUtilits AppTouchLabel.swift
[27/88] Compiling AppViewUtilits AppView.swift
[28/88] Compiling AppViewUtilits AppViewController.swift
[29/88] Compiling AppViewUtilits AppViewModel.swift
[30/88] Compiling AppViewUtilits AppViewCellIdentifiable.swift
[31/88] Compiling AppViewUtilits AppViewSectionModel.swift
[32/88] Compiling AppViewUtilits AppViewCollectionCell.swift
[33/88] Compiling AppViewUtilits AppViewTableCell.swift
[34/88] Compiling AppViewUtilits ButtonState.swift
[35/88] Compiling AppViewUtilits DefaultPlaceholderType.swift
[36/88] Compiling AppViewUtilits PlaceholderButtonLayout.swift
[37/88] Compiling AppViewUtilits PlaceholderViewStyle.swift
[38/88] Compiling AppViewUtilits PlaceholderButtonOptions.swift
[39/88] Compiling AppViewUtilits PlaceholderContainerOptions.swift
[40/88] Compiling AppViewUtilits Decorate.swift
[41/88] Compiling AppViewUtilits Environment.swift
[42/88] Compiling AppViewUtilits EventObject.swift
[43/88] Compiling AppViewUtilits NotificationObserver.swift
[44/88] Compiling AppViewUtilits Reachability.swift
[45/88] Compiling AppViewUtilits DebouncedFunction.swift
[46/88] Compiling AppViewUtilits RecursionFunction.swift
[47/88] Compiling AppViewUtilits ThreadSwitching.swift
[48/88] Compiling AppViewUtilits Extensions+SKProduct.swift
[49/88] Compiling AppViewUtilits AppLayout.swift
[50/88] Compiling AppViewUtilits AppThemeManager.swift
[51/88] Compiling AppViewUtilits AppVersion.swift
[52/88] Compiling AppViewUtilits Callback.swift
[53/88] Compiling AppViewUtilits Log.swift
[54/88] Compiling AppViewUtilits Measure.swift
[55/88] Compiling AppViewUtilits TimeLogger.swift
[56/88] Compiling AppViewUtilits Extension+NSAttributedString.swift
[57/88] Compiling AppViewUtilits Extension+NSCountedSet.swift
[58/88] Compiling AppViewUtilits Extension+NSPredicate.swift
[59/88] Compiling AppViewUtilits Extension+Notifications.swift
[60/88] Compiling AppViewUtilits Extension+Optional.swift
[61/88] Compiling AppViewUtilits Extension+Sequence.swift
[62/88] Compiling AppViewUtilits Extension+String.swift
[63/88] Compiling AppViewUtilits Extension+UIApplication.swift
[64/88] Compiling AppViewUtilits PlaceholderIconOptions.swift
[65/88] Compiling AppViewUtilits PlaceholderOptions.swift
[66/88] Compiling AppViewUtilits PlaceholderType.swift
[67/88] Compiling AppViewUtilits PlaceholderView.swift
[68/88] Compiling AppViewUtilits Extension+AVPlayer.swift
[69/88] Compiling AppViewUtilits Extension+Array.swift
[70/88] Compiling AppViewUtilits Extension+CAAnimationDelegate.swift
[71/88] Compiling AppViewUtilits Extension+CALayer.swift
[72/88] Compiling AppViewUtilits Extension+CGFloat.swift
[73/88] Compiling AppViewUtilits Extension+UIStackView.swift
[74/88] Compiling AppViewUtilits Extension+UITabBar.swift
[75/88] Compiling AppViewUtilits Extension+UITableView.swift
[76/88] Compiling AppViewUtilits Extension+UITextField.swift
[77/88] Compiling AppViewUtilits Extension+UIView.swift
[78/88] Compiling AppViewUtilits Extension+UIViewController.swift
[79/88] Compiling AppViewUtilits Extension+UIWindow.swift
[80/88] Compiling AppViewUtilits Extension+View.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 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
[90/99] Compiling AVPlayerWrapper AVSession.swift
[91/99] Compiling AVPlayerWrapper AVPlayerWrapperMediaFile.swift
[92/99] Compiling AVPlayerWrapper AVPlayerOptions.swift
[93/99] 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 {
[94/99] 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 |     }
[95/99] Compiling AVPlayerWrapper AVPlayerLoopType.swift
[96/99] 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 |             })
[97/99] Compiling AVPlayerWrapper AVPlayerAutoStopType.swift
[98/99] Compiling AVPlayerWrapper AVAssetTime.swift
[99/99] Compiling AVPlayerWrapper AVPlayerAfterAutoStopAction.swift
[100/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)
Build complete! (17.32s)
Fetching https://github.com/moslienko/AppViewUtilits.git
[1/877] Fetching appviewutilits
Fetched https://github.com/moslienko/AppViewUtilits.git from cache (1.52s)
Computing version for https://github.com/moslienko/AppViewUtilits.git
Computed https://github.com/moslienko/AppViewUtilits.git at 1.3.1 (4.61s)
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.