Build Information
Successful build of DSFDragSlider with Swift 6.0 for macOS (SPM).
Swift 6 data race errors: 1
Build Command
env DEVELOPER_DIR=/Applications/Xcode-15.3.0.app xcrun --toolchain org.swift.600202405261a swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Build Log
========================================
RunAll
========================================
Builder version: 4.40.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/dagronf/DSFDragSlider.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/dagronf/DSFDragSlider
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at 9953590 Workaround for Xcode 14 SwiftUI breaking
Cloned https://github.com/dagronf/DSFDragSlider.git
Revision (git rev-parse @):
9953590dd1b35a1deeecfd564a7fe5e16aa7851c
SUCCESS checkout https://github.com/dagronf/DSFDragSlider.git at main
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.0
Building package at path: $workDir
https://github.com/dagronf/DSFDragSlider.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-15.3.0.app xcrun --toolchain org.swift.600202405261a swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Building for debugging...
[0/7] Write sources
[2/7] Write swift-version-6F35C1178C84523A.txt
[4/19] Compiling DSFAppearanceManager WeakBag.swift
[5/20] Compiling DSFAppearanceManager WeakBox.swift
[6/20] Compiling DSFAppearanceManager AutoplayAnimatedImages.swift
[7/20] Compiling DSFAppearanceManager DSFSimpleLock.swift
[8/20] Compiling DSFAppearanceManager NSAppearance+extensions.swift
[9/20] Compiling DSFAppearanceManager DSFDebounce.swift
[10/20] Emitting module DSFAppearanceManager
[11/20] Compiling DSFAppearanceManager DSFAppearanceManager+Listeners.swift
[12/20] Compiling DSFAppearanceManager NSWindow+Appearance.swift
[13/20] Compiling DSFAppearanceManager DSFAppearanceCache.swift
[14/20] Compiling DSFAppearanceManager DSFAppearanceManager+ChangeDetector.swift
[15/20] Compiling DSFAppearanceManager DSFAppearanceManager.swift
[16/20] Compiling DSFAppearanceManager NSView+Appearance.swift
[17/27] Compiling DSFDragSlider DSFDragSliderProtocol.swift
[18/27] Compiling DSFDragSlider DSFDragSlider.swift
/Users/admin/builder/spi-builder-workspace/Sources/DSFDragSlider/DSFDragSlider.swift:129:9: warning: call to main actor-isolated instance method 'removeGestureRecognizer' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
127 | deinit {
128 | if let r = self.recognizer {
129 | self.removeGestureRecognizer(r)
| `- warning: call to main actor-isolated instance method 'removeGestureRecognizer' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
130 | self.recognizer = nil
131 | }
AppKit.NSView:7:26: note: calls to instance method 'removeGestureRecognizer' from outside of its actor context are implicitly asynchronous
5 | open func addGestureRecognizer(_ gestureRecognizer: NSGestureRecognizer)
6 | @available(macOS 10.10, *)
7 | @MainActor open func removeGestureRecognizer(_ gestureRecognizer: NSGestureRecognizer)
| `- note: calls to instance method 'removeGestureRecognizer' from outside of its actor context are implicitly asynchronous
8 | }
[19/27] Compiling DSFDragSlider DSFKeyedPanGestureRecognizer.swift
[20/27] Compiling DSFDragSlider DSFDragSlider+private.swift
[21/27] Compiling DSFDragSlider NSGraphicsContext+extensions.swift
[22/27] Emitting module DSFDragSlider
/Users/admin/builder/spi-builder-workspace/Sources/DSFDragSlider/DSFDragSlider+SwiftUI.swift:148:5: warning: let 'DemoConfig' is not concurrency-safe because non-'Sendable' type 'DSFDragSliderUI.Configuration' may have shared mutable state; this is an error in the Swift 6 language mode
34 | public typealias NSViewType = DSFDragSlider
35 |
36 | public struct Configuration {
| `- note: consider making struct 'Configuration' conform to the 'Sendable' protocol
37 | let range: CGRect
38 | let deltaX: CGFloat
:
146 |
147 | @available(macOS 10.15, *)
148 | let DemoConfig = DSFDragSliderUI.Configuration(
| |- warning: let 'DemoConfig' is not concurrency-safe because non-'Sendable' type 'DSFDragSliderUI.Configuration' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'DemoConfig' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
149 | range: CGRect(x: -1000, y: -1000, width: 2000, height: 2000),
150 | deltaX: 1,
[23/27] Compiling DSFDragSlider DSFDragSlider+SwiftUI.swift
/Users/admin/builder/spi-builder-workspace/Sources/DSFDragSlider/DSFDragSlider+SwiftUI.swift:148:5: warning: let 'DemoConfig' is not concurrency-safe because non-'Sendable' type 'DSFDragSliderUI.Configuration' may have shared mutable state; this is an error in the Swift 6 language mode
34 | public typealias NSViewType = DSFDragSlider
35 |
36 | public struct Configuration {
| `- note: consider making struct 'Configuration' conform to the 'Sendable' protocol
37 | let range: CGRect
38 | let deltaX: CGFloat
:
146 |
147 | @available(macOS 10.15, *)
148 | let DemoConfig = DSFDragSliderUI.Configuration(
| |- warning: let 'DemoConfig' is not concurrency-safe because non-'Sendable' type 'DSFDragSliderUI.Configuration' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'DemoConfig' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
149 | range: CGRect(x: -1000, y: -1000, width: 2000, height: 2000),
150 | deltaX: 1,
/Users/admin/builder/spi-builder-workspace/Sources/DSFDragSlider/DSFDragSlider+SwiftUI.swift:104:20: warning: call to main actor-isolated initializer 'init()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
101 | }
102 |
103 | public func makeNSView(context: Context) -> DSFDragSlider {
| `- note: add '@MainActor' to make instance method 'makeNSView(context:)' part of global actor 'MainActor'
104 | let dragSlider = DSFDragSlider()
| `- warning: call to main actor-isolated initializer 'init()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
105 | dragSlider.isEnabled = self.isEnabled
106 | dragSlider.range = configuration.range
AppKit.NSView:354:35: note: calls to initializer 'init()' from outside of its actor context are implicitly asynchronous
352 | @available(macOS 10.14, *)
353 | open func viewDidChangeEffectiveAppearance()
354 | @MainActor public convenience init()
| `- note: calls to initializer 'init()' from outside of its actor context are implicitly asynchronous
355 | @available(macOS 10.5, *)
356 | open var animations: [NSAnimatablePropertyKey : Any] { get set }
/Users/admin/builder/spi-builder-workspace/Sources/DSFDragSlider/DSFDragSlider+SwiftUI.swift:105:14: warning: main actor-isolated property 'isEnabled' can not be mutated from a non-isolated context; this is an error in the Swift 6 language mode
101 | }
102 |
103 | public func makeNSView(context: Context) -> DSFDragSlider {
| `- note: add '@MainActor' to make instance method 'makeNSView(context:)' part of global actor 'MainActor'
104 | let dragSlider = DSFDragSlider()
105 | dragSlider.isEnabled = self.isEnabled
| `- warning: main actor-isolated property 'isEnabled' can not be mutated from a non-isolated context; this is an error in the Swift 6 language mode
106 | dragSlider.range = configuration.range
107 | dragSlider.deltaX = configuration.deltaX
/Users/admin/builder/spi-builder-workspace/Sources/DSFDragSlider/DSFDragSlider.swift:37:21: note: mutation of this property is only permitted within the actor
35 |
36 | /// Is the control enabled?
37 | @IBInspectable var isEnabled: Bool = true {
| `- note: mutation of this property is only permitted within the actor
38 | didSet {
39 | self.needsDisplay = true
/Users/admin/builder/spi-builder-workspace/Sources/DSFDragSlider/DSFDragSlider+SwiftUI.swift:106:14: warning: main actor-isolated property 'range' can not be mutated from a non-isolated context; this is an error in the Swift 6 language mode
101 | }
102 |
103 | public func makeNSView(context: Context) -> DSFDragSlider {
| `- note: add '@MainActor' to make instance method 'makeNSView(context:)' part of global actor 'MainActor'
104 | let dragSlider = DSFDragSlider()
105 | dragSlider.isEnabled = self.isEnabled
106 | dragSlider.range = configuration.range
| `- warning: main actor-isolated property 'range' can not be mutated from a non-isolated context; this is an error in the Swift 6 language mode
107 | dragSlider.deltaX = configuration.deltaX
108 | dragSlider.deltaY = configuration.deltaY
/Users/admin/builder/spi-builder-workspace/Sources/DSFDragSlider/DSFDragSlider.swift:55:19: note: mutation of this property is only permitted within the actor
53 |
54 | /// Convenience for getting/setting the range via a rect
55 | @objc public var range: CGRect {
| `- note: mutation of this property is only permitted within the actor
56 | get {
57 | return CGRect(x: self.minX, y: self.minY, width: self.maxX - self.minX, height: self.maxY - self.minY)
/Users/admin/builder/spi-builder-workspace/Sources/DSFDragSlider/DSFDragSlider+SwiftUI.swift:107:14: warning: main actor-isolated property 'deltaX' can not be mutated from a non-isolated context; this is an error in the Swift 6 language mode
101 | }
102 |
103 | public func makeNSView(context: Context) -> DSFDragSlider {
| `- note: add '@MainActor' to make instance method 'makeNSView(context:)' part of global actor 'MainActor'
104 | let dragSlider = DSFDragSlider()
105 | dragSlider.isEnabled = self.isEnabled
106 | dragSlider.range = configuration.range
107 | dragSlider.deltaX = configuration.deltaX
| `- warning: main actor-isolated property 'deltaX' can not be mutated from a non-isolated context; this is an error in the Swift 6 language mode
108 | dragSlider.deltaY = configuration.deltaY
109 | dragSlider.delegate = context.coordinator
/Users/admin/builder/spi-builder-workspace/Sources/DSFDragSlider/DSFDragSlider.swift:70:21: note: mutation of this property is only permitted within the actor
68 |
69 | /// The delta recorded per horizontal pixel move
70 | @IBInspectable var deltaX: CGFloat = 1.0
| `- note: mutation of this property is only permitted within the actor
71 | /// The delta recorded per vertical pixel move
72 | @IBInspectable var deltaY: CGFloat = 1.0
/Users/admin/builder/spi-builder-workspace/Sources/DSFDragSlider/DSFDragSlider+SwiftUI.swift:108:14: warning: main actor-isolated property 'deltaY' can not be mutated from a non-isolated context; this is an error in the Swift 6 language mode
101 | }
102 |
103 | public func makeNSView(context: Context) -> DSFDragSlider {
| `- note: add '@MainActor' to make instance method 'makeNSView(context:)' part of global actor 'MainActor'
104 | let dragSlider = DSFDragSlider()
105 | dragSlider.isEnabled = self.isEnabled
106 | dragSlider.range = configuration.range
107 | dragSlider.deltaX = configuration.deltaX
108 | dragSlider.deltaY = configuration.deltaY
| `- warning: main actor-isolated property 'deltaY' can not be mutated from a non-isolated context; this is an error in the Swift 6 language mode
109 | dragSlider.delegate = context.coordinator
110 | return dragSlider
/Users/admin/builder/spi-builder-workspace/Sources/DSFDragSlider/DSFDragSlider.swift:72:21: note: mutation of this property is only permitted within the actor
70 | @IBInspectable var deltaX: CGFloat = 1.0
71 | /// The delta recorded per vertical pixel move
72 | @IBInspectable var deltaY: CGFloat = 1.0
| `- note: mutation of this property is only permitted within the actor
73 |
74 | /// The current position
/Users/admin/builder/spi-builder-workspace/Sources/DSFDragSlider/DSFDragSlider+SwiftUI.swift:109:14: warning: main actor-isolated property 'delegate' can not be mutated from a non-isolated context; this is an error in the Swift 6 language mode
101 | }
102 |
103 | public func makeNSView(context: Context) -> DSFDragSlider {
| `- note: add '@MainActor' to make instance method 'makeNSView(context:)' part of global actor 'MainActor'
104 | let dragSlider = DSFDragSlider()
105 | dragSlider.isEnabled = self.isEnabled
:
107 | dragSlider.deltaX = configuration.deltaX
108 | dragSlider.deltaY = configuration.deltaY
109 | dragSlider.delegate = context.coordinator
| `- warning: main actor-isolated property 'delegate' can not be mutated from a non-isolated context; this is an error in the Swift 6 language mode
110 | return dragSlider
111 | }
/Users/admin/builder/spi-builder-workspace/Sources/DSFDragSlider/DSFDragSlider.swift:34:24: note: mutation of this property is only permitted within the actor
32 | public class DSFDragSlider: NSView, NSGestureRecognizerDelegate {
33 | /// The delegate receives callbacks as the control is dragged
34 | @objc public weak var delegate: DSFDragSliderProtocol?
| `- note: mutation of this property is only permitted within the actor
35 |
36 | /// Is the control enabled?
/Users/admin/builder/spi-builder-workspace/Sources/DSFDragSlider/DSFDragSlider+SwiftUI.swift:109:33: warning: main actor-isolated property 'coordinator' can not be referenced from a non-isolated context; this is an error in the Swift 6 language mode
101 | }
102 |
103 | public func makeNSView(context: Context) -> DSFDragSlider {
| `- note: add '@MainActor' to make instance method 'makeNSView(context:)' part of global actor 'MainActor'
104 | let dragSlider = DSFDragSlider()
105 | dragSlider.isEnabled = self.isEnabled
:
107 | dragSlider.deltaX = configuration.deltaX
108 | dragSlider.deltaY = configuration.deltaY
109 | dragSlider.delegate = context.coordinator
| `- warning: main actor-isolated property 'coordinator' can not be referenced from a non-isolated context; this is an error in the Swift 6 language mode
110 | return dragSlider
111 | }
SwiftUI.NSViewRepresentableContext:7:27: note: property declared here
5 | @available(visionOS, unavailable)
6 | @MainActor public struct NSViewRepresentableContext<View> where View : NSViewRepresentable {
7 | @MainActor public let coordinator: View.Coordinator
| `- note: property declared here
8 | @MainActor public var transaction: Transaction { get }
9 | @MainActor public var environment: EnvironmentValues { get }
/Users/admin/builder/spi-builder-workspace/Sources/DSFDragSlider/DSFDragSlider+SwiftUI.swift:114:10: warning: main actor-isolated property 'isEnabled' can not be mutated from a non-isolated context; this is an error in the Swift 6 language mode
111 | }
112 |
113 | public func updateNSView(_ nsView: DSFDragSlider, context: Context) {
| `- note: add '@MainActor' to make instance method 'updateNSView(_:context:)' part of global actor 'MainActor'
114 | nsView.isEnabled = self.isEnabled
| `- warning: main actor-isolated property 'isEnabled' can not be mutated from a non-isolated context; this is an error in the Swift 6 language mode
115 | nsView.position = self.currentPosition
116 | nsView.range = configuration.range
/Users/admin/builder/spi-builder-workspace/Sources/DSFDragSlider/DSFDragSlider.swift:37:21: note: mutation of this property is only permitted within the actor
35 |
36 | /// Is the control enabled?
37 | @IBInspectable var isEnabled: Bool = true {
| `- note: mutation of this property is only permitted within the actor
38 | didSet {
39 | self.needsDisplay = true
/Users/admin/builder/spi-builder-workspace/Sources/DSFDragSlider/DSFDragSlider+SwiftUI.swift:115:10: warning: main actor-isolated property 'position' can not be mutated from a non-isolated context; this is an error in the Swift 6 language mode
111 | }
112 |
113 | public func updateNSView(_ nsView: DSFDragSlider, context: Context) {
| `- note: add '@MainActor' to make instance method 'updateNSView(_:context:)' part of global actor 'MainActor'
114 | nsView.isEnabled = self.isEnabled
115 | nsView.position = self.currentPosition
| `- warning: main actor-isolated property 'position' can not be mutated from a non-isolated context; this is an error in the Swift 6 language mode
116 | nsView.range = configuration.range
117 | nsView.deltaX = configuration.deltaX
/Users/admin/builder/spi-builder-workspace/Sources/DSFDragSlider/DSFDragSlider.swift:75:27: note: mutation of this property is only permitted within the actor
73 |
74 | /// The current position
75 | @objc public dynamic var position = CGPoint(x: 500, y: 500) {
| `- note: mutation of this property is only permitted within the actor
76 | willSet {
77 | self.willChangeValue(for: \.x)
/Users/admin/builder/spi-builder-workspace/Sources/DSFDragSlider/DSFDragSlider+SwiftUI.swift:116:10: warning: main actor-isolated property 'range' can not be mutated from a non-isolated context; this is an error in the Swift 6 language mode
111 | }
112 |
113 | public func updateNSView(_ nsView: DSFDragSlider, context: Context) {
| `- note: add '@MainActor' to make instance method 'updateNSView(_:context:)' part of global actor 'MainActor'
114 | nsView.isEnabled = self.isEnabled
115 | nsView.position = self.currentPosition
116 | nsView.range = configuration.range
| `- warning: main actor-isolated property 'range' can not be mutated from a non-isolated context; this is an error in the Swift 6 language mode
117 | nsView.deltaX = configuration.deltaX
118 | nsView.deltaY = configuration.deltaY
/Users/admin/builder/spi-builder-workspace/Sources/DSFDragSlider/DSFDragSlider.swift:55:19: note: mutation of this property is only permitted within the actor
53 |
54 | /// Convenience for getting/setting the range via a rect
55 | @objc public var range: CGRect {
| `- note: mutation of this property is only permitted within the actor
56 | get {
57 | return CGRect(x: self.minX, y: self.minY, width: self.maxX - self.minX, height: self.maxY - self.minY)
/Users/admin/builder/spi-builder-workspace/Sources/DSFDragSlider/DSFDragSlider+SwiftUI.swift:117:10: warning: main actor-isolated property 'deltaX' can not be mutated from a non-isolated context; this is an error in the Swift 6 language mode
111 | }
112 |
113 | public func updateNSView(_ nsView: DSFDragSlider, context: Context) {
| `- note: add '@MainActor' to make instance method 'updateNSView(_:context:)' part of global actor 'MainActor'
114 | nsView.isEnabled = self.isEnabled
115 | nsView.position = self.currentPosition
116 | nsView.range = configuration.range
117 | nsView.deltaX = configuration.deltaX
| `- warning: main actor-isolated property 'deltaX' can not be mutated from a non-isolated context; this is an error in the Swift 6 language mode
118 | nsView.deltaY = configuration.deltaY
119 | }
/Users/admin/builder/spi-builder-workspace/Sources/DSFDragSlider/DSFDragSlider.swift:70:21: note: mutation of this property is only permitted within the actor
68 |
69 | /// The delta recorded per horizontal pixel move
70 | @IBInspectable var deltaX: CGFloat = 1.0
| `- note: mutation of this property is only permitted within the actor
71 | /// The delta recorded per vertical pixel move
72 | @IBInspectable var deltaY: CGFloat = 1.0
/Users/admin/builder/spi-builder-workspace/Sources/DSFDragSlider/DSFDragSlider+SwiftUI.swift:118:10: warning: main actor-isolated property 'deltaY' can not be mutated from a non-isolated context; this is an error in the Swift 6 language mode
111 | }
112 |
113 | public func updateNSView(_ nsView: DSFDragSlider, context: Context) {
| `- note: add '@MainActor' to make instance method 'updateNSView(_:context:)' part of global actor 'MainActor'
114 | nsView.isEnabled = self.isEnabled
115 | nsView.position = self.currentPosition
116 | nsView.range = configuration.range
117 | nsView.deltaX = configuration.deltaX
118 | nsView.deltaY = configuration.deltaY
| `- warning: main actor-isolated property 'deltaY' can not be mutated from a non-isolated context; this is an error in the Swift 6 language mode
119 | }
120 |
/Users/admin/builder/spi-builder-workspace/Sources/DSFDragSlider/DSFDragSlider.swift:72:21: note: mutation of this property is only permitted within the actor
70 | @IBInspectable var deltaX: CGFloat = 1.0
71 | /// The delta recorded per vertical pixel move
72 | @IBInspectable var deltaY: CGFloat = 1.0
| `- note: mutation of this property is only permitted within the actor
73 |
74 | /// The current position
[23/27] Write Objects.LinkFileList
[25/27] Archiving libDSFDragSlider-static.a
[26/27] Linking libDSFDragSlider-shared.dylib
Build complete! (42.32s)
Fetching https://github.com/dagronf/DSFAppearanceManager
[4/381] Fetching dsfappearancemanager
Fetched https://github.com/dagronf/DSFAppearanceManager from cache (1.23s)
Computing version for https://github.com/dagronf/DSFAppearanceManager
Computed https://github.com/dagronf/DSFAppearanceManager at 3.4.2 (0.64s)
Creating working copy for https://github.com/dagronf/DSFAppearanceManager
Working copy of https://github.com/dagronf/DSFAppearanceManager resolved at 3.4.2
Build complete.
{
"dependencies" : [
{
"identity" : "dsfappearancemanager",
"requirement" : {
"range" : [
{
"lower_bound" : "3.3.0",
"upper_bound" : "4.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/dagronf/DSFAppearanceManager"
}
],
"manifest_display_name" : "DSFDragSlider",
"name" : "DSFDragSlider",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "10.11"
}
],
"products" : [
{
"name" : "DSFDragSlider",
"targets" : [
"DSFDragSlider"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "DSFDragSlider-static",
"targets" : [
"DSFDragSlider"
],
"type" : {
"library" : [
"static"
]
}
},
{
"name" : "DSFDragSlider-shared",
"targets" : [
"DSFDragSlider"
],
"type" : {
"library" : [
"dynamic"
]
}
}
],
"targets" : [
{
"c99name" : "DSFDragSliderTests",
"module_type" : "SwiftTarget",
"name" : "DSFDragSliderTests",
"path" : "Tests/DSFDragSliderTests",
"sources" : [
"DSFDragSliderTests.swift",
"XCTestManifests.swift"
],
"target_dependencies" : [
"DSFDragSlider"
],
"type" : "test"
},
{
"c99name" : "DSFDragSlider",
"module_type" : "SwiftTarget",
"name" : "DSFDragSlider",
"path" : "Sources/DSFDragSlider",
"product_dependencies" : [
"DSFAppearanceManager"
],
"product_memberships" : [
"DSFDragSlider",
"DSFDragSlider-static",
"DSFDragSlider-shared"
],
"sources" : [
"DSFDragSlider+SwiftUI.swift",
"DSFDragSlider.swift",
"DSFDragSliderProtocol.swift",
"private/DSFDragSlider+private.swift",
"private/DSFKeyedPanGestureRecognizer.swift",
"private/NSGraphicsContext+extensions.swift"
],
"type" : "library"
}
],
"tools_version" : "5.3"
}
Done.