The Swift Package Index logo.Swift Package Index

Track the adoption of Swift 6 strict concurrency checks for data race safety. How many packages are Ready for Swift 6?

Build Information

Successful build of ErrorReporter, reference 1.3.0 (0571a3), with Swift 6.1 for macOS (SPM) on 28 Apr 2025 19:09:44 UTC.

Swift 6 data race errors: 1

Build Command

env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures

Build Log

========================================
RunAll
========================================
Builder version: 4.61.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/CleanCocoa/ErrorHandling.git
Reference: 1.3.0
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/CleanCocoa/ErrorHandling
 * tag               1.3.0      -> FETCH_HEAD
HEAD is now at 0571a31 bump Swift version
Cloned https://github.com/CleanCocoa/ErrorHandling.git
Revision (git rev-parse @):
0571a3147f8f0e2c8f65d829f15d6cd9e60b7b49
SUCCESS checkout https://github.com/CleanCocoa/ErrorHandling.git at 1.3.0
========================================
ResolveProductDependencies
========================================
Resolving dependencies ...
{
  "identity": ".resolve-product-dependencies",
  "name": "resolve-dependencies",
  "url": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
  "version": "unspecified",
  "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
  "dependencies": [
    {
      "identity": "errorhandling",
      "name": "ErrorReporter",
      "url": "https://github.com/CleanCocoa/ErrorHandling.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/ErrorHandling",
      "dependencies": [
      ]
    }
  ]
}
Fetching https://github.com/CleanCocoa/ErrorHandling.git
[1/195] Fetching errorhandling
Fetched https://github.com/CleanCocoa/ErrorHandling.git from cache (0.82s)
Creating working copy for https://github.com/CleanCocoa/ErrorHandling.git
Working copy of https://github.com/CleanCocoa/ErrorHandling.git resolved at 1.3.0 (0571a31)
warning: '.resolve-product-dependencies': dependency 'errorhandling' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.1
Building package at path:  $PWD
https://github.com/CleanCocoa/ErrorHandling.git
https://github.com/CleanCocoa/ErrorHandling.git
{
  "dependencies" : [
  ],
  "manifest_display_name" : "ErrorReporter",
  "name" : "ErrorReporter",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "10.13"
    }
  ],
  "products" : [
    {
      "name" : "ErrorReporter",
      "targets" : [
        "ErrorReporter"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "ErrorReporter",
      "module_type" : "SwiftTarget",
      "name" : "ErrorReporter",
      "path" : "Sources/ErrorReporter",
      "product_memberships" : [
        "ErrorReporter"
      ],
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/ErrorReporter/Resources/PrivacyInfo.xcprivacy",
          "rule" : {
            "process" : {
            }
          }
        }
      ],
      "sources" : [
        "ErrorAlert.swift",
        "Optional.swift",
        "Report.swift",
        "TextEmailer.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/3] Write sources
[0/3] Copying PrivacyInfo.xcprivacy
[2/3] Write swift-version-2F0A5646E1D333AE.txt
[4/9] Compiling ErrorReporter resource_bundle_accessor.swift
[5/9] Compiling ErrorReporter Report.swift
[6/9] Compiling ErrorReporter TextEmailer.swift
[7/9] Compiling ErrorReporter Optional.swift
[8/9] Emitting module ErrorReporter
/Users/admin/builder/spi-builder-workspace/Sources/ErrorReporter/ErrorAlert.swift:52:23: warning: static property 'emailer' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 50 | public class ErrorAlert {
 51 |
 52 |     public static var emailer: ReportEmailer?
    |                       |- warning: static property 'emailer' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'emailer' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: add '@MainActor' to make static property 'emailer' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 53 |
 54 |     let reportable: Reportable
[9/9] Compiling ErrorReporter ErrorAlert.swift
/Users/admin/builder/spi-builder-workspace/Sources/ErrorReporter/ErrorAlert.swift:52:23: warning: static property 'emailer' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 50 | public class ErrorAlert {
 51 |
 52 |     public static var emailer: ReportEmailer?
    |                       |- warning: static property 'emailer' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'emailer' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: add '@MainActor' to make static property 'emailer' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 53 |
 54 |     let reportable: Reportable
/Users/admin/builder/spi-builder-workspace/Sources/ErrorReporter/ErrorAlert.swift:77:32: warning: call to main actor-isolated instance method 'runModal()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
 69 |
 70 |     /// - parameter instructions: Optional text prepended to the email message used to ask for details. Defaults to `nil`.
 71 |     public func displayModal(instructions: String? = nil) {
    |                 `- note: add '@MainActor' to make instance method 'displayModal(instructions:)' part of global actor 'MainActor'
 72 |
 73 |         guard !IsRunningTests else {
    :
 75 |         }
 76 |
 77 |         let response = alert().runModal()
    |                                `- warning: call to main actor-isolated instance method 'runModal()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
 78 |
 79 |         guard response == .alertFirstButtonReturn else { return }
AppKit.NSAlert.runModal:2:22: note: calls to instance method 'runModal()' from outside of its actor context are implicitly asynchronous
1 | class NSAlert {
2 | @MainActor open func runModal() -> NSApplication.ModalResponse}
  |                      `- note: calls to instance method 'runModal()' from outside of its actor context are implicitly asynchronous
3 |
/Users/admin/builder/spi-builder-workspace/Sources/ErrorReporter/ErrorAlert.swift:87:21: warning: call to main actor-isolated initializer 'init()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
 83 |     }
 84 |
 85 |     private func alert() -> NSAlert {
    |                  `- note: add '@MainActor' to make instance method 'alert()' part of global actor 'MainActor'
 86 |
 87 |         let alert = NSAlert()
    |                     `- warning: call to main actor-isolated initializer 'init()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
 88 |         alert.messageText = NSLocalizedString(
 89 |             "de.christiantietze.ErrorHandling alert title",
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include/objc/NSObject.h:66:1: note: calls to initializer 'init()' from outside of its actor context are implicitly asynchronous
 64 |
 65 | + (void)initialize;
 66 | - (instancetype)init
    | `- note: calls to initializer 'init()' from outside of its actor context are implicitly asynchronous
 67 | #if NS_ENFORCE_NSOBJECT_DESIGNATED_INITIALIZER
 68 |     NS_DESIGNATED_INITIALIZER
/Users/admin/builder/spi-builder-workspace/Sources/ErrorReporter/ErrorAlert.swift:88:15: warning: main actor-isolated property 'messageText' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
 83 |     }
 84 |
 85 |     private func alert() -> NSAlert {
    |                  `- note: add '@MainActor' to make instance method 'alert()' part of global actor 'MainActor'
 86 |
 87 |         let alert = NSAlert()
 88 |         alert.messageText = NSLocalizedString(
    |               `- warning: main actor-isolated property 'messageText' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
 89 |             "de.christiantietze.ErrorHandling alert title",
 90 |             value: "An unexpected error occured and the operation couldn't be completed.",
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSAlert.h:71:28: note: mutation of this property is only permitted within the actor
 69 | /// The text that is displayed prominently in the alert.
 70 | /// - Note: Use this string to get the user’s attention and communicate the reason for displaying the alert.
 71 | @property (copy) NSString *messageText;
    |                            `- note: mutation of this property is only permitted within the actor
 72 |
 73 | /// The descriptive text that provides more details about the reason for the alert.
/Users/admin/builder/spi-builder-workspace/Sources/ErrorReporter/ErrorAlert.swift:92:15: warning: main actor-isolated property 'informativeText' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
 83 |     }
 84 |
 85 |     private func alert() -> NSAlert {
    |                  `- note: add '@MainActor' to make instance method 'alert()' part of global actor 'MainActor'
 86 |
 87 |         let alert = NSAlert()
    :
 90 |             value: "An unexpected error occured and the operation couldn't be completed.",
 91 |             comment: "Alert title text")
 92 |         alert.informativeText = NSLocalizedString(
    |               `- warning: main actor-isolated property 'informativeText' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
 93 |             "de.christiantietze.ErrorHandling alert text",
 94 |             value: "The report will not be sent directly. Reporting the error will compose an email draft that you can edit. You can also edit in the text field below.",
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSAlert.h:75:28: note: mutation of this property is only permitted within the actor
 73 | /// The descriptive text that provides more details about the reason for the alert.
 74 | /// - Note: The informative text string is displayed below the message text and is less prominent. Use this string to provide additional context about the reason for the alert or about the actions that the user might take.
 75 | @property (copy) NSString *informativeText;
    |                            `- note: mutation of this property is only permitted within the actor
 76 |
 77 | // MARK: - Accessing a Custom Alert Icon
/Users/admin/builder/spi-builder-workspace/Sources/ErrorReporter/ErrorAlert.swift:97:34: warning: call to main actor-isolated instance method 'addButton(withTitle:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
 83 |     }
 84 |
 85 |     private func alert() -> NSAlert {
    |                  `- note: add '@MainActor' to make instance method 'alert()' part of global actor 'MainActor'
 86 |
 87 |         let alert = NSAlert()
    :
 95 |             comment: "Description of the reporting procedure")
 96 |
 97 |         let reportButton = alert.addButton(withTitle: NSLocalizedString(
    |                                  `- warning: call to main actor-isolated instance method 'addButton(withTitle:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
 98 |             "de.christiantietze.ErrorHandling report button title",
 99 |             value: "Report Problem",
AppKit.NSAlert.addButton:2:22: note: calls to instance method 'addButton(withTitle:)' from outside of its actor context are implicitly asynchronous
1 | class NSAlert {
2 | @MainActor open func addButton(withTitle title: String) -> NSButton}
  |                      `- note: calls to instance method 'addButton(withTitle:)' from outside of its actor context are implicitly asynchronous
3 |
/Users/admin/builder/spi-builder-workspace/Sources/ErrorReporter/ErrorAlert.swift:101:34: warning: call to main actor-isolated instance method 'addButton(withTitle:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
 83 |     }
 84 |
 85 |     private func alert() -> NSAlert {
    |                  `- note: add '@MainActor' to make instance method 'alert()' part of global actor 'MainActor'
 86 |
 87 |         let alert = NSAlert()
    :
 99 |             value: "Report Problem",
100 |             comment: "Default button to report the error"))
101 |         let cancelButton = alert.addButton(withTitle: NSLocalizedString(
    |                                  `- warning: call to main actor-isolated instance method 'addButton(withTitle:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
102 |             "de.christiantietze.ErrorHandling cancel button title",
103 |             value: "Ignore and Continue",
AppKit.NSAlert.addButton:2:22: note: calls to instance method 'addButton(withTitle:)' from outside of its actor context are implicitly asynchronous
1 | class NSAlert {
2 | @MainActor open func addButton(withTitle title: String) -> NSButton}
  |                      `- note: calls to instance method 'addButton(withTitle:)' from outside of its actor context are implicitly asynchronous
3 |
/Users/admin/builder/spi-builder-workspace/Sources/ErrorReporter/ErrorAlert.swift:105:22: warning: main actor-isolated property 'keyEquivalent' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
 83 |     }
 84 |
 85 |     private func alert() -> NSAlert {
    |                  `- note: add '@MainActor' to make instance method 'alert()' part of global actor 'MainActor'
 86 |
 87 |         let alert = NSAlert()
    :
103 |             value: "Ignore and Continue",
104 |             comment: "Cancel button, indicating that the app can continue"))
105 |         cancelButton.keyEquivalent = "."
    |                      `- warning: main actor-isolated property 'keyEquivalent' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
106 |         cancelButton.keyEquivalentModifierMask = [.command]
107 |
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSButton.h:162:28: note: mutation of this property is only permitted within the actor
160 |
161 | /*! This property contains the button's key equivalent, or the empty string if no equivalent has been defined. Buttons don’t have a default key equivalent. Setting the key equivalent to the Return character causes it to act as the default button for its window. */
162 | @property (copy) NSString *keyEquivalent;
    |                            `- note: mutation of this property is only permitted within the actor
163 |
164 | /*! A bitmask specifying the modifier keys that are applied to the button's key equivalent. Mask bits are defined by the NSEventModifierFlags option set. The only mask bits relevant in button key-equivalent modifier masks are NSEventModifierFlagControl, NSEventModifierFlagOption, and NSEventModifierFlagCommand. */
/Users/admin/builder/spi-builder-workspace/Sources/ErrorReporter/ErrorAlert.swift:106:22: warning: main actor-isolated property 'keyEquivalentModifierMask' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
 83 |     }
 84 |
 85 |     private func alert() -> NSAlert {
    |                  `- note: add '@MainActor' to make instance method 'alert()' part of global actor 'MainActor'
 86 |
 87 |         let alert = NSAlert()
    :
104 |             comment: "Cancel button, indicating that the app can continue"))
105 |         cancelButton.keyEquivalent = "."
106 |         cancelButton.keyEquivalentModifierMask = [.command]
    |                      `- warning: main actor-isolated property 'keyEquivalentModifierMask' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
107 |
108 |         alert.accessoryView = scrollableErrorView()
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSButton.h:165:32: note: mutation of this property is only permitted within the actor
163 |
164 | /*! A bitmask specifying the modifier keys that are applied to the button's key equivalent. Mask bits are defined by the NSEventModifierFlags option set. The only mask bits relevant in button key-equivalent modifier masks are NSEventModifierFlagControl, NSEventModifierFlagOption, and NSEventModifierFlagCommand. */
165 | @property NSEventModifierFlags keyEquivalentModifierMask;
    |                                `- note: mutation of this property is only permitted within the actor
166 |
167 | /*! If the event parameter matches the button's key equivalent, the button briefly highlights and performs its action, and then returns YES. Otherwise, returns NO. */
/Users/admin/builder/spi-builder-workspace/Sources/ErrorReporter/ErrorAlert.swift:108:15: warning: main actor-isolated property 'accessoryView' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
 83 |     }
 84 |
 85 |     private func alert() -> NSAlert {
    |                  `- note: add '@MainActor' to make instance method 'alert()' part of global actor 'MainActor'
 86 |
 87 |         let alert = NSAlert()
    :
106 |         cancelButton.keyEquivalentModifierMask = [.command]
107 |
108 |         alert.accessoryView = scrollableErrorView()
    |               `- warning: main actor-isolated property 'accessoryView' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
109 |         alert.window.initialFirstResponder = reportButton
110 |
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSAlert.h:127:38: note: mutation of this property is only permitted within the actor
125 |
126 | /// The accessory view displayed in the alert, placed between the informative text or suppression checkbox (if present) and the response buttons. Before changing the location of the accessory view, first call the `-layout` method.
127 | @property (nullable, strong) NSView *accessoryView API_AVAILABLE(macos(10.5));
    |                                      `- note: mutation of this property is only permitted within the actor
128 |
129 | /// Specifies that the alert must do immediate layout instead of lazily just before display.
/Users/admin/builder/spi-builder-workspace/Sources/ErrorReporter/ErrorAlert.swift:109:22: warning: main actor-isolated property 'initialFirstResponder' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
 83 |     }
 84 |
 85 |     private func alert() -> NSAlert {
    |                  `- note: add '@MainActor' to make instance method 'alert()' part of global actor 'MainActor'
 86 |
 87 |         let alert = NSAlert()
    :
107 |
108 |         alert.accessoryView = scrollableErrorView()
109 |         alert.window.initialFirstResponder = reportButton
    |                      `- warning: main actor-isolated property 'initialFirstResponder' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
110 |
111 |         return alert
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSWindow.h:665:36: note: mutation of this property is only permitted within the actor
 663 | #pragma mark - Keyboard UI support (Key View Loop)
 664 |
 665 | @property (nullable, weak) NSView *initialFirstResponder;
     |                                    `- note: mutation of this property is only permitted within the actor
 666 | - (void)selectNextKeyView:(nullable id)sender;
 667 | - (void)selectPreviousKeyView:(nullable id)sender;
/Users/admin/builder/spi-builder-workspace/Sources/ErrorReporter/ErrorAlert.swift:109:15: warning: main actor-isolated property 'window' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
 83 |     }
 84 |
 85 |     private func alert() -> NSAlert {
    |                  `- note: add '@MainActor' to make instance method 'alert()' part of global actor 'MainActor'
 86 |
 87 |         let alert = NSAlert()
    :
107 |
108 |         alert.accessoryView = scrollableErrorView()
109 |         alert.window.initialFirstResponder = reportButton
    |               `- warning: main actor-isolated property 'window' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
110 |
111 |         return alert
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSAlert.h:162:40: note: mutation of this property is only permitted within the actor
160 |
161 | /// The app-modal panel or document-modal sheet that corresponds to the alert
162 | @property (readonly, strong) NSWindow *window;
    |                                        `- note: mutation of this property is only permitted within the actor
163 |
164 | @end
/Users/admin/builder/spi-builder-workspace/Sources/ErrorReporter/ErrorAlert.swift:116:26: warning: call to main actor-isolated initializer 'init(frame:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
112 |     }
113 |
114 |     private func scrollableErrorView() -> NSScrollView {
    |                  `- note: add '@MainActor' to make instance method 'scrollableErrorView()' part of global actor 'MainActor'
115 |
116 |         let scrollView = NSScrollView(frame: NSRect(x: 0, y: 0, width: 400, height: 150))
    |                          `- warning: call to main actor-isolated initializer 'init(frame:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
117 |         scrollView.hasVerticalScroller = true
118 |         scrollView.autohidesScrollers = true
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSScrollView.h:27:1: note: calls to initializer 'init(frame:)' from outside of its actor context are implicitly asynchronous
 25 | @interface NSScrollView : NSView <NSTextFinderBarContainer>
 26 |
 27 | - (instancetype)initWithFrame:(NSRect)frameRect NS_DESIGNATED_INITIALIZER;
    | |- note: calls to initializer 'init(frame:)' from outside of its actor context are implicitly asynchronous
    | `- note: main actor isolation inferred from inheritance from class 'NSView'
 28 | - (nullable instancetype)initWithCoder:(NSCoder *)coder NS_DESIGNATED_INITIALIZER;
 29 |
/Users/admin/builder/spi-builder-workspace/Sources/ErrorReporter/ErrorAlert.swift:117:20: warning: main actor-isolated property 'hasVerticalScroller' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
112 |     }
113 |
114 |     private func scrollableErrorView() -> NSScrollView {
    |                  `- note: add '@MainActor' to make instance method 'scrollableErrorView()' part of global actor 'MainActor'
115 |
116 |         let scrollView = NSScrollView(frame: NSRect(x: 0, y: 0, width: 400, height: 150))
117 |         scrollView.hasVerticalScroller = true
    |                    `- warning: main actor-isolated property 'hasVerticalScroller' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
118 |         scrollView.autohidesScrollers = true
119 |         scrollView.borderType = NSBorderType.bezelBorder
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSScrollView.h:54:16: note: mutation of this property is only permitted within the actor
 52 | @property (copy) NSColor *backgroundColor;
 53 | @property BOOL drawsBackground;
 54 | @property BOOL hasVerticalScroller;
    |                `- note: mutation of this property is only permitted within the actor
 55 | @property BOOL hasHorizontalScroller;
 56 | @property (nullable, strong) NSScroller *verticalScroller;
/Users/admin/builder/spi-builder-workspace/Sources/ErrorReporter/ErrorAlert.swift:118:20: warning: main actor-isolated property 'autohidesScrollers' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
112 |     }
113 |
114 |     private func scrollableErrorView() -> NSScrollView {
    |                  `- note: add '@MainActor' to make instance method 'scrollableErrorView()' part of global actor 'MainActor'
115 |
116 |         let scrollView = NSScrollView(frame: NSRect(x: 0, y: 0, width: 400, height: 150))
117 |         scrollView.hasVerticalScroller = true
118 |         scrollView.autohidesScrollers = true
    |                    `- warning: main actor-isolated property 'autohidesScrollers' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
119 |         scrollView.borderType = NSBorderType.bezelBorder
120 |         scrollView.autoresizingMask = [ .width, .height ]
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSScrollView.h:58:16: note: mutation of this property is only permitted within the actor
 56 | @property (nullable, strong) NSScroller *verticalScroller;
 57 | @property (nullable, strong) NSScroller *horizontalScroller;
 58 | @property BOOL autohidesScrollers;
    |                `- note: mutation of this property is only permitted within the actor
 59 | @property CGFloat horizontalLineScroll;
 60 | @property CGFloat verticalLineScroll;
/Users/admin/builder/spi-builder-workspace/Sources/ErrorReporter/ErrorAlert.swift:119:20: warning: main actor-isolated property 'borderType' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
112 |     }
113 |
114 |     private func scrollableErrorView() -> NSScrollView {
    |                  `- note: add '@MainActor' to make instance method 'scrollableErrorView()' part of global actor 'MainActor'
115 |
116 |         let scrollView = NSScrollView(frame: NSRect(x: 0, y: 0, width: 400, height: 150))
117 |         scrollView.hasVerticalScroller = true
118 |         scrollView.autohidesScrollers = true
119 |         scrollView.borderType = NSBorderType.bezelBorder
    |                    `- warning: main actor-isolated property 'borderType' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
120 |         scrollView.autoresizingMask = [ .width, .height ]
121 |
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSScrollView.h:51:24: note: mutation of this property is only permitted within the actor
 49 | @property (strong) NSClipView *contentView;
 50 | @property (nullable, strong) NSCursor *documentCursor;
 51 | @property NSBorderType borderType;
    |                        `- note: mutation of this property is only permitted within the actor
 52 | @property (copy) NSColor *backgroundColor;
 53 | @property BOOL drawsBackground;
/Users/admin/builder/spi-builder-workspace/Sources/ErrorReporter/ErrorAlert.swift:120:20: warning: main actor-isolated property 'autoresizingMask' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
112 |     }
113 |
114 |     private func scrollableErrorView() -> NSScrollView {
    |                  `- note: add '@MainActor' to make instance method 'scrollableErrorView()' part of global actor 'MainActor'
115 |
116 |         let scrollView = NSScrollView(frame: NSRect(x: 0, y: 0, width: 400, height: 150))
    :
118 |         scrollView.autohidesScrollers = true
119 |         scrollView.borderType = NSBorderType.bezelBorder
120 |         scrollView.autoresizingMask = [ .width, .height ]
    |                    `- warning: main actor-isolated property 'autoresizingMask' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
121 |
122 |         let contentSize = scrollView.contentSize
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSView.h:125:37: note: mutation of this property is only permitted within the actor
123 | - (void)resizeWithOldSuperviewSize:(NSSize)oldSize;
124 | @property BOOL autoresizesSubviews;
125 | @property NSAutoresizingMaskOptions autoresizingMask;
    |                                     `- note: mutation of this property is only permitted within the actor
126 |
127 | - (void)setFrameOrigin:(NSPoint)newOrigin;
/Users/admin/builder/spi-builder-workspace/Sources/ErrorReporter/ErrorAlert.swift:122:38: warning: main actor-isolated property 'contentSize' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
112 |     }
113 |
114 |     private func scrollableErrorView() -> NSScrollView {
    |                  `- note: add '@MainActor' to make instance method 'scrollableErrorView()' part of global actor 'MainActor'
115 |
116 |         let scrollView = NSScrollView(frame: NSRect(x: 0, y: 0, width: 400, height: 150))
    :
120 |         scrollView.autoresizingMask = [ .width, .height ]
121 |
122 |         let contentSize = scrollView.contentSize
    |                                      `- warning: main actor-isolated property 'contentSize' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
123 |         scrollView.documentView = errorTextView(contentSize: contentSize)
124 |
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSScrollView.h:47:29: note: property declared here
 45 |
 46 | @property (readonly) NSRect documentVisibleRect;
 47 | @property (readonly) NSSize contentSize;
    |                             `- note: property declared here
 48 | @property (nullable, strong) __kindof NSView *documentView;
 49 | @property (strong) NSClipView *contentView;
/Users/admin/builder/spi-builder-workspace/Sources/ErrorReporter/ErrorAlert.swift:123:20: warning: main actor-isolated property 'documentView' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
112 |     }
113 |
114 |     private func scrollableErrorView() -> NSScrollView {
    |                  `- note: add '@MainActor' to make instance method 'scrollableErrorView()' part of global actor 'MainActor'
115 |
116 |         let scrollView = NSScrollView(frame: NSRect(x: 0, y: 0, width: 400, height: 150))
    :
121 |
122 |         let contentSize = scrollView.contentSize
123 |         scrollView.documentView = errorTextView(contentSize: contentSize)
    |                    `- warning: main actor-isolated property 'documentView' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
124 |
125 |         return scrollView
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSScrollView.h:48:47: note: mutation of this property is only permitted within the actor
 46 | @property (readonly) NSRect documentVisibleRect;
 47 | @property (readonly) NSSize contentSize;
 48 | @property (nullable, strong) __kindof NSView *documentView;
    |                                               `- note: mutation of this property is only permitted within the actor
 49 | @property (strong) NSClipView *contentView;
 50 | @property (nullable, strong) NSCursor *documentCursor;
/Users/admin/builder/spi-builder-workspace/Sources/ErrorReporter/ErrorAlert.swift:130:24: warning: call to main actor-isolated initializer 'init(frame:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
126 |     }
127 |
128 |     private func errorTextView(contentSize: NSSize) -> NSTextView {
    |                  `- note: add '@MainActor' to make instance method 'errorTextView(contentSize:)' part of global actor 'MainActor'
129 |
130 |         let textView = NSTextView(frame: NSRect(x: 0, y: 0, width: contentSize.width, height: contentSize.height))
    |                        `- warning: call to main actor-isolated initializer 'init(frame:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
131 |         textView.isVerticallyResizable = true
132 |         textView.isEditable = true
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSTextView.h:86:1: note: calls to initializer 'init(frame:)' from outside of its actor context are implicitly asynchronous
 84 |
 85 | // This variant will create the text network (textStorage, layoutManager, and a container).
 86 | - (instancetype)initWithFrame:(NSRect)frameRect;
    | |- note: calls to initializer 'init(frame:)' from outside of its actor context are implicitly asynchronous
    | `- note: main actor isolation inferred from inheritance from class 'NSText'
 87 |
 88 | // Return a new instance of NSTextView. This method constructs a network of TextKit 2 objects (NSTextLayoutManager, NSTextContentManager) or TextKit 1 objects (NSLayoutManager, NSTextStorage) to back the text view, depending on the value of 'usingTextLayoutManager'. The new text view is initialized with frame NSZeroRect.
/Users/admin/builder/spi-builder-workspace/Sources/ErrorReporter/ErrorAlert.swift:131:18: warning: main actor-isolated property 'isVerticallyResizable' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
126 |     }
127 |
128 |     private func errorTextView(contentSize: NSSize) -> NSTextView {
    |                  `- note: add '@MainActor' to make instance method 'errorTextView(contentSize:)' part of global actor 'MainActor'
129 |
130 |         let textView = NSTextView(frame: NSRect(x: 0, y: 0, width: contentSize.width, height: contentSize.height))
131 |         textView.isVerticallyResizable = true
    |                  `- warning: main actor-isolated property 'isVerticallyResizable' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
132 |         textView.isEditable = true
133 |         textView.textContainer?.containerSize = NSSize(width: contentSize.width, height: CGFloat.greatestFiniteMagnitude)
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSText.h:113:47: note: mutation of this property is only permitted within the actor
111 |
112 | @property (getter=isHorizontallyResizable) BOOL horizontallyResizable;
113 | @property (getter=isVerticallyResizable) BOOL verticallyResizable;
    |                                               `- note: mutation of this property is only permitted within the actor
114 |
115 | - (void)sizeToFit;
/Users/admin/builder/spi-builder-workspace/Sources/ErrorReporter/ErrorAlert.swift:132:18: warning: main actor-isolated property 'isEditable' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
126 |     }
127 |
128 |     private func errorTextView(contentSize: NSSize) -> NSTextView {
    |                  `- note: add '@MainActor' to make instance method 'errorTextView(contentSize:)' part of global actor 'MainActor'
129 |
130 |         let textView = NSTextView(frame: NSRect(x: 0, y: 0, width: contentSize.width, height: contentSize.height))
131 |         textView.isVerticallyResizable = true
132 |         textView.isEditable = true
    |                  `- warning: main actor-isolated property 'isEditable' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
133 |         textView.textContainer?.containerSize = NSSize(width: contentSize.width, height: CGFloat.greatestFiniteMagnitude)
134 |         textView.textContainer?.widthTracksTextView = true
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSTextView.h:414:36: note: mutation of this property is only permitted within the actor
412 |
413 | @property (nullable, weak) id<NSTextViewDelegate> delegate;
414 | @property (getter=isEditable) BOOL editable;
    |                                    `- note: mutation of this property is only permitted within the actor
415 | @property (getter=isSelectable) BOOL selectable;
416 | @property (getter=isRichText) BOOL richText;
/Users/admin/builder/spi-builder-workspace/Sources/ErrorReporter/ErrorAlert.swift:133:18: warning: main actor-isolated property 'textContainer' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
126 |     }
127 |
128 |     private func errorTextView(contentSize: NSSize) -> NSTextView {
    |                  `- note: add '@MainActor' to make instance method 'errorTextView(contentSize:)' part of global actor 'MainActor'
129 |
130 |         let textView = NSTextView(frame: NSRect(x: 0, y: 0, width: contentSize.width, height: contentSize.height))
131 |         textView.isVerticallyResizable = true
132 |         textView.isEditable = true
133 |         textView.textContainer?.containerSize = NSSize(width: contentSize.width, height: CGFloat.greatestFiniteMagnitude)
    |                  `- warning: main actor-isolated property 'textContainer' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
134 |         textView.textContainer?.widthTracksTextView = true
135 |
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSTextView.h:97:47: note: property declared here
 95 |
 96 | // The set method should not be called directly, but you might want to override it.  Gets or sets the text container for this view.  Setting the text container marks the view as needing display.  The text container calls the set method from its setTextView: method.
 97 | @property (nullable, assign) NSTextContainer *textContainer;
    |                                               `- note: property declared here
 98 |
 99 | // This method should be used instead of the primitive -setTextContainer: if you need to replace a view's text container with a new one leaving the rest of the web intact.  This method deals with all the work of making sure the view doesn't get deallocated and removing the old container from the layoutManager and replacing it with the new one.
/Users/admin/builder/spi-builder-workspace/Sources/ErrorReporter/ErrorAlert.swift:134:18: warning: main actor-isolated property 'textContainer' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
126 |     }
127 |
128 |     private func errorTextView(contentSize: NSSize) -> NSTextView {
    |                  `- note: add '@MainActor' to make instance method 'errorTextView(contentSize:)' part of global actor 'MainActor'
129 |
130 |         let textView = NSTextView(frame: NSRect(x: 0, y: 0, width: contentSize.width, height: contentSize.height))
    :
132 |         textView.isEditable = true
133 |         textView.textContainer?.containerSize = NSSize(width: contentSize.width, height: CGFloat.greatestFiniteMagnitude)
134 |         textView.textContainer?.widthTracksTextView = true
    |                  `- warning: main actor-isolated property 'textContainer' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
135 |
136 |         textView.string = "Reported error: \(reportable.localizedDescription)\n\n\(reportable.debugDescription)"
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSTextView.h:97:47: note: property declared here
 95 |
 96 | // The set method should not be called directly, but you might want to override it.  Gets or sets the text container for this view.  Setting the text container marks the view as needing display.  The text container calls the set method from its setTextView: method.
 97 | @property (nullable, assign) NSTextContainer *textContainer;
    |                                               `- note: property declared here
 98 |
 99 | // This method should be used instead of the primitive -setTextContainer: if you need to replace a view's text container with a new one leaving the rest of the web intact.  This method deals with all the work of making sure the view doesn't get deallocated and removing the old container from the layoutManager and replacing it with the new one.
/Users/admin/builder/spi-builder-workspace/Sources/ErrorReporter/ErrorAlert.swift:136:18: warning: main actor-isolated property 'string' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
126 |     }
127 |
128 |     private func errorTextView(contentSize: NSSize) -> NSTextView {
    |                  `- note: add '@MainActor' to make instance method 'errorTextView(contentSize:)' part of global actor 'MainActor'
129 |
130 |         let textView = NSTextView(frame: NSRect(x: 0, y: 0, width: contentSize.width, height: contentSize.height))
    :
134 |         textView.textContainer?.widthTracksTextView = true
135 |
136 |         textView.string = "Reported error: \(reportable.localizedDescription)\n\n\(reportable.debugDescription)"
    |                  `- warning: main actor-isolated property 'string' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
137 |
138 |         return textView
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSText.h:69:28: note: mutation of this property is only permitted within the actor
 67 | - (nullable instancetype)initWithCoder:(NSCoder *)coder NS_DESIGNATED_INITIALIZER;
 68 |
 69 | @property (copy) NSString *string;
    |                            `- note: mutation of this property is only permitted within the actor
 70 |
 71 | - (void)replaceCharactersInRange:(NSRange)range withString:(NSString *)string;
Build complete! (6.41s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "ErrorReporter",
  "name" : "ErrorReporter",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "10.13"
    }
  ],
  "products" : [
    {
      "name" : "ErrorReporter",
      "targets" : [
        "ErrorReporter"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "ErrorReporter",
      "module_type" : "SwiftTarget",
      "name" : "ErrorReporter",
      "path" : "Sources/ErrorReporter",
      "product_memberships" : [
        "ErrorReporter"
      ],
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/ErrorReporter/Resources/PrivacyInfo.xcprivacy",
          "rule" : {
            "process" : {
            }
          }
        }
      ],
      "sources" : [
        "ErrorAlert.swift",
        "Optional.swift",
        "Report.swift",
        "TextEmailer.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.6"
}
Done.