Build Information
Successful build of SwiftDithering, reference 1.4.0 (18605f
), with Swift 6.1 for macOS (SPM) on 29 Apr 2025 06:37:09 UTC.
Swift 6 data race errors: 1
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures
Build Log
========================================
RunAll
========================================
Builder version: 4.61.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/lugalu/SwiftDithering.git
Reference: 1.4.0
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/lugalu/SwiftDithering
* tag 1.4.0 -> FETCH_HEAD
HEAD is now at 18605f4 Updated Readme
Cloned https://github.com/lugalu/SwiftDithering.git
Revision (git rev-parse @):
18605f4eb2dae26f3062029cbb36603741507838
SUCCESS checkout https://github.com/lugalu/SwiftDithering.git at 1.4.0
========================================
ResolveProductDependencies
========================================
Resolving dependencies ...
{
"identity": ".resolve-product-dependencies",
"name": "resolve-dependencies",
"url": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
"dependencies": [
{
"identity": "swiftdithering",
"name": "SwiftDithering",
"url": "https://github.com/lugalu/SwiftDithering.git",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/SwiftDithering",
"dependencies": [
]
}
]
}
Fetching https://github.com/lugalu/SwiftDithering.git
[1/814] Fetching swiftdithering
Fetched https://github.com/lugalu/SwiftDithering.git from cache (1.84s)
Creating working copy for https://github.com/lugalu/SwiftDithering.git
Working copy of https://github.com/lugalu/SwiftDithering.git resolved at 1.4.0 (18605f4)
warning: '.resolve-product-dependencies': dependency 'swiftdithering' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.1
Building package at path: $PWD
https://github.com/lugalu/SwiftDithering.git
https://github.com/lugalu/SwiftDithering.git
{
"dependencies" : [
],
"manifest_display_name" : "SwiftDithering",
"name" : "SwiftDithering",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "13.0"
},
{
"name" : "macos",
"version" : "10.15"
}
],
"products" : [
{
"name" : "SwiftDithering",
"targets" : [
"SwiftDithering"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "SwiftDitheringTests",
"module_type" : "SwiftTarget",
"name" : "SwiftDitheringTests",
"path" : "Tests/SwiftDitheringTests",
"sources" : [
"DownsamplersTestsCases.swift",
"GeneralMathTests.swift",
"QuantizationTestCases.swift"
],
"target_dependencies" : [
"SwiftDithering"
],
"type" : "test"
},
{
"c99name" : "SwiftDithering",
"module_type" : "SwiftTarget",
"name" : "SwiftDithering",
"path" : "Sources/SwiftDithering",
"product_memberships" : [
"SwiftDithering"
],
"resources" : [
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/SwiftDithering/Resources/balancedCenteredPoint6x6.png",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/SwiftDithering/Resources/bayer8x8.png",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/SwiftDithering/Resources/centralWhitePoint6x6.png",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/SwiftDithering/Resources/clusteredDots6x6.png",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/SwiftDithering/Resources/diagonalOrdered8x8.png",
"rule" : {
"process" : {
}
}
}
],
"sources" : [
"CIFilter/BayerMatrix.swift",
"CIFilter/Ordered.swift",
"CIFilter/OrderedKernel.swift",
"Commons/ColorSpace.swift",
"Commons/Creators.swift",
"Commons/Downsamplers.swift",
"Commons/GeneralMath.swift",
"Commons/ImageErrors.swift",
"Commons/ImageLoopers.swift",
"Commons/QuantizationMath.swift",
"Dithers/Bayer.swift",
"Dithers/ErrorDifusion.swift",
"Dithers/FloydSteinberg.swift",
"Dithers/OrderedDithering.swift",
"Dithers/Stucki.swift",
"Dithers/Thresholding.swift"
],
"type" : "library"
}
],
"tools_version" : "5.7.1"
}
warning: 'spi-builder-workspace': Invalid Resource 'Resources/bayer8x8.png': File not found.
warning: 'spi-builder-workspace': Invalid Resource 'Resources/balancedCenteredPoint6x6.png': File not found.
warning: 'spi-builder-workspace': Invalid Resource 'Resources/centralWhitePoint6x6.png': File not found.
warning: 'spi-builder-workspace': Invalid Resource 'Resources/clusteredDots6x6.png': File not found.
warning: 'spi-builder-workspace': Invalid Resource 'Resources/diagonalOrdered8x8.png': File not found.
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/7] Write sources
[1/7] Copying centralWhitePoint6x6.png
[1/7] Copying balancedCenteredPoint6x6.png
[1/7] Copying diagonalOrdered8x8.png
[1/7] Copying bayer8x8.png
[2/7] Copying clusteredDots6x6.png
[6/7] Write swift-version-2F0A5646E1D333AE.txt
[8/24] Compiling SwiftDithering Bayer.swift
[9/24] Compiling SwiftDithering ErrorDifusion.swift
[10/24] Compiling SwiftDithering Thresholding.swift
[11/25] Compiling SwiftDithering resource_bundle_accessor.swift
[12/25] Compiling SwiftDithering Stucki.swift
[13/25] Compiling SwiftDithering FloydSteinberg.swift
[14/25] Compiling SwiftDithering OrderedDithering.swift
[15/25] Compiling SwiftDithering ImageLoopers.swift
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDithering/Commons/ImageLoopers.swift:37:13: warning: capture of 'content' with non-sendable type '(inout UnsafeMutablePointer<UInt8>, Int, Int) -> Void' in a '@Sendable' closure
35 | DispatchQueue.concurrentPerform(iterations: height) { y in
36 | DispatchQueue.concurrentPerform(iterations: width) { x in
37 | content(&imageData, x, y)
| |- warning: capture of 'content' with non-sendable type '(inout UnsafeMutablePointer<UInt8>, Int, Int) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
38 | }
39 | }
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDithering/Commons/ImageLoopers.swift:37:22: warning: capture of 'imageData' with non-sendable type 'UnsafeMutablePointer<UInt8>' in a '@Sendable' closure
35 | DispatchQueue.concurrentPerform(iterations: height) { y in
36 | DispatchQueue.concurrentPerform(iterations: width) { x in
37 | content(&imageData, x, y)
| `- warning: capture of 'imageData' with non-sendable type 'UnsafeMutablePointer<UInt8>' in a '@Sendable' closure
38 | }
39 | }
Swift.UnsafeMutablePointer:1:23: note: generic struct 'UnsafeMutablePointer' does not conform to the 'Sendable' protocol
1 | @frozen public struct UnsafeMutablePointer<Pointee> : Copyable where Pointee : ~Copyable {
| `- note: generic struct 'UnsafeMutablePointer' does not conform to the 'Sendable' protocol
2 | public let _rawValue: Builtin.RawPointer
3 | public init(_ _rawValue: Builtin.RawPointer)
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDithering/Commons/ImageLoopers.swift:37:13: warning: capture of 'content' with non-sendable type '(inout UnsafeMutablePointer<UInt8>, Int, Int) -> Void' in a '@Sendable' closure
35 | DispatchQueue.concurrentPerform(iterations: height) { y in
36 | DispatchQueue.concurrentPerform(iterations: width) { x in
37 | content(&imageData, x, y)
| |- warning: capture of 'content' with non-sendable type '(inout UnsafeMutablePointer<UInt8>, Int, Int) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
38 | }
39 | }
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDithering/Commons/ImageLoopers.swift:37:22: warning: capture of 'imageData' with non-sendable type 'UnsafeMutablePointer<UInt8>' in a '@Sendable' closure
35 | DispatchQueue.concurrentPerform(iterations: height) { y in
36 | DispatchQueue.concurrentPerform(iterations: width) { x in
37 | content(&imageData, x, y)
| `- warning: capture of 'imageData' with non-sendable type 'UnsafeMutablePointer<UInt8>' in a '@Sendable' closure
38 | }
39 | }
Swift.UnsafeMutablePointer:1:23: note: generic struct 'UnsafeMutablePointer' does not conform to the 'Sendable' protocol
1 | @frozen public struct UnsafeMutablePointer<Pointee> : Copyable where Pointee : ~Copyable {
| `- note: generic struct 'UnsafeMutablePointer' does not conform to the 'Sendable' protocol
2 | public let _rawValue: Builtin.RawPointer
3 | public init(_ _rawValue: Builtin.RawPointer)
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDithering/Commons/ImageLoopers.swift:37:22: warning: mutable capture of 'inout' parameter 'imageData' is not allowed in concurrently-executing code
35 | DispatchQueue.concurrentPerform(iterations: height) { y in
36 | DispatchQueue.concurrentPerform(iterations: width) { x in
37 | content(&imageData, x, y)
| `- warning: mutable capture of 'inout' parameter 'imageData' is not allowed in concurrently-executing code
38 | }
39 | }
[16/25] Compiling SwiftDithering QuantizationMath.swift
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDithering/Commons/ImageLoopers.swift:37:13: warning: capture of 'content' with non-sendable type '(inout UnsafeMutablePointer<UInt8>, Int, Int) -> Void' in a '@Sendable' closure
35 | DispatchQueue.concurrentPerform(iterations: height) { y in
36 | DispatchQueue.concurrentPerform(iterations: width) { x in
37 | content(&imageData, x, y)
| |- warning: capture of 'content' with non-sendable type '(inout UnsafeMutablePointer<UInt8>, Int, Int) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
38 | }
39 | }
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDithering/Commons/ImageLoopers.swift:37:22: warning: capture of 'imageData' with non-sendable type 'UnsafeMutablePointer<UInt8>' in a '@Sendable' closure
35 | DispatchQueue.concurrentPerform(iterations: height) { y in
36 | DispatchQueue.concurrentPerform(iterations: width) { x in
37 | content(&imageData, x, y)
| `- warning: capture of 'imageData' with non-sendable type 'UnsafeMutablePointer<UInt8>' in a '@Sendable' closure
38 | }
39 | }
Swift.UnsafeMutablePointer:1:23: note: generic struct 'UnsafeMutablePointer' does not conform to the 'Sendable' protocol
1 | @frozen public struct UnsafeMutablePointer<Pointee> : Copyable where Pointee : ~Copyable {
| `- note: generic struct 'UnsafeMutablePointer' does not conform to the 'Sendable' protocol
2 | public let _rawValue: Builtin.RawPointer
3 | public init(_ _rawValue: Builtin.RawPointer)
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDithering/Commons/ImageLoopers.swift:37:13: warning: capture of 'content' with non-sendable type '(inout UnsafeMutablePointer<UInt8>, Int, Int) -> Void' in a '@Sendable' closure
35 | DispatchQueue.concurrentPerform(iterations: height) { y in
36 | DispatchQueue.concurrentPerform(iterations: width) { x in
37 | content(&imageData, x, y)
| |- warning: capture of 'content' with non-sendable type '(inout UnsafeMutablePointer<UInt8>, Int, Int) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
38 | }
39 | }
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDithering/Commons/ImageLoopers.swift:37:22: warning: capture of 'imageData' with non-sendable type 'UnsafeMutablePointer<UInt8>' in a '@Sendable' closure
35 | DispatchQueue.concurrentPerform(iterations: height) { y in
36 | DispatchQueue.concurrentPerform(iterations: width) { x in
37 | content(&imageData, x, y)
| `- warning: capture of 'imageData' with non-sendable type 'UnsafeMutablePointer<UInt8>' in a '@Sendable' closure
38 | }
39 | }
Swift.UnsafeMutablePointer:1:23: note: generic struct 'UnsafeMutablePointer' does not conform to the 'Sendable' protocol
1 | @frozen public struct UnsafeMutablePointer<Pointee> : Copyable where Pointee : ~Copyable {
| `- note: generic struct 'UnsafeMutablePointer' does not conform to the 'Sendable' protocol
2 | public let _rawValue: Builtin.RawPointer
3 | public init(_ _rawValue: Builtin.RawPointer)
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDithering/Commons/ImageLoopers.swift:37:22: warning: mutable capture of 'inout' parameter 'imageData' is not allowed in concurrently-executing code
35 | DispatchQueue.concurrentPerform(iterations: height) { y in
36 | DispatchQueue.concurrentPerform(iterations: width) { x in
37 | content(&imageData, x, y)
| `- warning: mutable capture of 'inout' parameter 'imageData' is not allowed in concurrently-executing code
38 | }
39 | }
[17/25] Compiling SwiftDithering OrderedKernel.swift
[18/25] Compiling SwiftDithering ColorSpace.swift
[19/25] Compiling SwiftDithering Creators.swift
[20/25] Compiling SwiftDithering Downsamplers.swift
[21/25] Compiling SwiftDithering BayerMatrix.swift
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDithering/CIFilter/Ordered.swift:80:24: warning: static property 'kernel' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
78 | extension OrderedDithering {
79 |
80 | private static var kernel: CIKernel = {
| |- warning: static property 'kernel' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'kernel' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'kernel' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
81 | return CIKernel(source: bayerMatrixCalculation + orderedKernel)!
82 | }()
[22/25] Compiling SwiftDithering Ordered.swift
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDithering/CIFilter/Ordered.swift:80:24: warning: static property 'kernel' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
78 | extension OrderedDithering {
79 |
80 | private static var kernel: CIKernel = {
| |- warning: static property 'kernel' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'kernel' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'kernel' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
81 | return CIKernel(source: bayerMatrixCalculation + orderedKernel)!
82 | }()
[23/25] Emitting module SwiftDithering
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDithering/CIFilter/Ordered.swift:80:24: warning: static property 'kernel' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
78 | extension OrderedDithering {
79 |
80 | private static var kernel: CIKernel = {
| |- warning: static property 'kernel' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'kernel' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'kernel' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
81 | return CIKernel(source: bayerMatrixCalculation + orderedKernel)!
82 | }()
[24/25] Compiling SwiftDithering GeneralMath.swift
[25/25] Compiling SwiftDithering ImageErrors.swift
Build complete! (6.64s)
warning: 'spi-builder-workspace': Invalid Resource 'Resources/bayer8x8.png': File not found.
warning: 'spi-builder-workspace': Invalid Resource 'Resources/balancedCenteredPoint6x6.png': File not found.
warning: 'spi-builder-workspace': Invalid Resource 'Resources/centralWhitePoint6x6.png': File not found.
warning: 'spi-builder-workspace': Invalid Resource 'Resources/clusteredDots6x6.png': File not found.
warning: 'spi-builder-workspace': Invalid Resource 'Resources/diagonalOrdered8x8.png': File not found.
Build complete.
{
"dependencies" : [
],
"manifest_display_name" : "SwiftDithering",
"name" : "SwiftDithering",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "13.0"
},
{
"name" : "macos",
"version" : "10.15"
}
],
"products" : [
{
"name" : "SwiftDithering",
"targets" : [
"SwiftDithering"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "SwiftDitheringTests",
"module_type" : "SwiftTarget",
"name" : "SwiftDitheringTests",
"path" : "Tests/SwiftDitheringTests",
"sources" : [
"DownsamplersTestsCases.swift",
"GeneralMathTests.swift",
"QuantizationTestCases.swift"
],
"target_dependencies" : [
"SwiftDithering"
],
"type" : "test"
},
{
"c99name" : "SwiftDithering",
"module_type" : "SwiftTarget",
"name" : "SwiftDithering",
"path" : "Sources/SwiftDithering",
"product_memberships" : [
"SwiftDithering"
],
"resources" : [
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/SwiftDithering/Resources/balancedCenteredPoint6x6.png",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/SwiftDithering/Resources/bayer8x8.png",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/SwiftDithering/Resources/centralWhitePoint6x6.png",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/SwiftDithering/Resources/clusteredDots6x6.png",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/SwiftDithering/Resources/diagonalOrdered8x8.png",
"rule" : {
"process" : {
}
}
}
],
"sources" : [
"CIFilter/BayerMatrix.swift",
"CIFilter/Ordered.swift",
"CIFilter/OrderedKernel.swift",
"Commons/ColorSpace.swift",
"Commons/Creators.swift",
"Commons/Downsamplers.swift",
"Commons/GeneralMath.swift",
"Commons/ImageErrors.swift",
"Commons/ImageLoopers.swift",
"Commons/QuantizationMath.swift",
"Dithers/Bayer.swift",
"Dithers/ErrorDifusion.swift",
"Dithers/FloydSteinberg.swift",
"Dithers/OrderedDithering.swift",
"Dithers/Stucki.swift",
"Dithers/Thresholding.swift"
],
"type" : "library"
}
],
"tools_version" : "5.7.1"
}
warning: 'spi-builder-workspace': Invalid Resource 'Resources/bayer8x8.png': File not found.
warning: 'spi-builder-workspace': Invalid Resource 'Resources/balancedCenteredPoint6x6.png': File not found.
warning: 'spi-builder-workspace': Invalid Resource 'Resources/centralWhitePoint6x6.png': File not found.
warning: 'spi-builder-workspace': Invalid Resource 'Resources/clusteredDots6x6.png': File not found.
warning: 'spi-builder-workspace': Invalid Resource 'Resources/diagonalOrdered8x8.png': File not found.
Done.