Build Information
Successful build of Wave, reference 0.3.4 (72f468), with Swift 6.1 for macOS (SPM) on 25 Mar 2026 15:42:28 UTC.
Swift 6 data race errors: 6
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCapturesBuild Log
========================================
RunAll
========================================
Builder version: 4.69.2
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/jtrivedi/Wave.git
Reference: 0.3.4
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/jtrivedi/Wave
* tag 0.3.4 -> FETCH_HEAD
HEAD is now at 72f4688 Update generate_docs.sh
Cloned https://github.com/jtrivedi/Wave.git
Revision (git rev-parse @):
72f4688be3cfd3b56fcc76f51bf2a59dfece017e
SUCCESS checkout https://github.com/jtrivedi/Wave.git at 0.3.4
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.1
Building package at path: $PWD
https://github.com/jtrivedi/Wave.git
https://github.com/jtrivedi/Wave.git
{
"dependencies" : [
],
"manifest_display_name" : "Wave",
"name" : "Wave",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "13.0"
},
{
"name" : "macos",
"version" : "10.12"
}
],
"products" : [
{
"name" : "Wave",
"targets" : [
"Wave"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "WaveTests",
"module_type" : "SwiftTarget",
"name" : "WaveTests",
"path" : "Tests/WaveTests",
"sources" : [
"AnimatableCALayerPropertyTests.swift",
"AnimatableUIViewPropertyTests.swift",
"SpringTests.swift",
"TestUtilities.swift"
],
"target_dependencies" : [
"Wave"
],
"type" : "test"
},
{
"c99name" : "Wave",
"module_type" : "SwiftTarget",
"name" : "Wave",
"path" : "Sources/Wave",
"product_memberships" : [
"Wave"
],
"sources" : [
"AnimatableCALayerProperties.swift",
"AnimatableUIViewProperties.swift",
"AnimationMode.swift",
"AnimatorState.swift",
"Extensions/CGFloat+Extensions.swift",
"Extensions/CGPoint+Extensions.swift",
"Extensions/CGRect+Extensions.swift",
"Extensions/CGSize+Extensions.swift",
"Extensions/Color+Extensions.swift",
"Internal/AnimationController.swift",
"Internal/AnimatorProviding.swift",
"Internal/CALayer+LayerAnimator.swift",
"Internal/DisplayLinkProviding.swift",
"Internal/LayerAnimator+Implementation.swift",
"Internal/SpringInterpolatable.swift",
"Internal/UIView+ViewAnimator.swift",
"Internal/ViewAnimator+Implementation.swift",
"Spring.swift",
"SpringAnimator.swift",
"UIMathUtilities.swift",
"Wave.swift"
],
"type" : "library"
}
],
"tools_version" : "5.6"
}
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/2] Write sources
[1/2] Write swift-version-2F0A5646E1D333AE.txt
[3/22] Emitting module Wave
/Users/admin/builder/spi-builder-workspace/Sources/Wave/Internal/AnimationController.swift:22:16: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'AnimationController' may have shared mutable state; this is an error in the Swift 6 language mode
18 | #endif
19 |
20 | internal class AnimationController {
| `- note: class 'AnimationController' does not conform to the 'Sendable' protocol
21 |
22 | static let shared = AnimationController()
| |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'AnimationController' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
23 |
24 | private lazy var displayLinkProvider: DisplayLinkProvider = {
/Users/admin/builder/spi-builder-workspace/Sources/Wave/Internal/CALayer+LayerAnimator.swift:12:13: warning: var 'LayerAnimatorAssociatedObjectHandle' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
10 | import QuartzCore
11 |
12 | private var LayerAnimatorAssociatedObjectHandle: UInt8 = 1 << 4
| |- warning: var 'LayerAnimatorAssociatedObjectHandle' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'LayerAnimatorAssociatedObjectHandle' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make var 'LayerAnimatorAssociatedObjectHandle' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
13 | private var LayerAnimationsAssociatedObjectHandle: UInt8 = 1 << 5
14 |
/Users/admin/builder/spi-builder-workspace/Sources/Wave/Internal/CALayer+LayerAnimator.swift:13:13: warning: var 'LayerAnimationsAssociatedObjectHandle' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
11 |
12 | private var LayerAnimatorAssociatedObjectHandle: UInt8 = 1 << 4
13 | private var LayerAnimationsAssociatedObjectHandle: UInt8 = 1 << 5
| |- warning: var 'LayerAnimationsAssociatedObjectHandle' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'LayerAnimationsAssociatedObjectHandle' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make var 'LayerAnimationsAssociatedObjectHandle' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
14 |
15 | extension CALayer {
/Users/admin/builder/spi-builder-workspace/Sources/Wave/Spring.swift:120:23: warning: static property 'defaultInteractive' is not concurrency-safe because non-'Sendable' type 'Spring' may have shared mutable state; this is an error in the Swift 6 language mode
20 | Springs are created by providing a `dampingRatio` greater than zero, and _either_ a `response` or `stiffness` value. See the initializers ``init(dampingRatio:response:mass:)`` and ``init(dampingRatio:stiffness:mass:)`` for usage information.
21 | */
22 | public class Spring: Equatable {
| `- note: class 'Spring' does not conform to the 'Sendable' protocol
23 |
24 | // MARK: - Spring Properties
:
118 |
119 | /// A reasonable, slightly underdamped spring to use for interactive animations (like dragging an item around).
120 | static public let defaultInteractive = Spring(dampingRatio: 0.8, response: 0.20)
| |- warning: static property 'defaultInteractive' is not concurrency-safe because non-'Sendable' type 'Spring' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'defaultInteractive' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
121 |
122 | /// A reasonable, critically damped spring to use for non-interactive animations.
/Users/admin/builder/spi-builder-workspace/Sources/Wave/Spring.swift:123:23: warning: static property 'defaultAnimated' is not concurrency-safe because non-'Sendable' type 'Spring' may have shared mutable state; this is an error in the Swift 6 language mode
20 | Springs are created by providing a `dampingRatio` greater than zero, and _either_ a `response` or `stiffness` value. See the initializers ``init(dampingRatio:response:mass:)`` and ``init(dampingRatio:stiffness:mass:)`` for usage information.
21 | */
22 | public class Spring: Equatable {
| `- note: class 'Spring' does not conform to the 'Sendable' protocol
23 |
24 | // MARK: - Spring Properties
:
121 |
122 | /// A reasonable, critically damped spring to use for non-interactive animations.
123 | static public let defaultAnimated = Spring(dampingRatio: 1.0, response: 0.82)
| |- warning: static property 'defaultAnimated' is not concurrency-safe because non-'Sendable' type 'Spring' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'defaultAnimated' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
124 |
125 | /// A placeholder spring to use when using the `nonAnimated` mode. See `AnimationMode` for more info.
/Users/admin/builder/spi-builder-workspace/Sources/Wave/Spring.swift:126:23: warning: static property 'defaultNonAnimated' is not concurrency-safe because non-'Sendable' type 'Spring' may have shared mutable state; this is an error in the Swift 6 language mode
20 | Springs are created by providing a `dampingRatio` greater than zero, and _either_ a `response` or `stiffness` value. See the initializers ``init(dampingRatio:response:mass:)`` and ``init(dampingRatio:stiffness:mass:)`` for usage information.
21 | */
22 | public class Spring: Equatable {
| `- note: class 'Spring' does not conform to the 'Sendable' protocol
23 |
24 | // MARK: - Spring Properties
:
124 |
125 | /// A placeholder spring to use when using the `nonAnimated` mode. See `AnimationMode` for more info.
126 | static public let defaultNonAnimated = Spring(dampingRatio: 1.0, response: 0.0)
| |- warning: static property 'defaultNonAnimated' is not concurrency-safe because non-'Sendable' type 'Spring' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'defaultNonAnimated' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
127 |
128 | // MARK: - Equatable
[4/24] Compiling Wave UIMathUtilities.swift
[5/24] Compiling Wave Wave.swift
[6/24] Compiling Wave UIView+ViewAnimator.swift
[7/24] Compiling Wave ViewAnimator+Implementation.swift
[8/24] Compiling Wave Spring.swift
/Users/admin/builder/spi-builder-workspace/Sources/Wave/Spring.swift:120:23: warning: static property 'defaultInteractive' is not concurrency-safe because non-'Sendable' type 'Spring' may have shared mutable state; this is an error in the Swift 6 language mode
20 | Springs are created by providing a `dampingRatio` greater than zero, and _either_ a `response` or `stiffness` value. See the initializers ``init(dampingRatio:response:mass:)`` and ``init(dampingRatio:stiffness:mass:)`` for usage information.
21 | */
22 | public class Spring: Equatable {
| `- note: class 'Spring' does not conform to the 'Sendable' protocol
23 |
24 | // MARK: - Spring Properties
:
118 |
119 | /// A reasonable, slightly underdamped spring to use for interactive animations (like dragging an item around).
120 | static public let defaultInteractive = Spring(dampingRatio: 0.8, response: 0.20)
| |- warning: static property 'defaultInteractive' is not concurrency-safe because non-'Sendable' type 'Spring' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'defaultInteractive' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
121 |
122 | /// A reasonable, critically damped spring to use for non-interactive animations.
/Users/admin/builder/spi-builder-workspace/Sources/Wave/Spring.swift:123:23: warning: static property 'defaultAnimated' is not concurrency-safe because non-'Sendable' type 'Spring' may have shared mutable state; this is an error in the Swift 6 language mode
20 | Springs are created by providing a `dampingRatio` greater than zero, and _either_ a `response` or `stiffness` value. See the initializers ``init(dampingRatio:response:mass:)`` and ``init(dampingRatio:stiffness:mass:)`` for usage information.
21 | */
22 | public class Spring: Equatable {
| `- note: class 'Spring' does not conform to the 'Sendable' protocol
23 |
24 | // MARK: - Spring Properties
:
121 |
122 | /// A reasonable, critically damped spring to use for non-interactive animations.
123 | static public let defaultAnimated = Spring(dampingRatio: 1.0, response: 0.82)
| |- warning: static property 'defaultAnimated' is not concurrency-safe because non-'Sendable' type 'Spring' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'defaultAnimated' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
124 |
125 | /// A placeholder spring to use when using the `nonAnimated` mode. See `AnimationMode` for more info.
/Users/admin/builder/spi-builder-workspace/Sources/Wave/Spring.swift:126:23: warning: static property 'defaultNonAnimated' is not concurrency-safe because non-'Sendable' type 'Spring' may have shared mutable state; this is an error in the Swift 6 language mode
20 | Springs are created by providing a `dampingRatio` greater than zero, and _either_ a `response` or `stiffness` value. See the initializers ``init(dampingRatio:response:mass:)`` and ``init(dampingRatio:stiffness:mass:)`` for usage information.
21 | */
22 | public class Spring: Equatable {
| `- note: class 'Spring' does not conform to the 'Sendable' protocol
23 |
24 | // MARK: - Spring Properties
:
124 |
125 | /// A placeholder spring to use when using the `nonAnimated` mode. See `AnimationMode` for more info.
126 | static public let defaultNonAnimated = Spring(dampingRatio: 1.0, response: 0.0)
| |- warning: static property 'defaultNonAnimated' is not concurrency-safe because non-'Sendable' type 'Spring' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'defaultNonAnimated' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
127 |
128 | // MARK: - Equatable
[9/24] Compiling Wave SpringAnimator.swift
/Users/admin/builder/spi-builder-workspace/Sources/Wave/Spring.swift:120:23: warning: static property 'defaultInteractive' is not concurrency-safe because non-'Sendable' type 'Spring' may have shared mutable state; this is an error in the Swift 6 language mode
20 | Springs are created by providing a `dampingRatio` greater than zero, and _either_ a `response` or `stiffness` value. See the initializers ``init(dampingRatio:response:mass:)`` and ``init(dampingRatio:stiffness:mass:)`` for usage information.
21 | */
22 | public class Spring: Equatable {
| `- note: class 'Spring' does not conform to the 'Sendable' protocol
23 |
24 | // MARK: - Spring Properties
:
118 |
119 | /// A reasonable, slightly underdamped spring to use for interactive animations (like dragging an item around).
120 | static public let defaultInteractive = Spring(dampingRatio: 0.8, response: 0.20)
| |- warning: static property 'defaultInteractive' is not concurrency-safe because non-'Sendable' type 'Spring' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'defaultInteractive' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
121 |
122 | /// A reasonable, critically damped spring to use for non-interactive animations.
/Users/admin/builder/spi-builder-workspace/Sources/Wave/Spring.swift:123:23: warning: static property 'defaultAnimated' is not concurrency-safe because non-'Sendable' type 'Spring' may have shared mutable state; this is an error in the Swift 6 language mode
20 | Springs are created by providing a `dampingRatio` greater than zero, and _either_ a `response` or `stiffness` value. See the initializers ``init(dampingRatio:response:mass:)`` and ``init(dampingRatio:stiffness:mass:)`` for usage information.
21 | */
22 | public class Spring: Equatable {
| `- note: class 'Spring' does not conform to the 'Sendable' protocol
23 |
24 | // MARK: - Spring Properties
:
121 |
122 | /// A reasonable, critically damped spring to use for non-interactive animations.
123 | static public let defaultAnimated = Spring(dampingRatio: 1.0, response: 0.82)
| |- warning: static property 'defaultAnimated' is not concurrency-safe because non-'Sendable' type 'Spring' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'defaultAnimated' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
124 |
125 | /// A placeholder spring to use when using the `nonAnimated` mode. See `AnimationMode` for more info.
/Users/admin/builder/spi-builder-workspace/Sources/Wave/Spring.swift:126:23: warning: static property 'defaultNonAnimated' is not concurrency-safe because non-'Sendable' type 'Spring' may have shared mutable state; this is an error in the Swift 6 language mode
20 | Springs are created by providing a `dampingRatio` greater than zero, and _either_ a `response` or `stiffness` value. See the initializers ``init(dampingRatio:response:mass:)`` and ``init(dampingRatio:stiffness:mass:)`` for usage information.
21 | */
22 | public class Spring: Equatable {
| `- note: class 'Spring' does not conform to the 'Sendable' protocol
23 |
24 | // MARK: - Spring Properties
:
124 |
125 | /// A placeholder spring to use when using the `nonAnimated` mode. See `AnimationMode` for more info.
126 | static public let defaultNonAnimated = Spring(dampingRatio: 1.0, response: 0.0)
| |- warning: static property 'defaultNonAnimated' is not concurrency-safe because non-'Sendable' type 'Spring' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'defaultNonAnimated' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
127 |
128 | // MARK: - Equatable
[10/24] Compiling Wave LayerAnimator+Implementation.swift
[11/24] Compiling Wave SpringInterpolatable.swift
[12/24] Compiling Wave CGSize+Extensions.swift
[13/24] Compiling Wave Color+Extensions.swift
[14/24] Compiling Wave AnimationController.swift
/Users/admin/builder/spi-builder-workspace/Sources/Wave/Internal/AnimationController.swift:22:16: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'AnimationController' may have shared mutable state; this is an error in the Swift 6 language mode
18 | #endif
19 |
20 | internal class AnimationController {
| `- note: class 'AnimationController' does not conform to the 'Sendable' protocol
21 |
22 | static let shared = AnimationController()
| |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'AnimationController' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
23 |
24 | private lazy var displayLinkProvider: DisplayLinkProvider = {
[15/24] Compiling Wave AnimatorProviding.swift
/Users/admin/builder/spi-builder-workspace/Sources/Wave/Internal/AnimationController.swift:22:16: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'AnimationController' may have shared mutable state; this is an error in the Swift 6 language mode
18 | #endif
19 |
20 | internal class AnimationController {
| `- note: class 'AnimationController' does not conform to the 'Sendable' protocol
21 |
22 | static let shared = AnimationController()
| |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'AnimationController' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
23 |
24 | private lazy var displayLinkProvider: DisplayLinkProvider = {
[16/24] Compiling Wave CALayer+LayerAnimator.swift
/Users/admin/builder/spi-builder-workspace/Sources/Wave/Internal/CALayer+LayerAnimator.swift:12:13: warning: var 'LayerAnimatorAssociatedObjectHandle' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
10 | import QuartzCore
11 |
12 | private var LayerAnimatorAssociatedObjectHandle: UInt8 = 1 << 4
| |- warning: var 'LayerAnimatorAssociatedObjectHandle' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'LayerAnimatorAssociatedObjectHandle' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make var 'LayerAnimatorAssociatedObjectHandle' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
13 | private var LayerAnimationsAssociatedObjectHandle: UInt8 = 1 << 5
14 |
/Users/admin/builder/spi-builder-workspace/Sources/Wave/Internal/CALayer+LayerAnimator.swift:13:13: warning: var 'LayerAnimationsAssociatedObjectHandle' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
11 |
12 | private var LayerAnimatorAssociatedObjectHandle: UInt8 = 1 << 4
13 | private var LayerAnimationsAssociatedObjectHandle: UInt8 = 1 << 5
| |- warning: var 'LayerAnimationsAssociatedObjectHandle' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'LayerAnimationsAssociatedObjectHandle' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make var 'LayerAnimationsAssociatedObjectHandle' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
14 |
15 | extension CALayer {
/Users/admin/builder/spi-builder-workspace/Sources/Wave/Internal/DisplayLinkProviding.swift:100:17: warning: capture of 'self' with non-sendable type 'CVDisplayLinkProvider?' in a '@Sendable' closure
75 | import CoreVideo
76 |
77 | class CVDisplayLinkProvider: DisplayLinkProviding {
| `- note: class 'CVDisplayLinkProvider' does not conform to the 'Sendable' protocol
78 |
79 | let frameCallback: DisplayLinkCallback
:
98 | CVDisplayLinkSetOutputHandler(displayLinkProvider, { [weak self] (_, inNow, inOutputTime, _, _) -> CVReturn in
99 | let dt = inOutputTime.pointee.timeInterval - inNow.pointee.timeInterval
100 | self?.frameCallback(dt)
| `- warning: capture of 'self' with non-sendable type 'CVDisplayLinkProvider?' in a '@Sendable' closure
101 | return kCVReturnSuccess
102 | })
[17/24] Compiling Wave DisplayLinkProviding.swift
/Users/admin/builder/spi-builder-workspace/Sources/Wave/Internal/CALayer+LayerAnimator.swift:12:13: warning: var 'LayerAnimatorAssociatedObjectHandle' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
10 | import QuartzCore
11 |
12 | private var LayerAnimatorAssociatedObjectHandle: UInt8 = 1 << 4
| |- warning: var 'LayerAnimatorAssociatedObjectHandle' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'LayerAnimatorAssociatedObjectHandle' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make var 'LayerAnimatorAssociatedObjectHandle' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
13 | private var LayerAnimationsAssociatedObjectHandle: UInt8 = 1 << 5
14 |
/Users/admin/builder/spi-builder-workspace/Sources/Wave/Internal/CALayer+LayerAnimator.swift:13:13: warning: var 'LayerAnimationsAssociatedObjectHandle' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
11 |
12 | private var LayerAnimatorAssociatedObjectHandle: UInt8 = 1 << 4
13 | private var LayerAnimationsAssociatedObjectHandle: UInt8 = 1 << 5
| |- warning: var 'LayerAnimationsAssociatedObjectHandle' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'LayerAnimationsAssociatedObjectHandle' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make var 'LayerAnimationsAssociatedObjectHandle' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
14 |
15 | extension CALayer {
/Users/admin/builder/spi-builder-workspace/Sources/Wave/Internal/DisplayLinkProviding.swift:100:17: warning: capture of 'self' with non-sendable type 'CVDisplayLinkProvider?' in a '@Sendable' closure
75 | import CoreVideo
76 |
77 | class CVDisplayLinkProvider: DisplayLinkProviding {
| `- note: class 'CVDisplayLinkProvider' does not conform to the 'Sendable' protocol
78 |
79 | let frameCallback: DisplayLinkCallback
:
98 | CVDisplayLinkSetOutputHandler(displayLinkProvider, { [weak self] (_, inNow, inOutputTime, _, _) -> CVReturn in
99 | let dt = inOutputTime.pointee.timeInterval - inNow.pointee.timeInterval
100 | self?.frameCallback(dt)
| `- warning: capture of 'self' with non-sendable type 'CVDisplayLinkProvider?' in a '@Sendable' closure
101 | return kCVReturnSuccess
102 | })
[18/24] Compiling Wave CGPoint+Extensions.swift
[19/24] Compiling Wave CGRect+Extensions.swift
[20/24] Compiling Wave AnimatableCALayerProperties.swift
[21/24] Compiling Wave AnimatableUIViewProperties.swift
[22/24] Compiling Wave AnimationMode.swift
[23/24] Compiling Wave AnimatorState.swift
[24/24] Compiling Wave CGFloat+Extensions.swift
Build complete! (7.04s)
Build complete.
{
"dependencies" : [
],
"manifest_display_name" : "Wave",
"name" : "Wave",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "13.0"
},
{
"name" : "macos",
"version" : "10.12"
}
],
"products" : [
{
"name" : "Wave",
"targets" : [
"Wave"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "WaveTests",
"module_type" : "SwiftTarget",
"name" : "WaveTests",
"path" : "Tests/WaveTests",
"sources" : [
"AnimatableCALayerPropertyTests.swift",
"AnimatableUIViewPropertyTests.swift",
"SpringTests.swift",
"TestUtilities.swift"
],
"target_dependencies" : [
"Wave"
],
"type" : "test"
},
{
"c99name" : "Wave",
"module_type" : "SwiftTarget",
"name" : "Wave",
"path" : "Sources/Wave",
"product_memberships" : [
"Wave"
],
"sources" : [
"AnimatableCALayerProperties.swift",
"AnimatableUIViewProperties.swift",
"AnimationMode.swift",
"AnimatorState.swift",
"Extensions/CGFloat+Extensions.swift",
"Extensions/CGPoint+Extensions.swift",
"Extensions/CGRect+Extensions.swift",
"Extensions/CGSize+Extensions.swift",
"Extensions/Color+Extensions.swift",
"Internal/AnimationController.swift",
"Internal/AnimatorProviding.swift",
"Internal/CALayer+LayerAnimator.swift",
"Internal/DisplayLinkProviding.swift",
"Internal/LayerAnimator+Implementation.swift",
"Internal/SpringInterpolatable.swift",
"Internal/UIView+ViewAnimator.swift",
"Internal/ViewAnimator+Implementation.swift",
"Spring.swift",
"SpringAnimator.swift",
"UIMathUtilities.swift",
"Wave.swift"
],
"type" : "library"
}
],
"tools_version" : "5.6"
}
Done.