Build Information
Successful build of OpenFeature, reference main (0cc72f), with Swift 6.1 for macOS (SPM) on 10 Nov 2026 13:00:07 UTC.
Swift 6 data race errors: 2
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: 5.1.4
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/open-feature/swift-sdk.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/open-feature/swift-sdk
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at 0cc72f9 chore(deps): update amannn/action-semantic-pull-request action to v6.1.2 (#150)
Cloned https://github.com/open-feature/swift-sdk.git
Revision (git rev-parse @):
0cc72f928f6d6e970c4c5b44b92a5ae187c25f98
SUCCESS checkout https://github.com/open-feature/swift-sdk.git at main
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.1
Building package at path: $PWD
https://github.com/open-feature/swift-sdk.git
https://github.com/open-feature/swift-sdk.git
{
"dependencies" : [
{
"identity" : "swift-log",
"requirement" : {
"range" : [
{
"lower_bound" : "1.5.4",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-log"
}
],
"manifest_display_name" : "OpenFeature",
"name" : "OpenFeature",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "15.0"
},
{
"name" : "macos",
"version" : "12.0"
},
{
"name" : "watchos",
"version" : "8.0"
},
{
"name" : "tvos",
"version" : "15.0"
}
],
"products" : [
{
"name" : "OpenFeature",
"targets" : [
"OpenFeature"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "OpenFeatureSwiftLog",
"targets" : [
"OpenFeatureSwiftLog"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "OpenFeatureTests",
"module_type" : "SwiftTarget",
"name" : "OpenFeatureTests",
"path" : "Tests/OpenFeatureTests",
"sources" : [
"DeveloperExperienceTests.swift",
"EvalContextTests.swift",
"FlagEvaluationTests.swift",
"Helpers/AlwaysBrokenProvider.swift",
"Helpers/BooleanHookMock.swift",
"Helpers/CapturingLogger.swift",
"Helpers/DoSomethingProvider.swift",
"Helpers/HookDataSpyHook.swift",
"Helpers/InMemoryTestFlags.swift",
"Helpers/IntHookMock.swift",
"Helpers/LoggerCapturingProvider.swift",
"Helpers/MockProvider.swift",
"Helpers/MutableContext.swift",
"Helpers/ShutdownSpyProvider.swift",
"Helpers/StageRecordingHook.swift",
"Helpers/StaggeredProvider.swift",
"Helpers/TelemetryCapturingHook.swift",
"Helpers/TelemetryFixtures.swift",
"Helpers/ThrowingProvider.swift",
"Helpers/XCTestCase+Provider.swift",
"HookDataIsolationSpecTests.swift",
"HookDataSpecTests.swift",
"HookDataTests.swift",
"HookSpecTests.swift",
"HookStagePayloadSpecTests.swift",
"HookSupportTests.swift",
"ImmutableContextTests.swift",
"ImmutableTrackingEventDetailsTests.swift",
"InMemoryProviderErrorTests.swift",
"InMemoryProviderEventTests.swift",
"InMemoryProviderTargetingTests.swift",
"InMemoryProviderTests.swift",
"LoggerTests.swift",
"MultiProviderTests.swift",
"OpenFeatureClientTests.swift",
"PrivacyManifestTests.swift",
"ProviderEventTests.swift",
"ProviderLifecycleTests.swift",
"ProviderReplacementSpecTests.swift",
"ProviderShutdownTests.swift",
"ProviderSpecTests.swift",
"ProviderStatusTrackerTests.swift",
"ReasonTests.swift",
"ShutdownSpecTests.swift",
"StructureTests.swift",
"TelemetryErrorTests.swift",
"TelemetryHookSpecTests.swift",
"TelemetryTests.swift",
"TelemetryValueTests.swift",
"ValueTests.swift"
],
"target_dependencies" : [
"OpenFeature"
],
"type" : "test"
},
{
"c99name" : "OpenFeatureSwiftLogTests",
"module_type" : "SwiftTarget",
"name" : "OpenFeatureSwiftLogTests",
"path" : "Tests/OpenFeatureSwiftLogTests",
"product_dependencies" : [
"Logging"
],
"sources" : [
"SwiftLogLoggerTests.swift"
],
"target_dependencies" : [
"OpenFeatureSwiftLog"
],
"type" : "test"
},
{
"c99name" : "OpenFeatureSwiftLog",
"module_type" : "SwiftTarget",
"name" : "OpenFeatureSwiftLog",
"path" : "Sources/OpenFeatureSwiftLog",
"product_dependencies" : [
"Logging"
],
"product_memberships" : [
"OpenFeatureSwiftLog"
],
"sources" : [
"SwiftLogLogger.swift"
],
"target_dependencies" : [
"OpenFeature"
],
"type" : "library"
},
{
"c99name" : "OpenFeature",
"module_type" : "SwiftTarget",
"name" : "OpenFeature",
"path" : "Sources/OpenFeature",
"product_memberships" : [
"OpenFeature",
"OpenFeatureSwiftLog"
],
"resources" : [
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/PrivacyInfo.xcprivacy",
"rule" : {
"copy" : {
}
}
}
],
"sources" : [
"BaseEvaluation.swift",
"Client.swift",
"ClientMetadata.swift",
"EvaluationContext.swift",
"EventHandler.swift",
"EventMetadataValue.swift",
"Features+Defaults.swift",
"Features.swift",
"FlagEvaluationDetails.swift",
"FlagEvaluationOptions.swift",
"FlagMetadataValue.swift",
"FlagValueType.swift",
"Hook.swift",
"HookContext.swift",
"HookData.swift",
"HookSupport.swift",
"ImmutableContext.swift",
"ImmutableStructure.swift",
"ImmutableTrackingEventDetails.swift",
"MetadataValue.swift",
"MutableStructure.swift",
"OpenFeatureAPI.swift",
"OpenFeatureClient.swift",
"OpenFeatureLogger.swift",
"Provider/FeatureProvider.swift",
"Provider/InMemoryProvider/InMemoryFlag.swift",
"Provider/InMemoryProvider/InMemoryProvider.swift",
"Provider/MultiProvider/FirstMatchStrategy.swift",
"Provider/MultiProvider/FirstSuccessfulStrategy.swift",
"Provider/MultiProvider/MultiProvider.swift",
"Provider/MultiProvider/Strategy.swift",
"Provider/NoOpProvider.swift",
"Provider/ProviderEvaluation.swift",
"Provider/ProviderEventDetails.swift",
"Provider/ProviderEvents.swift",
"Provider/ProviderMetadata.swift",
"Provider/ProviderStatus.swift",
"ProviderStatusTracker.swift",
"Reason.swift",
"Structure.swift",
"Telemetry/EvaluationEvent.swift",
"Telemetry/Telemetry.swift",
"Telemetry/TelemetryAttributeValue.swift",
"Tracking.swift",
"TrackingEventDetails.swift",
"Value.swift",
"exceptions/ErrorCode.swift",
"exceptions/OpenFeatureError.swift"
],
"type" : "library"
}
],
"tools_version" : "5.5"
}
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/5] Write sources
[2/5] Copying PrivacyInfo.xcprivacy
[4/5] Write swift-version-2F0A5646E1D333AE.txt
[6/62] Compiling Logging LoggingSystem.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
[7/63] Compiling Logging Logger+With.swift
unable to find node: pound
unable to find node: pound
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
[8/63] Compiling Logging LogEvent.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
[9/63] Compiling Logging Logger.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
[10/63] Compiling Logging Logger+Attributes.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
[11/63] Compiling Logging LogHandler.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
[12/63] Compiling Logging Locks.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
[13/63] Compiling Logging SwiftLogNoOpLogHandler.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
[14/63] Compiling Logging MetadataProvider.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
[15/63] Emitting module Logging
unable to find node: pound
unable to find node: pound
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
[16/63] Compiling OpenFeature EvaluationEvent.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
[17/63] Compiling OpenFeature Telemetry.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
[18/63] Compiling OpenFeature BaseEvaluation.swift
[19/63] Compiling OpenFeature Client.swift
[20/63] Compiling OpenFeature ClientMetadata.swift
[21/63] Compiling OpenFeature EvaluationContext.swift
[22/63] Compiling OpenFeature EventHandler.swift
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Telemetry/Telemetry.swift:216:24: warning: static property 'iso8601Formatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
214 | }
215 |
216 | private static let iso8601Formatter: ISO8601DateFormatter = {
| |- warning: static property 'iso8601Formatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'iso8601Formatter' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
217 | let formatter = ISO8601DateFormatter()
218 | formatter.formatOptions = [.withInternetDateTime, .withFractionalSeconds]
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSISO8601DateFormatter.h:46:12: note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
44 |
45 | API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
46 | @interface NSISO8601DateFormatter : NSFormatter <NSSecureCoding> {
| `- note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
47 | @private
48 | CFDateFormatterRef _formatter;
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Telemetry/Telemetry.swift:216:24: warning: static property 'iso8601Formatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
214 | }
215 |
216 | private static let iso8601Formatter: ISO8601DateFormatter = {
| |- warning: static property 'iso8601Formatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'iso8601Formatter' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
217 | let formatter = ISO8601DateFormatter()
218 | formatter.formatOptions = [.withInternetDateTime, .withFractionalSeconds]
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSISO8601DateFormatter.h:46:12: note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
44 |
45 | API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
46 | @interface NSISO8601DateFormatter : NSFormatter <NSSecureCoding> {
| `- note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
47 | @private
48 | CFDateFormatterRef _formatter;
[25/63] Compiling OpenFeature TelemetryAttributeValue.swift
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Telemetry/Telemetry.swift:216:24: warning: static property 'iso8601Formatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
214 | }
215 |
216 | private static let iso8601Formatter: ISO8601DateFormatter = {
| |- warning: static property 'iso8601Formatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'iso8601Formatter' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
217 | let formatter = ISO8601DateFormatter()
218 | formatter.formatOptions = [.withInternetDateTime, .withFractionalSeconds]
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSISO8601DateFormatter.h:46:12: note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
44 |
45 | API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
46 | @interface NSISO8601DateFormatter : NSFormatter <NSSecureCoding> {
| `- note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
47 | @private
48 | CFDateFormatterRef _formatter;
[26/63] Compiling OpenFeature Tracking.swift
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Telemetry/Telemetry.swift:216:24: warning: static property 'iso8601Formatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
214 | }
215 |
216 | private static let iso8601Formatter: ISO8601DateFormatter = {
| |- warning: static property 'iso8601Formatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'iso8601Formatter' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
217 | let formatter = ISO8601DateFormatter()
218 | formatter.formatOptions = [.withInternetDateTime, .withFractionalSeconds]
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSISO8601DateFormatter.h:46:12: note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
44 |
45 | API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
46 | @interface NSISO8601DateFormatter : NSFormatter <NSSecureCoding> {
| `- note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
47 | @private
48 | CFDateFormatterRef _formatter;
[27/63] Compiling OpenFeature TrackingEventDetails.swift
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Telemetry/Telemetry.swift:216:24: warning: static property 'iso8601Formatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
214 | }
215 |
216 | private static let iso8601Formatter: ISO8601DateFormatter = {
| |- warning: static property 'iso8601Formatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'iso8601Formatter' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
217 | let formatter = ISO8601DateFormatter()
218 | formatter.formatOptions = [.withInternetDateTime, .withFractionalSeconds]
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSISO8601DateFormatter.h:46:12: note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
44 |
45 | API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
46 | @interface NSISO8601DateFormatter : NSFormatter <NSSecureCoding> {
| `- note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
47 | @private
48 | CFDateFormatterRef _formatter;
[28/63] Compiling OpenFeature HookSupport.swift
[29/63] Compiling OpenFeature ImmutableContext.swift
[30/63] Compiling OpenFeature ImmutableStructure.swift
[31/63] Compiling OpenFeature ImmutableTrackingEventDetails.swift
[32/63] Compiling OpenFeature MetadataValue.swift
[33/63] Compiling OpenFeature Strategy.swift
[34/63] Compiling OpenFeature NoOpProvider.swift
[35/63] Compiling OpenFeature ProviderEvaluation.swift
[36/63] Compiling OpenFeature ProviderEventDetails.swift
[37/63] Compiling OpenFeature ProviderEvents.swift
[38/63] Compiling OpenFeature ProviderMetadata.swift
[39/63] Compiling OpenFeature ProviderStatus.swift
[40/63] Compiling OpenFeature ProviderStatusTracker.swift
[41/63] Compiling OpenFeature Reason.swift
[42/63] Compiling OpenFeature Structure.swift
[43/63] Emitting module OpenFeature
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/OpenFeatureAPI.swift:21:23: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'OpenFeatureAPI' may have shared mutable state; this is an error in the Swift 6 language mode
4 | /// A global singleton which holds base configuration for the OpenFeature library.
5 | /// Configuration here will be shared across all ``Client``s.
6 | public class OpenFeatureAPI {
| `- note: class 'OpenFeatureAPI' does not conform to the 'Sendable' protocol
7 | // Sync queue to change state atomically
8 | private let stateQueue = DispatchQueue(label: "com.openfeature.state.queue")
:
19 |
20 | /// The ``OpenFeatureAPI`` singleton
21 | static public let shared = OpenFeatureAPI()
| |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'OpenFeatureAPI' 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
22 |
23 | public init() {}
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Telemetry/Telemetry.swift:216:24: warning: static property 'iso8601Formatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
214 | }
215 |
216 | private static let iso8601Formatter: ISO8601DateFormatter = {
| |- warning: static property 'iso8601Formatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'iso8601Formatter' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
217 | let formatter = ISO8601DateFormatter()
218 | formatter.formatOptions = [.withInternetDateTime, .withFractionalSeconds]
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSISO8601DateFormatter.h:46:12: note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
44 |
45 | API_AVAILABLE(macosx(10.12), ios(10.0), watchos(3.0), tvos(10.0))
46 | @interface NSISO8601DateFormatter : NSFormatter <NSSecureCoding> {
| `- note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
47 | @private
48 | CFDateFormatterRef _formatter;
[44/63] Compiling OpenFeature InMemoryFlag.swift
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Provider/MultiProvider/MultiProvider.swift:50:17: warning: capture of 'self' with non-sendable type 'MultiProvider' in a '@Sendable' closure; this is an error in the Swift 6 language mode
3 |
4 | /// A provider that combines multiple providers into a single provider.
5 | public class MultiProvider: FeatureProvider {
| `- note: class 'MultiProvider' does not conform to the 'Sendable' protocol
6 | public var hooks: [any Hook] {
7 | []
:
48 | return Future { promise in
49 | afterAll(futures) {
50 | self.ifCurrent(started) { self.updateStatus() }
| `- warning: capture of 'self' with non-sendable type 'MultiProvider' in a '@Sendable' closure; this is an error in the Swift 6 language mode
51 | promise(.success(()))
52 | }
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Provider/MultiProvider/MultiProvider.swift:51:17: warning: capture of 'promise' with non-sendable type '(Result<Void, Never>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
49 | afterAll(futures) {
50 | self.ifCurrent(started) { self.updateStatus() }
51 | promise(.success(()))
| |- warning: capture of 'promise' with non-sendable type '(Result<Void, Never>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
52 | }
53 | }
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Provider/MultiProvider/MultiProvider.swift:50:43: warning: capture of 'self' with non-sendable type 'MultiProvider' in an isolated closure; this is an error in the Swift 6 language mode
3 |
4 | /// A provider that combines multiple providers into a single provider.
5 | public class MultiProvider: FeatureProvider {
| `- note: class 'MultiProvider' does not conform to the 'Sendable' protocol
6 | public var hooks: [any Hook] {
7 | []
:
48 | return Future { promise in
49 | afterAll(futures) {
50 | self.ifCurrent(started) { self.updateStatus() }
| `- warning: capture of 'self' with non-sendable type 'MultiProvider' in an isolated closure; this is an error in the Swift 6 language mode
51 | promise(.success(()))
52 | }
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Provider/MultiProvider/MultiProvider.swift:65:17: warning: capture of 'self' with non-sendable type 'MultiProvider' in a '@Sendable' closure; this is an error in the Swift 6 language mode
3 |
4 | /// A provider that combines multiple providers into a single provider.
5 | public class MultiProvider: FeatureProvider {
| `- note: class 'MultiProvider' does not conform to the 'Sendable' protocol
6 | public var hooks: [any Hook] {
7 | []
:
63 | self.ifCurrent(started) { self.statusTracker.send(.reconciling()) }
64 | afterAll(futures) {
65 | self.ifCurrent(started) { self.updateStatus() }
| `- warning: capture of 'self' with non-sendable type 'MultiProvider' in a '@Sendable' closure; this is an error in the Swift 6 language mode
66 | promise(.success(()))
67 | }
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Provider/MultiProvider/MultiProvider.swift:66:17: warning: capture of 'promise' with non-sendable type '(Result<Void, Never>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
64 | afterAll(futures) {
65 | self.ifCurrent(started) { self.updateStatus() }
66 | promise(.success(()))
| |- warning: capture of 'promise' with non-sendable type '(Result<Void, Never>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
67 | }
68 | }
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Provider/MultiProvider/MultiProvider.swift:65:43: warning: capture of 'self' with non-sendable type 'MultiProvider' in an isolated closure; this is an error in the Swift 6 language mode
3 |
4 | /// A provider that combines multiple providers into a single provider.
5 | public class MultiProvider: FeatureProvider {
| `- note: class 'MultiProvider' does not conform to the 'Sendable' protocol
6 | public var hooks: [any Hook] {
7 | []
:
63 | self.ifCurrent(started) { self.statusTracker.send(.reconciling()) }
64 | afterAll(futures) {
65 | self.ifCurrent(started) { self.updateStatus() }
| `- warning: capture of 'self' with non-sendable type 'MultiProvider' in an isolated closure; this is an error in the Swift 6 language mode
66 | promise(.success(()))
67 | }
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Provider/MultiProvider/MultiProvider.swift:80:17: warning: capture of 'self' with non-sendable type 'MultiProvider' in a '@Sendable' closure; this is an error in the Swift 6 language mode
3 |
4 | /// A provider that combines multiple providers into a single provider.
5 | public class MultiProvider: FeatureProvider {
| `- note: class 'MultiProvider' does not conform to the 'Sendable' protocol
6 | public var hooks: [any Hook] {
7 | []
:
78 | return Future { promise in
79 | afterAll(futures) {
80 | self.ifCurrent(started) { self.statusTracker.reset() }
| `- warning: capture of 'self' with non-sendable type 'MultiProvider' in a '@Sendable' closure; this is an error in the Swift 6 language mode
81 | promise(.success(()))
82 | }
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Provider/MultiProvider/MultiProvider.swift:81:17: warning: capture of 'promise' with non-sendable type '(Result<Void, Never>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
79 | afterAll(futures) {
80 | self.ifCurrent(started) { self.statusTracker.reset() }
81 | promise(.success(()))
| |- warning: capture of 'promise' with non-sendable type '(Result<Void, Never>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
82 | }
83 | }
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Provider/MultiProvider/MultiProvider.swift:80:43: warning: capture of 'self' with non-sendable type 'MultiProvider' in an isolated closure; this is an error in the Swift 6 language mode
3 |
4 | /// A provider that combines multiple providers into a single provider.
5 | public class MultiProvider: FeatureProvider {
| `- note: class 'MultiProvider' does not conform to the 'Sendable' protocol
6 | public var hooks: [any Hook] {
7 | []
:
78 | return Future { promise in
79 | afterAll(futures) {
80 | self.ifCurrent(started) { self.statusTracker.reset() }
| `- warning: capture of 'self' with non-sendable type 'MultiProvider' in an isolated closure; this is an error in the Swift 6 language mode
81 | promise(.success(()))
82 | }
[45/63] Compiling OpenFeature InMemoryProvider.swift
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Provider/MultiProvider/MultiProvider.swift:50:17: warning: capture of 'self' with non-sendable type 'MultiProvider' in a '@Sendable' closure; this is an error in the Swift 6 language mode
3 |
4 | /// A provider that combines multiple providers into a single provider.
5 | public class MultiProvider: FeatureProvider {
| `- note: class 'MultiProvider' does not conform to the 'Sendable' protocol
6 | public var hooks: [any Hook] {
7 | []
:
48 | return Future { promise in
49 | afterAll(futures) {
50 | self.ifCurrent(started) { self.updateStatus() }
| `- warning: capture of 'self' with non-sendable type 'MultiProvider' in a '@Sendable' closure; this is an error in the Swift 6 language mode
51 | promise(.success(()))
52 | }
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Provider/MultiProvider/MultiProvider.swift:51:17: warning: capture of 'promise' with non-sendable type '(Result<Void, Never>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
49 | afterAll(futures) {
50 | self.ifCurrent(started) { self.updateStatus() }
51 | promise(.success(()))
| |- warning: capture of 'promise' with non-sendable type '(Result<Void, Never>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
52 | }
53 | }
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Provider/MultiProvider/MultiProvider.swift:50:43: warning: capture of 'self' with non-sendable type 'MultiProvider' in an isolated closure; this is an error in the Swift 6 language mode
3 |
4 | /// A provider that combines multiple providers into a single provider.
5 | public class MultiProvider: FeatureProvider {
| `- note: class 'MultiProvider' does not conform to the 'Sendable' protocol
6 | public var hooks: [any Hook] {
7 | []
:
48 | return Future { promise in
49 | afterAll(futures) {
50 | self.ifCurrent(started) { self.updateStatus() }
| `- warning: capture of 'self' with non-sendable type 'MultiProvider' in an isolated closure; this is an error in the Swift 6 language mode
51 | promise(.success(()))
52 | }
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Provider/MultiProvider/MultiProvider.swift:65:17: warning: capture of 'self' with non-sendable type 'MultiProvider' in a '@Sendable' closure; this is an error in the Swift 6 language mode
3 |
4 | /// A provider that combines multiple providers into a single provider.
5 | public class MultiProvider: FeatureProvider {
| `- note: class 'MultiProvider' does not conform to the 'Sendable' protocol
6 | public var hooks: [any Hook] {
7 | []
:
63 | self.ifCurrent(started) { self.statusTracker.send(.reconciling()) }
64 | afterAll(futures) {
65 | self.ifCurrent(started) { self.updateStatus() }
| `- warning: capture of 'self' with non-sendable type 'MultiProvider' in a '@Sendable' closure; this is an error in the Swift 6 language mode
66 | promise(.success(()))
67 | }
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Provider/MultiProvider/MultiProvider.swift:66:17: warning: capture of 'promise' with non-sendable type '(Result<Void, Never>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
64 | afterAll(futures) {
65 | self.ifCurrent(started) { self.updateStatus() }
66 | promise(.success(()))
| |- warning: capture of 'promise' with non-sendable type '(Result<Void, Never>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
67 | }
68 | }
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Provider/MultiProvider/MultiProvider.swift:65:43: warning: capture of 'self' with non-sendable type 'MultiProvider' in an isolated closure; this is an error in the Swift 6 language mode
3 |
4 | /// A provider that combines multiple providers into a single provider.
5 | public class MultiProvider: FeatureProvider {
| `- note: class 'MultiProvider' does not conform to the 'Sendable' protocol
6 | public var hooks: [any Hook] {
7 | []
:
63 | self.ifCurrent(started) { self.statusTracker.send(.reconciling()) }
64 | afterAll(futures) {
65 | self.ifCurrent(started) { self.updateStatus() }
| `- warning: capture of 'self' with non-sendable type 'MultiProvider' in an isolated closure; this is an error in the Swift 6 language mode
66 | promise(.success(()))
67 | }
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Provider/MultiProvider/MultiProvider.swift:80:17: warning: capture of 'self' with non-sendable type 'MultiProvider' in a '@Sendable' closure; this is an error in the Swift 6 language mode
3 |
4 | /// A provider that combines multiple providers into a single provider.
5 | public class MultiProvider: FeatureProvider {
| `- note: class 'MultiProvider' does not conform to the 'Sendable' protocol
6 | public var hooks: [any Hook] {
7 | []
:
78 | return Future { promise in
79 | afterAll(futures) {
80 | self.ifCurrent(started) { self.statusTracker.reset() }
| `- warning: capture of 'self' with non-sendable type 'MultiProvider' in a '@Sendable' closure; this is an error in the Swift 6 language mode
81 | promise(.success(()))
82 | }
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Provider/MultiProvider/MultiProvider.swift:81:17: warning: capture of 'promise' with non-sendable type '(Result<Void, Never>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
79 | afterAll(futures) {
80 | self.ifCurrent(started) { self.statusTracker.reset() }
81 | promise(.success(()))
| |- warning: capture of 'promise' with non-sendable type '(Result<Void, Never>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
82 | }
83 | }
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Provider/MultiProvider/MultiProvider.swift:80:43: warning: capture of 'self' with non-sendable type 'MultiProvider' in an isolated closure; this is an error in the Swift 6 language mode
3 |
4 | /// A provider that combines multiple providers into a single provider.
5 | public class MultiProvider: FeatureProvider {
| `- note: class 'MultiProvider' does not conform to the 'Sendable' protocol
6 | public var hooks: [any Hook] {
7 | []
:
78 | return Future { promise in
79 | afterAll(futures) {
80 | self.ifCurrent(started) { self.statusTracker.reset() }
| `- warning: capture of 'self' with non-sendable type 'MultiProvider' in an isolated closure; this is an error in the Swift 6 language mode
81 | promise(.success(()))
82 | }
[46/63] Compiling OpenFeature FirstMatchStrategy.swift
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Provider/MultiProvider/MultiProvider.swift:50:17: warning: capture of 'self' with non-sendable type 'MultiProvider' in a '@Sendable' closure; this is an error in the Swift 6 language mode
3 |
4 | /// A provider that combines multiple providers into a single provider.
5 | public class MultiProvider: FeatureProvider {
| `- note: class 'MultiProvider' does not conform to the 'Sendable' protocol
6 | public var hooks: [any Hook] {
7 | []
:
48 | return Future { promise in
49 | afterAll(futures) {
50 | self.ifCurrent(started) { self.updateStatus() }
| `- warning: capture of 'self' with non-sendable type 'MultiProvider' in a '@Sendable' closure; this is an error in the Swift 6 language mode
51 | promise(.success(()))
52 | }
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Provider/MultiProvider/MultiProvider.swift:51:17: warning: capture of 'promise' with non-sendable type '(Result<Void, Never>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
49 | afterAll(futures) {
50 | self.ifCurrent(started) { self.updateStatus() }
51 | promise(.success(()))
| |- warning: capture of 'promise' with non-sendable type '(Result<Void, Never>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
52 | }
53 | }
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Provider/MultiProvider/MultiProvider.swift:50:43: warning: capture of 'self' with non-sendable type 'MultiProvider' in an isolated closure; this is an error in the Swift 6 language mode
3 |
4 | /// A provider that combines multiple providers into a single provider.
5 | public class MultiProvider: FeatureProvider {
| `- note: class 'MultiProvider' does not conform to the 'Sendable' protocol
6 | public var hooks: [any Hook] {
7 | []
:
48 | return Future { promise in
49 | afterAll(futures) {
50 | self.ifCurrent(started) { self.updateStatus() }
| `- warning: capture of 'self' with non-sendable type 'MultiProvider' in an isolated closure; this is an error in the Swift 6 language mode
51 | promise(.success(()))
52 | }
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Provider/MultiProvider/MultiProvider.swift:65:17: warning: capture of 'self' with non-sendable type 'MultiProvider' in a '@Sendable' closure; this is an error in the Swift 6 language mode
3 |
4 | /// A provider that combines multiple providers into a single provider.
5 | public class MultiProvider: FeatureProvider {
| `- note: class 'MultiProvider' does not conform to the 'Sendable' protocol
6 | public var hooks: [any Hook] {
7 | []
:
63 | self.ifCurrent(started) { self.statusTracker.send(.reconciling()) }
64 | afterAll(futures) {
65 | self.ifCurrent(started) { self.updateStatus() }
| `- warning: capture of 'self' with non-sendable type 'MultiProvider' in a '@Sendable' closure; this is an error in the Swift 6 language mode
66 | promise(.success(()))
67 | }
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Provider/MultiProvider/MultiProvider.swift:66:17: warning: capture of 'promise' with non-sendable type '(Result<Void, Never>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
64 | afterAll(futures) {
65 | self.ifCurrent(started) { self.updateStatus() }
66 | promise(.success(()))
| |- warning: capture of 'promise' with non-sendable type '(Result<Void, Never>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
67 | }
68 | }
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Provider/MultiProvider/MultiProvider.swift:65:43: warning: capture of 'self' with non-sendable type 'MultiProvider' in an isolated closure; this is an error in the Swift 6 language mode
3 |
4 | /// A provider that combines multiple providers into a single provider.
5 | public class MultiProvider: FeatureProvider {
| `- note: class 'MultiProvider' does not conform to the 'Sendable' protocol
6 | public var hooks: [any Hook] {
7 | []
:
63 | self.ifCurrent(started) { self.statusTracker.send(.reconciling()) }
64 | afterAll(futures) {
65 | self.ifCurrent(started) { self.updateStatus() }
| `- warning: capture of 'self' with non-sendable type 'MultiProvider' in an isolated closure; this is an error in the Swift 6 language mode
66 | promise(.success(()))
67 | }
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Provider/MultiProvider/MultiProvider.swift:80:17: warning: capture of 'self' with non-sendable type 'MultiProvider' in a '@Sendable' closure; this is an error in the Swift 6 language mode
3 |
4 | /// A provider that combines multiple providers into a single provider.
5 | public class MultiProvider: FeatureProvider {
| `- note: class 'MultiProvider' does not conform to the 'Sendable' protocol
6 | public var hooks: [any Hook] {
7 | []
:
78 | return Future { promise in
79 | afterAll(futures) {
80 | self.ifCurrent(started) { self.statusTracker.reset() }
| `- warning: capture of 'self' with non-sendable type 'MultiProvider' in a '@Sendable' closure; this is an error in the Swift 6 language mode
81 | promise(.success(()))
82 | }
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Provider/MultiProvider/MultiProvider.swift:81:17: warning: capture of 'promise' with non-sendable type '(Result<Void, Never>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
79 | afterAll(futures) {
80 | self.ifCurrent(started) { self.statusTracker.reset() }
81 | promise(.success(()))
| |- warning: capture of 'promise' with non-sendable type '(Result<Void, Never>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
82 | }
83 | }
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Provider/MultiProvider/MultiProvider.swift:80:43: warning: capture of 'self' with non-sendable type 'MultiProvider' in an isolated closure; this is an error in the Swift 6 language mode
3 |
4 | /// A provider that combines multiple providers into a single provider.
5 | public class MultiProvider: FeatureProvider {
| `- note: class 'MultiProvider' does not conform to the 'Sendable' protocol
6 | public var hooks: [any Hook] {
7 | []
:
78 | return Future { promise in
79 | afterAll(futures) {
80 | self.ifCurrent(started) { self.statusTracker.reset() }
| `- warning: capture of 'self' with non-sendable type 'MultiProvider' in an isolated closure; this is an error in the Swift 6 language mode
81 | promise(.success(()))
82 | }
[47/63] Compiling OpenFeature FirstSuccessfulStrategy.swift
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Provider/MultiProvider/MultiProvider.swift:50:17: warning: capture of 'self' with non-sendable type 'MultiProvider' in a '@Sendable' closure; this is an error in the Swift 6 language mode
3 |
4 | /// A provider that combines multiple providers into a single provider.
5 | public class MultiProvider: FeatureProvider {
| `- note: class 'MultiProvider' does not conform to the 'Sendable' protocol
6 | public var hooks: [any Hook] {
7 | []
:
48 | return Future { promise in
49 | afterAll(futures) {
50 | self.ifCurrent(started) { self.updateStatus() }
| `- warning: capture of 'self' with non-sendable type 'MultiProvider' in a '@Sendable' closure; this is an error in the Swift 6 language mode
51 | promise(.success(()))
52 | }
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Provider/MultiProvider/MultiProvider.swift:51:17: warning: capture of 'promise' with non-sendable type '(Result<Void, Never>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
49 | afterAll(futures) {
50 | self.ifCurrent(started) { self.updateStatus() }
51 | promise(.success(()))
| |- warning: capture of 'promise' with non-sendable type '(Result<Void, Never>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
52 | }
53 | }
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Provider/MultiProvider/MultiProvider.swift:50:43: warning: capture of 'self' with non-sendable type 'MultiProvider' in an isolated closure; this is an error in the Swift 6 language mode
3 |
4 | /// A provider that combines multiple providers into a single provider.
5 | public class MultiProvider: FeatureProvider {
| `- note: class 'MultiProvider' does not conform to the 'Sendable' protocol
6 | public var hooks: [any Hook] {
7 | []
:
48 | return Future { promise in
49 | afterAll(futures) {
50 | self.ifCurrent(started) { self.updateStatus() }
| `- warning: capture of 'self' with non-sendable type 'MultiProvider' in an isolated closure; this is an error in the Swift 6 language mode
51 | promise(.success(()))
52 | }
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Provider/MultiProvider/MultiProvider.swift:65:17: warning: capture of 'self' with non-sendable type 'MultiProvider' in a '@Sendable' closure; this is an error in the Swift 6 language mode
3 |
4 | /// A provider that combines multiple providers into a single provider.
5 | public class MultiProvider: FeatureProvider {
| `- note: class 'MultiProvider' does not conform to the 'Sendable' protocol
6 | public var hooks: [any Hook] {
7 | []
:
63 | self.ifCurrent(started) { self.statusTracker.send(.reconciling()) }
64 | afterAll(futures) {
65 | self.ifCurrent(started) { self.updateStatus() }
| `- warning: capture of 'self' with non-sendable type 'MultiProvider' in a '@Sendable' closure; this is an error in the Swift 6 language mode
66 | promise(.success(()))
67 | }
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Provider/MultiProvider/MultiProvider.swift:66:17: warning: capture of 'promise' with non-sendable type '(Result<Void, Never>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
64 | afterAll(futures) {
65 | self.ifCurrent(started) { self.updateStatus() }
66 | promise(.success(()))
| |- warning: capture of 'promise' with non-sendable type '(Result<Void, Never>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
67 | }
68 | }
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Provider/MultiProvider/MultiProvider.swift:65:43: warning: capture of 'self' with non-sendable type 'MultiProvider' in an isolated closure; this is an error in the Swift 6 language mode
3 |
4 | /// A provider that combines multiple providers into a single provider.
5 | public class MultiProvider: FeatureProvider {
| `- note: class 'MultiProvider' does not conform to the 'Sendable' protocol
6 | public var hooks: [any Hook] {
7 | []
:
63 | self.ifCurrent(started) { self.statusTracker.send(.reconciling()) }
64 | afterAll(futures) {
65 | self.ifCurrent(started) { self.updateStatus() }
| `- warning: capture of 'self' with non-sendable type 'MultiProvider' in an isolated closure; this is an error in the Swift 6 language mode
66 | promise(.success(()))
67 | }
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Provider/MultiProvider/MultiProvider.swift:80:17: warning: capture of 'self' with non-sendable type 'MultiProvider' in a '@Sendable' closure; this is an error in the Swift 6 language mode
3 |
4 | /// A provider that combines multiple providers into a single provider.
5 | public class MultiProvider: FeatureProvider {
| `- note: class 'MultiProvider' does not conform to the 'Sendable' protocol
6 | public var hooks: [any Hook] {
7 | []
:
78 | return Future { promise in
79 | afterAll(futures) {
80 | self.ifCurrent(started) { self.statusTracker.reset() }
| `- warning: capture of 'self' with non-sendable type 'MultiProvider' in a '@Sendable' closure; this is an error in the Swift 6 language mode
81 | promise(.success(()))
82 | }
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Provider/MultiProvider/MultiProvider.swift:81:17: warning: capture of 'promise' with non-sendable type '(Result<Void, Never>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
79 | afterAll(futures) {
80 | self.ifCurrent(started) { self.statusTracker.reset() }
81 | promise(.success(()))
| |- warning: capture of 'promise' with non-sendable type '(Result<Void, Never>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
82 | }
83 | }
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Provider/MultiProvider/MultiProvider.swift:80:43: warning: capture of 'self' with non-sendable type 'MultiProvider' in an isolated closure; this is an error in the Swift 6 language mode
3 |
4 | /// A provider that combines multiple providers into a single provider.
5 | public class MultiProvider: FeatureProvider {
| `- note: class 'MultiProvider' does not conform to the 'Sendable' protocol
6 | public var hooks: [any Hook] {
7 | []
:
78 | return Future { promise in
79 | afterAll(futures) {
80 | self.ifCurrent(started) { self.statusTracker.reset() }
| `- warning: capture of 'self' with non-sendable type 'MultiProvider' in an isolated closure; this is an error in the Swift 6 language mode
81 | promise(.success(()))
82 | }
[48/63] Compiling OpenFeature MultiProvider.swift
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Provider/MultiProvider/MultiProvider.swift:50:17: warning: capture of 'self' with non-sendable type 'MultiProvider' in a '@Sendable' closure; this is an error in the Swift 6 language mode
3 |
4 | /// A provider that combines multiple providers into a single provider.
5 | public class MultiProvider: FeatureProvider {
| `- note: class 'MultiProvider' does not conform to the 'Sendable' protocol
6 | public var hooks: [any Hook] {
7 | []
:
48 | return Future { promise in
49 | afterAll(futures) {
50 | self.ifCurrent(started) { self.updateStatus() }
| `- warning: capture of 'self' with non-sendable type 'MultiProvider' in a '@Sendable' closure; this is an error in the Swift 6 language mode
51 | promise(.success(()))
52 | }
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Provider/MultiProvider/MultiProvider.swift:51:17: warning: capture of 'promise' with non-sendable type '(Result<Void, Never>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
49 | afterAll(futures) {
50 | self.ifCurrent(started) { self.updateStatus() }
51 | promise(.success(()))
| |- warning: capture of 'promise' with non-sendable type '(Result<Void, Never>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
52 | }
53 | }
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Provider/MultiProvider/MultiProvider.swift:50:43: warning: capture of 'self' with non-sendable type 'MultiProvider' in an isolated closure; this is an error in the Swift 6 language mode
3 |
4 | /// A provider that combines multiple providers into a single provider.
5 | public class MultiProvider: FeatureProvider {
| `- note: class 'MultiProvider' does not conform to the 'Sendable' protocol
6 | public var hooks: [any Hook] {
7 | []
:
48 | return Future { promise in
49 | afterAll(futures) {
50 | self.ifCurrent(started) { self.updateStatus() }
| `- warning: capture of 'self' with non-sendable type 'MultiProvider' in an isolated closure; this is an error in the Swift 6 language mode
51 | promise(.success(()))
52 | }
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Provider/MultiProvider/MultiProvider.swift:65:17: warning: capture of 'self' with non-sendable type 'MultiProvider' in a '@Sendable' closure; this is an error in the Swift 6 language mode
3 |
4 | /// A provider that combines multiple providers into a single provider.
5 | public class MultiProvider: FeatureProvider {
| `- note: class 'MultiProvider' does not conform to the 'Sendable' protocol
6 | public var hooks: [any Hook] {
7 | []
:
63 | self.ifCurrent(started) { self.statusTracker.send(.reconciling()) }
64 | afterAll(futures) {
65 | self.ifCurrent(started) { self.updateStatus() }
| `- warning: capture of 'self' with non-sendable type 'MultiProvider' in a '@Sendable' closure; this is an error in the Swift 6 language mode
66 | promise(.success(()))
67 | }
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Provider/MultiProvider/MultiProvider.swift:66:17: warning: capture of 'promise' with non-sendable type '(Result<Void, Never>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
64 | afterAll(futures) {
65 | self.ifCurrent(started) { self.updateStatus() }
66 | promise(.success(()))
| |- warning: capture of 'promise' with non-sendable type '(Result<Void, Never>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
67 | }
68 | }
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Provider/MultiProvider/MultiProvider.swift:65:43: warning: capture of 'self' with non-sendable type 'MultiProvider' in an isolated closure; this is an error in the Swift 6 language mode
3 |
4 | /// A provider that combines multiple providers into a single provider.
5 | public class MultiProvider: FeatureProvider {
| `- note: class 'MultiProvider' does not conform to the 'Sendable' protocol
6 | public var hooks: [any Hook] {
7 | []
:
63 | self.ifCurrent(started) { self.statusTracker.send(.reconciling()) }
64 | afterAll(futures) {
65 | self.ifCurrent(started) { self.updateStatus() }
| `- warning: capture of 'self' with non-sendable type 'MultiProvider' in an isolated closure; this is an error in the Swift 6 language mode
66 | promise(.success(()))
67 | }
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Provider/MultiProvider/MultiProvider.swift:80:17: warning: capture of 'self' with non-sendable type 'MultiProvider' in a '@Sendable' closure; this is an error in the Swift 6 language mode
3 |
4 | /// A provider that combines multiple providers into a single provider.
5 | public class MultiProvider: FeatureProvider {
| `- note: class 'MultiProvider' does not conform to the 'Sendable' protocol
6 | public var hooks: [any Hook] {
7 | []
:
78 | return Future { promise in
79 | afterAll(futures) {
80 | self.ifCurrent(started) { self.statusTracker.reset() }
| `- warning: capture of 'self' with non-sendable type 'MultiProvider' in a '@Sendable' closure; this is an error in the Swift 6 language mode
81 | promise(.success(()))
82 | }
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Provider/MultiProvider/MultiProvider.swift:81:17: warning: capture of 'promise' with non-sendable type '(Result<Void, Never>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
79 | afterAll(futures) {
80 | self.ifCurrent(started) { self.statusTracker.reset() }
81 | promise(.success(()))
| |- warning: capture of 'promise' with non-sendable type '(Result<Void, Never>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
82 | }
83 | }
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/Provider/MultiProvider/MultiProvider.swift:80:43: warning: capture of 'self' with non-sendable type 'MultiProvider' in an isolated closure; this is an error in the Swift 6 language mode
3 |
4 | /// A provider that combines multiple providers into a single provider.
5 | public class MultiProvider: FeatureProvider {
| `- note: class 'MultiProvider' does not conform to the 'Sendable' protocol
6 | public var hooks: [any Hook] {
7 | []
:
78 | return Future { promise in
79 | afterAll(futures) {
80 | self.ifCurrent(started) { self.statusTracker.reset() }
| `- warning: capture of 'self' with non-sendable type 'MultiProvider' in an isolated closure; this is an error in the Swift 6 language mode
81 | promise(.success(()))
82 | }
[49/63] Compiling OpenFeature FlagMetadataValue.swift
[50/63] Compiling OpenFeature FlagValueType.swift
[51/63] Compiling OpenFeature Hook.swift
[52/63] Compiling OpenFeature HookContext.swift
[53/63] Compiling OpenFeature HookData.swift
[54/63] Compiling OpenFeature MutableStructure.swift
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/OpenFeatureAPI.swift:21:23: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'OpenFeatureAPI' may have shared mutable state; this is an error in the Swift 6 language mode
4 | /// A global singleton which holds base configuration for the OpenFeature library.
5 | /// Configuration here will be shared across all ``Client``s.
6 | public class OpenFeatureAPI {
| `- note: class 'OpenFeatureAPI' does not conform to the 'Sendable' protocol
7 | // Sync queue to change state atomically
8 | private let stateQueue = DispatchQueue(label: "com.openfeature.state.queue")
:
19 |
20 | /// The ``OpenFeatureAPI`` singleton
21 | static public let shared = OpenFeatureAPI()
| |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'OpenFeatureAPI' 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
22 |
23 | public init() {}
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/OpenFeatureAPI.swift:291:30: warning: capture of 'work' with non-sendable type '() -> Future<Void, Never>' in a '@Sendable' closure
289 | self.providerLifecycleQueue.async {
290 | var cancelable: AnyCancellable?
291 | cancelable = work()
| |- warning: capture of 'work' with non-sendable type '() -> Future<Void, Never>' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
292 | .sink { _ in
293 | withExtendedLifetime(cancelable) {}
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/OpenFeatureAPI.swift:294:25: warning: capture of 'resolve' with non-sendable type '(Result<Void, Never>) -> Void' in a '@Sendable' closure
292 | .sink { _ in
293 | withExtendedLifetime(cancelable) {}
294 | resolve(.success(()))
| |- warning: capture of 'resolve' with non-sendable type '(Result<Void, Never>) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
295 | }
296 | }
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/OpenFeatureAPI.swift:294:25: warning: capture of 'resolve' with non-sendable type '(Result<Void, Never>) -> Void' in an isolated closure; this is an error in the Swift 6 language mode
292 | .sink { _ in
293 | withExtendedLifetime(cancelable) {}
294 | resolve(.success(()))
| |- warning: capture of 'resolve' with non-sendable type '(Result<Void, Never>) -> Void' in an isolated closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
295 | }
296 | }
[55/63] Compiling OpenFeature OpenFeatureAPI.swift
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/OpenFeatureAPI.swift:21:23: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'OpenFeatureAPI' may have shared mutable state; this is an error in the Swift 6 language mode
4 | /// A global singleton which holds base configuration for the OpenFeature library.
5 | /// Configuration here will be shared across all ``Client``s.
6 | public class OpenFeatureAPI {
| `- note: class 'OpenFeatureAPI' does not conform to the 'Sendable' protocol
7 | // Sync queue to change state atomically
8 | private let stateQueue = DispatchQueue(label: "com.openfeature.state.queue")
:
19 |
20 | /// The ``OpenFeatureAPI`` singleton
21 | static public let shared = OpenFeatureAPI()
| |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'OpenFeatureAPI' 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
22 |
23 | public init() {}
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/OpenFeatureAPI.swift:291:30: warning: capture of 'work' with non-sendable type '() -> Future<Void, Never>' in a '@Sendable' closure
289 | self.providerLifecycleQueue.async {
290 | var cancelable: AnyCancellable?
291 | cancelable = work()
| |- warning: capture of 'work' with non-sendable type '() -> Future<Void, Never>' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
292 | .sink { _ in
293 | withExtendedLifetime(cancelable) {}
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/OpenFeatureAPI.swift:294:25: warning: capture of 'resolve' with non-sendable type '(Result<Void, Never>) -> Void' in a '@Sendable' closure
292 | .sink { _ in
293 | withExtendedLifetime(cancelable) {}
294 | resolve(.success(()))
| |- warning: capture of 'resolve' with non-sendable type '(Result<Void, Never>) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
295 | }
296 | }
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/OpenFeatureAPI.swift:294:25: warning: capture of 'resolve' with non-sendable type '(Result<Void, Never>) -> Void' in an isolated closure; this is an error in the Swift 6 language mode
292 | .sink { _ in
293 | withExtendedLifetime(cancelable) {}
294 | resolve(.success(()))
| |- warning: capture of 'resolve' with non-sendable type '(Result<Void, Never>) -> Void' in an isolated closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
295 | }
296 | }
[56/63] Compiling OpenFeature OpenFeatureClient.swift
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/OpenFeatureAPI.swift:21:23: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'OpenFeatureAPI' may have shared mutable state; this is an error in the Swift 6 language mode
4 | /// A global singleton which holds base configuration for the OpenFeature library.
5 | /// Configuration here will be shared across all ``Client``s.
6 | public class OpenFeatureAPI {
| `- note: class 'OpenFeatureAPI' does not conform to the 'Sendable' protocol
7 | // Sync queue to change state atomically
8 | private let stateQueue = DispatchQueue(label: "com.openfeature.state.queue")
:
19 |
20 | /// The ``OpenFeatureAPI`` singleton
21 | static public let shared = OpenFeatureAPI()
| |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'OpenFeatureAPI' 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
22 |
23 | public init() {}
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/OpenFeatureAPI.swift:291:30: warning: capture of 'work' with non-sendable type '() -> Future<Void, Never>' in a '@Sendable' closure
289 | self.providerLifecycleQueue.async {
290 | var cancelable: AnyCancellable?
291 | cancelable = work()
| |- warning: capture of 'work' with non-sendable type '() -> Future<Void, Never>' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
292 | .sink { _ in
293 | withExtendedLifetime(cancelable) {}
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/OpenFeatureAPI.swift:294:25: warning: capture of 'resolve' with non-sendable type '(Result<Void, Never>) -> Void' in a '@Sendable' closure
292 | .sink { _ in
293 | withExtendedLifetime(cancelable) {}
294 | resolve(.success(()))
| |- warning: capture of 'resolve' with non-sendable type '(Result<Void, Never>) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
295 | }
296 | }
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/OpenFeatureAPI.swift:294:25: warning: capture of 'resolve' with non-sendable type '(Result<Void, Never>) -> Void' in an isolated closure; this is an error in the Swift 6 language mode
292 | .sink { _ in
293 | withExtendedLifetime(cancelable) {}
294 | resolve(.success(()))
| |- warning: capture of 'resolve' with non-sendable type '(Result<Void, Never>) -> Void' in an isolated closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
295 | }
296 | }
[57/63] Compiling OpenFeature OpenFeatureLogger.swift
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/OpenFeatureAPI.swift:21:23: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'OpenFeatureAPI' may have shared mutable state; this is an error in the Swift 6 language mode
4 | /// A global singleton which holds base configuration for the OpenFeature library.
5 | /// Configuration here will be shared across all ``Client``s.
6 | public class OpenFeatureAPI {
| `- note: class 'OpenFeatureAPI' does not conform to the 'Sendable' protocol
7 | // Sync queue to change state atomically
8 | private let stateQueue = DispatchQueue(label: "com.openfeature.state.queue")
:
19 |
20 | /// The ``OpenFeatureAPI`` singleton
21 | static public let shared = OpenFeatureAPI()
| |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'OpenFeatureAPI' 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
22 |
23 | public init() {}
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/OpenFeatureAPI.swift:291:30: warning: capture of 'work' with non-sendable type '() -> Future<Void, Never>' in a '@Sendable' closure
289 | self.providerLifecycleQueue.async {
290 | var cancelable: AnyCancellable?
291 | cancelable = work()
| |- warning: capture of 'work' with non-sendable type '() -> Future<Void, Never>' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
292 | .sink { _ in
293 | withExtendedLifetime(cancelable) {}
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/OpenFeatureAPI.swift:294:25: warning: capture of 'resolve' with non-sendable type '(Result<Void, Never>) -> Void' in a '@Sendable' closure
292 | .sink { _ in
293 | withExtendedLifetime(cancelable) {}
294 | resolve(.success(()))
| |- warning: capture of 'resolve' with non-sendable type '(Result<Void, Never>) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
295 | }
296 | }
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/OpenFeatureAPI.swift:294:25: warning: capture of 'resolve' with non-sendable type '(Result<Void, Never>) -> Void' in an isolated closure; this is an error in the Swift 6 language mode
292 | .sink { _ in
293 | withExtendedLifetime(cancelable) {}
294 | resolve(.success(()))
| |- warning: capture of 'resolve' with non-sendable type '(Result<Void, Never>) -> Void' in an isolated closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
295 | }
296 | }
[58/63] Compiling OpenFeature FeatureProvider.swift
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/OpenFeatureAPI.swift:21:23: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'OpenFeatureAPI' may have shared mutable state; this is an error in the Swift 6 language mode
4 | /// A global singleton which holds base configuration for the OpenFeature library.
5 | /// Configuration here will be shared across all ``Client``s.
6 | public class OpenFeatureAPI {
| `- note: class 'OpenFeatureAPI' does not conform to the 'Sendable' protocol
7 | // Sync queue to change state atomically
8 | private let stateQueue = DispatchQueue(label: "com.openfeature.state.queue")
:
19 |
20 | /// The ``OpenFeatureAPI`` singleton
21 | static public let shared = OpenFeatureAPI()
| |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'OpenFeatureAPI' 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
22 |
23 | public init() {}
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/OpenFeatureAPI.swift:291:30: warning: capture of 'work' with non-sendable type '() -> Future<Void, Never>' in a '@Sendable' closure
289 | self.providerLifecycleQueue.async {
290 | var cancelable: AnyCancellable?
291 | cancelable = work()
| |- warning: capture of 'work' with non-sendable type '() -> Future<Void, Never>' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
292 | .sink { _ in
293 | withExtendedLifetime(cancelable) {}
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/OpenFeatureAPI.swift:294:25: warning: capture of 'resolve' with non-sendable type '(Result<Void, Never>) -> Void' in a '@Sendable' closure
292 | .sink { _ in
293 | withExtendedLifetime(cancelable) {}
294 | resolve(.success(()))
| |- warning: capture of 'resolve' with non-sendable type '(Result<Void, Never>) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
295 | }
296 | }
/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/OpenFeatureAPI.swift:294:25: warning: capture of 'resolve' with non-sendable type '(Result<Void, Never>) -> Void' in an isolated closure; this is an error in the Swift 6 language mode
292 | .sink { _ in
293 | withExtendedLifetime(cancelable) {}
294 | resolve(.success(()))
| |- warning: capture of 'resolve' with non-sendable type '(Result<Void, Never>) -> Void' in an isolated closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
295 | }
296 | }
[59/63] Compiling OpenFeature EventMetadataValue.swift
[60/63] Compiling OpenFeature Features+Defaults.swift
[61/63] Compiling OpenFeature Features.swift
[62/63] Compiling OpenFeature FlagEvaluationDetails.swift
[63/63] Compiling OpenFeature FlagEvaluationOptions.swift
[64/67] Compiling OpenFeature Value.swift
[65/67] Compiling OpenFeature ErrorCode.swift
[66/67] Compiling OpenFeature OpenFeatureError.swift
[67/67] Compiling OpenFeature resource_bundle_accessor.swift
[68/69] Compiling OpenFeatureSwiftLog SwiftLogLogger.swift
[69/69] Emitting module OpenFeatureSwiftLog
Build complete! (8.01s)
Fetching https://github.com/apple/swift-log from cache
Fetched https://github.com/apple/swift-log from cache (1.22s)
Computing version for https://github.com/apple/swift-log
Computed https://github.com/apple/swift-log at 1.15.1 (0.48s)
Creating working copy for https://github.com/apple/swift-log
Working copy of https://github.com/apple/swift-log resolved at 1.15.1
Build complete.
{
"dependencies" : [
{
"identity" : "swift-log",
"requirement" : {
"range" : [
{
"lower_bound" : "1.5.4",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-log"
}
],
"manifest_display_name" : "OpenFeature",
"name" : "OpenFeature",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "15.0"
},
{
"name" : "macos",
"version" : "12.0"
},
{
"name" : "watchos",
"version" : "8.0"
},
{
"name" : "tvos",
"version" : "15.0"
}
],
"products" : [
{
"name" : "OpenFeature",
"targets" : [
"OpenFeature"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "OpenFeatureSwiftLog",
"targets" : [
"OpenFeatureSwiftLog"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "OpenFeatureTests",
"module_type" : "SwiftTarget",
"name" : "OpenFeatureTests",
"path" : "Tests/OpenFeatureTests",
"sources" : [
"DeveloperExperienceTests.swift",
"EvalContextTests.swift",
"FlagEvaluationTests.swift",
"Helpers/AlwaysBrokenProvider.swift",
"Helpers/BooleanHookMock.swift",
"Helpers/CapturingLogger.swift",
"Helpers/DoSomethingProvider.swift",
"Helpers/HookDataSpyHook.swift",
"Helpers/InMemoryTestFlags.swift",
"Helpers/IntHookMock.swift",
"Helpers/LoggerCapturingProvider.swift",
"Helpers/MockProvider.swift",
"Helpers/MutableContext.swift",
"Helpers/ShutdownSpyProvider.swift",
"Helpers/StageRecordingHook.swift",
"Helpers/StaggeredProvider.swift",
"Helpers/TelemetryCapturingHook.swift",
"Helpers/TelemetryFixtures.swift",
"Helpers/ThrowingProvider.swift",
"Helpers/XCTestCase+Provider.swift",
"HookDataIsolationSpecTests.swift",
"HookDataSpecTests.swift",
"HookDataTests.swift",
"HookSpecTests.swift",
"HookStagePayloadSpecTests.swift",
"HookSupportTests.swift",
"ImmutableContextTests.swift",
"ImmutableTrackingEventDetailsTests.swift",
"InMemoryProviderErrorTests.swift",
"InMemoryProviderEventTests.swift",
"InMemoryProviderTargetingTests.swift",
"InMemoryProviderTests.swift",
"LoggerTests.swift",
"MultiProviderTests.swift",
"OpenFeatureClientTests.swift",
"PrivacyManifestTests.swift",
"ProviderEventTests.swift",
"ProviderLifecycleTests.swift",
"ProviderReplacementSpecTests.swift",
"ProviderShutdownTests.swift",
"ProviderSpecTests.swift",
"ProviderStatusTrackerTests.swift",
"ReasonTests.swift",
"ShutdownSpecTests.swift",
"StructureTests.swift",
"TelemetryErrorTests.swift",
"TelemetryHookSpecTests.swift",
"TelemetryTests.swift",
"TelemetryValueTests.swift",
"ValueTests.swift"
],
"target_dependencies" : [
"OpenFeature"
],
"type" : "test"
},
{
"c99name" : "OpenFeatureSwiftLogTests",
"module_type" : "SwiftTarget",
"name" : "OpenFeatureSwiftLogTests",
"path" : "Tests/OpenFeatureSwiftLogTests",
"product_dependencies" : [
"Logging"
],
"sources" : [
"SwiftLogLoggerTests.swift"
],
"target_dependencies" : [
"OpenFeatureSwiftLog"
],
"type" : "test"
},
{
"c99name" : "OpenFeatureSwiftLog",
"module_type" : "SwiftTarget",
"name" : "OpenFeatureSwiftLog",
"path" : "Sources/OpenFeatureSwiftLog",
"product_dependencies" : [
"Logging"
],
"product_memberships" : [
"OpenFeatureSwiftLog"
],
"sources" : [
"SwiftLogLogger.swift"
],
"target_dependencies" : [
"OpenFeature"
],
"type" : "library"
},
{
"c99name" : "OpenFeature",
"module_type" : "SwiftTarget",
"name" : "OpenFeature",
"path" : "Sources/OpenFeature",
"product_memberships" : [
"OpenFeature",
"OpenFeatureSwiftLog"
],
"resources" : [
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/OpenFeature/PrivacyInfo.xcprivacy",
"rule" : {
"copy" : {
}
}
}
],
"sources" : [
"BaseEvaluation.swift",
"Client.swift",
"ClientMetadata.swift",
"EvaluationContext.swift",
"EventHandler.swift",
"EventMetadataValue.swift",
"Features+Defaults.swift",
"Features.swift",
"FlagEvaluationDetails.swift",
"FlagEvaluationOptions.swift",
"FlagMetadataValue.swift",
"FlagValueType.swift",
"Hook.swift",
"HookContext.swift",
"HookData.swift",
"HookSupport.swift",
"ImmutableContext.swift",
"ImmutableStructure.swift",
"ImmutableTrackingEventDetails.swift",
"MetadataValue.swift",
"MutableStructure.swift",
"OpenFeatureAPI.swift",
"OpenFeatureClient.swift",
"OpenFeatureLogger.swift",
"Provider/FeatureProvider.swift",
"Provider/InMemoryProvider/InMemoryFlag.swift",
"Provider/InMemoryProvider/InMemoryProvider.swift",
"Provider/MultiProvider/FirstMatchStrategy.swift",
"Provider/MultiProvider/FirstSuccessfulStrategy.swift",
"Provider/MultiProvider/MultiProvider.swift",
"Provider/MultiProvider/Strategy.swift",
"Provider/NoOpProvider.swift",
"Provider/ProviderEvaluation.swift",
"Provider/ProviderEventDetails.swift",
"Provider/ProviderEvents.swift",
"Provider/ProviderMetadata.swift",
"Provider/ProviderStatus.swift",
"ProviderStatusTracker.swift",
"Reason.swift",
"Structure.swift",
"Telemetry/EvaluationEvent.swift",
"Telemetry/Telemetry.swift",
"Telemetry/TelemetryAttributeValue.swift",
"Tracking.swift",
"TrackingEventDetails.swift",
"Value.swift",
"exceptions/ErrorCode.swift",
"exceptions/OpenFeatureError.swift"
],
"type" : "library"
}
],
"tools_version" : "5.5"
}
Done.