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 OAuth2, reference 5.3.5 (3f6a18), with Swift 6.1 for macOS (SPM) on 28 Apr 2025 10:58:10 UTC.

Swift 6 data race errors: 4

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/p2/OAuth2.git
Reference: 5.3.5
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/p2/OAuth2
 * tag               5.3.5      -> FETCH_HEAD
HEAD is now at 3f6a18b Fix visionOS build, bump to 5.3.5
Submodule path 'SwiftKeychain': checked out 'a7fee4ba90cc77705f979ba14daa26fc39ef3c65'
Submodule 'SwiftKeychain' (https://github.com/p2/SwiftKeychain) registered for path 'SwiftKeychain'
Cloning into '/Users/admin/builder/spi-builder-workspace/SwiftKeychain'...
Cloned https://github.com/p2/OAuth2.git
Revision (git rev-parse @):
3f6a18beb221636581e66d8d0cbec1a3948b4df3
SUCCESS checkout https://github.com/p2/OAuth2.git at 5.3.5
========================================
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": "oauth2",
      "name": "OAuth2",
      "url": "https://github.com/p2/OAuth2.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/OAuth2",
      "dependencies": [
      ]
    }
  ]
}
Fetching https://github.com/p2/OAuth2.git
[1/6227] Fetching oauth2
Fetched https://github.com/p2/OAuth2.git from cache (1.30s)
Creating working copy for https://github.com/p2/OAuth2.git
Working copy of https://github.com/p2/OAuth2.git resolved at 5.3.5 (3f6a18b)
warning: '.resolve-product-dependencies': dependency 'oauth2' 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/p2/OAuth2.git
https://github.com/p2/OAuth2.git
{
  "dependencies" : [
  ],
  "manifest_display_name" : "OAuth2",
  "name" : "OAuth2",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "10.15"
    },
    {
      "name" : "ios",
      "version" : "12.0"
    },
    {
      "name" : "tvos",
      "version" : "12.0"
    },
    {
      "name" : "watchos",
      "version" : "5.0"
    }
  ],
  "products" : [
    {
      "name" : "OAuth2",
      "targets" : [
        "OAuth2"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "tvOS",
      "module_type" : "SwiftTarget",
      "name" : "tvOS",
      "path" : "Sources/tvOS",
      "product_memberships" : [
        "OAuth2"
      ],
      "sources" : [
        "OAuth2Authorizer+tvOS.swift",
        "OAuth2CustomAuthorizer+tvOS.swift"
      ],
      "target_dependencies" : [
        "Base"
      ],
      "type" : "library"
    },
    {
      "c99name" : "macOS",
      "module_type" : "SwiftTarget",
      "name" : "macOS",
      "path" : "Sources/macOS",
      "product_memberships" : [
        "OAuth2"
      ],
      "sources" : [
        "OAuth2Authorizer+macOS.swift",
        "OAuth2CustomAuthorizer+macOS.swift",
        "OAuth2WebViewController+macOS.swift"
      ],
      "target_dependencies" : [
        "Base"
      ],
      "type" : "library"
    },
    {
      "c99name" : "iOS",
      "module_type" : "SwiftTarget",
      "name" : "iOS",
      "path" : "Sources/iOS",
      "product_memberships" : [
        "OAuth2"
      ],
      "sources" : [
        "OAuth2Authorizer+iOS.swift",
        "OAuth2CustomAuthorizer+iOS.swift",
        "OAuth2WebViewController+iOS.swift"
      ],
      "target_dependencies" : [
        "Base"
      ],
      "type" : "library"
    },
    {
      "c99name" : "SwiftKeychain",
      "module_type" : "SwiftTarget",
      "name" : "SwiftKeychain",
      "path" : "Sources/SwiftKeychain",
      "product_memberships" : [
        "OAuth2"
      ],
      "sources" : [
        "Keychain.swift"
      ],
      "type" : "library"
    },
    {
      "c99name" : "OAuth2",
      "module_type" : "SwiftTarget",
      "name" : "OAuth2",
      "path" : "Sources/OAuth2",
      "product_memberships" : [
        "OAuth2"
      ],
      "sources" : [
        "OAuth2Module.swift"
      ],
      "target_dependencies" : [
        "Base",
        "Flows",
        "DataLoader"
      ],
      "type" : "library"
    },
    {
      "c99name" : "Flows",
      "module_type" : "SwiftTarget",
      "name" : "Flows",
      "path" : "Sources/Flows",
      "product_memberships" : [
        "OAuth2"
      ],
      "sources" : [
        "OAuth2.swift",
        "OAuth2ClientCredentials.swift",
        "OAuth2ClientCredentialsReddit.swift",
        "OAuth2CodeGrant.swift",
        "OAuth2CodeGrantAzure.swift",
        "OAuth2CodeGrantBasicAuth.swift",
        "OAuth2CodeGrantFacebook.swift",
        "OAuth2CodeGrantLinkedIn.swift",
        "OAuth2CodeGrantNoTokenType.swift",
        "OAuth2DeviceGrant.swift",
        "OAuth2DynReg.swift",
        "OAuth2ImplicitGrant.swift",
        "OAuth2ImplicitGrantWithQueryParams.swift",
        "OAuth2PasswordGrant.swift"
      ],
      "target_dependencies" : [
        "macOS",
        "iOS",
        "tvOS"
      ],
      "type" : "library"
    },
    {
      "c99name" : "FlowTests",
      "module_type" : "SwiftTarget",
      "name" : "FlowTests",
      "path" : "Tests/FlowTests",
      "sources" : [
        "OAuth2ClientCredentialsTests.swift",
        "OAuth2CodeGrantTests.swift",
        "OAuth2DeviceGrantTests.swift",
        "OAuth2DynRegTests.swift",
        "OAuth2ImplicitGrantTests.swift",
        "OAuth2PasswordGrantTests.swift",
        "OAuth2RefreshTokenTests.swift"
      ],
      "target_dependencies" : [
        "Flows"
      ],
      "type" : "test"
    },
    {
      "c99name" : "DataLoader",
      "module_type" : "SwiftTarget",
      "name" : "DataLoader",
      "path" : "Sources/DataLoader",
      "product_memberships" : [
        "OAuth2"
      ],
      "sources" : [
        "OAuth2DataLoader.swift",
        "OAuth2DataLoaderSessionTaskDelegate.swift",
        "OAuth2DataRequest.swift"
      ],
      "target_dependencies" : [
        "Flows"
      ],
      "type" : "library"
    },
    {
      "c99name" : "BaseTests",
      "module_type" : "SwiftTarget",
      "name" : "BaseTests",
      "path" : "Tests/BaseTests",
      "sources" : [
        "OAuth2AuthRequestTests.swift",
        "OAuth2Tests.swift"
      ],
      "target_dependencies" : [
        "Base",
        "Flows"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Base",
      "module_type" : "SwiftTarget",
      "name" : "Base",
      "path" : "Sources/Base",
      "product_memberships" : [
        "OAuth2"
      ],
      "sources" : [
        "OAuth2AuthConfig.swift",
        "OAuth2AuthRequest.swift",
        "OAuth2AuthorizerUI.swift",
        "OAuth2Base.swift",
        "OAuth2ClientConfig.swift",
        "OAuth2CustomAuthorizerUI.swift",
        "OAuth2DebugURLSessionDelegate.swift",
        "OAuth2Error.swift",
        "OAuth2KeychainAccount.swift",
        "OAuth2Logger.swift",
        "OAuth2RequestPerformer.swift",
        "OAuth2Requestable.swift",
        "OAuth2Response.swift",
        "OAuth2Securable.swift",
        "extensions.swift"
      ],
      "target_dependencies" : [
        "SwiftKeychain"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.3"
}
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/9] Write sources
[8/9] Write swift-version-2F0A5646E1D333AE.txt
[10/11] Emitting module SwiftKeychain
[11/11] Compiling SwiftKeychain Keychain.swift
/Users/admin/builder/spi-builder-workspace/Sources/SwiftKeychain/Keychain.swift:49:44: warning: 'archivedData(withRootObject:)' was deprecated in macOS 10.14: Use +archivedDataWithRootObject:requiringSecureCoding:error: instead
 47 |
 48 |         var itemAttributes = attributes
 49 |         let archivedData = NSKeyedArchiver.archivedData(withRootObject: dataToStore)
    |                                            `- warning: 'archivedData(withRootObject:)' was deprecated in macOS 10.14: Use +archivedDataWithRootObject:requiringSecureCoding:error: instead
 50 |
 51 |         itemAttributes[String(kSecValueData)] = archivedData
/Users/admin/builder/spi-builder-workspace/Sources/SwiftKeychain/Keychain.swift:65:34: warning: 'unarchiveObject(with:)' was deprecated in macOS 10.14: Use +unarchivedObjectOfClass:fromData:error: instead
 63 |         guard let valueData = attributes[String(kSecValueData)] as? Data else { return nil }
 64 |
 65 |         return NSKeyedUnarchiver.unarchiveObject(with: valueData) as? [String: Any] ?? nil
    |                                  `- warning: 'unarchiveObject(with:)' was deprecated in macOS 10.14: Use +unarchivedObjectOfClass:fromData:error: instead
 66 |     }
 67 |
[12/26] Compiling Base OAuth2DebugURLSessionDelegate.swift
/Users/admin/builder/spi-builder-workspace/Sources/Base/OAuth2DebugURLSessionDelegate.swift:31:12: warning: non-final class 'OAuth2DebugURLSessionDelegate' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
29 | Store. You have been warned!
30 | */
31 | open class OAuth2DebugURLSessionDelegate: NSObject, URLSessionDelegate {
   |            `- warning: non-final class 'OAuth2DebugURLSessionDelegate' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
32 |
33 | 	/// The host to allow a self-signed SSL certificate for.
[13/26] Compiling Base OAuth2Error.swift
/Users/admin/builder/spi-builder-workspace/Sources/Base/OAuth2DebugURLSessionDelegate.swift:31:12: warning: non-final class 'OAuth2DebugURLSessionDelegate' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
29 | Store. You have been warned!
30 | */
31 | open class OAuth2DebugURLSessionDelegate: NSObject, URLSessionDelegate {
   |            `- warning: non-final class 'OAuth2DebugURLSessionDelegate' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
32 |
33 | 	/// The host to allow a self-signed SSL certificate for.
[14/27] Compiling Base OAuth2Securable.swift
[15/27] Compiling Base OAuth2Response.swift
[16/27] Compiling Base OAuth2AuthConfig.swift
[17/27] Compiling Base OAuth2AuthRequest.swift
[18/27] Compiling Base OAuth2Requestable.swift
[19/27] Compiling Base OAuth2RequestPerformer.swift
/Users/admin/builder/spi-builder-workspace/Sources/Base/OAuth2RequestPerformer.swift:57:65: warning: passing non-sendable parameter 'completionHandler' to function expecting a @Sendable closure
54 | 	*/
55 | 	@discardableResult
56 | 	open func perform(request: URLRequest, completionHandler: @escaping (Data?, URLResponse?, Error?) -> Void) -> URLSessionTask? {
   |                                         `- note: parameter 'completionHandler' is implicitly non-sendable
57 | 		let task = session.dataTask(with: request, completionHandler: completionHandler)
   |                                                                 `- warning: passing non-sendable parameter 'completionHandler' to function expecting a @Sendable closure
58 | 		task.resume()
59 | 		return task
[20/27] Emitting module Base
/Users/admin/builder/spi-builder-workspace/Sources/Base/OAuth2DebugURLSessionDelegate.swift:31:12: warning: non-final class 'OAuth2DebugURLSessionDelegate' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
29 | Store. You have been warned!
30 | */
31 | open class OAuth2DebugURLSessionDelegate: NSObject, URLSessionDelegate {
   |            `- warning: non-final class 'OAuth2DebugURLSessionDelegate' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
32 |
33 | 	/// The host to allow a self-signed SSL certificate for.
/Users/admin/builder/spi-builder-workspace/Sources/Base/extensions.swift:37:25: warning: static property 'wwwFormURLPlusSpaceCharacterSet' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 35 | extension String {
 36 |
 37 | 	fileprivate static var wwwFormURLPlusSpaceCharacterSet: CharacterSet = CharacterSet.wwwFormURLPlusSpaceCharacterSet
    |                         |- warning: static property 'wwwFormURLPlusSpaceCharacterSet' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                         |- note: convert 'wwwFormURLPlusSpaceCharacterSet' to a 'let' constant to make 'Sendable' shared state immutable
    |                         |- note: add '@MainActor' to make static property 'wwwFormURLPlusSpaceCharacterSet' part of global actor 'MainActor'
    |                         `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 38 |
 39 | 	/// Encodes a string to become x-www-form-urlencoded; the space is encoded as plus sign (+).
[21/27] Compiling Base OAuth2ClientConfig.swift
[22/27] Compiling Base OAuth2CustomAuthorizerUI.swift
[23/27] Compiling Base OAuth2KeychainAccount.swift
[24/27] Compiling Base OAuth2Logger.swift
[25/27] Compiling Base OAuth2AuthorizerUI.swift
[26/27] Compiling Base OAuth2Base.swift
[27/27] Compiling Base extensions.swift
/Users/admin/builder/spi-builder-workspace/Sources/Base/extensions.swift:37:25: warning: static property 'wwwFormURLPlusSpaceCharacterSet' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 35 | extension String {
 36 |
 37 | 	fileprivate static var wwwFormURLPlusSpaceCharacterSet: CharacterSet = CharacterSet.wwwFormURLPlusSpaceCharacterSet
    |                         |- warning: static property 'wwwFormURLPlusSpaceCharacterSet' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                         |- note: convert 'wwwFormURLPlusSpaceCharacterSet' to a 'let' constant to make 'Sendable' shared state immutable
    |                         |- note: add '@MainActor' to make static property 'wwwFormURLPlusSpaceCharacterSet' part of global actor 'MainActor'
    |                         `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 38 |
 39 | 	/// Encodes a string to become x-www-form-urlencoded; the space is encoded as plus sign (+).
[28/38] Compiling tvOS OAuth2Authorizer+tvOS.swift
[29/38] Emitting module tvOS
[30/38] Compiling tvOS OAuth2CustomAuthorizer+tvOS.swift
[31/38] Compiling iOS OAuth2CustomAuthorizer+iOS.swift
[32/38] Emitting module iOS
[33/38] Compiling iOS OAuth2Authorizer+iOS.swift
[34/38] Compiling iOS OAuth2WebViewController+iOS.swift
[35/38] Compiling macOS OAuth2Authorizer+macOS.swift
/Users/admin/builder/spi-builder-workspace/Sources/macOS/OAuth2Authorizer+macOS.swift:99:13: warning: call to main actor-isolated instance method 'endSheet' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
 97 | 			if config.authorizeEmbeddedAutoDismiss {
 98 | 				oauth2.internalAfterAuthorizeOrFail = { wasFailure, error in
 99 | 					window.endSheet(sheet)
    |             `- warning: call to main actor-isolated instance method 'endSheet' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
100 | 				}
101 | 			}
AppKit.NSWindow.endSheet:3:24: note: calls to instance method 'endSheet' from outside of its actor context are implicitly asynchronous
1 | class NSWindow {
2 | @available(macOS 10.9, *)
3 |   @MainActor open func endSheet(_ sheetWindow: NSWindow)}
  |                        |- note: calls to instance method 'endSheet' from outside of its actor context are implicitly asynchronous
  |                        `- note: main actor isolation inferred from inheritance from class 'NSResponder'
4 |
/Users/admin/builder/spi-builder-workspace/Sources/macOS/OAuth2Authorizer+macOS.swift:109:37: warning: call to main actor-isolated instance method 'close()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
107 | 			if config.authorizeEmbeddedAutoDismiss {
108 | 				oauth2.internalAfterAuthorizeOrFail = { wasFailure, error in
109 | 					self.windowController?.window?.close()
    |                                     `- warning: call to main actor-isolated instance method 'close()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
110 | 					self.windowController = nil
111 | 				}
AppKit.NSWindow.close:2:22: note: calls to instance method 'close()' from outside of its actor context are implicitly asynchronous
1 | class NSWindow {
2 | @MainActor open func close()}
  |                      |- note: calls to instance method 'close()' from outside of its actor context are implicitly asynchronous
  |                      `- note: main actor isolation inferred from inheritance from class 'NSResponder'
3 |
/Users/admin/builder/spi-builder-workspace/Sources/macOS/OAuth2Authorizer+macOS.swift:109:29: warning: main actor-isolated property 'window' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
107 | 			if config.authorizeEmbeddedAutoDismiss {
108 | 				oauth2.internalAfterAuthorizeOrFail = { wasFailure, error in
109 | 					self.windowController?.window?.close()
    |                             `- warning: main actor-isolated property 'window' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
110 | 					self.windowController = nil
111 | 				}
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSWindowController.h:101:40: note: property declared here
 99 |     The window setter is used internally from -initWithWindow: or when a controller's nib file is loaded (as the "window" outlet gets connected).  You can also call it yourself if you want to create the window for a window controller lazily, but you aren't loading it from a nib.  This can also be used to set the window to nil for cases where your subclass might not want to keep the window it loaded from a nib, but rather only wants the contents of the window.  Setting the window to nil, after the nib has been loaded, does not reset the -isWindowLoaded state.  A window controller will only load its nib file once.  This method makes sure the window does not release when closed, and it sets the controller's -windowFrameAutosaveName onto the window and updates the window's dirty state to match the controller's document (if any).  It also calls -setWindowController: on the window.  You can override this if you need to know when the window gets set, but call super.
100 | */
101 | @property (nullable, strong) NSWindow *window;
    |                                        `- note: property declared here
102 |
103 | /* Returns YES if the receiver has loaded its -windowNibName, has itself been loaded from a nib, OR has no -windowNibName.  In other words, if there is no nib to load, this always returns YES.
/Users/admin/builder/spi-builder-workspace/Sources/macOS/OAuth2Authorizer+macOS.swift:154:50: warning: call to main actor-isolated initializer 'init(authorizer:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
117 | 	@available(macOS 10.15, *)
118 | 	@discardableResult
119 | 	public func startAuthenticationSession(
    |              `- note: add '@MainActor' to make instance method 'startAuthenticationSession(at:withRedirect:prefersEphemeralWebBrowserSession:)' part of global actor 'MainActor'
120 | 		at url: URL,
121 | 		withRedirect redirect: String,
    :
152 | 														   callbackURLScheme: redirectURL.scheme,
153 | 														   completionHandler: completionHandler)
154 | 		webAuthenticationPresentationContextProvider = OAuth2ASWebAuthenticationPresentationContextProvider(authorizer: self)
    |                                                  `- warning: call to main actor-isolated initializer 'init(authorizer:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
155 | 		if let session = authenticationSession as? ASWebAuthenticationSession {
156 | 			session.presentationContextProvider = webAuthenticationPresentationContextProvider as! OAuth2ASWebAuthenticationPresentationContextProvider
    :
263 | 	private let authorizer: OAuth2Authorizer
264 |
265 | 	init(authorizer: OAuth2Authorizer) {
    |  |- note: calls to initializer 'init(authorizer:)' from outside of its actor context are implicitly asynchronous
    |  `- note: main actor isolation inferred from conformance to protocol 'ASWebAuthenticationPresentationContextProviding'
266 | 		self.authorizer = authorizer
267 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/macOS/OAuth2Authorizer+macOS.swift:177:14: warning: main actor-isolated property 'willBecomeSheet' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
173 | 	@available(macOS 10.10, *)
174 | 	@discardableResult
175 | 	public func authorizeEmbedded(from window: NSWindow, at url: URL) throws -> NSWindow {
    |              `- note: add '@MainActor' to make instance method 'authorizeEmbedded(from:at:)' part of global actor 'MainActor'
176 | 		let controller = try presentableAuthorizeViewController(at: url)
177 | 		controller.willBecomeSheet = true
    |              `- warning: main actor-isolated property 'willBecomeSheet' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
178 | 		let sheet = windowController(forViewController: controller, with: oauth2.authConfig).window!
179 |
/Users/admin/builder/spi-builder-workspace/Sources/macOS/OAuth2WebViewController+macOS.swift:44:6: note: mutation of this property is only permitted within the actor
 42 |
 43 | 	/// Configure the view to be shown as sheet, false by default; must be present before the view gets loaded.
 44 | 	var willBecomeSheet = false
    |      `- note: mutation of this property is only permitted within the actor
 45 |
 46 | 	/// The URL to load on first show.
/Users/admin/builder/spi-builder-workspace/Sources/macOS/OAuth2Authorizer+macOS.swift:178:88: warning: main actor-isolated property 'window' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
173 | 	@available(macOS 10.10, *)
174 | 	@discardableResult
175 | 	public func authorizeEmbedded(from window: NSWindow, at url: URL) throws -> NSWindow {
    |              `- note: add '@MainActor' to make instance method 'authorizeEmbedded(from:at:)' part of global actor 'MainActor'
176 | 		let controller = try presentableAuthorizeViewController(at: url)
177 | 		controller.willBecomeSheet = true
178 | 		let sheet = windowController(forViewController: controller, with: oauth2.authConfig).window!
    |                                                                                        `- warning: main actor-isolated property 'window' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
179 |
180 | 		window.makeKeyAndOrderFront(nil)
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSWindowController.h:101:40: note: property declared here
 99 |     The window setter is used internally from -initWithWindow: or when a controller's nib file is loaded (as the "window" outlet gets connected).  You can also call it yourself if you want to create the window for a window controller lazily, but you aren't loading it from a nib.  This can also be used to set the window to nil for cases where your subclass might not want to keep the window it loaded from a nib, but rather only wants the contents of the window.  Setting the window to nil, after the nib has been loaded, does not reset the -isWindowLoaded state.  A window controller will only load its nib file once.  This method makes sure the window does not release when closed, and it sets the controller's -windowFrameAutosaveName onto the window and updates the window's dirty state to match the controller's document (if any).  It also calls -setWindowController: on the window.  You can override this if you need to know when the window gets set, but call super.
100 | */
101 | @property (nullable, strong) NSWindow *window;
    |                                        `- note: property declared here
102 |
103 | /* Returns YES if the receiver has loaded its -windowNibName, has itself been loaded from a nib, OR has no -windowNibName.  In other words, if there is no nib to load, this always returns YES.
/Users/admin/builder/spi-builder-workspace/Sources/macOS/OAuth2Authorizer+macOS.swift:180:10: warning: call to main actor-isolated instance method 'makeKeyAndOrderFront' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
173 | 	@available(macOS 10.10, *)
174 | 	@discardableResult
175 | 	public func authorizeEmbedded(from window: NSWindow, at url: URL) throws -> NSWindow {
    |              `- note: add '@MainActor' to make instance method 'authorizeEmbedded(from:at:)' part of global actor 'MainActor'
176 | 		let controller = try presentableAuthorizeViewController(at: url)
177 | 		controller.willBecomeSheet = true
178 | 		let sheet = windowController(forViewController: controller, with: oauth2.authConfig).window!
179 |
180 | 		window.makeKeyAndOrderFront(nil)
    |          `- warning: call to main actor-isolated instance method 'makeKeyAndOrderFront' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
181 | 		window.beginSheet(sheet, completionHandler: nil)
182 |
AppKit.NSWindow.makeKeyAndOrderFront:2:22: note: calls to instance method 'makeKeyAndOrderFront' from outside of its actor context are implicitly asynchronous
1 | class NSWindow {
2 | @MainActor open func makeKeyAndOrderFront(_ sender: Any?)}
  |                      |- note: calls to instance method 'makeKeyAndOrderFront' from outside of its actor context are implicitly asynchronous
  |                      `- note: main actor isolation inferred from inheritance from class 'NSResponder'
3 |
/Users/admin/builder/spi-builder-workspace/Sources/macOS/OAuth2Authorizer+macOS.swift:181:10: warning: call to main actor-isolated instance method 'beginSheet(_:completionHandler:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
173 | 	@available(macOS 10.10, *)
174 | 	@discardableResult
175 | 	public func authorizeEmbedded(from window: NSWindow, at url: URL) throws -> NSWindow {
    |              `- note: add '@MainActor' to make instance method 'authorizeEmbedded(from:at:)' part of global actor 'MainActor'
176 | 		let controller = try presentableAuthorizeViewController(at: url)
177 | 		controller.willBecomeSheet = true
    :
179 |
180 | 		window.makeKeyAndOrderFront(nil)
181 | 		window.beginSheet(sheet, completionHandler: nil)
    |          `- warning: call to main actor-isolated instance method 'beginSheet(_:completionHandler:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
182 |
183 | 		return sheet
AppKit.NSWindow.beginSheet:3:24: note: calls to instance method 'beginSheet(_:completionHandler:)' from outside of its actor context are implicitly asynchronous
1 | class NSWindow {
2 | @available(macOS 10.9, *)
3 |   @MainActor open func beginSheet(_ sheetWindow: NSWindow, completionHandler handler: ((NSApplication.ModalResponse) -> Void)? = nil)}
  |                        |- note: calls to instance method 'beginSheet(_:completionHandler:)' from outside of its actor context are implicitly asynchronous
  |                        `- note: main actor isolation inferred from inheritance from class 'NSResponder'
4 |
/Users/admin/builder/spi-builder-workspace/Sources/macOS/OAuth2Authorizer+macOS.swift:198:14: warning: call to main actor-isolated instance method 'center()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
192 | 	@available(macOS 10.10, *)
193 | 	@discardableResult
194 | 	open func authorizeInNewWindow(at url: URL) throws -> NSWindowController {
    |            `- note: add '@MainActor' to make instance method 'authorizeInNewWindow(at:)' part of global actor 'MainActor'
195 | 		let controller = try presentableAuthorizeViewController(at: url)
196 | 		let wc = windowController(forViewController: controller, with: oauth2.authConfig)
197 |
198 | 		wc.window?.center()
    |              `- warning: call to main actor-isolated instance method 'center()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
199 | 		wc.showWindow(nil)
200 |
AppKit.NSWindow.center:2:22: note: calls to instance method 'center()' from outside of its actor context are implicitly asynchronous
1 | class NSWindow {
2 | @MainActor open func center()}
  |                      |- note: calls to instance method 'center()' from outside of its actor context are implicitly asynchronous
  |                      `- note: main actor isolation inferred from inheritance from class 'NSResponder'
3 |
/Users/admin/builder/spi-builder-workspace/Sources/macOS/OAuth2Authorizer+macOS.swift:198:6: warning: main actor-isolated property 'window' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
192 | 	@available(macOS 10.10, *)
193 | 	@discardableResult
194 | 	open func authorizeInNewWindow(at url: URL) throws -> NSWindowController {
    |            `- note: add '@MainActor' to make instance method 'authorizeInNewWindow(at:)' part of global actor 'MainActor'
195 | 		let controller = try presentableAuthorizeViewController(at: url)
196 | 		let wc = windowController(forViewController: controller, with: oauth2.authConfig)
197 |
198 | 		wc.window?.center()
    |      `- warning: main actor-isolated property 'window' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
199 | 		wc.showWindow(nil)
200 |
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSWindowController.h:101:40: note: property declared here
 99 |     The window setter is used internally from -initWithWindow: or when a controller's nib file is loaded (as the "window" outlet gets connected).  You can also call it yourself if you want to create the window for a window controller lazily, but you aren't loading it from a nib.  This can also be used to set the window to nil for cases where your subclass might not want to keep the window it loaded from a nib, but rather only wants the contents of the window.  Setting the window to nil, after the nib has been loaded, does not reset the -isWindowLoaded state.  A window controller will only load its nib file once.  This method makes sure the window does not release when closed, and it sets the controller's -windowFrameAutosaveName onto the window and updates the window's dirty state to match the controller's document (if any).  It also calls -setWindowController: on the window.  You can override this if you need to know when the window gets set, but call super.
100 | */
101 | @property (nullable, strong) NSWindow *window;
    |                                        `- note: property declared here
102 |
103 | /* Returns YES if the receiver has loaded its -windowNibName, has itself been loaded from a nib, OR has no -windowNibName.  In other words, if there is no nib to load, this always returns YES.
/Users/admin/builder/spi-builder-workspace/Sources/macOS/OAuth2Authorizer+macOS.swift:199:6: warning: call to main actor-isolated instance method 'showWindow' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
192 | 	@available(macOS 10.10, *)
193 | 	@discardableResult
194 | 	open func authorizeInNewWindow(at url: URL) throws -> NSWindowController {
    |            `- note: add '@MainActor' to make instance method 'authorizeInNewWindow(at:)' part of global actor 'MainActor'
195 | 		let controller = try presentableAuthorizeViewController(at: url)
196 | 		let wc = windowController(forViewController: controller, with: oauth2.authConfig)
197 |
198 | 		wc.window?.center()
199 | 		wc.showWindow(nil)
    |      `- warning: call to main actor-isolated instance method 'showWindow' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
200 |
201 | 		return wc
AppKit.NSWindowController.showWindow:2:32: note: calls to instance method 'showWindow' from outside of its actor context are implicitly asynchronous
1 | class NSWindowController {
2 | @IBAction @MainActor open func showWindow(_ sender: Any?)}
  |                                |- note: calls to instance method 'showWindow' from outside of its actor context are implicitly asynchronous
  |                                `- note: main actor isolation inferred from inheritance from class 'NSResponder'
3 |
/Users/admin/builder/spi-builder-workspace/Sources/macOS/OAuth2Authorizer+macOS.swift:212:20: warning: call to main actor-isolated initializer 'init()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
209 | 	*/
210 | 	@available(macOS 10.10, *)
211 | 	open func presentableAuthorizeViewController(at url: URL) throws -> OAuth2WebViewController {
    |            `- note: add '@MainActor' to make instance method 'presentableAuthorizeViewController(at:)' part of global actor 'MainActor'
212 | 		let controller = OAuth2WebViewController()
    |                    `- warning: call to main actor-isolated initializer 'init()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
213 | 		controller.oauth = oauth2
214 | 		controller.startURL = url
/Users/admin/builder/spi-builder-workspace/Sources/macOS/OAuth2WebViewController+macOS.swift:36:9: note: calls to initializer 'init()' from outside of its actor context are implicitly asynchronous
 34 |
 35 | 	/** Designated initializer. */
 36 | 	public init() {
    |         |- note: calls to initializer 'init()' from outside of its actor context are implicitly asynchronous
    |         `- note: main actor isolation inferred from inheritance from class 'NSViewController'
 37 | 		super.init(nibName: nil, bundle: nil)
 38 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/macOS/OAuth2Authorizer+macOS.swift:213:14: warning: main actor-isolated property 'oauth' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
209 | 	*/
210 | 	@available(macOS 10.10, *)
211 | 	open func presentableAuthorizeViewController(at url: URL) throws -> OAuth2WebViewController {
    |            `- note: add '@MainActor' to make instance method 'presentableAuthorizeViewController(at:)' part of global actor 'MainActor'
212 | 		let controller = OAuth2WebViewController()
213 | 		controller.oauth = oauth2
    |              `- warning: main actor-isolated property 'oauth' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
214 | 		controller.startURL = url
215 | 		controller.interceptURLString = oauth2.redirect!
/Users/admin/builder/spi-builder-workspace/Sources/macOS/OAuth2WebViewController+macOS.swift:41:6: note: mutation of this property is only permitted within the actor
 39 |
 40 | 	/// Handle to the OAuth2 instance in play, only used for debug logging at this time.
 41 | 	var oauth: OAuth2Base?
    |      `- note: mutation of this property is only permitted within the actor
 42 |
 43 | 	/// Configure the view to be shown as sheet, false by default; must be present before the view gets loaded.
/Users/admin/builder/spi-builder-workspace/Sources/macOS/OAuth2Authorizer+macOS.swift:214:14: warning: main actor-isolated property 'startURL' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
209 | 	*/
210 | 	@available(macOS 10.10, *)
211 | 	open func presentableAuthorizeViewController(at url: URL) throws -> OAuth2WebViewController {
    |            `- note: add '@MainActor' to make instance method 'presentableAuthorizeViewController(at:)' part of global actor 'MainActor'
212 | 		let controller = OAuth2WebViewController()
213 | 		controller.oauth = oauth2
214 | 		controller.startURL = url
    |              `- warning: main actor-isolated property 'startURL' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
215 | 		controller.interceptURLString = oauth2.redirect!
216 | 		controller.onIntercept = { url in
/Users/admin/builder/spi-builder-workspace/Sources/macOS/OAuth2WebViewController+macOS.swift:47:13: note: mutation of this property is only permitted within the actor
 45 |
 46 | 	/// The URL to load on first show.
 47 | 	public var startURL: URL? {
    |             `- note: mutation of this property is only permitted within the actor
 48 | 		didSet(oldURL) {
 49 | 			if nil != startURL && nil == oldURL && isViewLoaded {
/Users/admin/builder/spi-builder-workspace/Sources/macOS/OAuth2Authorizer+macOS.swift:215:14: warning: main actor-isolated property 'interceptURLString' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
209 | 	*/
210 | 	@available(macOS 10.10, *)
211 | 	open func presentableAuthorizeViewController(at url: URL) throws -> OAuth2WebViewController {
    |            `- note: add '@MainActor' to make instance method 'presentableAuthorizeViewController(at:)' part of global actor 'MainActor'
212 | 		let controller = OAuth2WebViewController()
213 | 		controller.oauth = oauth2
214 | 		controller.startURL = url
215 | 		controller.interceptURLString = oauth2.redirect!
    |              `- warning: main actor-isolated property 'interceptURLString' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
216 | 		controller.onIntercept = { url in
217 | 			do {
/Users/admin/builder/spi-builder-workspace/Sources/macOS/OAuth2WebViewController+macOS.swift:56:13: note: mutation of this property is only permitted within the actor
 54 |
 55 | 	/// The URL string to intercept and respond to.
 56 | 	public var interceptURLString: String? {
    |             `- note: mutation of this property is only permitted within the actor
 57 | 		didSet(oldURL) {
 58 | 			if nil != interceptURLString {
/Users/admin/builder/spi-builder-workspace/Sources/macOS/OAuth2Authorizer+macOS.swift:216:14: warning: main actor-isolated property 'onIntercept' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
209 | 	*/
210 | 	@available(macOS 10.10, *)
211 | 	open func presentableAuthorizeViewController(at url: URL) throws -> OAuth2WebViewController {
    |            `- note: add '@MainActor' to make instance method 'presentableAuthorizeViewController(at:)' part of global actor 'MainActor'
212 | 		let controller = OAuth2WebViewController()
213 | 		controller.oauth = oauth2
214 | 		controller.startURL = url
215 | 		controller.interceptURLString = oauth2.redirect!
216 | 		controller.onIntercept = { url in
    |              `- warning: main actor-isolated property 'onIntercept' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
217 | 			do {
218 | 				try self.oauth2.handleRedirectURL(url)
/Users/admin/builder/spi-builder-workspace/Sources/macOS/OAuth2WebViewController+macOS.swift:78:13: note: mutation of this property is only permitted within the actor
 76 | 	/// Closure called when the web view gets asked to load the redirect URL, specified in `interceptURLString`. Return a Bool indicating
 77 | 	/// that you've intercepted the URL.
 78 | 	public var onIntercept: ((URL) -> Bool)?
    |             `- note: mutation of this property is only permitted within the actor
 79 |
 80 | 	/// Called when the web view is about to be dismissed manually.
/Users/admin/builder/spi-builder-workspace/Sources/macOS/OAuth2Authorizer+macOS.swift:226:14: warning: main actor-isolated property 'onWillCancel' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
209 | 	*/
210 | 	@available(macOS 10.10, *)
211 | 	open func presentableAuthorizeViewController(at url: URL) throws -> OAuth2WebViewController {
    |            `- note: add '@MainActor' to make instance method 'presentableAuthorizeViewController(at:)' part of global actor 'MainActor'
212 | 		let controller = OAuth2WebViewController()
213 | 		controller.oauth = oauth2
    :
224 | 			return false
225 | 		}
226 | 		controller.onWillCancel = {
    |              `- warning: main actor-isolated property 'onWillCancel' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
227 | 			self.oauth2.didFail(with: nil)
228 | 		}
/Users/admin/builder/spi-builder-workspace/Sources/macOS/OAuth2WebViewController+macOS.swift:81:13: note: mutation of this property is only permitted within the actor
 79 |
 80 | 	/// Called when the web view is about to be dismissed manually.
 81 | 	public var onWillCancel: (() -> Void)?
    |             `- note: mutation of this property is only permitted within the actor
 82 |
 83 | 	/// Our web view; implicitly unwrapped so do not attempt to use it unless isViewLoaded() returns true.
/Users/admin/builder/spi-builder-workspace/Sources/macOS/OAuth2Authorizer+macOS.swift:241:55: warning: main actor-isolated static property 'webViewWindowWidth' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
238 | 	*/
239 | 	@available(macOS 10.10, *)
240 | 	open func windowController(forViewController controller: OAuth2WebViewController, with config: OAuth2AuthConfig) -> NSWindowController {
    |            `- note: add '@MainActor' to make instance method 'windowController(forViewController:with:)' part of global actor 'MainActor'
241 | 		let rect = NSMakeRect(0, 0, OAuth2WebViewController.webViewWindowWidth, OAuth2WebViewController.webViewWindowHeight)
    |                                                       `- warning: main actor-isolated static property 'webViewWindowWidth' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
242 | 		let window = NSWindow(contentRect: rect, styleMask: [.titled, .closable, .resizable, .fullSizeContentView], backing: .buffered, defer: false)
243 | 		window.backgroundColor = NSColor.white
/Users/admin/builder/spi-builder-workspace/Sources/macOS/OAuth2WebViewController+macOS.swift:114:22: note: static property declared here
112 |
113 | 	/// Default web view window width; defaults to 600.
114 | 	internal static let webViewWindowWidth = CGFloat(600.0)
    |                      `- note: static property declared here
115 |
116 | 	/// Default web view window height; defaults to 500.
/Users/admin/builder/spi-builder-workspace/Sources/macOS/OAuth2Authorizer+macOS.swift:241:99: warning: main actor-isolated static property 'webViewWindowHeight' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
238 | 	*/
239 | 	@available(macOS 10.10, *)
240 | 	open func windowController(forViewController controller: OAuth2WebViewController, with config: OAuth2AuthConfig) -> NSWindowController {
    |            `- note: add '@MainActor' to make instance method 'windowController(forViewController:with:)' part of global actor 'MainActor'
241 | 		let rect = NSMakeRect(0, 0, OAuth2WebViewController.webViewWindowWidth, OAuth2WebViewController.webViewWindowHeight)
    |                                                                                                   `- warning: main actor-isolated static property 'webViewWindowHeight' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
242 | 		let window = NSWindow(contentRect: rect, styleMask: [.titled, .closable, .resizable, .fullSizeContentView], backing: .buffered, defer: false)
243 | 		window.backgroundColor = NSColor.white
/Users/admin/builder/spi-builder-workspace/Sources/macOS/OAuth2WebViewController+macOS.swift:117:22: note: static property declared here
115 |
116 | 	/// Default web view window height; defaults to 500.
117 | 	internal static let webViewWindowHeight = CGFloat(500.0)
    |                      `- note: static property declared here
118 |
119 | 	/** Override to fully load the view; adds a `WKWebView`, optionally a dismiss button, and shows the loading indicator. */
/Users/admin/builder/spi-builder-workspace/Sources/macOS/OAuth2Authorizer+macOS.swift:242:16: warning: call to main actor-isolated initializer 'init(contentRect:styleMask:backing:defer:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
238 | 	*/
239 | 	@available(macOS 10.10, *)
240 | 	open func windowController(forViewController controller: OAuth2WebViewController, with config: OAuth2AuthConfig) -> NSWindowController {
    |            `- note: add '@MainActor' to make instance method 'windowController(forViewController:with:)' part of global actor 'MainActor'
241 | 		let rect = NSMakeRect(0, 0, OAuth2WebViewController.webViewWindowWidth, OAuth2WebViewController.webViewWindowHeight)
242 | 		let window = NSWindow(contentRect: rect, styleMask: [.titled, .closable, .resizable, .fullSizeContentView], backing: .buffered, defer: false)
    |                `- warning: call to main actor-isolated initializer 'init(contentRect:styleMask:backing:defer:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
243 | 		window.backgroundColor = NSColor.white
244 | 		window.isMovableByWindowBackground = true
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSWindow.h:293:1: note: calls to initializer 'init(contentRect:styleMask:backing:defer:)' from outside of its actor context are implicitly asynchronous
 291 | - (NSRect)contentRectForFrameRect:(NSRect)frameRect;
 292 |
 293 | - (instancetype)initWithContentRect:(NSRect)contentRect styleMask:(NSWindowStyleMask)style backing:(NSBackingStoreType)backingStoreType defer:(BOOL)flag NS_DESIGNATED_INITIALIZER;
     | |- note: calls to initializer 'init(contentRect:styleMask:backing:defer:)' from outside of its actor context are implicitly asynchronous
     | `- note: main actor isolation inferred from inheritance from class 'NSResponder'
 294 | - (instancetype)initWithContentRect:(NSRect)contentRect styleMask:(NSWindowStyleMask)style backing:(NSBackingStoreType)backingStoreType defer:(BOOL)flag screen:(nullable NSScreen *)screen;
 295 | - (instancetype)initWithCoder:(NSCoder *)coder NS_UNAVAILABLE; // Use initWithContentRect:. This method will throw an exception for coders that support allowsKeyedCoding, and is only available for compatibility with non keyed coding.
/Users/admin/builder/spi-builder-workspace/Sources/macOS/OAuth2Authorizer+macOS.swift:243:10: warning: main actor-isolated property 'backgroundColor' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
238 | 	*/
239 | 	@available(macOS 10.10, *)
240 | 	open func windowController(forViewController controller: OAuth2WebViewController, with config: OAuth2AuthConfig) -> NSWindowController {
    |            `- note: add '@MainActor' to make instance method 'windowController(forViewController:with:)' part of global actor 'MainActor'
241 | 		let rect = NSMakeRect(0, 0, OAuth2WebViewController.webViewWindowWidth, OAuth2WebViewController.webViewWindowHeight)
242 | 		let window = NSWindow(contentRect: rect, styleMask: [.titled, .closable, .resizable, .fullSizeContentView], backing: .buffered, defer: false)
243 | 		window.backgroundColor = NSColor.white
    |          `- warning: main actor-isolated property 'backgroundColor' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
244 | 		window.isMovableByWindowBackground = true
245 | 		window.titlebarAppearsTransparent = true
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSWindow.h:401:44: note: mutation of this property is only permitted within the actor
 399 | - (BOOL)tryToPerform:(SEL)action with:(nullable id)object;
 400 | - (nullable id)validRequestorForSendType:(nullable NSPasteboardType)sendType returnType:(nullable NSPasteboardType)returnType;
 401 | @property (null_resettable, copy) NSColor *backgroundColor;
     |                                            `- note: mutation of this property is only permitted within the actor
 402 |
 403 | /* Indicates the thickness of a given border of the window. NSMinYEdge is the bottom edge of the window, while NSMaxYEdge is the top edge of the window. This method may throw an exception for values that don't apply to the current window styleMask; specifically, passing NSMaxYEdge for a non-textured window will always raise. The contentBorder does not include the titlebar or toolbar.
/Users/admin/builder/spi-builder-workspace/Sources/macOS/OAuth2Authorizer+macOS.swift:244:10: warning: main actor-isolated property 'isMovableByWindowBackground' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
238 | 	*/
239 | 	@available(macOS 10.10, *)
240 | 	open func windowController(forViewController controller: OAuth2WebViewController, with config: OAuth2AuthConfig) -> NSWindowController {
    |            `- note: add '@MainActor' to make instance method 'windowController(forViewController:with:)' part of global actor 'MainActor'
241 | 		let rect = NSMakeRect(0, 0, OAuth2WebViewController.webViewWindowWidth, OAuth2WebViewController.webViewWindowHeight)
242 | 		let window = NSWindow(contentRect: rect, styleMask: [.titled, .closable, .resizable, .fullSizeContentView], backing: .buffered, defer: false)
243 | 		window.backgroundColor = NSColor.white
244 | 		window.isMovableByWindowBackground = true
    |          `- warning: main actor-isolated property 'isMovableByWindowBackground' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
245 | 		window.titlebarAppearsTransparent = true
246 | 		window.titleVisibility = .hidden
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSWindow.h:414:53: note: mutation of this property is only permitted within the actor
 412 | @property (getter=isMovable) BOOL movable API_AVAILABLE(macos(10.6));
 413 |
 414 | @property (getter=isMovableByWindowBackground) BOOL movableByWindowBackground;
     |                                                     `- note: mutation of this property is only permitted within the actor
 415 |
 416 | @property BOOL hidesOnDeactivate;
/Users/admin/builder/spi-builder-workspace/Sources/macOS/OAuth2Authorizer+macOS.swift:245:10: warning: main actor-isolated property 'titlebarAppearsTransparent' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
238 | 	*/
239 | 	@available(macOS 10.10, *)
240 | 	open func windowController(forViewController controller: OAuth2WebViewController, with config: OAuth2AuthConfig) -> NSWindowController {
    |            `- note: add '@MainActor' to make instance method 'windowController(forViewController:with:)' part of global actor 'MainActor'
241 | 		let rect = NSMakeRect(0, 0, OAuth2WebViewController.webViewWindowWidth, OAuth2WebViewController.webViewWindowHeight)
242 | 		let window = NSWindow(contentRect: rect, styleMask: [.titled, .closable, .resizable, .fullSizeContentView], backing: .buffered, defer: false)
243 | 		window.backgroundColor = NSColor.white
244 | 		window.isMovableByWindowBackground = true
245 | 		window.titlebarAppearsTransparent = true
    |          `- warning: main actor-isolated property 'titlebarAppearsTransparent' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
246 | 		window.titleVisibility = .hidden
247 | 		window.animationBehavior = .alertPanel
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSWindow.h:309:16: note: mutation of this property is only permitted within the actor
 307 |
 308 | /// When \c YES, the titlebar doesn't draw its background, allowing all buttons to show through, and "click through" to happen. In general, this is only useful when \c NSFullSizeContentViewWindowMask is set.
 309 | @property BOOL titlebarAppearsTransparent API_AVAILABLE(macos(10.10));
     |                `- note: mutation of this property is only permitted within the actor
 310 |
 311 | /// Specifies how the titlebar area of the window should appear when the window displays an NSToolbar
/Users/admin/builder/spi-builder-workspace/Sources/macOS/OAuth2Authorizer+macOS.swift:246:10: warning: main actor-isolated property 'titleVisibility' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
238 | 	*/
239 | 	@available(macOS 10.10, *)
240 | 	open func windowController(forViewController controller: OAuth2WebViewController, with config: OAuth2AuthConfig) -> NSWindowController {
    |            `- note: add '@MainActor' to make instance method 'windowController(forViewController:with:)' part of global actor 'MainActor'
241 | 		let rect = NSMakeRect(0, 0, OAuth2WebViewController.webViewWindowWidth, OAuth2WebViewController.webViewWindowHeight)
242 | 		let window = NSWindow(contentRect: rect, styleMask: [.titled, .closable, .resizable, .fullSizeContentView], backing: .buffered, defer: false)
    :
244 | 		window.isMovableByWindowBackground = true
245 | 		window.titlebarAppearsTransparent = true
246 | 		window.titleVisibility = .hidden
    |          `- warning: main actor-isolated property 'titleVisibility' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
247 | 		window.animationBehavior = .alertPanel
248 | 		if let title = config.ui.title {
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSWindow.h:306:35: note: mutation of this property is only permitted within the actor
 304 |
 305 | /// See the enum values for how this property works.
 306 | @property NSWindowTitleVisibility titleVisibility API_AVAILABLE(macos(10.10)); // Default value is NSWindowTitleVisible
     |                                   `- note: mutation of this property is only permitted within the actor
 307 |
 308 | /// When \c YES, the titlebar doesn't draw its background, allowing all buttons to show through, and "click through" to happen. In general, this is only useful when \c NSFullSizeContentViewWindowMask is set.
/Users/admin/builder/spi-builder-workspace/Sources/macOS/OAuth2Authorizer+macOS.swift:247:10: warning: main actor-isolated property 'animationBehavior' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
238 | 	*/
239 | 	@available(macOS 10.10, *)
240 | 	open func windowController(forViewController controller: OAuth2WebViewController, with config: OAuth2AuthConfig) -> NSWindowController {
    |            `- note: add '@MainActor' to make instance method 'windowController(forViewController:with:)' part of global actor 'MainActor'
241 | 		let rect = NSMakeRect(0, 0, OAuth2WebViewController.webViewWindowWidth, OAuth2WebViewController.webViewWindowHeight)
242 | 		let window = NSWindow(contentRect: rect, styleMask: [.titled, .closable, .resizable, .fullSizeContentView], backing: .buffered, defer: false)
    :
245 | 		window.titlebarAppearsTransparent = true
246 | 		window.titleVisibility = .hidden
247 | 		window.animationBehavior = .alertPanel
    |          `- warning: main actor-isolated property 'animationBehavior' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
248 | 		if let title = config.ui.title {
249 | 			window.title = title
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSWindow.h:540:37: note: mutation of this property is only permitted within the actor
 538 | /*! Provides for per-window control over automatic orderFront/orderOut animation behaviors added in 10.7.  Can be set to \c NSWindowAnimationBehaviorNone to disable Appkit's automatic animations for a given window, or to one of the other non-Default \c NSWindowAnimationBehavior values to override AppKit's automatic inference of appropriate animation behavior based on the window's apparent type.
 539 | */
 540 | @property NSWindowAnimationBehavior animationBehavior API_AVAILABLE(macos(10.7));
     |                                     `- note: mutation of this property is only permitted within the actor
 541 |
 542 |
/Users/admin/builder/spi-builder-workspace/Sources/macOS/OAuth2Authorizer+macOS.swift:249:11: warning: main actor-isolated property 'title' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
238 | 	*/
239 | 	@available(macOS 10.10, *)
240 | 	open func windowController(forViewController controller: OAuth2WebViewController, with config: OAuth2AuthConfig) -> NSWindowController {
    |            `- note: add '@MainActor' to make instance method 'windowController(forViewController:with:)' part of global actor 'MainActor'
241 | 		let rect = NSMakeRect(0, 0, OAuth2WebViewController.webViewWindowWidth, OAuth2WebViewController.webViewWindowHeight)
242 | 		let window = NSWindow(contentRect: rect, styleMask: [.titled, .closable, .resizable, .fullSizeContentView], backing: .buffered, defer: false)
    :
247 | 		window.animationBehavior = .alertPanel
248 | 		if let title = config.ui.title {
249 | 			window.title = title
    |           `- warning: main actor-isolated property 'title' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
250 | 		}
251 |
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSWindow.h:297:28: note: mutation of this property is only permitted within the actor
 295 | - (instancetype)initWithCoder:(NSCoder *)coder NS_UNAVAILABLE; // Use initWithContentRect:. This method will throw an exception for coders that support allowsKeyedCoding, and is only available for compatibility with non keyed coding.
 296 |
 297 | @property (copy) NSString *title;
     |                            `- note: mutation of this property is only permitted within the actor
 298 |
 299 | /*!
/Users/admin/builder/spi-builder-workspace/Sources/macOS/OAuth2Authorizer+macOS.swift:252:26: warning: call to main actor-isolated initializer 'init(window:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
238 | 	*/
239 | 	@available(macOS 10.10, *)
240 | 	open func windowController(forViewController controller: OAuth2WebViewController, with config: OAuth2AuthConfig) -> NSWindowController {
    |            `- note: add '@MainActor' to make instance method 'windowController(forViewController:with:)' part of global actor 'MainActor'
241 | 		let rect = NSMakeRect(0, 0, OAuth2WebViewController.webViewWindowWidth, OAuth2WebViewController.webViewWindowHeight)
242 | 		let window = NSWindow(contentRect: rect, styleMask: [.titled, .closable, .resizable, .fullSizeContentView], backing: .buffered, defer: false)
    :
250 | 		}
251 |
252 | 		let windowController = NSWindowController(window: window)
    |                          `- warning: call to main actor-isolated initializer 'init(window:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
253 | 		windowController.contentViewController = controller
254 |
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSWindowController.h:25:1: note: calls to initializer 'init(window:)' from outside of its actor context are implicitly asynchronous
 23 | /* Designated Initializer.  window can be nil.  All other -init... methods call this, and then possibly do other setup.
 24 |  */
 25 | - (instancetype)initWithWindow:(nullable NSWindow *)window NS_DESIGNATED_INITIALIZER;
    | |- note: calls to initializer 'init(window:)' from outside of its actor context are implicitly asynchronous
    | `- note: main actor isolation inferred from inheritance from class 'NSResponder'
 26 | - (nullable instancetype)initWithCoder:(NSCoder *)coder NS_DESIGNATED_INITIALIZER;
 27 |
/Users/admin/builder/spi-builder-workspace/Sources/macOS/OAuth2Authorizer+macOS.swift:253:20: warning: main actor-isolated property 'contentViewController' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
238 | 	*/
239 | 	@available(macOS 10.10, *)
240 | 	open func windowController(forViewController controller: OAuth2WebViewController, with config: OAuth2AuthConfig) -> NSWindowController {
    |            `- note: add '@MainActor' to make instance method 'windowController(forViewController:with:)' part of global actor 'MainActor'
241 | 		let rect = NSMakeRect(0, 0, OAuth2WebViewController.webViewWindowWidth, OAuth2WebViewController.webViewWindowHeight)
242 | 		let window = NSWindow(contentRect: rect, styleMask: [.titled, .closable, .resizable, .fullSizeContentView], backing: .buffered, defer: false)
    :
251 |
252 | 		let windowController = NSWindowController(window: window)
253 | 		windowController.contentViewController = controller
    |                    `- warning: main actor-isolated property 'contentViewController' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
254 |
255 | 		return windowController
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSWindowController.h:95:48: note: mutation of this property is only permitted within the actor
 93 | /* The view controller for the window's contentView. Tracks the window property of the same name.
 94 |  */
 95 | @property (nullable, strong) NSViewController *contentViewController API_AVAILABLE(macos(10.10));
    |                                                `- note: mutation of this property is only permitted within the actor
 96 |
 97 | /* The window getter will load the nib file (if there is one and it has not yet been loaded) and then return the window.  If it has to load the window, it will first call -windowWillLoad, then -loadWindow, then -windowDidLoad.  To affect nib loading or do something before or after it happens, you should always override those other methods.
/Users/admin/builder/spi-builder-workspace/Sources/macOS/OAuth2Authorizer+macOS.swift:154:50: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
152 | 														   callbackURLScheme: redirectURL.scheme,
153 | 														   completionHandler: completionHandler)
154 | 		webAuthenticationPresentationContextProvider = OAuth2ASWebAuthenticationPresentationContextProvider(authorizer: self)
    |                                                  |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                                                  `- note: sending task-isolated 'self' to main actor-isolated initializer 'init(authorizer:)' risks causing data races between main actor-isolated and task-isolated uses
155 | 		if let session = authenticationSession as? ASWebAuthenticationSession {
156 | 			session.presentationContextProvider = webAuthenticationPresentationContextProvider as! OAuth2ASWebAuthenticationPresentationContextProvider
[36/38] Emitting module macOS
/Users/admin/builder/spi-builder-workspace/Sources/macOS/OAuth2WebViewController+macOS.swift:231:14: warning: instance method 'webView(_:decidePolicyFor:decisionHandler:)' nearly matches optional requirement 'webView(_:decidePolicyFor:decisionHandler:)' of protocol 'WKNavigationDelegate'
229 | 	// MARK: - Web View Delegate
230 |
231 | 	public func webView(_ webView: WKWebView, decidePolicyFor navigationAction: WKNavigationAction, decisionHandler: @escaping (WKNavigationActionPolicy) -> Void) {
    |              |- warning: instance method 'webView(_:decidePolicyFor:decisionHandler:)' nearly matches optional requirement 'webView(_:decidePolicyFor:decisionHandler:)' of protocol 'WKNavigationDelegate'
    |              |- note: candidate has non-matching type '(WKWebView, WKNavigationAction, @escaping (WKNavigationActionPolicy) -> Void) -> ()'
    |              `- note: move 'webView(_:decidePolicyFor:decisionHandler:)' to an extension to silence this warning
232 | 		let request = navigationAction.request
233 |
WebKit.WKNavigationDelegate.webView:3:28: note: requirement 'webView(_:decidePolicyFor:decisionHandler:)' declared here
1 | protocol WKNavigationDelegate {
2 | @available(macOS 10.10, *)
3 |   @MainActor optional func webView(_ webView: WKWebView, decidePolicyFor navigationAction: WKNavigationAction, decisionHandler: @escaping @MainActor @Sendable (WKNavigationActionPolicy) -> Void)}
  |                            `- note: requirement 'webView(_:decidePolicyFor:decisionHandler:)' declared here
4 |
[37/38] Compiling macOS OAuth2WebViewController+macOS.swift
/Users/admin/builder/spi-builder-workspace/Sources/macOS/OAuth2WebViewController+macOS.swift:231:14: warning: instance method 'webView(_:decidePolicyFor:decisionHandler:)' nearly matches optional requirement 'webView(_:decidePolicyFor:decisionHandler:)' of protocol 'WKNavigationDelegate'
229 | 	// MARK: - Web View Delegate
230 |
231 | 	public func webView(_ webView: WKWebView, decidePolicyFor navigationAction: WKNavigationAction, decisionHandler: @escaping (WKNavigationActionPolicy) -> Void) {
    |              |- warning: instance method 'webView(_:decidePolicyFor:decisionHandler:)' nearly matches optional requirement 'webView(_:decidePolicyFor:decisionHandler:)' of protocol 'WKNavigationDelegate'
    |              |- note: candidate has non-matching type '(WKWebView, WKNavigationAction, @escaping (WKNavigationActionPolicy) -> Void) -> ()'
    |              `- note: move 'webView(_:decidePolicyFor:decisionHandler:)' to an extension to silence this warning
232 | 		let request = navigationAction.request
233 |
WebKit.WKNavigationDelegate.webView:3:28: note: requirement 'webView(_:decidePolicyFor:decisionHandler:)' declared here
1 | protocol WKNavigationDelegate {
2 | @available(macOS 10.10, *)
3 |   @MainActor optional func webView(_ webView: WKWebView, decidePolicyFor navigationAction: WKNavigationAction, decisionHandler: @escaping @MainActor @Sendable (WKNavigationActionPolicy) -> Void)}
  |                            `- note: requirement 'webView(_:decidePolicyFor:decisionHandler:)' declared here
4 |
[38/38] Compiling macOS OAuth2CustomAuthorizer+macOS.swift
/Users/admin/builder/spi-builder-workspace/Sources/macOS/OAuth2CustomAuthorizer+macOS.swift:62:20: warning: call to main actor-isolated instance method 'presentAsSheet' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
48 | 	- parameter animated:        Whether the presentation should be animated.
49 | 	*/
50 | 	public func present(loginController: AnyObject, fromContext context: AnyObject?, animated: Bool) throws {
   |              `- note: add '@MainActor' to make instance method 'present(loginController:fromContext:animated:)' part of global actor 'MainActor'
51 | 		guard #available(macOS 10.10, *) else {
52 | 			throw OAuth2Error.generic("Native authorizing is only available in OS X 10.10 and later")
   :
60 | 		}
61 |
62 | 		parentController.presentAsSheet(controller)
   |                    `- warning: call to main actor-isolated instance method 'presentAsSheet' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
63 | 		presentedController = controller
64 | 	}
AppKit.NSViewController.presentAsSheet:3:24: note: calls to instance method 'presentAsSheet' from outside of its actor context are implicitly asynchronous
1 | class NSViewController {
2 | @available(macOS 10.10, *)
3 |   @MainActor open func presentAsSheet(_ viewController: NSViewController)}
  |                        |- note: calls to instance method 'presentAsSheet' from outside of its actor context are implicitly asynchronous
  |                        `- note: main actor isolation inferred from inheritance from class 'NSResponder'
4 |
/Users/admin/builder/spi-builder-workspace/Sources/macOS/OAuth2CustomAuthorizer+macOS.swift:76:25: warning: call to main actor-isolated instance method 'dismiss' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
71 | 	- parameter animated: Whether the dismissal should be animated.
72 | 	*/
73 | 	public func dismissLoginController(animated: Bool) {
   |              `- note: add '@MainActor' to make instance method 'dismissLoginController(animated:)' part of global actor 'MainActor'
74 | 		// Not throwing an error here should not be a problem because it would have been thrown when presenting the controller
75 | 		if #available(macOS 10.10, *) {
76 | 			presentedController?.dismiss(nil)
   |                         `- warning: call to main actor-isolated instance method 'dismiss' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
77 | 		}
78 | 		presentedController = nil
AppKit.NSViewController.dismiss:3:34: note: calls to instance method 'dismiss' from outside of its actor context are implicitly asynchronous
1 | class NSViewController {
2 | @available(macOS 10.10, *)
3 |   @IBAction @MainActor open func dismiss(_ sender: Any?)}
  |                                  |- note: calls to instance method 'dismiss' from outside of its actor context are implicitly asynchronous
  |                                  `- note: main actor isolation inferred from inheritance from class 'NSResponder'
4 |
[39/52] Compiling Flows OAuth2ImplicitGrantWithQueryParams.swift
[40/53] Compiling Flows OAuth2ImplicitGrant.swift
[41/53] Compiling Flows OAuth2DynReg.swift
[42/53] Compiling Flows OAuth2CodeGrantFacebook.swift
[43/53] Compiling Flows OAuth2CodeGrantLinkedIn.swift
[44/53] Compiling Flows OAuth2CodeGrantNoTokenType.swift
[45/53] Compiling Flows OAuth2CodeGrantAzure.swift
[46/53] Compiling Flows OAuth2CodeGrantBasicAuth.swift
[47/53] Compiling Flows OAuth2ClientCredentialsReddit.swift
[48/53] Compiling Flows OAuth2CodeGrant.swift
[49/53] Compiling Flows OAuth2DeviceGrant.swift
/Users/admin/builder/spi-builder-workspace/Sources/Flows/OAuth2DeviceGrant.swift:171:8: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
169 | 						self.logger?.debug("OAuth2", msg: "AuthorizationPending, repeating in \(interval) seconds.")
170 | 						DispatchQueue.main.asyncAfter(deadline: .now() + interval) {
171 | 							self.getDeviceAccessToken(deviceCode: deviceCode, interval: interval, completion: completion)
    |        |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |        `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
172 | 						}
173 | 					} else if oaerror == .slowDown(nil) {
/Users/admin/builder/spi-builder-workspace/Sources/Flows/OAuth2DeviceGrant.swift:171:90: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
169 | 						self.logger?.debug("OAuth2", msg: "AuthorizationPending, repeating in \(interval) seconds.")
170 | 						DispatchQueue.main.asyncAfter(deadline: .now() + interval) {
171 | 							self.getDeviceAccessToken(deviceCode: deviceCode, interval: interval, completion: completion)
    |                                                                                          |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                                                                                          `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
172 | 						}
173 | 					} else if oaerror == .slowDown(nil) {
/Users/admin/builder/spi-builder-workspace/Sources/Flows/OAuth2DeviceGrant.swift:177:8: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
175 | 						self.logger?.debug("OAuth2", msg: "SlowDown, repeating in \(updatedInterval) seconds.")
176 | 						DispatchQueue.main.asyncAfter(deadline: .now() + updatedInterval) {
177 | 							self.getDeviceAccessToken(deviceCode: deviceCode, interval: updatedInterval, completion: completion)
    |        |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |        `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
178 | 						}
179 | 					} else {
/Users/admin/builder/spi-builder-workspace/Sources/Flows/OAuth2DeviceGrant.swift:177:97: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
175 | 						self.logger?.debug("OAuth2", msg: "SlowDown, repeating in \(updatedInterval) seconds.")
176 | 						DispatchQueue.main.asyncAfter(deadline: .now() + updatedInterval) {
177 | 							self.getDeviceAccessToken(deviceCode: deviceCode, interval: updatedInterval, completion: completion)
    |                                                                                                 |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                                                                                                 `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
178 | 						}
179 | 					} else {
[50/53] Emitting module Flows
[51/53] Compiling Flows OAuth2.swift
[52/53] Compiling Flows OAuth2ClientCredentials.swift
[53/53] Compiling Flows OAuth2PasswordGrant.swift
[54/57] Compiling DataLoader OAuth2DataRequest.swift
[55/57] Emitting module DataLoader
/Users/admin/builder/spi-builder-workspace/Sources/DataLoader/OAuth2DataLoaderSessionTaskDelegate.swift:31:12: warning: non-final class 'OAuth2DataLoaderSessionTaskDelegate' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
29 | redirected request.
30 | */
31 | open class OAuth2DataLoaderSessionTaskDelegate: NSObject, URLSessionTaskDelegate {
   |            `- warning: non-final class 'OAuth2DataLoaderSessionTaskDelegate' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
32 |
33 | 	/// The loader to which the delegate belongs, needed for request signing.
/Users/admin/builder/spi-builder-workspace/Sources/DataLoader/OAuth2DataLoaderSessionTaskDelegate.swift:34:32: warning: stored property 'loader' of 'Sendable'-conforming class 'OAuth2DataLoaderSessionTaskDelegate' is mutable; this is an error in the Swift 6 language mode
32 |
33 | 	/// The loader to which the delegate belongs, needed for request signing.
34 | 	public internal(set) weak var loader: OAuth2DataLoader?
   |                                `- warning: stored property 'loader' of 'Sendable'-conforming class 'OAuth2DataLoaderSessionTaskDelegate' is mutable; this is an error in the Swift 6 language mode
35 |
36 | 	/// Only redirects against this host will be approved.
[56/57] Compiling DataLoader OAuth2DataLoader.swift
[57/57] Compiling DataLoader OAuth2DataLoaderSessionTaskDelegate.swift
/Users/admin/builder/spi-builder-workspace/Sources/DataLoader/OAuth2DataLoaderSessionTaskDelegate.swift:31:12: warning: non-final class 'OAuth2DataLoaderSessionTaskDelegate' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
29 | redirected request.
30 | */
31 | open class OAuth2DataLoaderSessionTaskDelegate: NSObject, URLSessionTaskDelegate {
   |            `- warning: non-final class 'OAuth2DataLoaderSessionTaskDelegate' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
32 |
33 | 	/// The loader to which the delegate belongs, needed for request signing.
/Users/admin/builder/spi-builder-workspace/Sources/DataLoader/OAuth2DataLoaderSessionTaskDelegate.swift:34:32: warning: stored property 'loader' of 'Sendable'-conforming class 'OAuth2DataLoaderSessionTaskDelegate' is mutable; this is an error in the Swift 6 language mode
32 |
33 | 	/// The loader to which the delegate belongs, needed for request signing.
34 | 	public internal(set) weak var loader: OAuth2DataLoader?
   |                                `- warning: stored property 'loader' of 'Sendable'-conforming class 'OAuth2DataLoaderSessionTaskDelegate' is mutable; this is an error in the Swift 6 language mode
35 |
36 | 	/// Only redirects against this host will be approved.
[58/59] Emitting module OAuth2
[59/59] Compiling OAuth2 OAuth2Module.swift
Build complete! (12.82s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "OAuth2",
  "name" : "OAuth2",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "10.15"
    },
    {
      "name" : "ios",
      "version" : "12.0"
    },
    {
      "name" : "tvos",
      "version" : "12.0"
    },
    {
      "name" : "watchos",
      "version" : "5.0"
    }
  ],
  "products" : [
    {
      "name" : "OAuth2",
      "targets" : [
        "OAuth2"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "tvOS",
      "module_type" : "SwiftTarget",
      "name" : "tvOS",
      "path" : "Sources/tvOS",
      "product_memberships" : [
        "OAuth2"
      ],
      "sources" : [
        "OAuth2Authorizer+tvOS.swift",
        "OAuth2CustomAuthorizer+tvOS.swift"
      ],
      "target_dependencies" : [
        "Base"
      ],
      "type" : "library"
    },
    {
      "c99name" : "macOS",
      "module_type" : "SwiftTarget",
      "name" : "macOS",
      "path" : "Sources/macOS",
      "product_memberships" : [
        "OAuth2"
      ],
      "sources" : [
        "OAuth2Authorizer+macOS.swift",
        "OAuth2CustomAuthorizer+macOS.swift",
        "OAuth2WebViewController+macOS.swift"
      ],
      "target_dependencies" : [
        "Base"
      ],
      "type" : "library"
    },
    {
      "c99name" : "iOS",
      "module_type" : "SwiftTarget",
      "name" : "iOS",
      "path" : "Sources/iOS",
      "product_memberships" : [
        "OAuth2"
      ],
      "sources" : [
        "OAuth2Authorizer+iOS.swift",
        "OAuth2CustomAuthorizer+iOS.swift",
        "OAuth2WebViewController+iOS.swift"
      ],
      "target_dependencies" : [
        "Base"
      ],
      "type" : "library"
    },
    {
      "c99name" : "SwiftKeychain",
      "module_type" : "SwiftTarget",
      "name" : "SwiftKeychain",
      "path" : "Sources/SwiftKeychain",
      "product_memberships" : [
        "OAuth2"
      ],
      "sources" : [
        "Keychain.swift"
      ],
      "type" : "library"
    },
    {
      "c99name" : "OAuth2",
      "module_type" : "SwiftTarget",
      "name" : "OAuth2",
      "path" : "Sources/OAuth2",
      "product_memberships" : [
        "OAuth2"
      ],
      "sources" : [
        "OAuth2Module.swift"
      ],
      "target_dependencies" : [
        "Base",
        "Flows",
        "DataLoader"
      ],
      "type" : "library"
    },
    {
      "c99name" : "Flows",
      "module_type" : "SwiftTarget",
      "name" : "Flows",
      "path" : "Sources/Flows",
      "product_memberships" : [
        "OAuth2"
      ],
      "sources" : [
        "OAuth2.swift",
        "OAuth2ClientCredentials.swift",
        "OAuth2ClientCredentialsReddit.swift",
        "OAuth2CodeGrant.swift",
        "OAuth2CodeGrantAzure.swift",
        "OAuth2CodeGrantBasicAuth.swift",
        "OAuth2CodeGrantFacebook.swift",
        "OAuth2CodeGrantLinkedIn.swift",
        "OAuth2CodeGrantNoTokenType.swift",
        "OAuth2DeviceGrant.swift",
        "OAuth2DynReg.swift",
        "OAuth2ImplicitGrant.swift",
        "OAuth2ImplicitGrantWithQueryParams.swift",
        "OAuth2PasswordGrant.swift"
      ],
      "target_dependencies" : [
        "macOS",
        "iOS",
        "tvOS"
      ],
      "type" : "library"
    },
    {
      "c99name" : "FlowTests",
      "module_type" : "SwiftTarget",
      "name" : "FlowTests",
      "path" : "Tests/FlowTests",
      "sources" : [
        "OAuth2ClientCredentialsTests.swift",
        "OAuth2CodeGrantTests.swift",
        "OAuth2DeviceGrantTests.swift",
        "OAuth2DynRegTests.swift",
        "OAuth2ImplicitGrantTests.swift",
        "OAuth2PasswordGrantTests.swift",
        "OAuth2RefreshTokenTests.swift"
      ],
      "target_dependencies" : [
        "Flows"
      ],
      "type" : "test"
    },
    {
      "c99name" : "DataLoader",
      "module_type" : "SwiftTarget",
      "name" : "DataLoader",
      "path" : "Sources/DataLoader",
      "product_memberships" : [
        "OAuth2"
      ],
      "sources" : [
        "OAuth2DataLoader.swift",
        "OAuth2DataLoaderSessionTaskDelegate.swift",
        "OAuth2DataRequest.swift"
      ],
      "target_dependencies" : [
        "Flows"
      ],
      "type" : "library"
    },
    {
      "c99name" : "BaseTests",
      "module_type" : "SwiftTarget",
      "name" : "BaseTests",
      "path" : "Tests/BaseTests",
      "sources" : [
        "OAuth2AuthRequestTests.swift",
        "OAuth2Tests.swift"
      ],
      "target_dependencies" : [
        "Base",
        "Flows"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Base",
      "module_type" : "SwiftTarget",
      "name" : "Base",
      "path" : "Sources/Base",
      "product_memberships" : [
        "OAuth2"
      ],
      "sources" : [
        "OAuth2AuthConfig.swift",
        "OAuth2AuthRequest.swift",
        "OAuth2AuthorizerUI.swift",
        "OAuth2Base.swift",
        "OAuth2ClientConfig.swift",
        "OAuth2CustomAuthorizerUI.swift",
        "OAuth2DebugURLSessionDelegate.swift",
        "OAuth2Error.swift",
        "OAuth2KeychainAccount.swift",
        "OAuth2Logger.swift",
        "OAuth2RequestPerformer.swift",
        "OAuth2Requestable.swift",
        "OAuth2Response.swift",
        "OAuth2Securable.swift",
        "extensions.swift"
      ],
      "target_dependencies" : [
        "SwiftKeychain"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.3"
}
Done.