The Swift Package Index logo.Swift Package Index

Build Information

Successful build of Featureflip, reference v3.4.0 (7bf7a3), with Swift 6.2 for macOS (SPM) on 23 Oct 2026 00:42:09 UTC.

Swift 6 data race errors: 0

Build Command

env DEVELOPER_DIR=/Applications/Xcode-26.3.0.app xcrun swift build --arch arm64

Build Log

========================================
RunAll
========================================
Builder version: 5.1.3
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/canopy-labs/featureflip-swift.git
Reference: v3.4.0
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/canopy-labs/featureflip-swift
 * tag               v3.4.0     -> FETCH_HEAD
HEAD is now at 7bf7a3a Release v3.4.0
Cloned https://github.com/canopy-labs/featureflip-swift.git
Revision (git rev-parse @):
7bf7a3ab45969716da1c6c4a5f35ff3fb62e2975
SUCCESS checkout https://github.com/canopy-labs/featureflip-swift.git at v3.4.0
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.2
Building package at path:  $PWD
https://github.com/canopy-labs/featureflip-swift.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-26.3.0.app xcrun swift build --arch arm64
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version--3CB7CFEC50E0D141.txt
[3/19] Compiling Featureflip HttpClient.swift
[4/19] Compiling Featureflip LifecycleObserver.swift
[5/19] Compiling Featureflip FeatureflipConfig.swift
[6/19] Compiling Featureflip FlagCache.swift
[7/19] Emitting module Featureflip
[8/19] Compiling Featureflip AnonymousKeyStore.swift
[9/19] Compiling Featureflip Diagnostics.swift
[10/19] Compiling Featureflip EventProcessor.swift
[11/19] Compiling Featureflip FeatureflipClient.swift
[12/19] Compiling Featureflip FeatureFlag.swift
[13/19] Compiling Featureflip SdkIdentity.swift
[14/19] Compiling Featureflip SharedFeatureflipCore.swift
[15/19] Compiling Featureflip StreamingDataSource.swift
/Users/admin/builder/spi-builder-workspace/Sources/Featureflip/StreamingDataSource.swift:206:18: warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
204 |             // front would make the first reconnect after it sleep the pre-outage
205 |             // delay — up to the 30s cap — instead of the base.
206 |             lock.lock()
    |                  `- warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
207 |             retryCount += 1
208 |             let armFallback = retryCount >= Self.maxRetries && !fallbackActive
Foundation.NSLock.lock:2:11: note: 'lock()' declared here
1 | class NSLock {
2 | open func lock()}
  |           `- note: 'lock()' declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/Featureflip/StreamingDataSource.swift:214:18: warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
212 |             let currentBackoff = backoff
213 |             backoff = Self.nextBackoff(backoff)
214 |             lock.unlock()
    |                  `- warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
215 |
216 |             // The fallback is ADDITIVE, never terminal (#3075). Polling covers the
Foundation.NSLock.unlock:2:11: note: 'unlock()' declared here
1 | class NSLock {
2 | open func unlock()}
  |           `- note: 'unlock()' declared here
