Build Information
Successful build of HTTPMock, reference 0.0.5 (b9d64b), with Swift 6.1 for macOS (SPM) on 7 Oct 2025 16:14:51 UTC.
Swift 6 data race errors: 10
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 InferSendableFromCapturesBuild Log
========================================
RunAll
========================================
Builder version: 4.68.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/bstien/HTTPMock.git
Reference: 0.0.5
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/bstien/HTTPMock
* tag 0.0.5 -> FETCH_HEAD
HEAD is now at b9d64b7 Unmocked policy: Option to throw error (#12)
Cloned https://github.com/bstien/HTTPMock.git
Revision (git rev-parse @):
b9d64b736bba47907af409f7edf35a5e376e2d0d
SUCCESS checkout https://github.com/bstien/HTTPMock.git at 0.0.5
========================================
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" : [
"HTTPMockFatalErrorTests.swift",
"HTTPMockMatcherTests.swift",
"HTTPMockPassthroughTests.swift",
"HTTPMockResultBuilderTests.swift",
"HTTPMockTests.swift",
"Helpers/Data+Extensions.swift",
"Helpers/DummyData.swift",
"Helpers/HTTPMock+Extensions.swift",
"Helpers/URLResponse+Extensions.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/HTTPMockMatcher+ExpressionStorage.swift",
"Internal/HTTPMockMatcher+MatchKind.swift",
"Internal/HTTPMockMatcher.swift",
"Internal/HTTPMockURLProtocol+Key.swift",
"Internal/HTTPMockURLProtocol+MockMatch.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/30] 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:6: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 | /// A shared singleton instance for convenience. Use this for simple testing scenarios.
5 | /// For parallel testing or isolated mock configurations, create separate instances with `HTTPMock()`.
6 | 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
7 |
8 | /// The URLSession that intercepts and mocks HTTP requests.
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockLog.swift:5: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
3 |
4 | public enum HTTPMockLog {
5 | 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
6 | public static var isEnabled = true
7 | public static var level: Level = .trace
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockLog.swift:6: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
4 | public enum HTTPMockLog {
5 | public static var logger = Logger(subsystem: "httpmock", category: "HTTPMock")
6 | 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
7 | public static var level: Level = .trace
8 |
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockLog.swift:7: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
5 | public static var logger = Logger(subsystem: "httpmock", category: "HTTPMock")
6 | public static var isEnabled = true
7 | public static var level: Level = .trace
| |- 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
8 |
9 | public static func error(_ message: @autoclosure () -> 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 var passthroughSessions: [UUID: URLSession] = [:]
/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 var passthroughSessions: [UUID: URLSession] = [:]
7 | private static let matcher = HTTPMockMatcher()
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockURLProtocol.swift:6:24: warning: static property 'passthroughSessions' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
4 | private static var queues: [UUID: [Key: [MockResponse]]] = [:]
5 | private static var unmockedPolicyStorage: [UUID: UnmockedPolicy] = [:]
6 | private static var passthroughSessions: [UUID: URLSession] = [:]
| |- warning: static property 'passthroughSessions' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'passthroughSessions' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'passthroughSessions' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
7 | private static let matcher = HTTPMockMatcher()
8 | private static let handledKey = "HTTPMockHandled"
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockURLProtocol.swift:7:24: warning: static property 'matcher' is not concurrency-safe because non-'Sendable' type 'HTTPMockMatcher' may have shared mutable state; this is an error in the Swift 6 language mode
5 | private static var unmockedPolicyStorage: [UUID: UnmockedPolicy] = [:]
6 | private static var passthroughSessions: [UUID: URLSession] = [:]
7 | private static let matcher = HTTPMockMatcher()
| |- warning: static property 'matcher' is not concurrency-safe because non-'Sendable' type 'HTTPMockMatcher' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'matcher' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
8 | private static let handledKey = "HTTPMockHandled"
9 | private static let queueLock = DispatchQueue(label: "MockURLProtocol.queueLock")
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockMatcher.swift:6:8: note: consider making struct 'HTTPMockMatcher' conform to the 'Sendable' protocol
4 | /// Supports exact matches and wildcard patterns (`*` for a single segment, `**` for multiple segments (zero or more)).
5 | /// Also compares query parameters and applies query matching rules (`.exact` / `.contains`).
6 | struct HTTPMockMatcher {
| `- note: consider making struct 'HTTPMockMatcher' conform to the 'Sendable' protocol
7 |
8 | // MARK: - Internal properties
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockURLProtocol.swift:15:16: warning: static property 'fatalErrorClosure' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
13 | /// **Do not use**. This property is shared between all `HTTPMock` instances and will be set to `nil` after each unmocked call that uses
14 | /// the `UnmockedPolicy.fatalError`. This property only exists to be able to test the functionality.
15 | static var fatalErrorClosure: (() -> Void)?
| |- warning: static property 'fatalErrorClosure' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'fatalErrorClosure' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'fatalErrorClosure' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
16 |
17 | // MARK: - Internal methods
[4/32] Compiling HTTPMock MockResponse+Payload.swift
[5/32] Compiling HTTPMock MockResponse+Status.swift
[6/32] Compiling HTTPMock MockResponse.swift
[7/32] Compiling HTTPMock PathBuilder.swift
[8/32] Compiling HTTPMock RegistrationBuilder.swift
[9/32] Compiling HTTPMock Headers.swift
[10/32] Compiling HTTPMock Host.swift
[11/32] Compiling HTTPMock HostElement.swift
[12/32] Compiling HTTPMock Dictionary+Extensions.swift
[13/32] Compiling HTTPMock JSONEncoder+Extensions.swift
[14/32] Compiling HTTPMock URLQueryItem+Extensions.swift
[15/32] Compiling HTTPMock Path.swift
[16/32] Compiling HTTPMock PathElement.swift
[17/32] Compiling HTTPMock Registration.swift
[18/32] Compiling HTTPMock HTTPMockMatcher.swift
[19/32] Compiling HTTPMock HTTPMockURLProtocol+Key.swift
[20/32] Compiling HTTPMock HTTPMockURLProtocol+MockMatch.swift
[21/32] Compiling HTTPMock QueryMatching.swift
[22/32] Compiling HTTPMock UnmockedPolicy.swift
[23/32] Compiling HTTPMock HostBuilder.swift
[24/32] Compiling HTTPMock HTTPMockURLProtocol.swift
/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 var passthroughSessions: [UUID: URLSession] = [:]
/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 var passthroughSessions: [UUID: URLSession] = [:]
7 | private static let matcher = HTTPMockMatcher()
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockURLProtocol.swift:6:24: warning: static property 'passthroughSessions' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
4 | private static var queues: [UUID: [Key: [MockResponse]]] = [:]
5 | private static var unmockedPolicyStorage: [UUID: UnmockedPolicy] = [:]
6 | private static var passthroughSessions: [UUID: URLSession] = [:]
| |- warning: static property 'passthroughSessions' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'passthroughSessions' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'passthroughSessions' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
7 | private static let matcher = HTTPMockMatcher()
8 | private static let handledKey = "HTTPMockHandled"
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockURLProtocol.swift:7:24: warning: static property 'matcher' is not concurrency-safe because non-'Sendable' type 'HTTPMockMatcher' may have shared mutable state; this is an error in the Swift 6 language mode
5 | private static var unmockedPolicyStorage: [UUID: UnmockedPolicy] = [:]
6 | private static var passthroughSessions: [UUID: URLSession] = [:]
7 | private static let matcher = HTTPMockMatcher()
| |- warning: static property 'matcher' is not concurrency-safe because non-'Sendable' type 'HTTPMockMatcher' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'matcher' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
8 | private static let handledKey = "HTTPMockHandled"
9 | private static let queueLock = DispatchQueue(label: "MockURLProtocol.queueLock")
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockMatcher.swift:6:8: note: consider making struct 'HTTPMockMatcher' conform to the 'Sendable' protocol
4 | /// Supports exact matches and wildcard patterns (`*` for a single segment, `**` for multiple segments (zero or more)).
5 | /// Also compares query parameters and applies query matching rules (`.exact` / `.contains`).
6 | struct HTTPMockMatcher {
| `- note: consider making struct 'HTTPMockMatcher' conform to the 'Sendable' protocol
7 |
8 | // MARK: - Internal properties
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockURLProtocol.swift:15:16: warning: static property 'fatalErrorClosure' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
13 | /// **Do not use**. This property is shared between all `HTTPMock` instances and will be set to `nil` after each unmocked call that uses
14 | /// the `UnmockedPolicy.fatalError`. This property only exists to be able to test the functionality.
15 | static var fatalErrorClosure: (() -> Void)?
| |- warning: static property 'fatalErrorClosure' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'fatalErrorClosure' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'fatalErrorClosure' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
16 |
17 | // MARK: - Internal methods
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockURLProtocol.swift:217: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] = [:]
:
215 | let task = passthroughSession.dataTask(with: request) { data, response, error in
216 | if let error {
217 | self.client?.urlProtocol(self, didFailWithError: error)
| `- warning: capture of 'self' with non-sendable type 'HTTPMockURLProtocol' in a '@Sendable' closure
218 | return
219 | }
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockURLProtocol.swift:298:21: warning: capture of 'performDelivery' with non-sendable type '(Data) -> Void' in a '@Sendable' closure
296 | HTTPMockLog.info("Delaying response for request '\(url.absoluteString)` for \(delay) seconds")
297 | DispatchQueue.global(qos: .userInitiated).asyncAfter(deadline: .now() + delay) {
298 | performDelivery(payloadData)
| |- warning: capture of 'performDelivery' with non-sendable type '(Data) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
299 | }
300 | }
[25/32] Compiling HTTPMock MockResponse+Delivery.swift
/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 var passthroughSessions: [UUID: URLSession] = [:]
/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 var passthroughSessions: [UUID: URLSession] = [:]
7 | private static let matcher = HTTPMockMatcher()
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockURLProtocol.swift:6:24: warning: static property 'passthroughSessions' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
4 | private static var queues: [UUID: [Key: [MockResponse]]] = [:]
5 | private static var unmockedPolicyStorage: [UUID: UnmockedPolicy] = [:]
6 | private static var passthroughSessions: [UUID: URLSession] = [:]
| |- warning: static property 'passthroughSessions' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'passthroughSessions' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'passthroughSessions' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
7 | private static let matcher = HTTPMockMatcher()
8 | private static let handledKey = "HTTPMockHandled"
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockURLProtocol.swift:7:24: warning: static property 'matcher' is not concurrency-safe because non-'Sendable' type 'HTTPMockMatcher' may have shared mutable state; this is an error in the Swift 6 language mode
5 | private static var unmockedPolicyStorage: [UUID: UnmockedPolicy] = [:]
6 | private static var passthroughSessions: [UUID: URLSession] = [:]
7 | private static let matcher = HTTPMockMatcher()
| |- warning: static property 'matcher' is not concurrency-safe because non-'Sendable' type 'HTTPMockMatcher' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'matcher' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
8 | private static let handledKey = "HTTPMockHandled"
9 | private static let queueLock = DispatchQueue(label: "MockURLProtocol.queueLock")
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockMatcher.swift:6:8: note: consider making struct 'HTTPMockMatcher' conform to the 'Sendable' protocol
4 | /// Supports exact matches and wildcard patterns (`*` for a single segment, `**` for multiple segments (zero or more)).
5 | /// Also compares query parameters and applies query matching rules (`.exact` / `.contains`).
6 | struct HTTPMockMatcher {
| `- note: consider making struct 'HTTPMockMatcher' conform to the 'Sendable' protocol
7 |
8 | // MARK: - Internal properties
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockURLProtocol.swift:15:16: warning: static property 'fatalErrorClosure' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
13 | /// **Do not use**. This property is shared between all `HTTPMock` instances and will be set to `nil` after each unmocked call that uses
14 | /// the `UnmockedPolicy.fatalError`. This property only exists to be able to test the functionality.
15 | static var fatalErrorClosure: (() -> Void)?
| |- warning: static property 'fatalErrorClosure' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'fatalErrorClosure' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'fatalErrorClosure' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
16 |
17 | // MARK: - Internal methods
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockURLProtocol.swift:217: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] = [:]
:
215 | let task = passthroughSession.dataTask(with: request) { data, response, error in
216 | if let error {
217 | self.client?.urlProtocol(self, didFailWithError: error)
| `- warning: capture of 'self' with non-sendable type 'HTTPMockURLProtocol' in a '@Sendable' closure
218 | return
219 | }
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockURLProtocol.swift:298:21: warning: capture of 'performDelivery' with non-sendable type '(Data) -> Void' in a '@Sendable' closure
296 | HTTPMockLog.info("Delaying response for request '\(url.absoluteString)` for \(delay) seconds")
297 | DispatchQueue.global(qos: .userInitiated).asyncAfter(deadline: .now() + delay) {
298 | performDelivery(payloadData)
| |- warning: capture of 'performDelivery' with non-sendable type '(Data) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
299 | }
300 | }
[26/32] Compiling HTTPMock MockResponse+Lifetime.swift
/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 var passthroughSessions: [UUID: URLSession] = [:]
/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 var passthroughSessions: [UUID: URLSession] = [:]
7 | private static let matcher = HTTPMockMatcher()
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockURLProtocol.swift:6:24: warning: static property 'passthroughSessions' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
4 | private static var queues: [UUID: [Key: [MockResponse]]] = [:]
5 | private static var unmockedPolicyStorage: [UUID: UnmockedPolicy] = [:]
6 | private static var passthroughSessions: [UUID: URLSession] = [:]
| |- warning: static property 'passthroughSessions' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'passthroughSessions' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'passthroughSessions' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
7 | private static let matcher = HTTPMockMatcher()
8 | private static let handledKey = "HTTPMockHandled"
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockURLProtocol.swift:7:24: warning: static property 'matcher' is not concurrency-safe because non-'Sendable' type 'HTTPMockMatcher' may have shared mutable state; this is an error in the Swift 6 language mode
5 | private static var unmockedPolicyStorage: [UUID: UnmockedPolicy] = [:]
6 | private static var passthroughSessions: [UUID: URLSession] = [:]
7 | private static let matcher = HTTPMockMatcher()
| |- warning: static property 'matcher' is not concurrency-safe because non-'Sendable' type 'HTTPMockMatcher' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'matcher' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
8 | private static let handledKey = "HTTPMockHandled"
9 | private static let queueLock = DispatchQueue(label: "MockURLProtocol.queueLock")
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockMatcher.swift:6:8: note: consider making struct 'HTTPMockMatcher' conform to the 'Sendable' protocol
4 | /// Supports exact matches and wildcard patterns (`*` for a single segment, `**` for multiple segments (zero or more)).
5 | /// Also compares query parameters and applies query matching rules (`.exact` / `.contains`).
6 | struct HTTPMockMatcher {
| `- note: consider making struct 'HTTPMockMatcher' conform to the 'Sendable' protocol
7 |
8 | // MARK: - Internal properties
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockURLProtocol.swift:15:16: warning: static property 'fatalErrorClosure' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
13 | /// **Do not use**. This property is shared between all `HTTPMock` instances and will be set to `nil` after each unmocked call that uses
14 | /// the `UnmockedPolicy.fatalError`. This property only exists to be able to test the functionality.
15 | static var fatalErrorClosure: (() -> Void)?
| |- warning: static property 'fatalErrorClosure' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'fatalErrorClosure' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'fatalErrorClosure' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
16 |
17 | // MARK: - Internal methods
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockURLProtocol.swift:217: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] = [:]
:
215 | let task = passthroughSession.dataTask(with: request) { data, response, error in
216 | if let error {
217 | self.client?.urlProtocol(self, didFailWithError: error)
| `- warning: capture of 'self' with non-sendable type 'HTTPMockURLProtocol' in a '@Sendable' closure
218 | return
219 | }
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockURLProtocol.swift:298:21: warning: capture of 'performDelivery' with non-sendable type '(Data) -> Void' in a '@Sendable' closure
296 | HTTPMockLog.info("Delaying response for request '\(url.absoluteString)` for \(delay) seconds")
297 | DispatchQueue.global(qos: .userInitiated).asyncAfter(deadline: .now() + delay) {
298 | performDelivery(payloadData)
| |- warning: capture of 'performDelivery' with non-sendable type '(Data) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
299 | }
300 | }
[27/32] 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:6: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 | /// A shared singleton instance for convenience. Use this for simple testing scenarios.
5 | /// For parallel testing or isolated mock configurations, create separate instances with `HTTPMock()`.
6 | 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
7 |
8 | /// The URLSession that intercepts and mocks HTTP requests.
[28/32] 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:6: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 | /// A shared singleton instance for convenience. Use this for simple testing scenarios.
5 | /// For parallel testing or isolated mock configurations, create separate instances with `HTTPMock()`.
6 | 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
7 |
8 | /// The URLSession that intercepts and mocks HTTP requests.
[29/32] 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:6: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 | /// A shared singleton instance for convenience. Use this for simple testing scenarios.
5 | /// For parallel testing or isolated mock configurations, create separate instances with `HTTPMock()`.
6 | 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
7 |
8 | /// The URLSession that intercepts and mocks HTTP requests.
[30/32] Compiling HTTPMock HTTPMockLog.swift
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockLog.swift:5: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
3 |
4 | public enum HTTPMockLog {
5 | 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
6 | public static var isEnabled = true
7 | public static var level: Level = .trace
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockLog.swift:6: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
4 | public enum HTTPMockLog {
5 | public static var logger = Logger(subsystem: "httpmock", category: "HTTPMock")
6 | 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
7 | public static var level: Level = .trace
8 |
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockLog.swift:7: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
5 | public static var logger = Logger(subsystem: "httpmock", category: "HTTPMock")
6 | public static var isEnabled = true
7 | public static var level: Level = .trace
| |- 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
8 |
9 | public static func error(_ message: @autoclosure () -> String) {
[31/32] Compiling HTTPMock HTTPMockMatcher+ExpressionStorage.swift
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockLog.swift:5: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
3 |
4 | public enum HTTPMockLog {
5 | 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
6 | public static var isEnabled = true
7 | public static var level: Level = .trace
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockLog.swift:6: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
4 | public enum HTTPMockLog {
5 | public static var logger = Logger(subsystem: "httpmock", category: "HTTPMock")
6 | 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
7 | public static var level: Level = .trace
8 |
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockLog.swift:7: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
5 | public static var logger = Logger(subsystem: "httpmock", category: "HTTPMock")
6 | public static var isEnabled = true
7 | public static var level: Level = .trace
| |- 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
8 |
9 | public static func error(_ message: @autoclosure () -> String) {
[32/32] Compiling HTTPMock HTTPMockMatcher+MatchKind.swift
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockLog.swift:5: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
3 |
4 | public enum HTTPMockLog {
5 | 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
6 | public static var isEnabled = true
7 | public static var level: Level = .trace
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockLog.swift:6: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
4 | public enum HTTPMockLog {
5 | public static var logger = Logger(subsystem: "httpmock", category: "HTTPMock")
6 | 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
7 | public static var level: Level = .trace
8 |
/Users/admin/builder/spi-builder-workspace/Sources/HTTPMock/Internal/HTTPMockLog.swift:7: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
5 | public static var logger = Logger(subsystem: "httpmock", category: "HTTPMock")
6 | public static var isEnabled = true
7 | public static var level: Level = .trace
| |- 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
8 |
9 | public static func error(_ message: @autoclosure () -> String) {
Build complete! (6.61s)
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" : [
"HTTPMockFatalErrorTests.swift",
"HTTPMockMatcherTests.swift",
"HTTPMockPassthroughTests.swift",
"HTTPMockResultBuilderTests.swift",
"HTTPMockTests.swift",
"Helpers/Data+Extensions.swift",
"Helpers/DummyData.swift",
"Helpers/HTTPMock+Extensions.swift",
"Helpers/URLResponse+Extensions.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/HTTPMockMatcher+ExpressionStorage.swift",
"Internal/HTTPMockMatcher+MatchKind.swift",
"Internal/HTTPMockMatcher.swift",
"Internal/HTTPMockURLProtocol+Key.swift",
"Internal/HTTPMockURLProtocol+MockMatch.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.