Build Information
Successful build of HTTPMock, reference 0.0.3 (f6cd70
), with Swift 6.1 for macOS (SPM) on 31 Aug 2025 14:19:16 UTC.
Swift 6 data race errors: 7
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.67.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/bstien/HTTPMock.git
Reference: 0.0.3
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/bstien/HTTPMock
* tag 0.0.3 -> FETCH_HEAD
HEAD is now at f6cd70a Feature: Support for multiple instances of `HTTPMock` (#4)
Cloned https://github.com/bstien/HTTPMock.git
Revision (git rev-parse @):
f6cd70af445a6b47f0346b70cc8445aac618521f
SUCCESS checkout https://github.com/bstien/HTTPMock.git at 0.0.3
========================================
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": "httpmock",
"name": "HTTPMock",
"url": "https://github.com/bstien/HTTPMock.git",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/HTTPMock",
"dependencies": [
]
}
]
}
Fetching https://github.com/bstien/HTTPMock.git
[1/336] Fetching httpmock
Fetched https://github.com/bstien/HTTPMock.git from cache (0.82s)
Creating working copy for https://github.com/bstien/HTTPMock.git
Working copy of https://github.com/bstien/HTTPMock.git resolved at 0.0.3 (f6cd70a)
warning: '.resolve-product-dependencies': dependency 'httpmock' 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/bstien/HTTPMock.git
https://github.com/bstien/HTTPMock.git
{
"dependencies" : [
],
"manifest_display_name" : "HTTPMock",
"name" : "HTTPMock",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "15.0"
},
{
"name" : "macos",
"version" : "12.0"
}
],
"products" : [
{
"name" : "HTTPMock",
"targets" : [
"HTTPMock"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"swift_languages_versions" : [
"5"
],
"targets" : [
{
"c99name" : "HTTPMockTests",
"module_type" : "SwiftTarget",
"name" : "HTTPMockTests",
"path" : "Tests/HTTPMockTests",
"sources" : [
"HTTPMockResultBuilderTests.swift",
"HTTPMockTests.swift",
"Helpers/Data+Extensions.swift",
"Helpers/DummyData.swift",
"Helpers/HTTPMock+Extensions.swift",
"Helpers/URLResponse+Extensions.swift",
"Helpers/UtilMethods.swift"
],
"target_dependencies" : [
"HTTPMock"
],
"type" : "test"
},
{
"c99name" : "HTTPMock",
"module_type" : "SwiftTarget",
"name" : "HTTPMock",
"path" : "Sources/HTTPMock",
"product_memberships" : [
"HTTPMock"
],
"sources" : [
"Extensions/Dictionary+Extensions.swift",
"Extensions/JSONEncoder+Extensions.swift",
"Extensions/URLQueryItem+Extensions.swift",
"Extensions/URLSession+Extensions.swift",
"HTTPMock+ResultBuilder.swift",
"HTTPMock.swift",
"Internal/HTTPMockLog.swift",
"Internal/HTTPMockURLProtocol+Key.swift",
"Internal/HTTPMockURLProtocol.swift",
"Models/MockResponse+Delivery.swift",
"Models/MockResponse+Lifetime.swift",
"Models/MockResponse+Payload.swift",
"Models/MockResponse+Status.swift",
"Models/MockResponse.swift",
"Models/QueryMatching.swift",
"Models/UnmockedPolicy.swift",
"ResultBuilder/HostBuilder.swift",
"ResultBuilder/Models/Headers.swift",
"ResultBuilder/Models/Host.swift",
"ResultBuilder/Models/HostElement.swift",
"ResultBuilder/Models/Path.swift",
"ResultBuilder/Models/PathElement.swift",
"ResultBuilder/Models/Registration.swift",
"ResultBuilder/PathBuilder.swift",
"ResultBuilder/RegistrationBuilder.swift"
],
"type" : "library"
}
],
"tools_version" : "6.1"
}
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-2F0A5646E1D333AE.txt
[3/26] Emitting module HTTPMock
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Extensions/URLSession+Extensions.swift:4:13: warning: var 'MockIdentifierKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
2 | import ObjectiveC.runtime
3 |
4 | private var MockIdentifierKey: UInt8 = 0
| |- warning: var 'MockIdentifierKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'MockIdentifierKey' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make var 'MockIdentifierKey' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
5 |
6 | extension URLSession {
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/HTTPMock.swift:4:23: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'HTTPMock' may have shared mutable state; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public final class HTTPMock {
| `- note: class 'HTTPMock' does not conform to the 'Sendable' protocol
4 | public static let shared = HTTPMock()
| |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'HTTPMock' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
5 | public let urlSession: URLSession
6 | public var defaultDomain = "example.com"
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockLog.swift:4:23: warning: static property 'logger' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
2 |
3 | public enum HTTPMockLog {
4 | public static var logger = Logger(subsystem: "httpmock", category: "HTTPMock")
| |- warning: static property 'logger' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'logger' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'logger' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
5 | public static var isEnabled = true
6 | public static var level: Level = .info
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockLog.swift:5:23: warning: static property 'isEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
3 | public enum HTTPMockLog {
4 | public static var logger = Logger(subsystem: "httpmock", category: "HTTPMock")
5 | public static var isEnabled = true
| |- warning: static property 'isEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'isEnabled' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'isEnabled' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
6 | public static var level: Level = .info
7 |
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockLog.swift:6:23: warning: static property 'level' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
4 | public static var logger = Logger(subsystem: "httpmock", category: "HTTPMock")
5 | public static var isEnabled = true
6 | public static var level: Level = .info
| |- warning: static property 'level' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'level' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'level' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
7 |
8 | public static func error(_ message: String) {
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockURLProtocol.swift:4:24: warning: static property 'queues' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
2 |
3 | final class HTTPMockURLProtocol: URLProtocol {
4 | private static var queues: [UUID: [Key: [MockResponse]]] = [:]
| |- warning: static property 'queues' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'queues' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'queues' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
5 | private static var unmockedPolicyStorage: [UUID: UnmockedPolicy] = [:]
6 | private static let handledKey = "HTTPMockHandled"
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockURLProtocol.swift:5:24: warning: static property 'unmockedPolicyStorage' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
3 | final class HTTPMockURLProtocol: URLProtocol {
4 | private static var queues: [UUID: [Key: [MockResponse]]] = [:]
5 | private static var unmockedPolicyStorage: [UUID: UnmockedPolicy] = [:]
| |- warning: static property 'unmockedPolicyStorage' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'unmockedPolicyStorage' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'unmockedPolicyStorage' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
6 | private static let handledKey = "HTTPMockHandled"
7 | private static let queueLock = DispatchQueue(label: "MockURLProtocol.queueLock")
[4/28] Compiling HTTPMock PathBuilder.swift
[5/28] Compiling HTTPMock RegistrationBuilder.swift
[6/28] Compiling HTTPMock MockResponse+Delivery.swift
[7/28] Compiling HTTPMock MockResponse+Lifetime.swift
[8/28] Compiling HTTPMock MockResponse+Payload.swift
[9/28] Compiling HTTPMock Headers.swift
[10/28] Compiling HTTPMock Host.swift
[11/28] Compiling HTTPMock Dictionary+Extensions.swift
[12/28] Compiling HTTPMock JSONEncoder+Extensions.swift
[13/28] Compiling HTTPMock URLQueryItem+Extensions.swift
[14/28] Compiling HTTPMock URLSession+Extensions.swift
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Extensions/URLSession+Extensions.swift:4:13: warning: var 'MockIdentifierKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
2 | import ObjectiveC.runtime
3 |
4 | private var MockIdentifierKey: UInt8 = 0
| |- warning: var 'MockIdentifierKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'MockIdentifierKey' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make var 'MockIdentifierKey' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
5 |
6 | extension URLSession {
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/HTTPMock.swift:4:23: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'HTTPMock' may have shared mutable state; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public final class HTTPMock {
| `- note: class 'HTTPMock' does not conform to the 'Sendable' protocol
4 | public static let shared = HTTPMock()
| |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'HTTPMock' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
5 | public let urlSession: URLSession
6 | public var defaultDomain = "example.com"
[15/28] Compiling HTTPMock HTTPMock+ResultBuilder.swift
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Extensions/URLSession+Extensions.swift:4:13: warning: var 'MockIdentifierKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
2 | import ObjectiveC.runtime
3 |
4 | private var MockIdentifierKey: UInt8 = 0
| |- warning: var 'MockIdentifierKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'MockIdentifierKey' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make var 'MockIdentifierKey' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
5 |
6 | extension URLSession {
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/HTTPMock.swift:4:23: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'HTTPMock' may have shared mutable state; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public final class HTTPMock {
| `- note: class 'HTTPMock' does not conform to the 'Sendable' protocol
4 | public static let shared = HTTPMock()
| |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'HTTPMock' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
5 | public let urlSession: URLSession
6 | public var defaultDomain = "example.com"
[16/28] Compiling HTTPMock HTTPMock.swift
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Extensions/URLSession+Extensions.swift:4:13: warning: var 'MockIdentifierKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
2 | import ObjectiveC.runtime
3 |
4 | private var MockIdentifierKey: UInt8 = 0
| |- warning: var 'MockIdentifierKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'MockIdentifierKey' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make var 'MockIdentifierKey' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
5 |
6 | extension URLSession {
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/HTTPMock.swift:4:23: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'HTTPMock' may have shared mutable state; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public final class HTTPMock {
| `- note: class 'HTTPMock' does not conform to the 'Sendable' protocol
4 | public static let shared = HTTPMock()
| |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'HTTPMock' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
5 | public let urlSession: URLSession
6 | public var defaultDomain = "example.com"
[17/28] Compiling HTTPMock UnmockedPolicy.swift
[18/28] Compiling HTTPMock HostBuilder.swift
[19/28] Compiling HTTPMock HostElement.swift
[20/28] Compiling HTTPMock Path.swift
[21/28] Compiling HTTPMock PathElement.swift
[22/28] Compiling HTTPMock Registration.swift
[23/28] Compiling HTTPMock HTTPMockLog.swift
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockLog.swift:4:23: warning: static property 'logger' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
2 |
3 | public enum HTTPMockLog {
4 | public static var logger = Logger(subsystem: "httpmock", category: "HTTPMock")
| |- warning: static property 'logger' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'logger' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'logger' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
5 | public static var isEnabled = true
6 | public static var level: Level = .info
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockLog.swift:5:23: warning: static property 'isEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
3 | public enum HTTPMockLog {
4 | public static var logger = Logger(subsystem: "httpmock", category: "HTTPMock")
5 | public static var isEnabled = true
| |- warning: static property 'isEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'isEnabled' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'isEnabled' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
6 | public static var level: Level = .info
7 |
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockLog.swift:6:23: warning: static property 'level' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
4 | public static var logger = Logger(subsystem: "httpmock", category: "HTTPMock")
5 | public static var isEnabled = true
6 | public static var level: Level = .info
| |- warning: static property 'level' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'level' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'level' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
7 |
8 | public static func error(_ message: String) {
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockURLProtocol.swift:4:24: warning: static property 'queues' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
2 |
3 | final class HTTPMockURLProtocol: URLProtocol {
4 | private static var queues: [UUID: [Key: [MockResponse]]] = [:]
| |- warning: static property 'queues' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'queues' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'queues' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
5 | private static var unmockedPolicyStorage: [UUID: UnmockedPolicy] = [:]
6 | private static let handledKey = "HTTPMockHandled"
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockURLProtocol.swift:5:24: warning: static property 'unmockedPolicyStorage' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
3 | final class HTTPMockURLProtocol: URLProtocol {
4 | private static var queues: [UUID: [Key: [MockResponse]]] = [:]
5 | private static var unmockedPolicyStorage: [UUID: UnmockedPolicy] = [:]
| |- warning: static property 'unmockedPolicyStorage' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'unmockedPolicyStorage' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'unmockedPolicyStorage' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
6 | private static let handledKey = "HTTPMockHandled"
7 | private static let queueLock = DispatchQueue(label: "MockURLProtocol.queueLock")
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockURLProtocol.swift:167:105: warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
165 | case .delayed(let delay):
166 | HTTPMockLog.info("Delaying response for \(requestDescription) for \(delay) seconds")
167 | DispatchQueue.global(qos: .userInitiated).asyncAfter(deadline: .now() + delay, execute: sendResponse)
| `- warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
168 | }
169 | } else {
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockURLProtocol.swift:191:25: warning: capture of 'self' with non-sendable type 'HTTPMockURLProtocol' in a '@Sendable' closure
1 | import Foundation
2 |
3 | final class HTTPMockURLProtocol: URLProtocol {
| `- note: class 'HTTPMockURLProtocol' does not conform to the 'Sendable' protocol
4 | private static var queues: [UUID: [Key: [MockResponse]]] = [:]
5 | private static var unmockedPolicyStorage: [UUID: UnmockedPolicy] = [:]
:
189 | let task = passthroughSession.dataTask(with: req) { data, response, error in
190 | if let error {
191 | self.client?.urlProtocol(self, didFailWithError: error)
| `- warning: capture of 'self' with non-sendable type 'HTTPMockURLProtocol' in a '@Sendable' closure
192 | return
193 | }
[24/28] Compiling HTTPMock HTTPMockURLProtocol+Key.swift
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockLog.swift:4:23: warning: static property 'logger' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
2 |
3 | public enum HTTPMockLog {
4 | public static var logger = Logger(subsystem: "httpmock", category: "HTTPMock")
| |- warning: static property 'logger' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'logger' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'logger' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
5 | public static var isEnabled = true
6 | public static var level: Level = .info
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockLog.swift:5:23: warning: static property 'isEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
3 | public enum HTTPMockLog {
4 | public static var logger = Logger(subsystem: "httpmock", category: "HTTPMock")
5 | public static var isEnabled = true
| |- warning: static property 'isEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'isEnabled' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'isEnabled' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
6 | public static var level: Level = .info
7 |
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockLog.swift:6:23: warning: static property 'level' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
4 | public static var logger = Logger(subsystem: "httpmock", category: "HTTPMock")
5 | public static var isEnabled = true
6 | public static var level: Level = .info
| |- warning: static property 'level' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'level' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'level' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
7 |
8 | public static func error(_ message: String) {
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockURLProtocol.swift:4:24: warning: static property 'queues' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
2 |
3 | final class HTTPMockURLProtocol: URLProtocol {
4 | private static var queues: [UUID: [Key: [MockResponse]]] = [:]
| |- warning: static property 'queues' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'queues' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'queues' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
5 | private static var unmockedPolicyStorage: [UUID: UnmockedPolicy] = [:]
6 | private static let handledKey = "HTTPMockHandled"
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockURLProtocol.swift:5:24: warning: static property 'unmockedPolicyStorage' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
3 | final class HTTPMockURLProtocol: URLProtocol {
4 | private static var queues: [UUID: [Key: [MockResponse]]] = [:]
5 | private static var unmockedPolicyStorage: [UUID: UnmockedPolicy] = [:]
| |- warning: static property 'unmockedPolicyStorage' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'unmockedPolicyStorage' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'unmockedPolicyStorage' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
6 | private static let handledKey = "HTTPMockHandled"
7 | private static let queueLock = DispatchQueue(label: "MockURLProtocol.queueLock")
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockURLProtocol.swift:167:105: warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
165 | case .delayed(let delay):
166 | HTTPMockLog.info("Delaying response for \(requestDescription) for \(delay) seconds")
167 | DispatchQueue.global(qos: .userInitiated).asyncAfter(deadline: .now() + delay, execute: sendResponse)
| `- warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
168 | }
169 | } else {
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockURLProtocol.swift:191:25: warning: capture of 'self' with non-sendable type 'HTTPMockURLProtocol' in a '@Sendable' closure
1 | import Foundation
2 |
3 | final class HTTPMockURLProtocol: URLProtocol {
| `- note: class 'HTTPMockURLProtocol' does not conform to the 'Sendable' protocol
4 | private static var queues: [UUID: [Key: [MockResponse]]] = [:]
5 | private static var unmockedPolicyStorage: [UUID: UnmockedPolicy] = [:]
:
189 | let task = passthroughSession.dataTask(with: req) { data, response, error in
190 | if let error {
191 | self.client?.urlProtocol(self, didFailWithError: error)
| `- warning: capture of 'self' with non-sendable type 'HTTPMockURLProtocol' in a '@Sendable' closure
192 | return
193 | }
[25/28] Compiling HTTPMock HTTPMockURLProtocol.swift
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockLog.swift:4:23: warning: static property 'logger' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
2 |
3 | public enum HTTPMockLog {
4 | public static var logger = Logger(subsystem: "httpmock", category: "HTTPMock")
| |- warning: static property 'logger' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'logger' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'logger' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
5 | public static var isEnabled = true
6 | public static var level: Level = .info
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockLog.swift:5:23: warning: static property 'isEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
3 | public enum HTTPMockLog {
4 | public static var logger = Logger(subsystem: "httpmock", category: "HTTPMock")
5 | public static var isEnabled = true
| |- warning: static property 'isEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'isEnabled' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'isEnabled' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
6 | public static var level: Level = .info
7 |
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockLog.swift:6:23: warning: static property 'level' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
4 | public static var logger = Logger(subsystem: "httpmock", category: "HTTPMock")
5 | public static var isEnabled = true
6 | public static var level: Level = .info
| |- warning: static property 'level' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'level' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'level' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
7 |
8 | public static func error(_ message: String) {
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockURLProtocol.swift:4:24: warning: static property 'queues' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
2 |
3 | final class HTTPMockURLProtocol: URLProtocol {
4 | private static var queues: [UUID: [Key: [MockResponse]]] = [:]
| |- warning: static property 'queues' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'queues' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'queues' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
5 | private static var unmockedPolicyStorage: [UUID: UnmockedPolicy] = [:]
6 | private static let handledKey = "HTTPMockHandled"
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockURLProtocol.swift:5:24: warning: static property 'unmockedPolicyStorage' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
3 | final class HTTPMockURLProtocol: URLProtocol {
4 | private static var queues: [UUID: [Key: [MockResponse]]] = [:]
5 | private static var unmockedPolicyStorage: [UUID: UnmockedPolicy] = [:]
| |- warning: static property 'unmockedPolicyStorage' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'unmockedPolicyStorage' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'unmockedPolicyStorage' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
6 | private static let handledKey = "HTTPMockHandled"
7 | private static let queueLock = DispatchQueue(label: "MockURLProtocol.queueLock")
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockURLProtocol.swift:167:105: warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
165 | case .delayed(let delay):
166 | HTTPMockLog.info("Delaying response for \(requestDescription) for \(delay) seconds")
167 | DispatchQueue.global(qos: .userInitiated).asyncAfter(deadline: .now() + delay, execute: sendResponse)
| `- warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
168 | }
169 | } else {
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockURLProtocol.swift:191:25: warning: capture of 'self' with non-sendable type 'HTTPMockURLProtocol' in a '@Sendable' closure
1 | import Foundation
2 |
3 | final class HTTPMockURLProtocol: URLProtocol {
| `- note: class 'HTTPMockURLProtocol' does not conform to the 'Sendable' protocol
4 | private static var queues: [UUID: [Key: [MockResponse]]] = [:]
5 | private static var unmockedPolicyStorage: [UUID: UnmockedPolicy] = [:]
:
189 | let task = passthroughSession.dataTask(with: req) { data, response, error in
190 | if let error {
191 | self.client?.urlProtocol(self, didFailWithError: error)
| `- warning: capture of 'self' with non-sendable type 'HTTPMockURLProtocol' in a '@Sendable' closure
192 | return
193 | }
[26/28] Compiling HTTPMock MockResponse+Status.swift
[27/28] Compiling HTTPMock MockResponse.swift
[28/28] Compiling HTTPMock QueryMatching.swift
Build complete! (6.31s)
Build complete.
{
"dependencies" : [
],
"manifest_display_name" : "HTTPMock",
"name" : "HTTPMock",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "15.0"
},
{
"name" : "macos",
"version" : "12.0"
}
],
"products" : [
{
"name" : "HTTPMock",
"targets" : [
"HTTPMock"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"swift_languages_versions" : [
"5"
],
"targets" : [
{
"c99name" : "HTTPMockTests",
"module_type" : "SwiftTarget",
"name" : "HTTPMockTests",
"path" : "Tests/HTTPMockTests",
"sources" : [
"HTTPMockResultBuilderTests.swift",
"HTTPMockTests.swift",
"Helpers/Data+Extensions.swift",
"Helpers/DummyData.swift",
"Helpers/HTTPMock+Extensions.swift",
"Helpers/URLResponse+Extensions.swift",
"Helpers/UtilMethods.swift"
],
"target_dependencies" : [
"HTTPMock"
],
"type" : "test"
},
{
"c99name" : "HTTPMock",
"module_type" : "SwiftTarget",
"name" : "HTTPMock",
"path" : "Sources/HTTPMock",
"product_memberships" : [
"HTTPMock"
],
"sources" : [
"Extensions/Dictionary+Extensions.swift",
"Extensions/JSONEncoder+Extensions.swift",
"Extensions/URLQueryItem+Extensions.swift",
"Extensions/URLSession+Extensions.swift",
"HTTPMock+ResultBuilder.swift",
"HTTPMock.swift",
"Internal/HTTPMockLog.swift",
"Internal/HTTPMockURLProtocol+Key.swift",
"Internal/HTTPMockURLProtocol.swift",
"Models/MockResponse+Delivery.swift",
"Models/MockResponse+Lifetime.swift",
"Models/MockResponse+Payload.swift",
"Models/MockResponse+Status.swift",
"Models/MockResponse.swift",
"Models/QueryMatching.swift",
"Models/UnmockedPolicy.swift",
"ResultBuilder/HostBuilder.swift",
"ResultBuilder/Models/Headers.swift",
"ResultBuilder/Models/Host.swift",
"ResultBuilder/Models/HostElement.swift",
"ResultBuilder/Models/Path.swift",
"ResultBuilder/Models/PathElement.swift",
"ResultBuilder/Models/Registration.swift",
"ResultBuilder/PathBuilder.swift",
"ResultBuilder/RegistrationBuilder.swift"
],
"type" : "library"
}
],
"tools_version" : "6.1"
}
Done.