Build Information
Successful build of DevCycle, reference v1.24.5 (efe19d), with Swift 6.1 for macOS (SPM) on 16 Mar 2026 22:46:02 UTC.
Swift 6 data race errors: 0
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64Build Log
========================================
RunAll
========================================
Builder version: 4.69.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/DevCycleHQ/ios-client-sdk.git
Reference: v1.24.5
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/DevCycleHQ/ios-client-sdk
* tag v1.24.5 -> FETCH_HEAD
HEAD is now at efe19d0 Release 1.24.5
Cloned https://github.com/DevCycleHQ/ios-client-sdk.git
Revision (git rev-parse @):
efe19d06a48d897d22aa1c5cebaded841057f2ba
SUCCESS checkout https://github.com/DevCycleHQ/ios-client-sdk.git at v1.24.5
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.1
Building package at path: $PWD
https://github.com/DevCycleHQ/ios-client-sdk.git
https://github.com/DevCycleHQ/ios-client-sdk.git
{
"dependencies" : [
{
"identity" : "swift-eventsource",
"requirement" : {
"range" : [
{
"lower_bound" : "3.3.0",
"upper_bound" : "4.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/LaunchDarkly/swift-eventsource.git"
}
],
"manifest_display_name" : "DevCycle",
"name" : "DevCycle",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "12.0"
},
{
"name" : "tvos",
"version" : "12.0"
},
{
"name" : "macos",
"version" : "10.13"
},
{
"name" : "watchos",
"version" : "7.0"
}
],
"products" : [
{
"name" : "DevCycle",
"targets" : [
"DevCycle"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"swift_languages_versions" : [
"5"
],
"targets" : [
{
"c99name" : "DevCycleTests_ObjC",
"module_type" : "ClangTarget",
"name" : "DevCycleTests-ObjC",
"path" : "DevCycleTests/ObjC",
"sources" : [
"ObjCDevCycleClientTests.m",
"ObjcDVCVariableTests.m",
"ObjcDevCycleUserTests.m"
],
"target_dependencies" : [
"DevCycle"
],
"type" : "test"
},
{
"c99name" : "DevCycleTests",
"module_type" : "SwiftTarget",
"name" : "DevCycleTests",
"path" : "DevCycleTests",
"sources" : [
"Mocks/URLSessionMock.swift",
"Models/DVCConfigTests.swift",
"Models/DVCVariableTests.swift",
"Models/DevCycleClientTests.swift",
"Models/DevCycleEventTests.swift",
"Models/DevCycleOptionsTest.swift",
"Models/DevCycleUserTest.swift",
"Models/EventQueueTests.swift",
"Models/SSEMessage.swift",
"Models/ThreadingTests.swift",
"Models/UserConfigTests.swift",
"Networking/DevCycleServiceTests.swift",
"Utils/GetTestConfig.swift",
"Utils/IsEqualTests.swift",
"Utils/RequestConsolidatorTests.swift"
],
"target_dependencies" : [
"DevCycle"
],
"type" : "test"
},
{
"c99name" : "DevCycle",
"module_type" : "SwiftTarget",
"name" : "DevCycle",
"path" : "DevCycle",
"product_dependencies" : [
"LDSwiftEventSource"
],
"product_memberships" : [
"DevCycle"
],
"resources" : [
{
"path" : "/Users/admin/builder/spi-builder-workspace/DevCycle/PrivacyInfo.xcprivacy",
"rule" : {
"process" : {
}
}
}
],
"sources" : [
"DVCVariable.swift",
"DevCycleClient.swift",
"DevCycleUser.swift",
"Models/Cache.swift",
"Models/CustomData.swift",
"Models/DVCConfig.swift",
"Models/DevCycleEvent.swift",
"Models/DevCycleOptions.swift",
"Models/EventQueue.swift",
"Models/PlatformDetails.swift",
"Models/UserConfig.swift",
"Networking/DevCycleService.swift",
"ObjC/ObjCDVCVariable.swift",
"ObjC/ObjCDevCycleClient.swift",
"ObjC/ObjCDevCycleEvent.swift",
"ObjC/ObjCDevCycleOptions.swift",
"ObjC/ObjCDevCycleUser.swift",
"ObjC/ObjCErrors.swift",
"ObjC/ObjCUserConfig.swift",
"SSEConnection.swift",
"Utils/Log.swift",
"Utils/NotificationNames.swift",
"Utils/ProcessConfig.swift",
"Utils/RequestConsolidator.swift",
"Utils/isEqual.swift"
],
"type" : "library"
}
],
"tools_version" : "5.3"
}
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures
Building for debugging...
[0/4] Write sources
[1/4] Copying PrivacyInfo.xcprivacy
[3/4] Write swift-version-2F0A5646E1D333AE.txt
[5/10] Compiling LDSwiftEventSource Types.swift
[6/10] Compiling LDSwiftEventSource LDSwiftEventSource.swift
[7/10] Compiling LDSwiftEventSource UTF8LineParser.swift
[8/10] Compiling LDSwiftEventSource Logs.swift
[9/10] Emitting module LDSwiftEventSource
[10/10] Compiling LDSwiftEventSource EventParser.swift
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-eventsource/Source/EventParser.swift:68:22: error: no 'contains' candidates produce the expected type '(Substring.Element) throws -> Bool' (aka '(Character) throws -> Bool') for parameter #0
66 | eventType = String(value)
67 | case Constants.retryLabel:
68 | if value.allSatisfy(("0"..."9").contains), let reconnectionTime = Int64(value) {
| `- error: no 'contains' candidates produce the expected type '(Substring.Element) throws -> Bool' (aka '(Character) throws -> Bool') for parameter #0
69 | currentRetry = Double(reconnectionTime) * 0.001
70 | }
Fetching https://github.com/LaunchDarkly/swift-eventsource.git
[1/1778] Fetching swift-eventsource
Fetched https://github.com/LaunchDarkly/swift-eventsource.git from cache (1.07s)
Computing version for https://github.com/LaunchDarkly/swift-eventsource.git
Computed https://github.com/LaunchDarkly/swift-eventsource.git at 3.3.0 (1.65s)
Creating working copy for https://github.com/LaunchDarkly/swift-eventsource.git
Working copy of https://github.com/LaunchDarkly/swift-eventsource.git resolved at 3.3.0
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64
[0/1] Planning build
Building for debugging...
[0/1] Write swift-version-2F0A5646E1D333AE.txt
[2/7] Compiling LDSwiftEventSource Logs.swift
[3/7] Compiling LDSwiftEventSource Types.swift
[4/7] Compiling LDSwiftEventSource UTF8LineParser.swift
[5/7] Compiling LDSwiftEventSource EventParser.swift
[6/7] Compiling LDSwiftEventSource LDSwiftEventSource.swift
[7/7] Emitting module LDSwiftEventSource
[8/32] Emitting module DevCycle
[9/34] Compiling DevCycle DevCycleEvent.swift
[10/34] Compiling DevCycle DevCycleOptions.swift
[11/34] Compiling DevCycle EventQueue.swift
[12/34] Compiling DevCycle ObjCUserConfig.swift
[13/34] Compiling DevCycle SSEConnection.swift
[14/34] Compiling DevCycle ProcessConfig.swift
[15/34] Compiling DevCycle RequestConsolidator.swift
[16/34] Compiling DevCycle ObjCDevCycleOptions.swift
/Users/admin/builder/spi-builder-workspace/DevCycle/ObjC/ObjCDevCycleOptions.swift:35:52: warning: 'flushEventsIntervalMs' is deprecated: Use eventFlushIntervalMS
33 | let interval = eventFlushIntervalMS as? Int {
34 | optionsBuilder = optionsBuilder.eventFlushIntervalMS(interval)
35 | } else if let flushEventsIntervalMs = self.flushEventsIntervalMs,
| `- warning: 'flushEventsIntervalMs' is deprecated: Use eventFlushIntervalMS
36 | let interval = flushEventsIntervalMs as? Int {
37 | optionsBuilder = optionsBuilder.eventFlushIntervalMS(interval)
/Users/admin/builder/spi-builder-workspace/DevCycle/ObjC/ObjCDevCycleOptions.swift:42:45: warning: 'disableEventLogging' is deprecated: Use disableAutomaticEventLogging or disableCustomEventLogging
40 | if let disableEventLogging = self.disableEventLogging,
41 | let disable = disableEventLogging as? Bool {
42 | optionsBuilder = optionsBuilder.disableEventLogging(disable)
| `- warning: 'disableEventLogging' is deprecated: Use disableAutomaticEventLogging or disableCustomEventLogging
43 | }
44 |
/Users/admin/builder/spi-builder-workspace/DevCycle/ObjC/ObjCDevCycleOptions.swift:76:39: warning: conditional cast from 'NSString' to 'String' always succeeds
74 |
75 | if let apiProxyURL = self.apiProxyURL,
76 | let proxyURL = apiProxyURL as? String {
| `- warning: conditional cast from 'NSString' to 'String' always succeeds
77 | optionsBuilder = optionsBuilder.apiProxyURL(proxyURL)
78 | }
[17/34] Compiling DevCycle ObjCDevCycleUser.swift
/Users/admin/builder/spi-builder-workspace/DevCycle/ObjC/ObjCDevCycleOptions.swift:35:52: warning: 'flushEventsIntervalMs' is deprecated: Use eventFlushIntervalMS
33 | let interval = eventFlushIntervalMS as? Int {
34 | optionsBuilder = optionsBuilder.eventFlushIntervalMS(interval)
35 | } else if let flushEventsIntervalMs = self.flushEventsIntervalMs,
| `- warning: 'flushEventsIntervalMs' is deprecated: Use eventFlushIntervalMS
36 | let interval = flushEventsIntervalMs as? Int {
37 | optionsBuilder = optionsBuilder.eventFlushIntervalMS(interval)
/Users/admin/builder/spi-builder-workspace/DevCycle/ObjC/ObjCDevCycleOptions.swift:42:45: warning: 'disableEventLogging' is deprecated: Use disableAutomaticEventLogging or disableCustomEventLogging
40 | if let disableEventLogging = self.disableEventLogging,
41 | let disable = disableEventLogging as? Bool {
42 | optionsBuilder = optionsBuilder.disableEventLogging(disable)
| `- warning: 'disableEventLogging' is deprecated: Use disableAutomaticEventLogging or disableCustomEventLogging
43 | }
44 |
/Users/admin/builder/spi-builder-workspace/DevCycle/ObjC/ObjCDevCycleOptions.swift:76:39: warning: conditional cast from 'NSString' to 'String' always succeeds
74 |
75 | if let apiProxyURL = self.apiProxyURL,
76 | let proxyURL = apiProxyURL as? String {
| `- warning: conditional cast from 'NSString' to 'String' always succeeds
77 | optionsBuilder = optionsBuilder.apiProxyURL(proxyURL)
78 | }
[18/34] Compiling DevCycle ObjCErrors.swift
/Users/admin/builder/spi-builder-workspace/DevCycle/ObjC/ObjCDevCycleOptions.swift:35:52: warning: 'flushEventsIntervalMs' is deprecated: Use eventFlushIntervalMS
33 | let interval = eventFlushIntervalMS as? Int {
34 | optionsBuilder = optionsBuilder.eventFlushIntervalMS(interval)
35 | } else if let flushEventsIntervalMs = self.flushEventsIntervalMs,
| `- warning: 'flushEventsIntervalMs' is deprecated: Use eventFlushIntervalMS
36 | let interval = flushEventsIntervalMs as? Int {
37 | optionsBuilder = optionsBuilder.eventFlushIntervalMS(interval)
/Users/admin/builder/spi-builder-workspace/DevCycle/ObjC/ObjCDevCycleOptions.swift:42:45: warning: 'disableEventLogging' is deprecated: Use disableAutomaticEventLogging or disableCustomEventLogging
40 | if let disableEventLogging = self.disableEventLogging,
41 | let disable = disableEventLogging as? Bool {
42 | optionsBuilder = optionsBuilder.disableEventLogging(disable)
| `- warning: 'disableEventLogging' is deprecated: Use disableAutomaticEventLogging or disableCustomEventLogging
43 | }
44 |
/Users/admin/builder/spi-builder-workspace/DevCycle/ObjC/ObjCDevCycleOptions.swift:76:39: warning: conditional cast from 'NSString' to 'String' always succeeds
74 |
75 | if let apiProxyURL = self.apiProxyURL,
76 | let proxyURL = apiProxyURL as? String {
| `- warning: conditional cast from 'NSString' to 'String' always succeeds
77 | optionsBuilder = optionsBuilder.apiProxyURL(proxyURL)
78 | }
[19/34] Compiling DevCycle Log.swift
[20/34] Compiling DevCycle NotificationNames.swift
[21/34] Compiling DevCycle ObjCDVCVariable.swift
/Users/admin/builder/spi-builder-workspace/DevCycle/ObjC/ObjCDevCycleClient.swift:62:23: warning: comparing non-optional value of type 'String' to 'nil' always returns false
60 | ) {
61 | do {
62 | if sdkKey == nil || sdkKey == "" {
| `- warning: comparing non-optional value of type 'String' to 'nil' always returns false
63 | Log.error("SDK Key missing", tags: ["build", "objc"])
64 | throw ObjCClientErrors.MissingSDKKey
/Users/admin/builder/spi-builder-workspace/DevCycle/ObjC/ObjCDevCycleClient.swift:65:28: warning: comparing non-optional value of type 'ObjCDevCycleUser' to 'nil' always returns false
63 | Log.error("SDK Key missing", tags: ["build", "objc"])
64 | throw ObjCClientErrors.MissingSDKKey
65 | } else if user == nil {
| `- warning: comparing non-optional value of type 'ObjCDevCycleUser' to 'nil' always returns false
66 | Log.error("User missing", tags: ["build", "objc"])
67 | throw ObjCClientErrors.MissingUser
[22/34] Compiling DevCycle ObjCDevCycleClient.swift
/Users/admin/builder/spi-builder-workspace/DevCycle/ObjC/ObjCDevCycleClient.swift:62:23: warning: comparing non-optional value of type 'String' to 'nil' always returns false
60 | ) {
61 | do {
62 | if sdkKey == nil || sdkKey == "" {
| `- warning: comparing non-optional value of type 'String' to 'nil' always returns false
63 | Log.error("SDK Key missing", tags: ["build", "objc"])
64 | throw ObjCClientErrors.MissingSDKKey
/Users/admin/builder/spi-builder-workspace/DevCycle/ObjC/ObjCDevCycleClient.swift:65:28: warning: comparing non-optional value of type 'ObjCDevCycleUser' to 'nil' always returns false
63 | Log.error("SDK Key missing", tags: ["build", "objc"])
64 | throw ObjCClientErrors.MissingSDKKey
65 | } else if user == nil {
| `- warning: comparing non-optional value of type 'ObjCDevCycleUser' to 'nil' always returns false
66 | Log.error("User missing", tags: ["build", "objc"])
67 | throw ObjCClientErrors.MissingUser
[23/34] Compiling DevCycle ObjCDevCycleEvent.swift
/Users/admin/builder/spi-builder-workspace/DevCycle/ObjC/ObjCDevCycleClient.swift:62:23: warning: comparing non-optional value of type 'String' to 'nil' always returns false
60 | ) {
61 | do {
62 | if sdkKey == nil || sdkKey == "" {
| `- warning: comparing non-optional value of type 'String' to 'nil' always returns false
63 | Log.error("SDK Key missing", tags: ["build", "objc"])
64 | throw ObjCClientErrors.MissingSDKKey
/Users/admin/builder/spi-builder-workspace/DevCycle/ObjC/ObjCDevCycleClient.swift:65:28: warning: comparing non-optional value of type 'ObjCDevCycleUser' to 'nil' always returns false
63 | Log.error("SDK Key missing", tags: ["build", "objc"])
64 | throw ObjCClientErrors.MissingSDKKey
65 | } else if user == nil {
| `- warning: comparing non-optional value of type 'ObjCDevCycleUser' to 'nil' always returns false
66 | Log.error("User missing", tags: ["build", "objc"])
67 | throw ObjCClientErrors.MissingUser
[24/34] Compiling DevCycle isEqual.swift
[25/34] Compiling DevCycle resource_bundle_accessor.swift
[26/34] Compiling DevCycle PlatformDetails.swift
[27/34] Compiling DevCycle UserConfig.swift
[28/34] Compiling DevCycle DevCycleService.swift
[29/34] Compiling DevCycle DVCVariable.swift
[30/34] Compiling DevCycle DevCycleClient.swift
[31/34] Compiling DevCycle DevCycleUser.swift
[32/34] Compiling DevCycle Cache.swift
[33/34] Compiling DevCycle CustomData.swift
[34/34] Compiling DevCycle DVCConfig.swift
Build complete! (4.35s)
warning: 'spi-builder-workspace': found 2 file(s) which are unhandled; explicitly declare them as resources or exclude from the target
/Users/admin/builder/spi-builder-workspace/DevCycleTests/Models/test_config.json
/Users/admin/builder/spi-builder-workspace/DevCycleTests/Models/test_config_eval_reason.json
Build complete.
{
"dependencies" : [
{
"identity" : "swift-eventsource",
"requirement" : {
"range" : [
{
"lower_bound" : "3.3.0",
"upper_bound" : "4.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/LaunchDarkly/swift-eventsource.git"
}
],
"manifest_display_name" : "DevCycle",
"name" : "DevCycle",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "12.0"
},
{
"name" : "tvos",
"version" : "12.0"
},
{
"name" : "macos",
"version" : "10.13"
},
{
"name" : "watchos",
"version" : "7.0"
}
],
"products" : [
{
"name" : "DevCycle",
"targets" : [
"DevCycle"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"swift_languages_versions" : [
"5"
],
"targets" : [
{
"c99name" : "DevCycleTests_ObjC",
"module_type" : "ClangTarget",
"name" : "DevCycleTests-ObjC",
"path" : "DevCycleTests/ObjC",
"sources" : [
"ObjCDevCycleClientTests.m",
"ObjcDVCVariableTests.m",
"ObjcDevCycleUserTests.m"
],
"target_dependencies" : [
"DevCycle"
],
"type" : "test"
},
{
"c99name" : "DevCycleTests",
"module_type" : "SwiftTarget",
"name" : "DevCycleTests",
"path" : "DevCycleTests",
"sources" : [
"Mocks/URLSessionMock.swift",
"Models/DVCConfigTests.swift",
"Models/DVCVariableTests.swift",
"Models/DevCycleClientTests.swift",
"Models/DevCycleEventTests.swift",
"Models/DevCycleOptionsTest.swift",
"Models/DevCycleUserTest.swift",
"Models/EventQueueTests.swift",
"Models/SSEMessage.swift",
"Models/ThreadingTests.swift",
"Models/UserConfigTests.swift",
"Networking/DevCycleServiceTests.swift",
"Utils/GetTestConfig.swift",
"Utils/IsEqualTests.swift",
"Utils/RequestConsolidatorTests.swift"
],
"target_dependencies" : [
"DevCycle"
],
"type" : "test"
},
{
"c99name" : "DevCycle",
"module_type" : "SwiftTarget",
"name" : "DevCycle",
"path" : "DevCycle",
"product_dependencies" : [
"LDSwiftEventSource"
],
"product_memberships" : [
"DevCycle"
],
"resources" : [
{
"path" : "/Users/admin/builder/spi-builder-workspace/DevCycle/PrivacyInfo.xcprivacy",
"rule" : {
"process" : {
}
}
}
],
"sources" : [
"DVCVariable.swift",
"DevCycleClient.swift",
"DevCycleUser.swift",
"Models/Cache.swift",
"Models/CustomData.swift",
"Models/DVCConfig.swift",
"Models/DevCycleEvent.swift",
"Models/DevCycleOptions.swift",
"Models/EventQueue.swift",
"Models/PlatformDetails.swift",
"Models/UserConfig.swift",
"Networking/DevCycleService.swift",
"ObjC/ObjCDVCVariable.swift",
"ObjC/ObjCDevCycleClient.swift",
"ObjC/ObjCDevCycleEvent.swift",
"ObjC/ObjCDevCycleOptions.swift",
"ObjC/ObjCDevCycleUser.swift",
"ObjC/ObjCErrors.swift",
"ObjC/ObjCUserConfig.swift",
"SSEConnection.swift",
"Utils/Log.swift",
"Utils/NotificationNames.swift",
"Utils/ProcessConfig.swift",
"Utils/RequestConsolidator.swift",
"Utils/isEqual.swift"
],
"type" : "library"
}
],
"tools_version" : "5.3"
}
Done.