The Swift Package Index logo.Swift Package Index

Build Information

Successful build of SnapshotTestingHEIC, reference 1.6.0 (ef2b0e), with Swift 6.1 for macOS (SPM) on 1 Dec 2025 09:11:20 UTC.

Swift 6 data race errors: 2

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: 4.68.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/alexey1312/SnapshotTestingHEIC.git
Reference: 1.6.0
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/alexey1312/SnapshotTestingHEIC
 * tag               1.6.0      -> FETCH_HEAD
HEAD is now at ef2b0e0 Little update (#15)
Cloned https://github.com/alexey1312/SnapshotTestingHEIC.git
Revision (git rev-parse @):
ef2b0e0ada05230a383a367193aadd5754d1857d
SUCCESS checkout https://github.com/alexey1312/SnapshotTestingHEIC.git at 1.6.0
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.1
Building package at path:  $PWD
https://github.com/alexey1312/SnapshotTestingHEIC.git
https://github.com/alexey1312/SnapshotTestingHEIC.git
{
  "dependencies" : [
    {
      "identity" : "swift-snapshot-testing",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.18.7",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/pointfreeco/swift-snapshot-testing.git"
    }
  ],
  "manifest_display_name" : "SnapshotTestingHEIC",
  "name" : "SnapshotTestingHEIC",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "13.0"
    },
    {
      "name" : "macos",
      "version" : "10.15"
    },
    {
      "name" : "tvos",
      "version" : "13.0"
    }
  ],
  "products" : [
    {
      "name" : "SnapshotTestingHEIC",
      "targets" : [
        "SnapshotTestingHEIC"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "SnapshotTestingHEICTests",
      "module_type" : "SwiftTarget",
      "name" : "SnapshotTestingHEICTests",
      "path" : "Tests/SnapshotTestingHEICTests",
      "sources" : [
        "SnapshotTestingHEICTests.swift",
        "SwiftUIView.swift",
        "TestViewController.swift"
      ],
      "target_dependencies" : [
        "SnapshotTestingHEIC"
      ],
      "type" : "test"
    },
    {
      "c99name" : "SnapshotTestingHEIC",
      "module_type" : "SwiftTarget",
      "name" : "SnapshotTestingHEIC",
      "path" : "Sources/SnapshotTestingHEIC",
      "product_dependencies" : [
        "SnapshotTesting"
      ],
      "product_memberships" : [
        "SnapshotTestingHEIC"
      ],
      "sources" : [
        "HEIC/CompressionQuality.swift",
        "HEIC/NSImage+HEIC.swift",
        "HEIC/UIImage+HEIC.swift",
        "ImageComparisonHelpers.swift",
        "NSImage.swift",
        "NSView.swift",
        "NSViewController.swift",
        "SwiftUIView.swift",
        "UIImage.swift",
        "UIView.swift",
        "UIViewController.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.2"
}
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/35] Emitting module SnapshotTesting
[5/38] Compiling SnapshotTesting UIView.swift
[6/38] Compiling SnapshotTesting UIViewController.swift
[7/38] Compiling SnapshotTesting URLRequest.swift
[8/38] Compiling SnapshotTesting NSImage.swift
[9/38] Compiling SnapshotTesting NSView.swift
[10/38] Compiling SnapshotTesting NSViewController.swift
[11/38] Compiling SnapshotTesting Data.swift
[12/38] Compiling SnapshotTesting Encodable.swift
[13/38] Compiling SnapshotTesting NSBezierPath.swift
[14/38] Compiling SnapshotTesting SnapshotTestingConfiguration.swift
[15/38] Compiling SnapshotTesting SnapshotsTestTrait.swift
[16/38] Compiling SnapshotTesting Snapshotting.swift
[17/38] Compiling SnapshotTesting Any.swift
[18/38] Compiling SnapshotTesting Diffing.swift
[19/38] Compiling SnapshotTesting Wait.swift
[20/38] Compiling SnapshotTesting Deprecations.swift
[21/38] Compiling SnapshotTesting RecordIssue.swift
[22/38] Compiling SnapshotTesting AssertSnapshot.swift
[23/38] Compiling SnapshotTesting Async.swift
[24/38] Compiling SnapshotTesting Internal.swift
[25/38] Compiling SnapshotTesting PlistEncoder.swift
[26/38] Compiling SnapshotTesting SceneKit.swift
[27/38] Compiling SnapshotTesting SpriteKit.swift
[28/38] Compiling SnapshotTesting String.swift
[29/38] Compiling SnapshotTesting CALayer.swift
[30/38] Compiling SnapshotTesting CGPath.swift
[31/38] Compiling SnapshotTesting CaseIterable.swift
[32/38] Compiling SnapshotTesting String+SpecialCharacters.swift
[33/38] Compiling SnapshotTesting View.swift
[34/38] Compiling SnapshotTesting XCTAttachment.swift
[35/38] Compiling SnapshotTesting Diff.swift
[36/38] Compiling SnapshotTesting SwiftUIView.swift
[37/38] Compiling SnapshotTesting UIBezierPath.swift
[38/38] Compiling SnapshotTesting UIImage.swift
[39/49] Compiling SnapshotTestingHEIC NSViewController.swift
/Users/admin/builder/spi-builder-workspace/Sources/SnapshotTestingHEIC/NSViewController.swift:29:25: warning: main actor-isolated property 'view' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
27 |             compressionQuality: compressionQuality,
28 |             opaqueMode: opaqueMode
29 |         ).pullback { $0.view }
   |                         `- warning: main actor-isolated property 'view' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
30 |     }
31 | }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSViewController.h:78:37: note: property declared here
 76 | /* The default implementation of the getter first invokes [self loadView] if the view hasn't been set yet. After -loadView is called, -viewDidLoad will be called. The setter can be used to assign a view that's created in a different manner than what -view's default implementation would do.
 77 | */
 78 | @property (strong) IBOutlet NSView *view;
    |                                     `- note: property declared here
 79 |
 80 | /* Returns the view controller's view, or nil if the view has not been loaded.
[40/49] Compiling SnapshotTestingHEIC NSImage.swift
/Users/admin/builder/spi-builder-workspace/Sources/SnapshotTestingHEIC/NSImage.swift:8:16: warning: static property 'imageHEIC' is not concurrency-safe because non-'Sendable' type 'Diffing<NSImage>' may have shared mutable state; this is an error in the Swift 6 language mode
  6 | public extension Diffing where Value == NSImage {
  7 |     /// A pixel-diffing strategy for NSImage's which requires a 100% match.
  8 |     static let imageHEIC = Diffing.imageHEIC(precision: 1, compressionQuality: .lossless)
    |                `- warning: static property 'imageHEIC' is not concurrency-safe because non-'Sendable' type 'Diffing<NSImage>' may have shared mutable state; this is an error in the Swift 6 language mode
  9 |
 10 |     /// A pixel-diffing strategy for NSImage that allows customizing how precise the matching must be.
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-snapshot-testing/Sources/SnapshotTesting/Diffing.swift:5:15: note: generic struct 'Diffing' does not conform to the 'Sendable' protocol
 3 |
 4 | /// The ability to compare `Value`s and convert them to and from `Data`.
 5 | public struct Diffing<Value> {
   |               `- note: generic struct 'Diffing' does not conform to the 'Sendable' protocol
 6 |   /// Converts a value _to_ data.
 7 |   public var toData: (Value) -> Data
/Users/admin/builder/spi-builder-workspace/Sources/SnapshotTestingHEIC/NSImage.swift:4:11: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'SnapshotTesting'
  2 | import Cocoa
  3 | import XCTest
  4 | @testable import SnapshotTesting
    |           `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'SnapshotTesting'
  5 |
  6 | public extension Diffing where Value == NSImage {
  7 |     /// A pixel-diffing strategy for NSImage's which requires a 100% match.
  8 |     static let imageHEIC = Diffing.imageHEIC(precision: 1, compressionQuality: .lossless)
    |                |- note: add '@MainActor' to make static property 'imageHEIC' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  9 |
 10 |     /// A pixel-diffing strategy for NSImage that allows customizing how precise the matching must be.
[41/49] Compiling SnapshotTestingHEIC UIImage+HEIC.swift
[42/50] Compiling SnapshotTestingHEIC UIView.swift
[43/50] Compiling SnapshotTestingHEIC ImageComparisonHelpers.swift
[44/50] Compiling SnapshotTestingHEIC NSView.swift
/Users/admin/builder/spi-builder-workspace/Sources/SnapshotTestingHEIC/NSView.swift:29:36: warning: main actor-isolated property 'frame' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
27 |             opaqueMode: opaqueMode
28 |         ).asyncPullback { view in
29 |             let initialSize = view.frame.size
   |                                    `- warning: main actor-isolated property 'frame' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
30 |             if let size = size { view.frame.size = size }
31 |             guard view.frame.width > 0, view.frame.height > 0 else {
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSView.h:129:18: note: property declared here
127 | - (void)setFrameOrigin:(NSPoint)newOrigin;
128 | - (void)setFrameSize:(NSSize)newSize;
129 | @property NSRect frame;
    |                  `- note: property declared here
130 | @property CGFloat frameRotation;
131 | @property CGFloat frameCenterRotation API_AVAILABLE(macos(10.5));
/Users/admin/builder/spi-builder-workspace/Sources/SnapshotTestingHEIC/NSView.swift:30:39: warning: main actor-isolated property 'frame' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
28 |         ).asyncPullback { view in
29 |             let initialSize = view.frame.size
30 |             if let size = size { view.frame.size = size }
   |                                       `- warning: main actor-isolated property 'frame' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
31 |             guard view.frame.width > 0, view.frame.height > 0 else {
32 |                 fatalError("View not renderable to image at size \(view.frame.size)")
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSView.h:129:18: note: mutation of this property is only permitted within the actor
127 | - (void)setFrameOrigin:(NSPoint)newOrigin;
128 | - (void)setFrameSize:(NSSize)newSize;
129 | @property NSRect frame;
    |                  `- note: mutation of this property is only permitted within the actor
130 | @property CGFloat frameRotation;
131 | @property CGFloat frameCenterRotation API_AVAILABLE(macos(10.5));
/Users/admin/builder/spi-builder-workspace/Sources/SnapshotTestingHEIC/NSView.swift:31:24: warning: main actor-isolated property 'frame' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
29 |             let initialSize = view.frame.size
30 |             if let size = size { view.frame.size = size }
31 |             guard view.frame.width > 0, view.frame.height > 0 else {
   |                        `- warning: main actor-isolated property 'frame' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
32 |                 fatalError("View not renderable to image at size \(view.frame.size)")
33 |             }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSView.h:129:18: note: property declared here
127 | - (void)setFrameOrigin:(NSPoint)newOrigin;
128 | - (void)setFrameSize:(NSSize)newSize;
129 | @property NSRect frame;
    |                  `- note: property declared here
130 | @property CGFloat frameRotation;
131 | @property CGFloat frameCenterRotation API_AVAILABLE(macos(10.5));
/Users/admin/builder/spi-builder-workspace/Sources/SnapshotTestingHEIC/NSView.swift:31:46: warning: main actor-isolated property 'frame' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
29 |             let initialSize = view.frame.size
30 |             if let size = size { view.frame.size = size }
31 |             guard view.frame.width > 0, view.frame.height > 0 else {
   |                                              `- warning: main actor-isolated property 'frame' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
32 |                 fatalError("View not renderable to image at size \(view.frame.size)")
33 |             }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSView.h:129:18: note: property declared here
127 | - (void)setFrameOrigin:(NSPoint)newOrigin;
128 | - (void)setFrameSize:(NSSize)newSize;
129 | @property NSRect frame;
    |                  `- note: property declared here
130 | @property CGFloat frameRotation;
131 | @property CGFloat frameCenterRotation API_AVAILABLE(macos(10.5));
/Users/admin/builder/spi-builder-workspace/Sources/SnapshotTestingHEIC/NSView.swift:32:73: warning: main actor-isolated property 'frame' can not be referenced from a nonisolated autoclosure; this is an error in the Swift 6 language mode
30 |             if let size = size { view.frame.size = size }
31 |             guard view.frame.width > 0, view.frame.height > 0 else {
32 |                 fatalError("View not renderable to image at size \(view.frame.size)")
   |                                                                         `- warning: main actor-isolated property 'frame' can not be referenced from a nonisolated autoclosure; this is an error in the Swift 6 language mode
33 |             }
34 |             return view.snapshot ?? Async { callback in
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSView.h:129:18: note: property declared here
127 | - (void)setFrameOrigin:(NSPoint)newOrigin;
128 | - (void)setFrameSize:(NSSize)newSize;
129 | @property NSRect frame;
    |                  `- note: property declared here
130 | @property CGFloat frameRotation;
131 | @property CGFloat frameCenterRotation API_AVAILABLE(macos(10.5));
/Users/admin/builder/spi-builder-workspace/Sources/SnapshotTestingHEIC/NSView.swift:34:25: warning: main actor-isolated property 'snapshot' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
32 |                 fatalError("View not renderable to image at size \(view.frame.size)")
33 |             }
34 |             return view.snapshot ?? Async { callback in
   |                         `- warning: main actor-isolated property 'snapshot' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
35 |                 addImagesForRenderedViews(view).sequence().run { views in
36 |                     let bitmapRep = view.bitmapImageRepForCachingDisplay(in: view.bounds)!
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-snapshot-testing/Sources/SnapshotTesting/Common/View.swift:834:9: note: property declared here
 832 |
 833 |   extension View {
 834 |     var snapshot: Async<Image>? {
     |         `- note: property declared here
 835 |       func inWindow<T>(_ perform: () -> T) -> T {
 836 |         #if os(macOS)
/Users/admin/builder/spi-builder-workspace/Sources/SnapshotTestingHEIC/NSView.swift:36:42: warning: call to main actor-isolated instance method 'bitmapImageRepForCachingDisplay(in:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
34 |             return view.snapshot ?? Async { callback in
35 |                 addImagesForRenderedViews(view).sequence().run { views in
36 |                     let bitmapRep = view.bitmapImageRepForCachingDisplay(in: view.bounds)!
   |                                          `- warning: call to main actor-isolated instance method 'bitmapImageRepForCachingDisplay(in:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
37 |                     view.cacheDisplay(in: view.bounds, to: bitmapRep)
38 |                     let image = NSImage(size: view.bounds.size)
AppKit.NSView.bitmapImageRepForCachingDisplay:2:22: note: calls to instance method 'bitmapImageRepForCachingDisplay(in:)' from outside of its actor context are implicitly asynchronous
1 | class NSView {
2 | @MainActor open func bitmapImageRepForCachingDisplay(in rect: NSRect) -> NSBitmapImageRep?}
  |                      |- note: calls to instance method 'bitmapImageRepForCachingDisplay(in:)' from outside of its actor context are implicitly asynchronous
  |                      `- note: main actor isolation inferred from inheritance from class 'NSResponder'
3 |
/Users/admin/builder/spi-builder-workspace/Sources/SnapshotTestingHEIC/NSView.swift:36:83: warning: main actor-isolated property 'bounds' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
34 |             return view.snapshot ?? Async { callback in
35 |                 addImagesForRenderedViews(view).sequence().run { views in
36 |                     let bitmapRep = view.bitmapImageRepForCachingDisplay(in: view.bounds)!
   |                                                                                   `- warning: main actor-isolated property 'bounds' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
37 |                     view.cacheDisplay(in: view.bounds, to: bitmapRep)
38 |                     let image = NSImage(size: view.bounds.size)
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSView.h:139:18: note: property declared here
137 | - (void)scaleUnitSquareToSize:(NSSize)newUnitSize;
138 | - (void)rotateByAngle:(CGFloat)angle;
139 | @property NSRect bounds;
    |                  `- note: property declared here
140 |
141 | @property (getter=isFlipped, readonly) BOOL flipped;
/Users/admin/builder/spi-builder-workspace/Sources/SnapshotTestingHEIC/NSView.swift:37:26: warning: call to main actor-isolated instance method 'cacheDisplay(in:to:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
35 |                 addImagesForRenderedViews(view).sequence().run { views in
36 |                     let bitmapRep = view.bitmapImageRepForCachingDisplay(in: view.bounds)!
37 |                     view.cacheDisplay(in: view.bounds, to: bitmapRep)
   |                          `- warning: call to main actor-isolated instance method 'cacheDisplay(in:to:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
38 |                     let image = NSImage(size: view.bounds.size)
39 |                     image.addRepresentation(bitmapRep)
AppKit.NSView.cacheDisplay:2:22: note: calls to instance method 'cacheDisplay(in:to:)' from outside of its actor context are implicitly asynchronous
1 | class NSView {
2 | @MainActor open func cacheDisplay(in rect: NSRect, to bitmapImageRep: NSBitmapImageRep)}
  |                      |- note: calls to instance method 'cacheDisplay(in:to:)' from outside of its actor context are implicitly asynchronous
  |                      `- note: main actor isolation inferred from inheritance from class 'NSResponder'
3 |
/Users/admin/builder/spi-builder-workspace/Sources/SnapshotTestingHEIC/NSView.swift:37:48: warning: main actor-isolated property 'bounds' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
35 |                 addImagesForRenderedViews(view).sequence().run { views in
36 |                     let bitmapRep = view.bitmapImageRepForCachingDisplay(in: view.bounds)!
37 |                     view.cacheDisplay(in: view.bounds, to: bitmapRep)
   |                                                `- warning: main actor-isolated property 'bounds' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
38 |                     let image = NSImage(size: view.bounds.size)
39 |                     image.addRepresentation(bitmapRep)
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSView.h:139:18: note: property declared here
137 | - (void)scaleUnitSquareToSize:(NSSize)newUnitSize;
138 | - (void)rotateByAngle:(CGFloat)angle;
139 | @property NSRect bounds;
    |                  `- note: property declared here
140 |
141 | @property (getter=isFlipped, readonly) BOOL flipped;
/Users/admin/builder/spi-builder-workspace/Sources/SnapshotTestingHEIC/NSView.swift:38:52: warning: main actor-isolated property 'bounds' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
36 |                     let bitmapRep = view.bitmapImageRepForCachingDisplay(in: view.bounds)!
37 |                     view.cacheDisplay(in: view.bounds, to: bitmapRep)
38 |                     let image = NSImage(size: view.bounds.size)
   |                                                    `- warning: main actor-isolated property 'bounds' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
39 |                     image.addRepresentation(bitmapRep)
40 |                     callback(image)
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSView.h:139:18: note: property declared here
137 | - (void)scaleUnitSquareToSize:(NSSize)newUnitSize;
138 | - (void)rotateByAngle:(CGFloat)angle;
139 | @property NSRect bounds;
    |                  `- note: property declared here
140 |
141 | @property (getter=isFlipped, readonly) BOOL flipped;
/Users/admin/builder/spi-builder-workspace/Sources/SnapshotTestingHEIC/NSView.swift:41:40: warning: call to main actor-isolated instance method 'removeFromSuperview()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
39 |                     image.addRepresentation(bitmapRep)
40 |                     callback(image)
41 |                     views.forEach { $0.removeFromSuperview() }
   |                                        `- warning: call to main actor-isolated instance method 'removeFromSuperview()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
42 |                     view.frame.size = initialSize
43 |                 }
AppKit.NSView.removeFromSuperview:2:22: note: calls to instance method 'removeFromSuperview()' from outside of its actor context are implicitly asynchronous
1 | class NSView {
2 | @MainActor open func removeFromSuperview()}
  |                      |- note: calls to instance method 'removeFromSuperview()' from outside of its actor context are implicitly asynchronous
  |                      `- note: main actor isolation inferred from inheritance from class 'NSResponder'
3 |
/Users/admin/builder/spi-builder-workspace/Sources/SnapshotTestingHEIC/NSView.swift:42:26: warning: main actor-isolated property 'frame' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
40 |                     callback(image)
41 |                     views.forEach { $0.removeFromSuperview() }
42 |                     view.frame.size = initialSize
   |                          `- warning: main actor-isolated property 'frame' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
43 |                 }
44 |             }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSView.h:129:18: note: mutation of this property is only permitted within the actor
127 | - (void)setFrameOrigin:(NSPoint)newOrigin;
128 | - (void)setFrameSize:(NSSize)newSize;
129 | @property NSRect frame;
    |                  `- note: mutation of this property is only permitted within the actor
130 | @property CGFloat frameRotation;
131 | @property CGFloat frameCenterRotation API_AVAILABLE(macos(10.5));
/Users/admin/builder/spi-builder-workspace/Sources/SnapshotTestingHEIC/NSView.swift:37:26: warning: sending 'bitmapRep' risks causing data races; this is an error in the Swift 6 language mode
35 |                 addImagesForRenderedViews(view).sequence().run { views in
36 |                     let bitmapRep = view.bitmapImageRepForCachingDisplay(in: view.bounds)!
37 |                     view.cacheDisplay(in: view.bounds, to: bitmapRep)
   |                          |- warning: sending 'bitmapRep' risks causing data races; this is an error in the Swift 6 language mode
   |                          `- note: sending 'bitmapRep' to main actor-isolated instance method 'cacheDisplay(in:to:)' risks causing data races between main actor-isolated and local nonisolated uses
38 |                     let image = NSImage(size: view.bounds.size)
39 |                     image.addRepresentation(bitmapRep)
   |                           `- note: access can happen concurrently
40 |                     callback(image)
41 |                     views.forEach { $0.removeFromSuperview() }
[45/50] Compiling SnapshotTestingHEIC UIImage.swift
/Users/admin/builder/spi-builder-workspace/Sources/SnapshotTestingHEIC/UIImage.swift:252:16: warning: static property 'device' is not concurrency-safe because non-'Sendable' type '(any MTLDevice)?' may have shared mutable state; this is an error in the Swift 6 language mode
250 | final class ThresholdImageProcessorKernel: CIImageProcessorKernel {
251 |     static let inputThresholdKey = "thresholdValue"
252 |     static let device = MTLCreateSystemDefaultDevice()
    |                `- warning: static property 'device' is not concurrency-safe because non-'Sendable' type '(any MTLDevice)?' may have shared mutable state; this is an error in the Swift 6 language mode
253 |
254 |     override class func process(with inputs: [CIImageProcessorInput]?, arguments: [String: Any]?, output: CIImageProcessorOutput) throws {
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/Metal.framework/Headers/MTLDevice.h:434:11: note: protocol 'MTLDevice' does not conform to the 'Sendable' protocol
 432 |  */
 433 | API_AVAILABLE(macos(10.11), ios(8.0))
 434 | @protocol MTLDevice <NSObject>
     |           `- note: protocol 'MTLDevice' does not conform to the 'Sendable' protocol
 435 |
 436 | /*!
/Users/admin/builder/spi-builder-workspace/Sources/SnapshotTestingHEIC/UIImage.swift:200:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Metal'
198 |
199 | #if os(iOS) || os(tvOS) || os(macOS)
200 | import CoreImage.CIKernel
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Metal'
201 | import MetalPerformanceShaders
202 |
    :
250 | final class ThresholdImageProcessorKernel: CIImageProcessorKernel {
251 |     static let inputThresholdKey = "thresholdValue"
252 |     static let device = MTLCreateSystemDefaultDevice()
    |                |- note: add '@MainActor' to make static property 'device' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
253 |
254 |     override class func process(with inputs: [CIImageProcessorInput]?, arguments: [String: Any]?, output: CIImageProcessorOutput) throws {
[46/50] Compiling SnapshotTestingHEIC SwiftUIView.swift
[47/50] Compiling SnapshotTestingHEIC UIViewController.swift
[48/50] Compiling SnapshotTestingHEIC CompressionQuality.swift
[49/50] Compiling SnapshotTestingHEIC NSImage+HEIC.swift
[50/50] Emitting module SnapshotTestingHEIC
/Users/admin/builder/spi-builder-workspace/Sources/SnapshotTestingHEIC/NSImage.swift:8:16: warning: static property 'imageHEIC' is not concurrency-safe because non-'Sendable' type 'Diffing<NSImage>' may have shared mutable state; this is an error in the Swift 6 language mode
  6 | public extension Diffing where Value == NSImage {
  7 |     /// A pixel-diffing strategy for NSImage's which requires a 100% match.
  8 |     static let imageHEIC = Diffing.imageHEIC(precision: 1, compressionQuality: .lossless)
    |                `- warning: static property 'imageHEIC' is not concurrency-safe because non-'Sendable' type 'Diffing<NSImage>' may have shared mutable state; this is an error in the Swift 6 language mode
  9 |
 10 |     /// A pixel-diffing strategy for NSImage that allows customizing how precise the matching must be.
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-snapshot-testing/Sources/SnapshotTesting/Diffing.swift:5:15: note: generic struct 'Diffing' does not conform to the 'Sendable' protocol
 3 |
 4 | /// The ability to compare `Value`s and convert them to and from `Data`.
 5 | public struct Diffing<Value> {
   |               `- note: generic struct 'Diffing' does not conform to the 'Sendable' protocol
 6 |   /// Converts a value _to_ data.
 7 |   public var toData: (Value) -> Data
/Users/admin/builder/spi-builder-workspace/Sources/SnapshotTestingHEIC/NSImage.swift:4:11: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'SnapshotTesting'
  2 | import Cocoa
  3 | import XCTest
  4 | @testable import SnapshotTesting
    |           `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'SnapshotTesting'
  5 |
  6 | public extension Diffing where Value == NSImage {
  7 |     /// A pixel-diffing strategy for NSImage's which requires a 100% match.
  8 |     static let imageHEIC = Diffing.imageHEIC(precision: 1, compressionQuality: .lossless)
    |                |- note: add '@MainActor' to make static property 'imageHEIC' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  9 |
 10 |     /// A pixel-diffing strategy for NSImage that allows customizing how precise the matching must be.
/Users/admin/builder/spi-builder-workspace/Sources/SnapshotTestingHEIC/UIImage.swift:252:16: warning: static property 'device' is not concurrency-safe because non-'Sendable' type '(any MTLDevice)?' may have shared mutable state; this is an error in the Swift 6 language mode
250 | final class ThresholdImageProcessorKernel: CIImageProcessorKernel {
251 |     static let inputThresholdKey = "thresholdValue"
252 |     static let device = MTLCreateSystemDefaultDevice()
    |                `- warning: static property 'device' is not concurrency-safe because non-'Sendable' type '(any MTLDevice)?' may have shared mutable state; this is an error in the Swift 6 language mode
253 |
254 |     override class func process(with inputs: [CIImageProcessorInput]?, arguments: [String: Any]?, output: CIImageProcessorOutput) throws {
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/Metal.framework/Headers/MTLDevice.h:434:11: note: protocol 'MTLDevice' does not conform to the 'Sendable' protocol
 432 |  */
 433 | API_AVAILABLE(macos(10.11), ios(8.0))
 434 | @protocol MTLDevice <NSObject>
     |           `- note: protocol 'MTLDevice' does not conform to the 'Sendable' protocol
 435 |
 436 | /*!
/Users/admin/builder/spi-builder-workspace/Sources/SnapshotTestingHEIC/UIImage.swift:200:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Metal'
198 |
199 | #if os(iOS) || os(tvOS) || os(macOS)
200 | import CoreImage.CIKernel
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Metal'
201 | import MetalPerformanceShaders
202 |
    :
250 | final class ThresholdImageProcessorKernel: CIImageProcessorKernel {
251 |     static let inputThresholdKey = "thresholdValue"
252 |     static let device = MTLCreateSystemDefaultDevice()
    |                |- note: add '@MainActor' to make static property 'device' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
253 |
254 |     override class func process(with inputs: [CIImageProcessorInput]?, arguments: [String: Any]?, output: CIImageProcessorOutput) throws {
Build complete! (26.94s)
Fetching https://github.com/pointfreeco/swift-snapshot-testing.git from cache
Fetched https://github.com/pointfreeco/swift-snapshot-testing.git from cache (1.89s)
Computing version for https://github.com/pointfreeco/swift-snapshot-testing.git
Computed https://github.com/pointfreeco/swift-snapshot-testing.git at 1.18.7 (2.64s)
Fetching https://github.com/pointfreeco/swift-custom-dump from cache
Fetching https://github.com/swiftlang/swift-syntax from cache
Fetched https://github.com/pointfreeco/swift-custom-dump from cache (1.01s)
Fetched https://github.com/swiftlang/swift-syntax from cache (1.85s)
Computing version for https://github.com/pointfreeco/swift-custom-dump
Computed https://github.com/pointfreeco/swift-custom-dump at 1.3.3 (2.40s)
Fetching https://github.com/pointfreeco/xctest-dynamic-overlay from cache
Fetched https://github.com/pointfreeco/xctest-dynamic-overlay from cache (0.77s)
Computing version for https://github.com/swiftlang/swift-syntax
Computed https://github.com/swiftlang/swift-syntax at 602.0.0 (1.50s)
Computing version for https://github.com/pointfreeco/xctest-dynamic-overlay
Computed https://github.com/pointfreeco/xctest-dynamic-overlay at 1.7.0 (0.51s)
Creating working copy for https://github.com/pointfreeco/swift-snapshot-testing.git
Working copy of https://github.com/pointfreeco/swift-snapshot-testing.git resolved at 1.18.7
Creating working copy for https://github.com/pointfreeco/swift-custom-dump
Working copy of https://github.com/pointfreeco/swift-custom-dump resolved at 1.3.3
Creating working copy for https://github.com/pointfreeco/xctest-dynamic-overlay
Working copy of https://github.com/pointfreeco/xctest-dynamic-overlay resolved at 1.7.0
Creating working copy for https://github.com/swiftlang/swift-syntax
Working copy of https://github.com/swiftlang/swift-syntax resolved at 602.0.0
Build complete.
{
  "dependencies" : [
    {
      "identity" : "swift-snapshot-testing",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.18.7",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/pointfreeco/swift-snapshot-testing.git"
    }
  ],
  "manifest_display_name" : "SnapshotTestingHEIC",
  "name" : "SnapshotTestingHEIC",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "13.0"
    },
    {
      "name" : "macos",
      "version" : "10.15"
    },
    {
      "name" : "tvos",
      "version" : "13.0"
    }
  ],
  "products" : [
    {
      "name" : "SnapshotTestingHEIC",
      "targets" : [
        "SnapshotTestingHEIC"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "SnapshotTestingHEICTests",
      "module_type" : "SwiftTarget",
      "name" : "SnapshotTestingHEICTests",
      "path" : "Tests/SnapshotTestingHEICTests",
      "sources" : [
        "SnapshotTestingHEICTests.swift",
        "SwiftUIView.swift",
        "TestViewController.swift"
      ],
      "target_dependencies" : [
        "SnapshotTestingHEIC"
      ],
      "type" : "test"
    },
    {
      "c99name" : "SnapshotTestingHEIC",
      "module_type" : "SwiftTarget",
      "name" : "SnapshotTestingHEIC",
      "path" : "Sources/SnapshotTestingHEIC",
      "product_dependencies" : [
        "SnapshotTesting"
      ],
      "product_memberships" : [
        "SnapshotTestingHEIC"
      ],
      "sources" : [
        "HEIC/CompressionQuality.swift",
        "HEIC/NSImage+HEIC.swift",
        "HEIC/UIImage+HEIC.swift",
        "ImageComparisonHelpers.swift",
        "NSImage.swift",
        "NSView.swift",
        "NSViewController.swift",
        "SwiftUIView.swift",
        "UIImage.swift",
        "UIView.swift",
        "UIViewController.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.2"
}
Done.