The Swift Package Index logo.Swift Package Index

Build Information

Successful build of APNGKit, reference 2.4.0 (341383), with Swift 6.1 for macOS (SPM) on 11 Jul 2026 18:13:23 UTC.

Swift 6 data race errors: 12

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/onevcat/APNGKit.git
Reference: 2.4.0
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/onevcat/APNGKit
 * tag               2.4.0      -> FETCH_HEAD
HEAD is now at 341383f Bump version to 2.4.0
Cloned https://github.com/onevcat/APNGKit.git
Revision (git rev-parse @):
341383f61000e8d2e55d45db0f0756b239d0a2f1
SUCCESS checkout https://github.com/onevcat/APNGKit.git at 2.4.0
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.1
Building package at path:  $PWD
https://github.com/onevcat/APNGKit.git
https://github.com/onevcat/APNGKit.git
{
  "dependencies" : [
    {
      "identity" : "delegate",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.3.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/onevcat/Delegate.git"
    }
  ],
  "manifest_display_name" : "APNGKit",
  "name" : "APNGKit",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "10.14"
    },
    {
      "name" : "ios",
      "version" : "12.0"
    },
    {
      "name" : "tvos",
      "version" : "12.0"
    },
    {
      "name" : "visionos",
      "version" : "1.0"
    }
  ],
  "products" : [
    {
      "name" : "APNGKit",
      "targets" : [
        "APNGKit"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "APNGKitTests",
      "module_type" : "SwiftTarget",
      "name" : "APNGKitTests",
      "path" : "Tests/APNGKitTests",
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/APNGKitTests/Resources/General",
          "rule" : {
            "copy" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/APNGKitTests/Resources/SpecTesting",
          "rule" : {
            "copy" : {
            }
          }
        }
      ],
      "sources" : [
        "APNGDecoderTests.swift",
        "APNGImageRendererTests.swift",
        "APNGImageTests.swift",
        "APNGImageViewTests.swift",
        "APNGImageViewTimingTests.swift",
        "ChunkTests.swift",
        "DataReaderTests.swift",
        "DecoderOptionsTests.swift",
        "FileReaderTests.swift",
        "Helpers.swift",
        "ReaderExtensionTests.swift"
      ],
      "target_dependencies" : [
        "APNGKit"
      ],
      "type" : "test"
    },
    {
      "c99name" : "APNGKit",
      "module_type" : "SwiftTarget",
      "name" : "APNGKit",
      "path" : "Source/APNGKit",
      "product_dependencies" : [
        "Delegate"
      ],
      "product_memberships" : [
        "APNGKit"
      ],
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Source/APNGKit/PrivacyInfo.xcprivacy",
          "rule" : {
            "copy" : {
            }
          }
        }
      ],
      "sources" : [
        "APNGDecoder.swift",
        "APNGImage.DecodingOptions.swift",
        "APNGImage.swift",
        "APNGImageRenderer.swift",
        "APNGImageView.swift",
        "APNGKitError.swift",
        "Chunk.swift",
        "CrossPlatform.swift",
        "DisplayTimer.swift",
        "Extensions.swift",
        "LogLevel.swift",
        "Reader.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/4] Copying PrivacyInfo.xcprivacy
[0/4] Write sources
[3/4] Write swift-version-2F0A5646E1D333AE.txt
[5/6] Compiling Delegate Delegate.swift
[6/6] Emitting module Delegate
[7/19] Compiling APNGKit Extensions.swift
[8/19] Compiling APNGKit Reader.swift
[9/20] Compiling APNGKit resource_bundle_accessor.swift
[10/20] Compiling APNGKit Chunk.swift
[11/20] Emitting module APNGKit
/Users/admin/builder/spi-builder-workspace/Source/APNGKit/APNGImage.DecodingOptions.swift:26:27: warning: static property 'fullFirstPass' is not concurrency-safe because non-'Sendable' type 'APNGImage.DecodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
 11 |
 12 |     /// Decoding options you can use when creating an APNG image view.
 13 |     public struct DecodingOptions: OptionSet {
    |                   `- note: consider making struct 'DecodingOptions' conform to the 'Sendable' protocol
 14 |         public let rawValue: Int
 15 |         public init(rawValue: Int) {
    :
 24 |         /// detect any APNG data or file error before showing it or get the total frames information and gives you the
 25 |         /// total animation duration before actually displaying the image.
 26 |         public static let fullFirstPass     = DecodingOptions(rawValue: 1 << 0)
    |                           |- warning: static property 'fullFirstPass' is not concurrency-safe because non-'Sendable' type 'APNGImage.DecodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'fullFirstPass' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 27 |
 28 |         /// Loads and holds the actual frame data when decoding the frames in the first pass.
/Users/admin/builder/spi-builder-workspace/Source/APNGKit/APNGImage.DecodingOptions.swift:33:27: warning: static property 'loadFrameData' is not concurrency-safe because non-'Sendable' type 'APNGImage.DecodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
 11 |
 12 |     /// Decoding options you can use when creating an APNG image view.
 13 |     public struct DecodingOptions: OptionSet {
    |                   `- note: consider making struct 'DecodingOptions' conform to the 'Sendable' protocol
 14 |         public let rawValue: Int
 15 |         public init(rawValue: Int) {
    :
 31 |         /// to ask APNGKit to copy out the image data for each frame at the first pass. So it won't read data again in
 32 |         /// the future playing loops. This option trades a bit CPU resource with cost of taking more memory.
 33 |         public static let loadFrameData     = DecodingOptions(rawValue: 1 << 1)
    |                           |- warning: static property 'loadFrameData' is not concurrency-safe because non-'Sendable' type 'APNGImage.DecodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'loadFrameData' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 34 |
 35 |         /// Holds the decoded image for each frame, so APNGKit will not render it again.
/Users/admin/builder/spi-builder-workspace/Source/APNGKit/APNGImage.DecodingOptions.swift:45:27: warning: static property 'cacheDecodedImages' is not concurrency-safe because non-'Sendable' type 'APNGImage.DecodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
 11 |
 12 |     /// Decoding options you can use when creating an APNG image view.
 13 |     public struct DecodingOptions: OptionSet {
    |                   `- note: consider making struct 'DecodingOptions' conform to the 'Sendable' protocol
 14 |         public let rawValue: Int
 15 |         public init(rawValue: Int) {
    :
 43 |         ///
 44 |         /// See ``APNGImage.CachePolicy`` for more.
 45 |         public static let cacheDecodedImages = DecodingOptions(rawValue: 1 << 2)
    |                           |- warning: static property 'cacheDecodedImages' is not concurrency-safe because non-'Sendable' type 'APNGImage.DecodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'cacheDecodedImages' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 46 |
 47 |         /// Drops the decoded image for each frame, so APNGKit will render it again when next time it is needed.
/Users/admin/builder/spi-builder-workspace/Source/APNGKit/APNGImage.DecodingOptions.swift:57:27: warning: static property 'notCacheDecodedImages' is not concurrency-safe because non-'Sendable' type 'APNGImage.DecodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
 11 |
 12 |     /// Decoding options you can use when creating an APNG image view.
 13 |     public struct DecodingOptions: OptionSet {
    |                   `- note: consider making struct 'DecodingOptions' conform to the 'Sendable' protocol
 14 |         public let rawValue: Int
 15 |         public init(rawValue: Int) {
    :
 55 |         ///
 56 |         /// See ``APNGImage.CachePolicy`` for more.
 57 |         public static let notCacheDecodedImages = DecodingOptions(rawValue: 1 << 3)
    |                           |- warning: static property 'notCacheDecodedImages' is not concurrency-safe because non-'Sendable' type 'APNGImage.DecodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'notCacheDecodedImages' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 58 |
 59 |         /// Performs render for all frames before the APNG image finishes it initialization. This also enables
/Users/admin/builder/spi-builder-workspace/Source/APNGKit/APNGImage.DecodingOptions.swift:75:27: warning: static property 'preRenderAllFrames' is not concurrency-safe because non-'Sendable' type 'APNGImage.DecodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
 11 |
 12 |     /// Decoding options you can use when creating an APNG image view.
 13 |     public struct DecodingOptions: OptionSet {
    |                   `- note: consider making struct 'DecodingOptions' conform to the 'Sendable' protocol
 14 |         public let rawValue: Int
 15 |         public init(rawValue: Int) {
    :
 73 |         /// If `fullFirstPass` and `cacheDecodedImages` are not set in the same decoding options, APNGKit adds them
 74 |         /// for you automatically, since only enabling `preRenderAllFrames` is meaningless.
 75 |         public static let preRenderAllFrames  = DecodingOptions(
    |                           |- warning: static property 'preRenderAllFrames' is not concurrency-safe because non-'Sendable' type 'APNGImage.DecodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'preRenderAllFrames' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 76 |                                                        rawValue: 1 << 4 |
 77 |                                                        fullFirstPass.rawValue |
/Users/admin/builder/spi-builder-workspace/Source/APNGKit/APNGImage.DecodingOptions.swift:88:27: warning: static property 'skipChecksumVerify' is not concurrency-safe because non-'Sendable' type 'APNGImage.DecodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
 11 |
 12 |     /// Decoding options you can use when creating an APNG image view.
 13 |     public struct DecodingOptions: OptionSet {
    |                   `- note: consider making struct 'DecodingOptions' conform to the 'Sendable' protocol
 14 |         public let rawValue: Int
 15 |         public init(rawValue: Int) {
    :
 86 |         /// Enable this to ask APNGKit to skip this check. It improves the CPU performance a bit, but with the risk of
 87 |         /// reading and trust unchecked chunks. It is not recommended to skip the check.
 88 |         public static let skipChecksumVerify   = DecodingOptions(rawValue: 1 << 5)
    |                           |- warning: static property 'skipChecksumVerify' is not concurrency-safe because non-'Sendable' type 'APNGImage.DecodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'skipChecksumVerify' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 89 |
 90 |         /// Unsets frame count limitation when reading an APNG image.
/Users/admin/builder/spi-builder-workspace/Source/APNGKit/APNGImage.DecodingOptions.swift:95:27: warning: static property 'unlimitedFrameCount' is not concurrency-safe because non-'Sendable' type 'APNGImage.DecodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
 11 |
 12 |     /// Decoding options you can use when creating an APNG image view.
 13 |     public struct DecodingOptions: OptionSet {
    |                   `- note: consider making struct 'DecodingOptions' conform to the 'Sendable' protocol
 14 |         public let rawValue: Int
 15 |         public init(rawValue: Int) {
    :
 93 |         /// all expected use cases. Allowing more frame count or even unlimited frames may easily causes
 94 |         ///
 95 |         public static let unlimitedFrameCount = DecodingOptions(rawValue: 1 << 6)
    |                           |- warning: static property 'unlimitedFrameCount' is not concurrency-safe because non-'Sendable' type 'APNGImage.DecodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'unlimitedFrameCount' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 96 |     }
 97 |
/Users/admin/builder/spi-builder-workspace/Source/APNGKit/APNGImage.swift:40:23: warning: static property 'maximumCacheSize' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 38 |     /// cached or not by checking its loop number and the estimated size. Enlarge this number to allow bigger images
 39 |     /// to be cached.
 40 |     public static var maximumCacheSize = 50_000_000 // 50 MB
    |                       |- warning: static property 'maximumCacheSize' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'maximumCacheSize' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: add '@MainActor' to make static property 'maximumCacheSize' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 41 |
 42 |     /// The MIME type represents an APNG data. Fixed to `image/apng` according to APNG specification 1.0.
/Users/admin/builder/spi-builder-workspace/Source/APNGKit/APNGKitError.swift:18:10: warning: associated value 'decoderError' of 'Sendable'-conforming enum 'APNGKitError' has non-sendable type 'APNGKitError.DecoderError'; this is an error in the Swift 6 language mode
 16 | public enum APNGKitError: Error {
 17 |     /// Errors happening during decoding the image data.
 18 |     case decoderError(DecoderError)
    |          `- warning: associated value 'decoderError' of 'Sendable'-conforming enum 'APNGKitError' has non-sendable type 'APNGKitError.DecoderError'; this is an error in the Swift 6 language mode
 19 |     /// Errors happening during creating the image.
 20 |     case imageError(ImageError)
    :
 26 |
 27 |     /// Errors happening during decoding the image data.
 28 |     public enum DecoderError {
    |                 `- note: consider making enum 'DecoderError' conform to the 'Sendable' protocol
 29 |         case fileHandleCreatingFailed(URL, Error)
 30 |         case fileHandleOperationFailed(FileHandle, Error)
/Users/admin/builder/spi-builder-workspace/Source/APNGKit/APNGKitError.swift:20:10: warning: associated value 'imageError' of 'Sendable'-conforming enum 'APNGKitError' has non-sendable type 'APNGKitError.ImageError'; this is an error in the Swift 6 language mode
 18 |     case decoderError(DecoderError)
 19 |     /// Errors happening during creating the image.
 20 |     case imageError(ImageError)
    |          `- warning: associated value 'imageError' of 'Sendable'-conforming enum 'APNGKitError' has non-sendable type 'APNGKitError.ImageError'; this is an error in the Swift 6 language mode
 21 |     /// Other errors happening inside system and not directly related to APNGKit.
 22 |     case internalError(Error)
    :
 48 |
 49 |     /// Errors happening during creating the image.
 50 |     public enum ImageError {
    |                 `- note: consider making enum 'ImageError' conform to the 'Sendable' protocol
 51 |         case resourceNotFound(name: String, bundle: Bundle)
 52 |         case normalImageDataLoaded(data: Data, scale: CGFloat)
/Users/admin/builder/spi-builder-workspace/Source/APNGKit/CrossPlatform.swift:48:16: warning: static property 'applicationDidBecomeActive' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
46 |
47 | extension Notification.Name {
48 |     static var applicationDidBecomeActive = NSApplication.didBecomeActiveNotification
   |                |- warning: static property 'applicationDidBecomeActive' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'applicationDidBecomeActive' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: add '@MainActor' to make static property 'applicationDidBecomeActive' part of global actor 'MainActor'
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
49 | }
50 |
/Users/admin/builder/spi-builder-workspace/Source/APNGKit/LogLevel.swift:26:23: warning: static property 'current' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
24 |
25 |     /// The global setting of the log printed by APNGKit.
26 |     public static var current: LogLevel = .default
   |                       |- warning: static property 'current' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'current' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: add '@MainActor' to make static property 'current' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
27 | }
28 |
[12/20] Compiling APNGKit APNGImage.swift
/Users/admin/builder/spi-builder-workspace/Source/APNGKit/APNGImage.swift:40:23: warning: static property 'maximumCacheSize' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 38 |     /// cached or not by checking its loop number and the estimated size. Enlarge this number to allow bigger images
 39 |     /// to be cached.
 40 |     public static var maximumCacheSize = 50_000_000 // 50 MB
    |                       |- warning: static property 'maximumCacheSize' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'maximumCacheSize' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: add '@MainActor' to make static property 'maximumCacheSize' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 41 |
 42 |     /// The MIME type represents an APNG data. Fixed to `image/apng` according to APNG specification 1.0.
/Users/admin/builder/spi-builder-workspace/Source/APNGKit/APNGImageRenderer.swift:337:42: warning: capture of 'self' with non-sendable type 'APNGImageRenderer' in a '@Sendable' closure
 10 |
 11 | // This class is not thread safe. Methods in this class are expected only run on main thread.
 12 | class APNGImageRenderer {
    |       `- note: class 'APNGImageRenderer' does not conform to the 'Sendable' protocol
 13 |     let reader: Reader
 14 |     let decoder: APNGDecoder
    :
335 |         renderingQueue.async {
336 |             do {
337 |                 let (image, index) = try self.renderNextImpl()
    |                                          `- warning: capture of 'self' with non-sendable type 'APNGImageRenderer' in a '@Sendable' closure
338 |                 DispatchQueue.main.async {
339 |                     self.output = .success(image)
/Users/admin/builder/spi-builder-workspace/Source/APNGKit/APNGImageRenderer.swift:487:33: warning: passing non-sendable parameter 'block' to function expecting a @Sendable closure
481 |
482 | extension DispatchQueue {
483 |     func asyncOrSyncIfMain(execute block: @escaping () -> Void) {
    |                                    `- note: parameter 'block' is implicitly non-sendable
484 |         if Thread.isMainThread {
485 |             block()
486 |         } else {
487 |             self.async(execute: block)
    |                                 `- warning: passing non-sendable parameter 'block' to function expecting a @Sendable closure
488 |         }
489 |     }
/Users/admin/builder/spi-builder-workspace/Source/APNGKit/APNGImageRenderer.swift:104:40: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
102 |             _ = try reader.readChunk(type: IEND.self, skipChecksumVerify: skipChecksumVerify)
103 |             // Dispatch to give the user a chance to setup delegate after they get the returned APNG image.
104 |             DispatchQueue.main.async { self.decoder.onFirstPassDone() }
    |                                        |- 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
105 |         }
106 |     }
[13/20] Compiling APNGKit APNGImageRenderer.swift
/Users/admin/builder/spi-builder-workspace/Source/APNGKit/APNGImage.swift:40:23: warning: static property 'maximumCacheSize' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 38 |     /// cached or not by checking its loop number and the estimated size. Enlarge this number to allow bigger images
 39 |     /// to be cached.
 40 |     public static var maximumCacheSize = 50_000_000 // 50 MB
    |                       |- warning: static property 'maximumCacheSize' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'maximumCacheSize' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: add '@MainActor' to make static property 'maximumCacheSize' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 41 |
 42 |     /// The MIME type represents an APNG data. Fixed to `image/apng` according to APNG specification 1.0.
/Users/admin/builder/spi-builder-workspace/Source/APNGKit/APNGImageRenderer.swift:337:42: warning: capture of 'self' with non-sendable type 'APNGImageRenderer' in a '@Sendable' closure
 10 |
 11 | // This class is not thread safe. Methods in this class are expected only run on main thread.
 12 | class APNGImageRenderer {
    |       `- note: class 'APNGImageRenderer' does not conform to the 'Sendable' protocol
 13 |     let reader: Reader
 14 |     let decoder: APNGDecoder
    :
335 |         renderingQueue.async {
336 |             do {
337 |                 let (image, index) = try self.renderNextImpl()
    |                                          `- warning: capture of 'self' with non-sendable type 'APNGImageRenderer' in a '@Sendable' closure
338 |                 DispatchQueue.main.async {
339 |                     self.output = .success(image)
/Users/admin/builder/spi-builder-workspace/Source/APNGKit/APNGImageRenderer.swift:487:33: warning: passing non-sendable parameter 'block' to function expecting a @Sendable closure
481 |
482 | extension DispatchQueue {
483 |     func asyncOrSyncIfMain(execute block: @escaping () -> Void) {
    |                                    `- note: parameter 'block' is implicitly non-sendable
484 |         if Thread.isMainThread {
485 |             block()
486 |         } else {
487 |             self.async(execute: block)
    |                                 `- warning: passing non-sendable parameter 'block' to function expecting a @Sendable closure
488 |         }
489 |     }
/Users/admin/builder/spi-builder-workspace/Source/APNGKit/APNGImageRenderer.swift:104:40: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
102 |             _ = try reader.readChunk(type: IEND.self, skipChecksumVerify: skipChecksumVerify)
103 |             // Dispatch to give the user a chance to setup delegate after they get the returned APNG image.
104 |             DispatchQueue.main.async { self.decoder.onFirstPassDone() }
    |                                        |- 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
105 |         }
106 |     }
[14/20] Compiling APNGKit APNGDecoder.swift
/Users/admin/builder/spi-builder-workspace/Source/APNGKit/APNGImage.DecodingOptions.swift:26:27: warning: static property 'fullFirstPass' is not concurrency-safe because non-'Sendable' type 'APNGImage.DecodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
 11 |
 12 |     /// Decoding options you can use when creating an APNG image view.
 13 |     public struct DecodingOptions: OptionSet {
    |                   `- note: consider making struct 'DecodingOptions' conform to the 'Sendable' protocol
 14 |         public let rawValue: Int
 15 |         public init(rawValue: Int) {
    :
 24 |         /// detect any APNG data or file error before showing it or get the total frames information and gives you the
 25 |         /// total animation duration before actually displaying the image.
 26 |         public static let fullFirstPass     = DecodingOptions(rawValue: 1 << 0)
    |                           |- warning: static property 'fullFirstPass' is not concurrency-safe because non-'Sendable' type 'APNGImage.DecodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'fullFirstPass' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 27 |
 28 |         /// Loads and holds the actual frame data when decoding the frames in the first pass.
/Users/admin/builder/spi-builder-workspace/Source/APNGKit/APNGImage.DecodingOptions.swift:33:27: warning: static property 'loadFrameData' is not concurrency-safe because non-'Sendable' type 'APNGImage.DecodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
 11 |
 12 |     /// Decoding options you can use when creating an APNG image view.
 13 |     public struct DecodingOptions: OptionSet {
    |                   `- note: consider making struct 'DecodingOptions' conform to the 'Sendable' protocol
 14 |         public let rawValue: Int
 15 |         public init(rawValue: Int) {
    :
 31 |         /// to ask APNGKit to copy out the image data for each frame at the first pass. So it won't read data again in
 32 |         /// the future playing loops. This option trades a bit CPU resource with cost of taking more memory.
 33 |         public static let loadFrameData     = DecodingOptions(rawValue: 1 << 1)
    |                           |- warning: static property 'loadFrameData' is not concurrency-safe because non-'Sendable' type 'APNGImage.DecodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'loadFrameData' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 34 |
 35 |         /// Holds the decoded image for each frame, so APNGKit will not render it again.
/Users/admin/builder/spi-builder-workspace/Source/APNGKit/APNGImage.DecodingOptions.swift:45:27: warning: static property 'cacheDecodedImages' is not concurrency-safe because non-'Sendable' type 'APNGImage.DecodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
 11 |
 12 |     /// Decoding options you can use when creating an APNG image view.
 13 |     public struct DecodingOptions: OptionSet {
    |                   `- note: consider making struct 'DecodingOptions' conform to the 'Sendable' protocol
 14 |         public let rawValue: Int
 15 |         public init(rawValue: Int) {
    :
 43 |         ///
 44 |         /// See ``APNGImage.CachePolicy`` for more.
 45 |         public static let cacheDecodedImages = DecodingOptions(rawValue: 1 << 2)
    |                           |- warning: static property 'cacheDecodedImages' is not concurrency-safe because non-'Sendable' type 'APNGImage.DecodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'cacheDecodedImages' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 46 |
 47 |         /// Drops the decoded image for each frame, so APNGKit will render it again when next time it is needed.
/Users/admin/builder/spi-builder-workspace/Source/APNGKit/APNGImage.DecodingOptions.swift:57:27: warning: static property 'notCacheDecodedImages' is not concurrency-safe because non-'Sendable' type 'APNGImage.DecodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
 11 |
 12 |     /// Decoding options you can use when creating an APNG image view.
 13 |     public struct DecodingOptions: OptionSet {
    |                   `- note: consider making struct 'DecodingOptions' conform to the 'Sendable' protocol
 14 |         public let rawValue: Int
 15 |         public init(rawValue: Int) {
    :
 55 |         ///
 56 |         /// See ``APNGImage.CachePolicy`` for more.
 57 |         public static let notCacheDecodedImages = DecodingOptions(rawValue: 1 << 3)
    |                           |- warning: static property 'notCacheDecodedImages' is not concurrency-safe because non-'Sendable' type 'APNGImage.DecodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'notCacheDecodedImages' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 58 |
 59 |         /// Performs render for all frames before the APNG image finishes it initialization. This also enables
/Users/admin/builder/spi-builder-workspace/Source/APNGKit/APNGImage.DecodingOptions.swift:75:27: warning: static property 'preRenderAllFrames' is not concurrency-safe because non-'Sendable' type 'APNGImage.DecodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
 11 |
 12 |     /// Decoding options you can use when creating an APNG image view.
 13 |     public struct DecodingOptions: OptionSet {
    |                   `- note: consider making struct 'DecodingOptions' conform to the 'Sendable' protocol
 14 |         public let rawValue: Int
 15 |         public init(rawValue: Int) {
    :
 73 |         /// If `fullFirstPass` and `cacheDecodedImages` are not set in the same decoding options, APNGKit adds them
 74 |         /// for you automatically, since only enabling `preRenderAllFrames` is meaningless.
 75 |         public static let preRenderAllFrames  = DecodingOptions(
    |                           |- warning: static property 'preRenderAllFrames' is not concurrency-safe because non-'Sendable' type 'APNGImage.DecodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'preRenderAllFrames' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 76 |                                                        rawValue: 1 << 4 |
 77 |                                                        fullFirstPass.rawValue |
/Users/admin/builder/spi-builder-workspace/Source/APNGKit/APNGImage.DecodingOptions.swift:88:27: warning: static property 'skipChecksumVerify' is not concurrency-safe because non-'Sendable' type 'APNGImage.DecodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
 11 |
 12 |     /// Decoding options you can use when creating an APNG image view.
 13 |     public struct DecodingOptions: OptionSet {
    |                   `- note: consider making struct 'DecodingOptions' conform to the 'Sendable' protocol
 14 |         public let rawValue: Int
 15 |         public init(rawValue: Int) {
    :
 86 |         /// Enable this to ask APNGKit to skip this check. It improves the CPU performance a bit, but with the risk of
 87 |         /// reading and trust unchecked chunks. It is not recommended to skip the check.
 88 |         public static let skipChecksumVerify   = DecodingOptions(rawValue: 1 << 5)
    |                           |- warning: static property 'skipChecksumVerify' is not concurrency-safe because non-'Sendable' type 'APNGImage.DecodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'skipChecksumVerify' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 89 |
 90 |         /// Unsets frame count limitation when reading an APNG image.
/Users/admin/builder/spi-builder-workspace/Source/APNGKit/APNGImage.DecodingOptions.swift:95:27: warning: static property 'unlimitedFrameCount' is not concurrency-safe because non-'Sendable' type 'APNGImage.DecodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
 11 |
 12 |     /// Decoding options you can use when creating an APNG image view.
 13 |     public struct DecodingOptions: OptionSet {
    |                   `- note: consider making struct 'DecodingOptions' conform to the 'Sendable' protocol
 14 |         public let rawValue: Int
 15 |         public init(rawValue: Int) {
    :
 93 |         /// all expected use cases. Allowing more frame count or even unlimited frames may easily causes
 94 |         ///
 95 |         public static let unlimitedFrameCount = DecodingOptions(rawValue: 1 << 6)
    |                           |- warning: static property 'unlimitedFrameCount' is not concurrency-safe because non-'Sendable' type 'APNGImage.DecodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'unlimitedFrameCount' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 96 |     }
 97 |
[15/20] Compiling APNGKit APNGImage.DecodingOptions.swift
/Users/admin/builder/spi-builder-workspace/Source/APNGKit/APNGImage.DecodingOptions.swift:26:27: warning: static property 'fullFirstPass' is not concurrency-safe because non-'Sendable' type 'APNGImage.DecodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
 11 |
 12 |     /// Decoding options you can use when creating an APNG image view.
 13 |     public struct DecodingOptions: OptionSet {
    |                   `- note: consider making struct 'DecodingOptions' conform to the 'Sendable' protocol
 14 |         public let rawValue: Int
 15 |         public init(rawValue: Int) {
    :
 24 |         /// detect any APNG data or file error before showing it or get the total frames information and gives you the
 25 |         /// total animation duration before actually displaying the image.
 26 |         public static let fullFirstPass     = DecodingOptions(rawValue: 1 << 0)
    |                           |- warning: static property 'fullFirstPass' is not concurrency-safe because non-'Sendable' type 'APNGImage.DecodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'fullFirstPass' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 27 |
 28 |         /// Loads and holds the actual frame data when decoding the frames in the first pass.
/Users/admin/builder/spi-builder-workspace/Source/APNGKit/APNGImage.DecodingOptions.swift:33:27: warning: static property 'loadFrameData' is not concurrency-safe because non-'Sendable' type 'APNGImage.DecodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
 11 |
 12 |     /// Decoding options you can use when creating an APNG image view.
 13 |     public struct DecodingOptions: OptionSet {
    |                   `- note: consider making struct 'DecodingOptions' conform to the 'Sendable' protocol
 14 |         public let rawValue: Int
 15 |         public init(rawValue: Int) {
    :
 31 |         /// to ask APNGKit to copy out the image data for each frame at the first pass. So it won't read data again in
 32 |         /// the future playing loops. This option trades a bit CPU resource with cost of taking more memory.
 33 |         public static let loadFrameData     = DecodingOptions(rawValue: 1 << 1)
    |                           |- warning: static property 'loadFrameData' is not concurrency-safe because non-'Sendable' type 'APNGImage.DecodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'loadFrameData' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 34 |
 35 |         /// Holds the decoded image for each frame, so APNGKit will not render it again.
/Users/admin/builder/spi-builder-workspace/Source/APNGKit/APNGImage.DecodingOptions.swift:45:27: warning: static property 'cacheDecodedImages' is not concurrency-safe because non-'Sendable' type 'APNGImage.DecodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
 11 |
 12 |     /// Decoding options you can use when creating an APNG image view.
 13 |     public struct DecodingOptions: OptionSet {
    |                   `- note: consider making struct 'DecodingOptions' conform to the 'Sendable' protocol
 14 |         public let rawValue: Int
 15 |         public init(rawValue: Int) {
    :
 43 |         ///
 44 |         /// See ``APNGImage.CachePolicy`` for more.
 45 |         public static let cacheDecodedImages = DecodingOptions(rawValue: 1 << 2)
    |                           |- warning: static property 'cacheDecodedImages' is not concurrency-safe because non-'Sendable' type 'APNGImage.DecodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'cacheDecodedImages' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 46 |
 47 |         /// Drops the decoded image for each frame, so APNGKit will render it again when next time it is needed.
/Users/admin/builder/spi-builder-workspace/Source/APNGKit/APNGImage.DecodingOptions.swift:57:27: warning: static property 'notCacheDecodedImages' is not concurrency-safe because non-'Sendable' type 'APNGImage.DecodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
 11 |
 12 |     /// Decoding options you can use when creating an APNG image view.
 13 |     public struct DecodingOptions: OptionSet {
    |                   `- note: consider making struct 'DecodingOptions' conform to the 'Sendable' protocol
 14 |         public let rawValue: Int
 15 |         public init(rawValue: Int) {
    :
 55 |         ///
 56 |         /// See ``APNGImage.CachePolicy`` for more.
 57 |         public static let notCacheDecodedImages = DecodingOptions(rawValue: 1 << 3)
    |                           |- warning: static property 'notCacheDecodedImages' is not concurrency-safe because non-'Sendable' type 'APNGImage.DecodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'notCacheDecodedImages' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 58 |
 59 |         /// Performs render for all frames before the APNG image finishes it initialization. This also enables
/Users/admin/builder/spi-builder-workspace/Source/APNGKit/APNGImage.DecodingOptions.swift:75:27: warning: static property 'preRenderAllFrames' is not concurrency-safe because non-'Sendable' type 'APNGImage.DecodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
 11 |
 12 |     /// Decoding options you can use when creating an APNG image view.
 13 |     public struct DecodingOptions: OptionSet {
    |                   `- note: consider making struct 'DecodingOptions' conform to the 'Sendable' protocol
 14 |         public let rawValue: Int
 15 |         public init(rawValue: Int) {
    :
 73 |         /// If `fullFirstPass` and `cacheDecodedImages` are not set in the same decoding options, APNGKit adds them
 74 |         /// for you automatically, since only enabling `preRenderAllFrames` is meaningless.
 75 |         public static let preRenderAllFrames  = DecodingOptions(
    |                           |- warning: static property 'preRenderAllFrames' is not concurrency-safe because non-'Sendable' type 'APNGImage.DecodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'preRenderAllFrames' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 76 |                                                        rawValue: 1 << 4 |
 77 |                                                        fullFirstPass.rawValue |
/Users/admin/builder/spi-builder-workspace/Source/APNGKit/APNGImage.DecodingOptions.swift:88:27: warning: static property 'skipChecksumVerify' is not concurrency-safe because non-'Sendable' type 'APNGImage.DecodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
 11 |
 12 |     /// Decoding options you can use when creating an APNG image view.
 13 |     public struct DecodingOptions: OptionSet {
    |                   `- note: consider making struct 'DecodingOptions' conform to the 'Sendable' protocol
 14 |         public let rawValue: Int
 15 |         public init(rawValue: Int) {
    :
 86 |         /// Enable this to ask APNGKit to skip this check. It improves the CPU performance a bit, but with the risk of
 87 |         /// reading and trust unchecked chunks. It is not recommended to skip the check.
 88 |         public static let skipChecksumVerify   = DecodingOptions(rawValue: 1 << 5)
    |                           |- warning: static property 'skipChecksumVerify' is not concurrency-safe because non-'Sendable' type 'APNGImage.DecodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'skipChecksumVerify' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 89 |
 90 |         /// Unsets frame count limitation when reading an APNG image.
/Users/admin/builder/spi-builder-workspace/Source/APNGKit/APNGImage.DecodingOptions.swift:95:27: warning: static property 'unlimitedFrameCount' is not concurrency-safe because non-'Sendable' type 'APNGImage.DecodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
 11 |
 12 |     /// Decoding options you can use when creating an APNG image view.
 13 |     public struct DecodingOptions: OptionSet {
    |                   `- note: consider making struct 'DecodingOptions' conform to the 'Sendable' protocol
 14 |         public let rawValue: Int
 15 |         public init(rawValue: Int) {
    :
 93 |         /// all expected use cases. Allowing more frame count or even unlimited frames may easily causes
 94 |         ///
 95 |         public static let unlimitedFrameCount = DecodingOptions(rawValue: 1 << 6)
    |                           |- warning: static property 'unlimitedFrameCount' is not concurrency-safe because non-'Sendable' type 'APNGImage.DecodingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'unlimitedFrameCount' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 96 |     }
 97 |
[16/20] Compiling APNGKit APNGImageView.swift
/Users/admin/builder/spi-builder-workspace/Source/APNGKit/APNGKitError.swift:18:10: warning: associated value 'decoderError' of 'Sendable'-conforming enum 'APNGKitError' has non-sendable type 'APNGKitError.DecoderError'; this is an error in the Swift 6 language mode
 16 | public enum APNGKitError: Error {
 17 |     /// Errors happening during decoding the image data.
 18 |     case decoderError(DecoderError)
    |          `- warning: associated value 'decoderError' of 'Sendable'-conforming enum 'APNGKitError' has non-sendable type 'APNGKitError.DecoderError'; this is an error in the Swift 6 language mode
 19 |     /// Errors happening during creating the image.
 20 |     case imageError(ImageError)
    :
 26 |
 27 |     /// Errors happening during decoding the image data.
 28 |     public enum DecoderError {
    |                 `- note: consider making enum 'DecoderError' conform to the 'Sendable' protocol
 29 |         case fileHandleCreatingFailed(URL, Error)
 30 |         case fileHandleOperationFailed(FileHandle, Error)
/Users/admin/builder/spi-builder-workspace/Source/APNGKit/APNGKitError.swift:20:10: warning: associated value 'imageError' of 'Sendable'-conforming enum 'APNGKitError' has non-sendable type 'APNGKitError.ImageError'; this is an error in the Swift 6 language mode
 18 |     case decoderError(DecoderError)
 19 |     /// Errors happening during creating the image.
 20 |     case imageError(ImageError)
    |          `- warning: associated value 'imageError' of 'Sendable'-conforming enum 'APNGKitError' has non-sendable type 'APNGKitError.ImageError'; this is an error in the Swift 6 language mode
 21 |     /// Other errors happening inside system and not directly related to APNGKit.
 22 |     case internalError(Error)
    :
 48 |
 49 |     /// Errors happening during creating the image.
 50 |     public enum ImageError {
    |                 `- note: consider making enum 'ImageError' conform to the 'Sendable' protocol
 51 |         case resourceNotFound(name: String, bundle: Bundle)
 52 |         case normalImageDataLoaded(data: Data, scale: CGFloat)
[17/20] Compiling APNGKit APNGKitError.swift
/Users/admin/builder/spi-builder-workspace/Source/APNGKit/APNGKitError.swift:18:10: warning: associated value 'decoderError' of 'Sendable'-conforming enum 'APNGKitError' has non-sendable type 'APNGKitError.DecoderError'; this is an error in the Swift 6 language mode
 16 | public enum APNGKitError: Error {
 17 |     /// Errors happening during decoding the image data.
 18 |     case decoderError(DecoderError)
    |          `- warning: associated value 'decoderError' of 'Sendable'-conforming enum 'APNGKitError' has non-sendable type 'APNGKitError.DecoderError'; this is an error in the Swift 6 language mode
 19 |     /// Errors happening during creating the image.
 20 |     case imageError(ImageError)
    :
 26 |
 27 |     /// Errors happening during decoding the image data.
 28 |     public enum DecoderError {
    |                 `- note: consider making enum 'DecoderError' conform to the 'Sendable' protocol
 29 |         case fileHandleCreatingFailed(URL, Error)
 30 |         case fileHandleOperationFailed(FileHandle, Error)
/Users/admin/builder/spi-builder-workspace/Source/APNGKit/APNGKitError.swift:20:10: warning: associated value 'imageError' of 'Sendable'-conforming enum 'APNGKitError' has non-sendable type 'APNGKitError.ImageError'; this is an error in the Swift 6 language mode
 18 |     case decoderError(DecoderError)
 19 |     /// Errors happening during creating the image.
 20 |     case imageError(ImageError)
    |          `- warning: associated value 'imageError' of 'Sendable'-conforming enum 'APNGKitError' has non-sendable type 'APNGKitError.ImageError'; this is an error in the Swift 6 language mode
 21 |     /// Other errors happening inside system and not directly related to APNGKit.
 22 |     case internalError(Error)
    :
 48 |
 49 |     /// Errors happening during creating the image.
 50 |     public enum ImageError {
    |                 `- note: consider making enum 'ImageError' conform to the 'Sendable' protocol
 51 |         case resourceNotFound(name: String, bundle: Bundle)
 52 |         case normalImageDataLoaded(data: Data, scale: CGFloat)
[18/20] Compiling APNGKit CrossPlatform.swift
/Users/admin/builder/spi-builder-workspace/Source/APNGKit/CrossPlatform.swift:48:16: warning: static property 'applicationDidBecomeActive' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
46 |
47 | extension Notification.Name {
48 |     static var applicationDidBecomeActive = NSApplication.didBecomeActiveNotification
   |                |- warning: static property 'applicationDidBecomeActive' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'applicationDidBecomeActive' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: add '@MainActor' to make static property 'applicationDidBecomeActive' part of global actor 'MainActor'
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
49 | }
50 |
[19/20] Compiling APNGKit DisplayTimer.swift
[20/20] Compiling APNGKit LogLevel.swift
/Users/admin/builder/spi-builder-workspace/Source/APNGKit/LogLevel.swift:26:23: warning: static property 'current' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
24 |
25 |     /// The global setting of the log printed by APNGKit.
26 |     public static var current: LogLevel = .default
   |                       |- warning: static property 'current' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'current' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: add '@MainActor' to make static property 'current' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
27 | }
28 |
Build complete! (14.06s)
Fetching https://github.com/onevcat/Delegate.git
[1/48] Fetching delegate
Fetched https://github.com/onevcat/Delegate.git from cache (0.56s)
Computing version for https://github.com/onevcat/Delegate.git
Computed https://github.com/onevcat/Delegate.git at 1.3.0 (3.60s)
Creating working copy for https://github.com/onevcat/Delegate.git
Working copy of https://github.com/onevcat/Delegate.git resolved at 1.3.0
Build complete.
{
  "dependencies" : [
    {
      "identity" : "delegate",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.3.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/onevcat/Delegate.git"
    }
  ],
  "manifest_display_name" : "APNGKit",
  "name" : "APNGKit",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "10.14"
    },
    {
      "name" : "ios",
      "version" : "12.0"
    },
    {
      "name" : "tvos",
      "version" : "12.0"
    },
    {
      "name" : "visionos",
      "version" : "1.0"
    }
  ],
  "products" : [
    {
      "name" : "APNGKit",
      "targets" : [
        "APNGKit"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "APNGKitTests",
      "module_type" : "SwiftTarget",
      "name" : "APNGKitTests",
      "path" : "Tests/APNGKitTests",
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/APNGKitTests/Resources/General",
          "rule" : {
            "copy" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/APNGKitTests/Resources/SpecTesting",
          "rule" : {
            "copy" : {
            }
          }
        }
      ],
      "sources" : [
        "APNGDecoderTests.swift",
        "APNGImageRendererTests.swift",
        "APNGImageTests.swift",
        "APNGImageViewTests.swift",
        "APNGImageViewTimingTests.swift",
        "ChunkTests.swift",
        "DataReaderTests.swift",
        "DecoderOptionsTests.swift",
        "FileReaderTests.swift",
        "Helpers.swift",
        "ReaderExtensionTests.swift"
      ],
      "target_dependencies" : [
        "APNGKit"
      ],
      "type" : "test"
    },
    {
      "c99name" : "APNGKit",
      "module_type" : "SwiftTarget",
      "name" : "APNGKit",
      "path" : "Source/APNGKit",
      "product_dependencies" : [
        "Delegate"
      ],
      "product_memberships" : [
        "APNGKit"
      ],
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Source/APNGKit/PrivacyInfo.xcprivacy",
          "rule" : {
            "copy" : {
            }
          }
        }
      ],
      "sources" : [
        "APNGDecoder.swift",
        "APNGImage.DecodingOptions.swift",
        "APNGImage.swift",
        "APNGImageRenderer.swift",
        "APNGImageView.swift",
        "APNGKitError.swift",
        "Chunk.swift",
        "CrossPlatform.swift",
        "DisplayTimer.swift",
        "Extensions.swift",
        "LogLevel.swift",
        "Reader.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.9"
}
Done.