3 |
[16/19] Compiling Featureflip Protocols.swift
[17/19] Compiling Featureflip ReadRecorder.swift
[18/19] Compiling Featureflip Models.swift
/Users/admin/builder/spi-builder-workspace/Sources/Featureflip/PollingDataSource.swift:74:14: warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
72 |
73 |     func pollOnce() async {
74 |         lock.lock()
   |              `- warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
75 |         let currentContext = context
76 |         lock.unlock()
Foundation.NSLock.lock:2:11: note: 'lock()' declared here
1 | class NSLock {
2 | open func lock()}
  |           `- note: 'lock()' declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/Featureflip/PollingDataSource.swift:76:14: warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
74 |         lock.lock()
75 |         let currentContext = context
76 |         lock.unlock()
   |              `- warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
77 |         do {
78 |             let result = try await httpClient.evaluate(context: currentContext)
Foundation.NSLock.unlock:2:11: note: 'unlock()' declared here
1 | class NSLock {
2 | open func unlock()}
  |           `- note: 'unlock()' declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/Featureflip/PollingDataSource.swift:79:18: warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
77 |         do {
78 |             let result = try await httpClient.evaluate(context: currentContext)
79 |             lock.lock()
   |                  `- warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
80 |             let isStopped = stopped
81 |             lock.unlock()
Foundation.NSLock.lock:2:11: note: 'lock()' declared here
1 | class NSLock {
2 | open func lock()}
  |           `- note: 'lock()' declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/Featureflip/PollingDataSource.swift:81:18: warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
79 |             lock.lock()
80 |             let isStopped = stopped
81 |             lock.unlock()
   |                  `- warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
82 |             if isStopped { return }
83 |             onChange(result.flags)
Foundation.NSLock.unlock:2:11: note: 'unlock()' declared here
1 | class NSLock {
2 | open func unlock()}
  |           `- note: 'unlock()' declared here
3 |
[19/19] Compiling Featureflip PollingDataSource.swift
/Users/admin/builder/spi-builder-workspace/Sources/Featureflip/PollingDataSource.swift:74:14: warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
72 |
73 |     func pollOnce() async {
74 |         lock.lock()
   |              `- warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
75 |         let currentContext = context
76 |         lock.unlock()
Foundation.NSLock.lock:2:11: note: 'lock()' declared here
1 | class NSLock {
2 | open func lock()}
  |           `- note: 'lock()' declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/Featureflip/PollingDataSource.swift:76:14: warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
74 |         lock.lock()
75 |         let currentContext = context
76 |         lock.unlock()
   |              `- warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
77 |         do {
78 |             let result = try await httpClient.evaluate(context: currentContext)
Foundation.NSLock.unlock:2:11: note: 'unlock()' declared here
1 | class NSLock {
2 | open func unlock()}
  |           `- note: 'unlock()' declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/Featureflip/PollingDataSource.swift:79:18: warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
77 |         do {
78 |             let result = try await httpClient.evaluate(context: currentContext)
79 |             lock.lock()
   |                  `- warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
80 |             let isStopped = stopped
81 |             lock.unlock()
Foundation.NSLock.lock:2:11: note: 'lock()' declared here
1 | class NSLock {
2 | open func lock()}
  |           `- note: 'lock()' declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/Featureflip/PollingDataSource.swift:81:18: warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
79 |             lock.lock()
80 |             let isStopped = stopped
81 |             lock.unlock()
   |                  `- warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
82 |             if isStopped { return }
83 |             onChange(result.flags)
Foundation.NSLock.unlock:2:11: note: 'unlock()' declared here
1 | class NSLock {
2 | open func unlock()}
  |           `- note: 'unlock()' declared here
3 |
[20/20] Compiling Featureflip FeatureFlagProvider.swift
Build complete! (9.70s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "Featureflip",
  "name" : "Featureflip",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "15.0"
    },
    {
      "name" : "macos",
      "version" : "13.0"
    },
    {
      "name" : "tvos",
      "version" : "15.0"
    },
    {
      "name" : "watchos",
      "version" : "8.0"
    }
  ],
  "products" : [
    {
      "name" : "Featureflip",
      "targets" : [
        "Featureflip"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "FeatureflipTests",
      "module_type" : "SwiftTarget",
      "name" : "FeatureflipTests",
      "path" : "Tests/FeatureflipTests",
      "sources" : [
        "AnonymousKeyTests.swift",
        "ConfigTests.swift",
        "ContextValueTypeTests.swift",
        "EventFlushCoalescingTests.swift",
        "EventFlushResilienceTests.swift",
        "EventProcessorTests.swift",
        "FeatureflipClientFactoryTests.swift",
        "FeatureflipClientTests.swift",
        "FeatureflipTests.swift",
        "FlagCacheTests.swift",
        "Helpers/MockHTTPLoader.swift",
        "HttpClientTests.swift",
        "InspectorTests.swift",
        "LifecycleObserverTests.swift",
        "PollingDataSourceTests.swift",
        "PrerequisiteKeyTests.swift",
        "ReadRecorderTests.swift",
        "ReadReportingBenchmarkTests.swift",
        "ReadReportingCoreTests.swift",
        "SdkIdentityTests.swift",
        "SharedFeatureflipCoreTests.swift",
        "StreamingDataSourceTests.swift",
        "SwiftUITests.swift",
        "UseAfterCloseTests.swift"
      ],
      "target_dependencies" : [
        "Featureflip"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Featureflip",
      "module_type" : "SwiftTarget",
      "name" : "Featureflip",
      "path" : "Sources/Featureflip",
      "product_memberships" : [
        "Featureflip"
      ],
      "sources" : [
        "AnonymousKeyStore.swift",
        "Diagnostics.swift",
        "EventProcessor.swift",
        "FeatureflipClient.swift",
        "FeatureflipConfig.swift",
        "FlagCache.swift",
        "HttpClient.swift",
        "LifecycleObserver.swift",
        "Models.swift",
        "PollingDataSource.swift",
        "Protocols.swift",
        "ReadRecorder.swift",
        "SdkIdentity.swift",
        "SharedFeatureflipCore.swift",
        "StreamingDataSource.swift",
        "SwiftUI/FeatureFlag.swift",
        "SwiftUI/FeatureFlagProvider.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.9"
}
Done.