Build Information
Successful build of DSFPasscodeView with Swift 6.0 for macOS (SPM).
Swift 6 data race errors: 14
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/DSFPasscodeView.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/dagronf/DSFPasscodeView
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at 4160d4f Update to use DSFAppearanceManager
Cloned https://github.com/dagronf/DSFPasscodeView.git
Revision (git rev-parse @):
4160d4f8e95d3356fc7554691c1f2f203e95142f
SUCCESS checkout https://github.com/dagronf/DSFPasscodeView.git at main
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.0
Building package at path: $workDir
https://github.com/dagronf/DSFPasscodeView.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/4] Write sources
[3/4] Write swift-version-6F35C1178C84523A.txt
[5/18] Emitting module DSFAppearanceManager
[6/19] Compiling DSFAppearanceManager WeakBox.swift
[7/19] Compiling DSFAppearanceManager DSFSimpleLock.swift
[8/19] Compiling DSFAppearanceManager WeakBag.swift
[9/19] Compiling DSFAppearanceManager DSFDebounce.swift
[10/19] Compiling DSFAppearanceManager NSAppearance+extensions.swift
[11/19] Emitting module VIViewInvalidating
[12/19] Compiling VIViewInvalidating VIViewInvalidatingPropertyWrapper.swift
[13/19] Compiling DSFAppearanceManager AutoplayAnimatedImages.swift
[14/19] Compiling DSFAppearanceManager DSFAppearanceManager+Listeners.swift
[15/19] Compiling DSFAppearanceManager NSWindow+Appearance.swift
[16/19] Compiling DSFAppearanceManager DSFAppearanceCache.swift
[17/19] Compiling DSFAppearanceManager DSFAppearanceManager+ChangeDetector.swift
[18/19] Compiling DSFAppearanceManager DSFAppearanceManager.swift
[19/19] Compiling DSFAppearanceManager NSView+Appearance.swift
[20/25] Compiling DSFPasscodeView Utils.swift
/Users/admin/builder/spi-builder-workspace/Sources/DSFPasscodeView/private/Utils.swift:53:1: warning: extension declares a conformance of imported type 'NSEdgeInsets' to imported protocol 'Equatable'; this will not behave correctly if the owners of 'Foundation' introduce this conformance in the future
51 | }
52 |
53 | extension NSEdgeInsets: Equatable {
| |- warning: extension declares a conformance of imported type 'NSEdgeInsets' to imported protocol 'Equatable'; this will not behave correctly if the owners of 'Foundation' introduce this conformance in the future
| `- note: add '@retroactive' to silence this warning
54 | @inlinable public static func == (lhs: NSEdgeInsets, rhs: NSEdgeInsets) -> Bool {
55 | return lhs.top == rhs.top &&
[21/25] Compiling DSFPasscodeView Localizations.swift
[22/25] Compiling DSFPasscodeView DSFPasscodeView+Cell.swift
/Users/admin/builder/spi-builder-workspace/.build/checkouts/VIViewInvalidating/Sources/VIViewInvalidating/VIViewInvalidatingPropertyWrapper.swift:126:20: warning: class property 'layout' is not concurrency-safe because non-'Sendable' type 'VIViewInvalidatorAction.Layout' may have shared mutable state; this is an error in the Swift 6 language mode
124 | public static let constraints = VIViewInvalidatorAction.Constraints()
125 | /// `setNeedsLayout`
126 | public static let layout = VIViewInvalidatorAction.Layout()
| |- warning: class property 'layout' is not concurrency-safe because non-'Sendable' type 'VIViewInvalidatorAction.Layout' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'layout' 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
127 | /// `invalidateIntrinsicContentSize`
128 | public static let intrinsicContentSize = VIViewInvalidatorAction.InstrinsicContentSize()
:
259 | }
260 |
261 | class Layout: VIViewInvalidatorAction {
| `- note: class 'Layout' does not conform to the 'Sendable' protocol
262 | public override func invalidate(_ view: VIViewType) {
263 | #if os(macOS)
/Users/admin/builder/spi-builder-workspace/.build/checkouts/VIViewInvalidating/Sources/VIViewInvalidating/VIViewInvalidatingPropertyWrapper.swift:128:20: warning: class property 'intrinsicContentSize' is not concurrency-safe because non-'Sendable' type 'VIViewInvalidatorAction.InstrinsicContentSize' may have shared mutable state; this is an error in the Swift 6 language mode
126 | public static let layout = VIViewInvalidatorAction.Layout()
127 | /// `invalidateIntrinsicContentSize`
128 | public static let intrinsicContentSize = VIViewInvalidatorAction.InstrinsicContentSize()
| |- warning: class property 'intrinsicContentSize' is not concurrency-safe because non-'Sendable' type 'VIViewInvalidatorAction.InstrinsicContentSize' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'intrinsicContentSize' 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
129 |
130 | #if canImport(AppKit)
:
269 | }
270 |
271 | class InstrinsicContentSize: VIViewInvalidatorAction {
| `- note: class 'InstrinsicContentSize' does not conform to the 'Sendable' protocol
272 | public override func invalidate(_ view: VIViewType) {
273 | view.invalidateIntrinsicContentSize()
/Users/admin/builder/spi-builder-workspace/.build/checkouts/VIViewInvalidating/Sources/VIViewInvalidating/VIViewInvalidatingPropertyWrapper.swift:122:20: warning: class property 'display' is not concurrency-safe because non-'Sendable' type 'VIViewInvalidatorAction.Display' may have shared mutable state; this is an error in the Swift 6 language mode
120 |
121 | /// `setNeedsDisplay`
122 | public static let display = VIViewInvalidatorAction.Display()
| |- warning: class property 'display' is not concurrency-safe because non-'Sendable' type 'VIViewInvalidatorAction.Display' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'display' 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
123 | /// `setNeedsUpdateConstraints`
124 | public static let constraints = VIViewInvalidatorAction.Constraints()
:
239 | public extension VIViewInvalidatorAction {
240 |
241 | class Display: VIViewInvalidatorAction {
| `- note: class 'Display' does not conform to the 'Sendable' protocol
242 | public override func invalidate(_ view: VIViewType) {
243 | #if os(macOS)
/Users/admin/builder/spi-builder-workspace/Sources/DSFPasscodeView/private/DSFPasscodeView+Cell.swift:337:7: warning: main actor-isolated instance method 'insertText(_:replacementRange:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
329 | // https://developer.apple.com/library/archive/documentation/TextFonts/Conceptual/CocoaTextArchitecture/TextEditing/TextEditing.html#//apple_ref/doc/uid/TP40009459-CH3
330 |
331 | extension DSFPasscodeView.Cell: NSTextInputClient {
| `- note: add '@preconcurrency' to the 'NSTextInputClient' conformance to defer isolation checking to run time
332 | // Pretend to be a text field
333 | override var inputContext: NSTextInputContext? {
:
335 | }
336 |
337 | func insertText(_ string: Any, replacementRange: NSRange) {
| |- warning: main actor-isolated instance method 'insertText(_:replacementRange:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'insertText(_:replacementRange:)' to make this instance method not isolated to the actor
338 | if let s = string as? String, let ch = s.first {
339 | self.handleNewCharacter(ch, with: nil)
AppKit.NSTextInputClient:2:10: note: 'insertText(_:replacementRange:)' declared here
1 | public protocol NSTextInputClient {
2 | func insertText(_ string: Any, replacementRange: NSRange)
| `- note: 'insertText(_:replacementRange:)' declared here
3 | func doCommand(by selector: Selector)
4 | @available(swift, obsoleted: 3, renamed: "doCommand(by:)")
AppKit.NSResponder:3:26: warning: main actor-isolated instance method 'doCommand(by:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
1 | extension NSResponder : NSStandardKeyBindingResponding {
2 | open func insertText(_ insertString: Any)
3 | @MainActor open func doCommand(by selector: Selector)
| |- warning: main actor-isolated instance method 'doCommand(by:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'doCommand(by:)' to make this instance method not isolated to the actor
4 | open func moveForward(_ sender: Any?)
5 | open func moveRight(_ sender: Any?)
AppKit.NSTextInputClient:3:10: note: 'doCommand(by:)' declared here
1 | public protocol NSTextInputClient {
2 | func insertText(_ string: Any, replacementRange: NSRange)
3 | func doCommand(by selector: Selector)
| `- note: 'doCommand(by:)' declared here
4 | @available(swift, obsoleted: 3, renamed: "doCommand(by:)")
5 | func doCommandBySelector(_ selector: Selector)
/Users/admin/builder/spi-builder-workspace/Sources/DSFPasscodeView/private/DSFPasscodeView+Cell.swift:343:7: warning: main actor-isolated instance method 'setMarkedText(_:selectedRange:replacementRange:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
341 | }
342 |
343 | func setMarkedText(_ string: Any, selectedRange: NSRange, replacementRange: NSRange) {}
| |- warning: main actor-isolated instance method 'setMarkedText(_:selectedRange:replacementRange:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'setMarkedText(_:selectedRange:replacementRange:)' to make this instance method not isolated to the actor
344 |
345 | func unmarkText() {}
AppKit.NSTextInputClient:6:10: note: 'setMarkedText(_:selectedRange:replacementRange:)' declared here
4 | @available(swift, obsoleted: 3, renamed: "doCommand(by:)")
5 | func doCommandBySelector(_ selector: Selector)
6 | func setMarkedText(_ string: Any, selectedRange: NSRange, replacementRange: NSRange)
| `- note: 'setMarkedText(_:selectedRange:replacementRange:)' declared here
7 | func unmarkText()
8 | func selectedRange() -> NSRange
/Users/admin/builder/spi-builder-workspace/Sources/DSFPasscodeView/private/DSFPasscodeView+Cell.swift:345:7: warning: main actor-isolated instance method 'unmarkText()' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
343 | func setMarkedText(_ string: Any, selectedRange: NSRange, replacementRange: NSRange) {}
344 |
345 | func unmarkText() {}
| |- warning: main actor-isolated instance method 'unmarkText()' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'unmarkText()' to make this instance method not isolated to the actor
346 |
347 | func selectedRange() -> NSRange {
AppKit.NSTextInputClient:7:10: note: 'unmarkText()' declared here
5 | func doCommandBySelector(_ selector: Selector)
6 | func setMarkedText(_ string: Any, selectedRange: NSRange, replacementRange: NSRange)
7 | func unmarkText()
| `- note: 'unmarkText()' declared here
8 | func selectedRange() -> NSRange
9 | func markedRange() -> NSRange
/Users/admin/builder/spi-builder-workspace/Sources/DSFPasscodeView/private/DSFPasscodeView+Cell.swift:347:7: warning: main actor-isolated instance method 'selectedRange()' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
345 | func unmarkText() {}
346 |
347 | func selectedRange() -> NSRange {
| |- warning: main actor-isolated instance method 'selectedRange()' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'selectedRange()' to make this instance method not isolated to the actor
348 | return NSRange(location: 0, length: 0)
349 | }
AppKit.NSTextInputClient:8:10: note: 'selectedRange()' declared here
6 | func setMarkedText(_ string: Any, selectedRange: NSRange, replacementRange: NSRange)
7 | func unmarkText()
8 | func selectedRange() -> NSRange
| `- note: 'selectedRange()' declared here
9 | func markedRange() -> NSRange
10 | func hasMarkedText() -> Bool
/Users/admin/builder/spi-builder-workspace/Sources/DSFPasscodeView/private/DSFPasscodeView+Cell.swift:351:7: warning: main actor-isolated instance method 'markedRange()' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
349 | }
350 |
351 | func markedRange() -> NSRange {
| |- warning: main actor-isolated instance method 'markedRange()' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'markedRange()' to make this instance method not isolated to the actor
352 | return NSRange(location: 0, length: 0)
353 | }
AppKit.NSTextInputClient:9:10: note: 'markedRange()' declared here
7 | func unmarkText()
8 | func selectedRange() -> NSRange
9 | func markedRange() -> NSRange
| `- note: 'markedRange()' declared here
10 | func hasMarkedText() -> Bool
11 | @available(macOS 10.0, *)
/Users/admin/builder/spi-builder-workspace/Sources/DSFPasscodeView/private/DSFPasscodeView+Cell.swift:355:7: warning: main actor-isolated instance method 'hasMarkedText()' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
353 | }
354 |
355 | func hasMarkedText() -> Bool {
| |- warning: main actor-isolated instance method 'hasMarkedText()' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'hasMarkedText()' to make this instance method not isolated to the actor
356 | return false
357 | }
AppKit.NSTextInputClient:10:10: note: 'hasMarkedText()' declared here
8 | func selectedRange() -> NSRange
9 | func markedRange() -> NSRange
10 | func hasMarkedText() -> Bool
| `- note: 'hasMarkedText()' declared here
11 | @available(macOS 10.0, *)
12 | func attributedSubstring(forProposedRange range: NSRange, actualRange: NSRangePointer?) -> NSAttributedString?
/Users/admin/builder/spi-builder-workspace/Sources/DSFPasscodeView/private/DSFPasscodeView+Cell.swift:359:7: warning: main actor-isolated instance method 'attributedSubstring(forProposedRange:actualRange:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
357 | }
358 |
359 | func attributedSubstring(forProposedRange range: NSRange, actualRange: NSRangePointer?) -> NSAttributedString? {
| |- warning: main actor-isolated instance method 'attributedSubstring(forProposedRange:actualRange:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'attributedSubstring(forProposedRange:actualRange:)' to make this instance method not isolated to the actor
360 | return nil
361 | }
AppKit.NSTextInputClient:12:10: note: 'attributedSubstring(forProposedRange:actualRange:)' declared here
10 | func hasMarkedText() -> Bool
11 | @available(macOS 10.0, *)
12 | func attributedSubstring(forProposedRange range: NSRange, actualRange: NSRangePointer?) -> NSAttributedString?
| `- note: 'attributedSubstring(forProposedRange:actualRange:)' declared here
13 | @available(swift, obsoleted: 3, renamed: "attributedSubstring(forProposedRange:actualRange:)")
14 | func attributedSubstringForProposedRange(_ range: NSRange, actualRange: NSRangePointer?) -> NSAttributedString?
/Users/admin/builder/spi-builder-workspace/Sources/DSFPasscodeView/private/DSFPasscodeView+Cell.swift:363:7: warning: main actor-isolated instance method 'validAttributesForMarkedText()' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
361 | }
362 |
363 | func validAttributesForMarkedText() -> [NSAttributedString.Key] {
| |- warning: main actor-isolated instance method 'validAttributesForMarkedText()' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'validAttributesForMarkedText()' to make this instance method not isolated to the actor
364 | return []
365 | }
AppKit.NSTextInputClient:16:10: note: 'validAttributesForMarkedText()' declared here
14 | func attributedSubstringForProposedRange(_ range: NSRange, actualRange: NSRangePointer?) -> NSAttributedString?
15 | @available(macOS 10.0, *)
16 | func validAttributesForMarkedText() -> [NSAttributedString.Key]
| `- note: 'validAttributesForMarkedText()' declared here
17 | func firstRect(forCharacterRange range: NSRange, actualRange: NSRangePointer?) -> NSRect
18 | @available(swift, obsoleted: 3, renamed: "firstRect(forCharacterRange:actualRange:)")
/Users/admin/builder/spi-builder-workspace/Sources/DSFPasscodeView/private/DSFPasscodeView+Cell.swift:367:7: warning: main actor-isolated instance method 'firstRect(forCharacterRange:actualRange:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
365 | }
366 |
367 | func firstRect(forCharacterRange range: NSRange, actualRange: NSRangePointer?) -> NSRect {
| |- warning: main actor-isolated instance method 'firstRect(forCharacterRange:actualRange:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'firstRect(forCharacterRange:actualRange:)' to make this instance method not isolated to the actor
368 | return .zero
369 | }
AppKit.NSTextInputClient:17:10: note: 'firstRect(forCharacterRange:actualRange:)' declared here
15 | @available(macOS 10.0, *)
16 | func validAttributesForMarkedText() -> [NSAttributedString.Key]
17 | func firstRect(forCharacterRange range: NSRange, actualRange: NSRangePointer?) -> NSRect
| `- note: 'firstRect(forCharacterRange:actualRange:)' declared here
18 | @available(swift, obsoleted: 3, renamed: "firstRect(forCharacterRange:actualRange:)")
19 | func firstRectForCharacterRange(_ range: NSRange, actualRange: NSRangePointer?) -> NSRect
/Users/admin/builder/spi-builder-workspace/Sources/DSFPasscodeView/private/DSFPasscodeView+Cell.swift:371:7: warning: main actor-isolated instance method 'characterIndex(for:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
369 | }
370 |
371 | func characterIndex(for point: NSPoint) -> Int {
| |- warning: main actor-isolated instance method 'characterIndex(for:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'characterIndex(for:)' to make this instance method not isolated to the actor
372 | return 0
373 | }
AppKit.NSTextInputClient:20:10: note: 'characterIndex(for:)' declared here
18 | @available(swift, obsoleted: 3, renamed: "firstRect(forCharacterRange:actualRange:)")
19 | func firstRectForCharacterRange(_ range: NSRange, actualRange: NSRangePointer?) -> NSRect
20 | func characterIndex(for point: NSPoint) -> Int
| `- note: 'characterIndex(for:)' declared here
21 | @available(swift, obsoleted: 3, renamed: "characterIndex(for:)")
22 | func characterIndexForPoint(_ point: NSPoint) -> Int
[23/25] Compiling DSFPasscodeView DSFPasscodeView+Handling.swift
[24/25] Emitting module DSFPasscodeView
/Users/admin/builder/spi-builder-workspace/.build/checkouts/VIViewInvalidating/Sources/VIViewInvalidating/VIViewInvalidatingPropertyWrapper.swift:126:20: warning: class property 'layout' is not concurrency-safe because non-'Sendable' type 'VIViewInvalidatorAction.Layout' may have shared mutable state; this is an error in the Swift 6 language mode
124 | public static let constraints = VIViewInvalidatorAction.Constraints()
125 | /// `setNeedsLayout`
126 | public static let layout = VIViewInvalidatorAction.Layout()
| |- warning: class property 'layout' is not concurrency-safe because non-'Sendable' type 'VIViewInvalidatorAction.Layout' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'layout' 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
127 | /// `invalidateIntrinsicContentSize`
128 | public static let intrinsicContentSize = VIViewInvalidatorAction.InstrinsicContentSize()
:
259 | }
260 |
261 | class Layout: VIViewInvalidatorAction {
| `- note: class 'Layout' does not conform to the 'Sendable' protocol
262 | public override func invalidate(_ view: VIViewType) {
263 | #if os(macOS)
/Users/admin/builder/spi-builder-workspace/.build/checkouts/VIViewInvalidating/Sources/VIViewInvalidating/VIViewInvalidatingPropertyWrapper.swift:128:20: warning: class property 'intrinsicContentSize' is not concurrency-safe because non-'Sendable' type 'VIViewInvalidatorAction.InstrinsicContentSize' may have shared mutable state; this is an error in the Swift 6 language mode
126 | public static let layout = VIViewInvalidatorAction.Layout()
127 | /// `invalidateIntrinsicContentSize`
128 | public static let intrinsicContentSize = VIViewInvalidatorAction.InstrinsicContentSize()
| |- warning: class property 'intrinsicContentSize' is not concurrency-safe because non-'Sendable' type 'VIViewInvalidatorAction.InstrinsicContentSize' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'intrinsicContentSize' 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
129 |
130 | #if canImport(AppKit)
:
269 | }
270 |
271 | class InstrinsicContentSize: VIViewInvalidatorAction {
| `- note: class 'InstrinsicContentSize' does not conform to the 'Sendable' protocol
272 | public override func invalidate(_ view: VIViewType) {
273 | view.invalidateIntrinsicContentSize()
/Users/admin/builder/spi-builder-workspace/.build/checkouts/VIViewInvalidating/Sources/VIViewInvalidating/VIViewInvalidatingPropertyWrapper.swift:122:20: warning: class property 'display' is not concurrency-safe because non-'Sendable' type 'VIViewInvalidatorAction.Display' may have shared mutable state; this is an error in the Swift 6 language mode
120 |
121 | /// `setNeedsDisplay`
122 | public static let display = VIViewInvalidatorAction.Display()
| |- warning: class property 'display' is not concurrency-safe because non-'Sendable' type 'VIViewInvalidatorAction.Display' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'display' 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
123 | /// `setNeedsUpdateConstraints`
124 | public static let constraints = VIViewInvalidatorAction.Constraints()
:
239 | public extension VIViewInvalidatorAction {
240 |
241 | class Display: VIViewInvalidatorAction {
| `- note: class 'Display' does not conform to the 'Sendable' protocol
242 | public override func invalidate(_ view: VIViewType) {
243 | #if os(macOS)
/Users/admin/builder/spi-builder-workspace/Sources/DSFPasscodeView/private/DSFPasscodeView+Cell.swift:337:7: warning: main actor-isolated instance method 'insertText(_:replacementRange:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
329 | // https://developer.apple.com/library/archive/documentation/TextFonts/Conceptual/CocoaTextArchitecture/TextEditing/TextEditing.html#//apple_ref/doc/uid/TP40009459-CH3
330 |
331 | extension DSFPasscodeView.Cell: NSTextInputClient {
| `- note: add '@preconcurrency' to the 'NSTextInputClient' conformance to defer isolation checking to run time
332 | // Pretend to be a text field
333 | override var inputContext: NSTextInputContext? {
:
335 | }
336 |
337 | func insertText(_ string: Any, replacementRange: NSRange) {
| |- warning: main actor-isolated instance method 'insertText(_:replacementRange:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'insertText(_:replacementRange:)' to make this instance method not isolated to the actor
338 | if let s = string as? String, let ch = s.first {
339 | self.handleNewCharacter(ch, with: nil)
AppKit.NSTextInputClient:2:10: note: 'insertText(_:replacementRange:)' declared here
1 | public protocol NSTextInputClient {
2 | func insertText(_ string: Any, replacementRange: NSRange)
| `- note: 'insertText(_:replacementRange:)' declared here
3 | func doCommand(by selector: Selector)
4 | @available(swift, obsoleted: 3, renamed: "doCommand(by:)")
AppKit.NSResponder:3:26: warning: main actor-isolated instance method 'doCommand(by:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
1 | extension NSResponder : NSStandardKeyBindingResponding {
2 | open func insertText(_ insertString: Any)
3 | @MainActor open func doCommand(by selector: Selector)
| |- warning: main actor-isolated instance method 'doCommand(by:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'doCommand(by:)' to make this instance method not isolated to the actor
4 | open func moveForward(_ sender: Any?)
5 | open func moveRight(_ sender: Any?)
AppKit.NSTextInputClient:3:10: note: 'doCommand(by:)' declared here
1 | public protocol NSTextInputClient {
2 | func insertText(_ string: Any, replacementRange: NSRange)
3 | func doCommand(by selector: Selector)
| `- note: 'doCommand(by:)' declared here
4 | @available(swift, obsoleted: 3, renamed: "doCommand(by:)")
5 | func doCommandBySelector(_ selector: Selector)
/Users/admin/builder/spi-builder-workspace/Sources/DSFPasscodeView/private/DSFPasscodeView+Cell.swift:343:7: warning: main actor-isolated instance method 'setMarkedText(_:selectedRange:replacementRange:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
341 | }
342 |
343 | func setMarkedText(_ string: Any, selectedRange: NSRange, replacementRange: NSRange) {}
| |- warning: main actor-isolated instance method 'setMarkedText(_:selectedRange:replacementRange:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'setMarkedText(_:selectedRange:replacementRange:)' to make this instance method not isolated to the actor
344 |
345 | func unmarkText() {}
AppKit.NSTextInputClient:6:10: note: 'setMarkedText(_:selectedRange:replacementRange:)' declared here
4 | @available(swift, obsoleted: 3, renamed: "doCommand(by:)")
5 | func doCommandBySelector(_ selector: Selector)
6 | func setMarkedText(_ string: Any, selectedRange: NSRange, replacementRange: NSRange)
| `- note: 'setMarkedText(_:selectedRange:replacementRange:)' declared here
7 | func unmarkText()
8 | func selectedRange() -> NSRange
/Users/admin/builder/spi-builder-workspace/Sources/DSFPasscodeView/private/DSFPasscodeView+Cell.swift:345:7: warning: main actor-isolated instance method 'unmarkText()' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
343 | func setMarkedText(_ string: Any, selectedRange: NSRange, replacementRange: NSRange) {}
344 |
345 | func unmarkText() {}
| |- warning: main actor-isolated instance method 'unmarkText()' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'unmarkText()' to make this instance method not isolated to the actor
346 |
347 | func selectedRange() -> NSRange {
AppKit.NSTextInputClient:7:10: note: 'unmarkText()' declared here
5 | func doCommandBySelector(_ selector: Selector)
6 | func setMarkedText(_ string: Any, selectedRange: NSRange, replacementRange: NSRange)
7 | func unmarkText()
| `- note: 'unmarkText()' declared here
8 | func selectedRange() -> NSRange
9 | func markedRange() -> NSRange
/Users/admin/builder/spi-builder-workspace/Sources/DSFPasscodeView/private/DSFPasscodeView+Cell.swift:347:7: warning: main actor-isolated instance method 'selectedRange()' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
345 | func unmarkText() {}
346 |
347 | func selectedRange() -> NSRange {
| |- warning: main actor-isolated instance method 'selectedRange()' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'selectedRange()' to make this instance method not isolated to the actor
348 | return NSRange(location: 0, length: 0)
349 | }
AppKit.NSTextInputClient:8:10: note: 'selectedRange()' declared here
6 | func setMarkedText(_ string: Any, selectedRange: NSRange, replacementRange: NSRange)
7 | func unmarkText()
8 | func selectedRange() -> NSRange
| `- note: 'selectedRange()' declared here
9 | func markedRange() -> NSRange
10 | func hasMarkedText() -> Bool
/Users/admin/builder/spi-builder-workspace/Sources/DSFPasscodeView/private/DSFPasscodeView+Cell.swift:351:7: warning: main actor-isolated instance method 'markedRange()' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
349 | }
350 |
351 | func markedRange() -> NSRange {
| |- warning: main actor-isolated instance method 'markedRange()' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'markedRange()' to make this instance method not isolated to the actor
352 | return NSRange(location: 0, length: 0)
353 | }
AppKit.NSTextInputClient:9:10: note: 'markedRange()' declared here
7 | func unmarkText()
8 | func selectedRange() -> NSRange
9 | func markedRange() -> NSRange
| `- note: 'markedRange()' declared here
10 | func hasMarkedText() -> Bool
11 | @available(macOS 10.0, *)
/Users/admin/builder/spi-builder-workspace/Sources/DSFPasscodeView/private/DSFPasscodeView+Cell.swift:355:7: warning: main actor-isolated instance method 'hasMarkedText()' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
353 | }
354 |
355 | func hasMarkedText() -> Bool {
| |- warning: main actor-isolated instance method 'hasMarkedText()' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'hasMarkedText()' to make this instance method not isolated to the actor
356 | return false
357 | }
AppKit.NSTextInputClient:10:10: note: 'hasMarkedText()' declared here
8 | func selectedRange() -> NSRange
9 | func markedRange() -> NSRange
10 | func hasMarkedText() -> Bool
| `- note: 'hasMarkedText()' declared here
11 | @available(macOS 10.0, *)
12 | func attributedSubstring(forProposedRange range: NSRange, actualRange: NSRangePointer?) -> NSAttributedString?
/Users/admin/builder/spi-builder-workspace/Sources/DSFPasscodeView/private/DSFPasscodeView+Cell.swift:359:7: warning: main actor-isolated instance method 'attributedSubstring(forProposedRange:actualRange:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
357 | }
358 |
359 | func attributedSubstring(forProposedRange range: NSRange, actualRange: NSRangePointer?) -> NSAttributedString? {
| |- warning: main actor-isolated instance method 'attributedSubstring(forProposedRange:actualRange:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'attributedSubstring(forProposedRange:actualRange:)' to make this instance method not isolated to the actor
360 | return nil
361 | }
AppKit.NSTextInputClient:12:10: note: 'attributedSubstring(forProposedRange:actualRange:)' declared here
10 | func hasMarkedText() -> Bool
11 | @available(macOS 10.0, *)
12 | func attributedSubstring(forProposedRange range: NSRange, actualRange: NSRangePointer?) -> NSAttributedString?
| `- note: 'attributedSubstring(forProposedRange:actualRange:)' declared here
13 | @available(swift, obsoleted: 3, renamed: "attributedSubstring(forProposedRange:actualRange:)")
14 | func attributedSubstringForProposedRange(_ range: NSRange, actualRange: NSRangePointer?) -> NSAttributedString?
/Users/admin/builder/spi-builder-workspace/Sources/DSFPasscodeView/private/DSFPasscodeView+Cell.swift:363:7: warning: main actor-isolated instance method 'validAttributesForMarkedText()' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
361 | }
362 |
363 | func validAttributesForMarkedText() -> [NSAttributedString.Key] {
| |- warning: main actor-isolated instance method 'validAttributesForMarkedText()' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'validAttributesForMarkedText()' to make this instance method not isolated to the actor
364 | return []
365 | }
AppKit.NSTextInputClient:16:10: note: 'validAttributesForMarkedText()' declared here
14 | func attributedSubstringForProposedRange(_ range: NSRange, actualRange: NSRangePointer?) -> NSAttributedString?
15 | @available(macOS 10.0, *)
16 | func validAttributesForMarkedText() -> [NSAttributedString.Key]
| `- note: 'validAttributesForMarkedText()' declared here
17 | func firstRect(forCharacterRange range: NSRange, actualRange: NSRangePointer?) -> NSRect
18 | @available(swift, obsoleted: 3, renamed: "firstRect(forCharacterRange:actualRange:)")
/Users/admin/builder/spi-builder-workspace/Sources/DSFPasscodeView/private/DSFPasscodeView+Cell.swift:367:7: warning: main actor-isolated instance method 'firstRect(forCharacterRange:actualRange:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
365 | }
366 |
367 | func firstRect(forCharacterRange range: NSRange, actualRange: NSRangePointer?) -> NSRect {
| |- warning: main actor-isolated instance method 'firstRect(forCharacterRange:actualRange:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'firstRect(forCharacterRange:actualRange:)' to make this instance method not isolated to the actor
368 | return .zero
369 | }
AppKit.NSTextInputClient:17:10: note: 'firstRect(forCharacterRange:actualRange:)' declared here
15 | @available(macOS 10.0, *)
16 | func validAttributesForMarkedText() -> [NSAttributedString.Key]
17 | func firstRect(forCharacterRange range: NSRange, actualRange: NSRangePointer?) -> NSRect
| `- note: 'firstRect(forCharacterRange:actualRange:)' declared here
18 | @available(swift, obsoleted: 3, renamed: "firstRect(forCharacterRange:actualRange:)")
19 | func firstRectForCharacterRange(_ range: NSRange, actualRange: NSRangePointer?) -> NSRect
/Users/admin/builder/spi-builder-workspace/Sources/DSFPasscodeView/private/DSFPasscodeView+Cell.swift:371:7: warning: main actor-isolated instance method 'characterIndex(for:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
369 | }
370 |
371 | func characterIndex(for point: NSPoint) -> Int {
| |- warning: main actor-isolated instance method 'characterIndex(for:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'characterIndex(for:)' to make this instance method not isolated to the actor
372 | return 0
373 | }
AppKit.NSTextInputClient:20:10: note: 'characterIndex(for:)' declared here
18 | @available(swift, obsoleted: 3, renamed: "firstRect(forCharacterRange:actualRange:)")
19 | func firstRectForCharacterRange(_ range: NSRange, actualRange: NSRangePointer?) -> NSRect
20 | func characterIndex(for point: NSPoint) -> Int
| `- note: 'characterIndex(for:)' declared here
21 | @available(swift, obsoleted: 3, renamed: "characterIndex(for:)")
22 | func characterIndexForPoint(_ point: NSPoint) -> Int
/Users/admin/builder/spi-builder-workspace/Sources/DSFPasscodeView/private/Utils.swift:53:1: warning: extension declares a conformance of imported type 'NSEdgeInsets' to imported protocol 'Equatable'; this will not behave correctly if the owners of 'Foundation' introduce this conformance in the future
51 | }
52 |
53 | extension NSEdgeInsets: Equatable {
| |- warning: extension declares a conformance of imported type 'NSEdgeInsets' to imported protocol 'Equatable'; this will not behave correctly if the owners of 'Foundation' introduce this conformance in the future
| `- note: add '@retroactive' to silence this warning
54 | @inlinable public static func == (lhs: NSEdgeInsets, rhs: NSEdgeInsets) -> Bool {
55 | return lhs.top == rhs.top &&
[25/25] Compiling DSFPasscodeView DSFPasscodeView.swift
/Users/admin/builder/spi-builder-workspace/.build/checkouts/VIViewInvalidating/Sources/VIViewInvalidating/VIViewInvalidatingPropertyWrapper.swift:126:20: warning: class property 'layout' is not concurrency-safe because non-'Sendable' type 'VIViewInvalidatorAction.Layout' may have shared mutable state; this is an error in the Swift 6 language mode
124 | public static let constraints = VIViewInvalidatorAction.Constraints()
125 | /// `setNeedsLayout`
126 | public static let layout = VIViewInvalidatorAction.Layout()
| |- warning: class property 'layout' is not concurrency-safe because non-'Sendable' type 'VIViewInvalidatorAction.Layout' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'layout' 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
127 | /// `invalidateIntrinsicContentSize`
128 | public static let intrinsicContentSize = VIViewInvalidatorAction.InstrinsicContentSize()
:
259 | }
260 |
261 | class Layout: VIViewInvalidatorAction {
| `- note: class 'Layout' does not conform to the 'Sendable' protocol
262 | public override func invalidate(_ view: VIViewType) {
263 | #if os(macOS)
/Users/admin/builder/spi-builder-workspace/.build/checkouts/VIViewInvalidating/Sources/VIViewInvalidating/VIViewInvalidatingPropertyWrapper.swift:128:20: warning: class property 'intrinsicContentSize' is not concurrency-safe because non-'Sendable' type 'VIViewInvalidatorAction.InstrinsicContentSize' may have shared mutable state; this is an error in the Swift 6 language mode
126 | public static let layout = VIViewInvalidatorAction.Layout()
127 | /// `invalidateIntrinsicContentSize`
128 | public static let intrinsicContentSize = VIViewInvalidatorAction.InstrinsicContentSize()
| |- warning: class property 'intrinsicContentSize' is not concurrency-safe because non-'Sendable' type 'VIViewInvalidatorAction.InstrinsicContentSize' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'intrinsicContentSize' 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
129 |
130 | #if canImport(AppKit)
:
269 | }
270 |
271 | class InstrinsicContentSize: VIViewInvalidatorAction {
| `- note: class 'InstrinsicContentSize' does not conform to the 'Sendable' protocol
272 | public override func invalidate(_ view: VIViewType) {
273 | view.invalidateIntrinsicContentSize()
/Users/admin/builder/spi-builder-workspace/.build/checkouts/VIViewInvalidating/Sources/VIViewInvalidating/VIViewInvalidatingPropertyWrapper.swift:122:20: warning: class property 'display' is not concurrency-safe because non-'Sendable' type 'VIViewInvalidatorAction.Display' may have shared mutable state; this is an error in the Swift 6 language mode
120 |
121 | /// `setNeedsDisplay`
122 | public static let display = VIViewInvalidatorAction.Display()
| |- warning: class property 'display' is not concurrency-safe because non-'Sendable' type 'VIViewInvalidatorAction.Display' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'display' 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
123 | /// `setNeedsUpdateConstraints`
124 | public static let constraints = VIViewInvalidatorAction.Constraints()
:
239 | public extension VIViewInvalidatorAction {
240 |
241 | class Display: VIViewInvalidatorAction {
| `- note: class 'Display' does not conform to the 'Sendable' protocol
242 | public override func invalidate(_ view: VIViewType) {
243 | #if os(macOS)
/Users/admin/builder/spi-builder-workspace/Sources/DSFPasscodeView/DSFPasscodeView.swift:185:8: warning: call to main actor-isolated instance method 'removeAllCells()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
183 | self.delegate = nil
184 | self.characterValidatorBlock = nil
185 | self.removeAllCells()
| `- warning: call to main actor-isolated instance method 'removeAllCells()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
186 | }
187 |
:
341 | extension DSFPasscodeView {
342 |
343 | func removeAllCells() {
| `- note: calls to instance method 'removeAllCells()' from outside of its actor context are implicitly asynchronous
344 | self.cellViews.forEach { $0.removeFromSuperview() }
345 | self.cellViews = []
/Users/admin/builder/spi-builder-workspace/Sources/DSFPasscodeView/DSFPasscodeView.swift:183:17: warning: cannot access property 'delegate' with a non-sendable type '(any DSFPasscodeViewHandling)?' from non-isolated deinit; this is an error in the Swift 6 language mode
181 |
182 | deinit {
183 | self.delegate = nil
| `- warning: cannot access property 'delegate' with a non-sendable type '(any DSFPasscodeViewHandling)?' from non-isolated deinit; this is an error in the Swift 6 language mode
184 | self.characterValidatorBlock = nil
185 | self.removeAllCells()
/Users/admin/builder/spi-builder-workspace/Sources/DSFPasscodeView/DSFPasscodeView+Handling.swift:31:23: note: protocol 'DSFPasscodeViewHandling' does not conform to the 'Sendable' protocol
29 |
30 | /// Protocol for managing content within the Passcode control
31 | @objc public protocol DSFPasscodeViewHandling: NSObjectProtocol {
| `- note: protocol 'DSFPasscodeViewHandling' does not conform to the 'Sendable' protocol
32 | /// Called when the content of the passcode cells change.
33 | /// - Parameters:
<unknown>:0: note: a function type must be marked '@Sendable' to conform to 'Sendable'
/Users/admin/builder/spi-builder-workspace/Sources/DSFPasscodeView/DSFPasscodeView.swift:184:32: warning: cannot access property 'characterValidatorBlock' with a non-sendable type 'DSFPasscodeCharacterValidator?' (aka 'Optional<(Character) -> Optional<Character>>') from non-isolated deinit; this is an error in the Swift 6 language mode
182 | deinit {
183 | self.delegate = nil
184 | self.characterValidatorBlock = nil
| `- warning: cannot access property 'characterValidatorBlock' with a non-sendable type 'DSFPasscodeCharacterValidator?' (aka 'Optional<(Character) -> Optional<Character>>') from non-isolated deinit; this is an error in the Swift 6 language mode
185 | self.removeAllCells()
186 | }
Build complete! (35.58s)
Fetching https://github.com/dagronf/VIViewInvalidating
Fetching https://github.com/dagronf/DSFAppearanceManager
[1/135] Fetching viviewinvalidating
[136/516] Fetching viviewinvalidating, dsfappearancemanager
Fetched https://github.com/dagronf/DSFAppearanceManager from cache (1.23s)
Fetched https://github.com/dagronf/VIViewInvalidating from cache (1.23s)
Computing version for https://github.com/dagronf/VIViewInvalidating
Computed https://github.com/dagronf/VIViewInvalidating at 2.0.2 (0.66s)
Computing version for https://github.com/dagronf/DSFAppearanceManager
Computed https://github.com/dagronf/DSFAppearanceManager at 3.4.2 (0.66s)
Creating working copy for https://github.com/dagronf/VIViewInvalidating
Working copy of https://github.com/dagronf/VIViewInvalidating resolved at 2.0.2
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" : "viviewinvalidating",
"requirement" : {
"range" : [
{
"lower_bound" : "2.0.0",
"upper_bound" : "3.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/dagronf/VIViewInvalidating"
},
{
"identity" : "dsfappearancemanager",
"requirement" : {
"range" : [
{
"lower_bound" : "3.0.0",
"upper_bound" : "4.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/dagronf/DSFAppearanceManager"
}
],
"manifest_display_name" : "DSFPasscodeView",
"name" : "DSFPasscodeView",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "10.11"
}
],
"products" : [
{
"name" : "DSFPasscodeView",
"targets" : [
"DSFPasscodeView"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "DSFPasscodeViewTests",
"module_type" : "SwiftTarget",
"name" : "DSFPasscodeViewTests",
"path" : "Tests/DSFPasscodeViewTests",
"sources" : [
"DSFPasscodeViewTests.swift"
],
"target_dependencies" : [
"DSFPasscodeView"
],
"type" : "test"
},
{
"c99name" : "DSFPasscodeView",
"module_type" : "SwiftTarget",
"name" : "DSFPasscodeView",
"path" : "Sources/DSFPasscodeView",
"product_dependencies" : [
"VIViewInvalidating",
"DSFAppearanceManager"
],
"product_memberships" : [
"DSFPasscodeView"
],
"sources" : [
"DSFPasscodeView+Handling.swift",
"DSFPasscodeView.swift",
"private/DSFPasscodeView+Cell.swift",
"private/Localizations.swift",
"private/Utils.swift"
],
"type" : "library"
}
],
"tools_version" : "5.3"
}
Done.