The Swift Package Index logo.Swift Package Index

Build Information

Successful build of GrowthBook-IOS, reference main (212ec5), with Swift 6.1 for macOS (SPM) on 30 Apr 2026 09:36:39 UTC.

Swift 6 data race errors: 28

Build Command

env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures

Build Log

========================================
RunAll
========================================
Builder version: 4.70.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/growthbook/growthbook-swift.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/growthbook/growthbook-swift
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at 212ec59 fix: restore savedGroups from cache on app restart (#156)
Cloned https://github.com/growthbook/growthbook-swift.git
Revision (git rev-parse @):
212ec59a0274623070eeaad766dcc6457be9b438
SUCCESS checkout https://github.com/growthbook/growthbook-swift.git at main
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.1
Building package at path:  $PWD
https://github.com/growthbook/growthbook-swift.git
https://github.com/growthbook/growthbook-swift.git
{
  "dependencies" : [
  ],
  "manifest_display_name" : "GrowthBook-IOS",
  "name" : "GrowthBook-IOS",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "10.15"
    },
    {
      "name" : "ios",
      "version" : "12.0"
    },
    {
      "name" : "tvos",
      "version" : "12.0"
    },
    {
      "name" : "watchos",
      "version" : "5.0"
    },
    {
      "name" : "visionos",
      "version" : "1.0"
    }
  ],
  "products" : [
    {
      "name" : "GrowthBook-IOS",
      "targets" : [
        "GrowthBook"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "GrowthBookTests",
      "module_type" : "SwiftTarget",
      "name" : "GrowthBookTests",
      "path" : "GrowthBookTests",
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/GrowthBookTests/Source/json.json",
          "rule" : {
            "process" : {
            }
          }
        }
      ],
      "sources" : [
        "BackgroundSyncTest.swift",
        "CachingManagerTest.swift",
        "ConditionTests.swift",
        "ContextManagerTests.swift",
        "CryptoTests.swift",
        "ExperimentRunTests.swift",
        "FeatureValueTests.swift",
        "FeaturesViewModelTests.swift",
        "GrowthBookSDKBuilderTests.swift",
        "LruETagCacheTests.swift",
        "MockNetworkClient.swift",
        "ModelTests.swift",
        "StickyBucketingTests.swift",
        "TestHelper.swift",
        "UtilsTests.swift"
      ],
      "target_dependencies" : [
        "GrowthBook"
      ],
      "type" : "test"
    },
    {
      "c99name" : "GrowthBook",
      "module_type" : "SwiftTarget",
      "name" : "GrowthBook",
      "path" : "Sources/CommonMain",
      "product_memberships" : [
        "GrowthBook-IOS"
      ],
      "sources" : [
        "Caching/CachingManager.swift",
        "ContextManager.swift",
        "Evaluators/ConditionEvaluator.swift",
        "Evaluators/ExperimentEvaluator.swift",
        "Evaluators/ExperimentHelper.swift",
        "Evaluators/FeatureEvaluator.swift",
        "Features/FeaturesDataModel.swift",
        "Features/FeaturesDataSource.swift",
        "Features/FeaturesViewModel.swift",
        "GrowthBookModel.swift",
        "GrowthBookSDK.swift",
        "JsonManager/JsonManager.swift",
        "LoggingManager/Formatter.swift",
        "LoggingManager/LoggingManager.swift",
        "LoggingManager/Theme.swift",
        "Model/Context.swift",
        "Model/EvaluationData.swift",
        "Model/Experiment.swift",
        "Model/Feature.swift",
        "Model/GlobalConfig.swift",
        "Model/GlobalContext.swift",
        "Model/RemoteEvalModel.swift",
        "Model/StickyAssignmentsDocument.swift",
        "Network/EventHandler.swift",
        "Network/EventModel.swift",
        "Network/LruETagCache.swift",
        "Network/NetworkClient.swift",
        "Network/NetworkRetryHandler.swift",
        "Network/SSEHandler.swift",
        "StickyBucket/StickyBucketService.swift",
        "Utils/Common.swift",
        "Utils/Constants.swift",
        "Utils/Crypto.swift",
        "Utils/DecryptionUtils.swift",
        "Utils/Extensions.swift",
        "Utils/Logger.swift",
        "Utils/Utils.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.9"
}
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-2F0A5646E1D333AE.txt
[3/37] Emitting module GrowthBook
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Evaluators/ExperimentHelper.swift:4:16: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'ExperimentHelper' may have shared mutable state; this is an error in the Swift 6 language mode
 1 | import Foundation
 2 |
 3 | internal class ExperimentHelper {
   |                `- note: class 'ExperimentHelper' does not conform to the 'Sendable' protocol
 4 |     static let shared = ExperimentHelper()
   |                |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'ExperimentHelper' may have shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 5 |
 6 |     private var trackedExperiments: Set<String> = Set<String>()
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Formatter.swift:303:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'Formatter' may have shared mutable state; this is an error in the Swift 6 language mode
 22 | open class Formatters {}
 23 |
 24 | open class Formatter: Formatters {
    |            `- note: class 'Formatter' does not conform to the 'Sendable' protocol
 25 |     /// The formatter format.
 26 |     private var format: String
    :
301 |
302 | extension Formatters {
303 |     public static let `default` = Formatter("[%@] %@ %@: %@", [
    |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'Formatter' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
304 |         .date("yyyy-MM-dd HH:mm:ss.SSS"),
305 |         .location,
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Formatter.swift:310:23: warning: static property 'minimal' is not concurrency-safe because non-'Sendable' type 'Formatter' may have shared mutable state; this is an error in the Swift 6 language mode
 22 | open class Formatters {}
 23 |
 24 | open class Formatter: Formatters {
    |            `- note: class 'Formatter' does not conform to the 'Sendable' protocol
 25 |     /// The formatter format.
 26 |     private var format: String
    :
308 |     ])
309 |
310 |     public static let minimal = Formatter("%@ %@: %@", [
    |                       |- warning: static property 'minimal' is not concurrency-safe because non-'Sendable' type 'Formatter' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'minimal' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
311 |         .location,
312 |         .level,
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Formatter.swift:316:23: warning: static property 'detailed' is not concurrency-safe because non-'Sendable' type 'Formatter' may have shared mutable state; this is an error in the Swift 6 language mode
 22 | open class Formatters {}
 23 |
 24 | open class Formatter: Formatters {
    |            `- note: class 'Formatter' does not conform to the 'Sendable' protocol
 25 |     /// The formatter format.
 26 |     private var format: String
    :
314 |     ])
315 |
316 |     public static let detailed = Formatter("[%@] %@.%@:%@ %@: %@", [
    |                       |- warning: static property 'detailed' is not concurrency-safe because non-'Sendable' type 'Formatter' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'detailed' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
317 |         .date("yyyy-MM-dd HH:mm:ss.SSS"),
318 |         .file(fullPath: false, fileExtension: false),
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Theme.swift:67:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
 10 | open class Themes {}
 11 |
 12 | open class Theme: Themes {
    |            `- note: class 'Theme' does not conform to the 'Sendable' protocol
 13 |     /// The theme colors.
 14 |     var colors: [Level: String]
    :
 65 |
 66 | extension Themes {
 67 |     public static let `default` = Theme(
    |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 68 |         trace: "#C8C8C8",
 69 |         debug: "#0000FF",
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Theme.swift:75:23: warning: static property 'dusk' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
 10 | open class Themes {}
 11 |
 12 | open class Theme: Themes {
    |            `- note: class 'Theme' does not conform to the 'Sendable' protocol
 13 |     /// The theme colors.
 14 |     var colors: [Level: String]
    :
 73 |     )
 74 |
 75 |     public static let dusk = Theme(
    |                       |- warning: static property 'dusk' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'dusk' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 76 |         trace: "#FFFFFF",
 77 |         debug: "#526EDA",
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Theme.swift:83:23: warning: static property 'midnight' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
 10 | open class Themes {}
 11 |
 12 | open class Theme: Themes {
    |            `- note: class 'Theme' does not conform to the 'Sendable' protocol
 13 |     /// The theme colors.
 14 |     var colors: [Level: String]
    :
 81 |     )
 82 |
 83 |     public static let midnight = Theme(
    |                       |- warning: static property 'midnight' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'midnight' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 84 |         trace: "#FFFFFF",
 85 |         debug: "#527EFF",
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Theme.swift:91:23: warning: static property 'tomorrow' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
 10 | open class Themes {}
 11 |
 12 | open class Theme: Themes {
    |            `- note: class 'Theme' does not conform to the 'Sendable' protocol
 13 |     /// The theme colors.
 14 |     var colors: [Level: String]
    :
 89 |     )
 90 |
 91 |     public static let tomorrow = Theme(
    |                       |- warning: static property 'tomorrow' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'tomorrow' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 92 |         trace: "#4D4D4C",
 93 |         debug: "#4271AE",
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Theme.swift:99:23: warning: static property 'tomorrowNight' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
 10 | open class Themes {}
 11 |
 12 | open class Theme: Themes {
    |            `- note: class 'Theme' does not conform to the 'Sendable' protocol
 13 |     /// The theme colors.
 14 |     var colors: [Level: String]
    :
 97 |     )
 98 |
 99 |     public static let tomorrowNight = Theme(
    |                       |- warning: static property 'tomorrowNight' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'tomorrowNight' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
100 |         trace: "#C5C8C6",
101 |         debug: "#81A2BE",
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Theme.swift:107:23: warning: static property 'tomorrowNightEighties' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
 10 | open class Themes {}
 11 |
 12 | open class Theme: Themes {
    |            `- note: class 'Theme' does not conform to the 'Sendable' protocol
 13 |     /// The theme colors.
 14 |     var colors: [Level: String]
    :
105 |     )
106 |
107 |     public static let tomorrowNightEighties = Theme(
    |                       |- warning: static property 'tomorrowNightEighties' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'tomorrowNightEighties' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
108 |         trace: "#CCCCCC",
109 |         debug: "#6699CC",
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Theme.swift:115:23: warning: static property 'tomorrowNightBright' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
 10 | open class Themes {}
 11 |
 12 | open class Theme: Themes {
    |            `- note: class 'Theme' does not conform to the 'Sendable' protocol
 13 |     /// The theme colors.
 14 |     var colors: [Level: String]
    :
113 |     )
114 |
115 |     public static let tomorrowNightBright = Theme(
    |                       |- warning: static property 'tomorrowNightBright' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'tomorrowNightBright' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
116 |         trace: "#EAEAEA",
117 |         debug: "#7AA6DA",
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:4:20: warning: non-final class 'Feature' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
  2 |
  3 | /// A Feature object consists of possible values plus rules for how to assign values to users.
  4 | @objc public class Feature: NSObject, Codable, Sendable {
    |                    `- warning: non-final class 'Feature' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
  5 |     /// The default value (should use null if not specified)
  6 |     public let defaultValue: JSON?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:6:16: warning: stored property 'defaultValue' of 'Sendable'-conforming class 'Feature' has non-sendable type 'JSON?'; this is an error in the Swift 6 language mode
  4 | @objc public class Feature: NSObject, Codable, Sendable {
  5 |     /// The default value (should use null if not specified)
  6 |     public let defaultValue: JSON?
    |                `- warning: stored property 'defaultValue' of 'Sendable'-conforming class 'Feature' has non-sendable type 'JSON?'; this is an error in the Swift 6 language mode
  7 |     /// Array of Rule objects that determine when and how the defaultValue gets overridden
  8 |     public let rules: [FeatureRule]?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/JsonManager/JsonManager.swift:53:15: note: consider making struct 'JSON' conform to the 'Sendable' protocol
  51 | // MARK: - JSON Base
  52 |
  53 | public struct JSON {
     |               `- note: consider making struct 'JSON' conform to the 'Sendable' protocol
  54 |
  55 |     /**
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:29:16: warning: stored property 'condition' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type 'JSON?'; this is an error in the Swift 6 language mode
 27 |     public let id: String?
 28 |     /// Optional targeting condition
 29 |     public let condition: JSON?
    |                `- warning: stored property 'condition' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type 'JSON?'; this is an error in the Swift 6 language mode
 30 |     /// Each item defines a prerequisite where a `condition` must evaluate against a parent feature's value (identified by `id`). If `gate` is true, then this is a blocking feature-level prerequisite; otherwise it applies to the current rule only.
 31 |     public let parentConditions: [ParentConditionInterface]?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/JsonManager/JsonManager.swift:53:15: note: consider making struct 'JSON' conform to the 'Sendable' protocol
  51 | // MARK: - JSON Base
  52 |
  53 | public struct JSON {
     |               `- note: consider making struct 'JSON' conform to the 'Sendable' protocol
  54 |
  55 |     /**
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:31:16: warning: stored property 'parentConditions' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[ParentConditionInterface]?'; this is an error in the Swift 6 language mode
 29 |     public let condition: JSON?
 30 |     /// Each item defines a prerequisite where a `condition` must evaluate against a parent feature's value (identified by `id`). If `gate` is true, then this is a blocking feature-level prerequisite; otherwise it applies to the current rule only.
 31 |     public let parentConditions: [ParentConditionInterface]?
    |                `- warning: stored property 'parentConditions' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[ParentConditionInterface]?'; this is an error in the Swift 6 language mode
 32 |     /// What percent of users should be included in the experiment (between 0 and 1, inclusive)
 33 |     public let coverage: Float?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Utils/Constants.swift:19:15: note: consider making struct 'ParentConditionInterface' conform to the 'Sendable' protocol
 17 | typealias Condition = JSON
 18 |
 19 | public struct ParentConditionInterface: Codable {
    |               `- note: consider making struct 'ParentConditionInterface' conform to the 'Sendable' protocol
 20 |     public let id: String
 21 |     public let condition: JSON
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:35:16: warning: stored property 'force' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type 'JSON?'; this is an error in the Swift 6 language mode
 33 |     public let coverage: Float?
 34 |     /// Immediately force a specific value (ignore every other option besides condition and coverage)
 35 |     public let force: JSON?
    |                `- warning: stored property 'force' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type 'JSON?'; this is an error in the Swift 6 language mode
 36 |     /// Run an experiment (A/B test) and randomly choose between these variations
 37 |     public let variations: [JSON]?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/JsonManager/JsonManager.swift:53:15: note: consider making struct 'JSON' conform to the 'Sendable' protocol
  51 | // MARK: - JSON Base
  52 |
  53 | public struct JSON {
     |               `- note: consider making struct 'JSON' conform to the 'Sendable' protocol
  54 |
  55 |     /**
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:37:16: warning: stored property 'variations' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[JSON]?'; this is an error in the Swift 6 language mode
 35 |     public let force: JSON?
 36 |     /// Run an experiment (A/B test) and randomly choose between these variations
 37 |     public let variations: [JSON]?
    |                `- warning: stored property 'variations' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[JSON]?'; this is an error in the Swift 6 language mode
 38 |     /// The globally unique tracking key for the experiment (default to the feature key)
 39 |     public let key: String?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/JsonManager/JsonManager.swift:53:15: note: consider making struct 'JSON' conform to the 'Sendable' protocol
  51 | // MARK: - JSON Base
  52 |
  53 | public struct JSON {
     |               `- note: consider making struct 'JSON' conform to the 'Sendable' protocol
  54 |
  55 |     /**
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:43:16: warning: stored property 'namespace' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[JSON]?'; this is an error in the Swift 6 language mode
 41 |     public let weights: [Float]?
 42 |     /// A tuple that contains the namespace identifier, plus a range of coverage for the experiment.
 43 |     public let namespace: [JSON]?
    |                `- warning: stored property 'namespace' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[JSON]?'; this is an error in the Swift 6 language mode
 44 |     /// What user attribute should be used to assign variations (defaults to id)
 45 |     public let hashAttribute: String?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/JsonManager/JsonManager.swift:53:15: note: consider making struct 'JSON' conform to the 'Sendable' protocol
  51 | // MARK: - JSON Base
  52 |
  53 | public struct JSON {
     |               `- note: consider making struct 'JSON' conform to the 'Sendable' protocol
  54 |
  55 |     /**
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:57:16: warning: stored property 'range' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type 'BucketRange?'; this is an error in the Swift 6 language mode
 55 |     public let minBucketVersion: Int?
 56 |     /// A more precise version of `coverage`
 57 |     public let range: BucketRange?
    |                `- warning: stored property 'range' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type 'BucketRange?'; this is an error in the Swift 6 language mode
 58 |     /// Ranges for experiment variations
 59 |     public let ranges: [BucketRange]?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Utils/Constants.swift:48:15: note: consider making struct 'BucketRange' conform to the 'Sendable' protocol
 46 |
 47 | /// Double Struct for GrowthBook Ranges
 48 | public struct BucketRange: Codable {
    |               `- note: consider making struct 'BucketRange' conform to the 'Sendable' protocol
 49 |     let number1: Float
 50 |     let number2: Float
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:59:16: warning: stored property 'ranges' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[BucketRange]?'; this is an error in the Swift 6 language mode
 57 |     public let range: BucketRange?
 58 |     /// Ranges for experiment variations
 59 |     public let ranges: [BucketRange]?
    |                `- warning: stored property 'ranges' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[BucketRange]?'; this is an error in the Swift 6 language mode
 60 |     /// Meta info about the experiment variations
 61 |     public let meta: [VariationMeta]?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Utils/Constants.swift:48:15: note: consider making struct 'BucketRange' conform to the 'Sendable' protocol
 46 |
 47 | /// Double Struct for GrowthBook Ranges
 48 | public struct BucketRange: Codable {
    |               `- note: consider making struct 'BucketRange' conform to the 'Sendable' protocol
 49 |     let number1: Float
 50 |     let number2: Float
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:61:16: warning: stored property 'meta' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[VariationMeta]?'; this is an error in the Swift 6 language mode
 59 |     public let ranges: [BucketRange]?
 60 |     /// Meta info about the experiment variations
 61 |     public let meta: [VariationMeta]?
    |                `- warning: stored property 'meta' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[VariationMeta]?'; this is an error in the Swift 6 language mode
 62 |     /// Array of filters to apply to the rule
 63 |     public let filters: [Filter]?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Utils/Constants.swift:114:15: note: consider making struct 'VariationMeta' conform to the 'Sendable' protocol
112 |
113 | /// Meta info about the variations
114 | public struct VariationMeta: Codable {
    |               `- note: consider making struct 'VariationMeta' conform to the 'Sendable' protocol
115 |     /// Used to implement holdout groups
116 |     let passthrough: Bool?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:63:16: warning: stored property 'filters' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[Filter]?'; this is an error in the Swift 6 language mode
 61 |     public let meta: [VariationMeta]?
 62 |     /// Array of filters to apply to the rule
 63 |     public let filters: [Filter]?
    |                `- warning: stored property 'filters' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[Filter]?'; this is an error in the Swift 6 language mode
 64 |     /// Seed to use for hashing
 65 |     public let seed: String?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Utils/Constants.swift:152:20: note: class 'Filter' does not conform to the 'Sendable' protocol
150 |
151 | /// Object used for mutual exclusion and filtering users out of experiments based on random hashes.
152 | @objc public class Filter: NSObject, Codable {
    |                    `- note: class 'Filter' does not conform to the 'Sendable' protocol
153 |     /// The attribute to use (default to `"id"`)
154 |     var attribute: String?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:71:16: warning: stored property 'tracks' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[Track]?'; this is an error in the Swift 6 language mode
 69 |     public let phase: String?
 70 |     /// Array of tracking calls to fire
 71 |     public let tracks: [Track]?
    |                `- warning: stored property 'tracks' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[Track]?'; this is an error in the Swift 6 language mode
 72 |
 73 |     init(id: String? = "", condition: Condition? = nil,
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Utils/Constants.swift:129:15: note: consider making struct 'Track' conform to the 'Sendable' protocol
127 | }
128 |
129 | public struct Track: Codable {
    |               `- note: consider making struct 'Track' conform to the 'Sendable' protocol
130 |     public let experiment: Experiment?
131 |     public let result: ExperimentResult?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Network/SSEHandler.swift:9:7: warning: non-final class 'SSEHandler' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
  7 | }
  8 |
  9 | class SSEHandler: NSObject, URLSessionDataDelegate {
    |       `- warning: non-final class 'SSEHandler' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
 10 |     static let DefaultRetryTime = 1000
 11 |     public let url: URL
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Network/SSEHandler.swift:12:16: warning: stored property 'lastEventId' of 'Sendable'-conforming class 'SSEHandler' is mutable; this is an error in the Swift 6 language mode
 10 |     static let DefaultRetryTime = 1000
 11 |     public let url: URL
 12 |     public var lastEventId: String?
    |                `- warning: stored property 'lastEventId' of 'Sendable'-conforming class 'SSEHandler' is mutable; this is an error in the Swift 6 language mode
 13 |     public var retryTime = SSEHandler.DefaultRetryTime
 14 |     public var headers: [String: String]
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Utils/Constants.swift:104:16: warning: stored property 'code' of 'Sendable'-conforming class 'SDKError' has non-sendable type 'SDKErrorCode'; this is an error in the Swift 6 language mode
 80 | }
 81 |
 82 | public enum SDKErrorCode: String {
    |             `- note: consider making enum 'SDKErrorCode' conform to the 'Sendable' protocol
 83 |     case failedToLoadData
 84 |     case failedParsedData
    :
102 |     static func failedToFetchData(_ error: Error?) -> SDKError { .init(code: .failedToFetchData, underlying: error) }
103 |
104 |     public let code: SDKErrorCode
    |                `- warning: stored property 'code' of 'Sendable'-conforming class 'SDKError' has non-sendable type 'SDKErrorCode'; this is an error in the Swift 6 language mode
105 |     public let underlying: Error?
106 |
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Utils/DecryptionUtils.swift:91:7: warning: non-final class 'DecryptionException' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
89 | }
90 |
91 | class DecryptionException: Error {
   |       `- warning: non-final class 'DecryptionException' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
92 |     let errorMessage: String
93 |
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Utils/Logger.swift:5:5: warning: var 'logger' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 3 |
 4 | // GrowthBook default logger
 5 | var logger = GBLogger()
   |     |- warning: var 'logger' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |     |- note: convert 'logger' to a 'let' constant to make 'Sendable' shared state immutable
   |     |- note: add '@MainActor' to make var 'logger' part of global actor 'MainActor'
   |     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 6 |
 7 | @objc public enum LoggerLevel: NSInteger {
[4/40] Compiling GrowthBook Extensions.swift
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Utils/Logger.swift:5:5: warning: var 'logger' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 3 |
 4 | // GrowthBook default logger
 5 | var logger = GBLogger()
   |     |- warning: var 'logger' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |     |- note: convert 'logger' to a 'let' constant to make 'Sendable' shared state immutable
   |     |- note: add '@MainActor' to make var 'logger' part of global actor 'MainActor'
   |     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 6 |
 7 | @objc public enum LoggerLevel: NSInteger {
[5/40] Compiling GrowthBook Logger.swift
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Utils/Logger.swift:5:5: warning: var 'logger' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 3 |
 4 | // GrowthBook default logger
 5 | var logger = GBLogger()
   |     |- warning: var 'logger' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |     |- note: convert 'logger' to a 'let' constant to make 'Sendable' shared state immutable
   |     |- note: add '@MainActor' to make var 'logger' part of global actor 'MainActor'
   |     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 6 |
 7 | @objc public enum LoggerLevel: NSInteger {
[6/40] Compiling GrowthBook Utils.swift
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Utils/Logger.swift:5:5: warning: var 'logger' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 3 |
 4 | // GrowthBook default logger
 5 | var logger = GBLogger()
   |     |- warning: var 'logger' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |     |- note: convert 'logger' to a 'let' constant to make 'Sendable' shared state immutable
   |     |- note: add '@MainActor' to make var 'logger' part of global actor 'MainActor'
   |     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 6 |
 7 | @objc public enum LoggerLevel: NSInteger {
[7/40] Compiling GrowthBook FeaturesViewModel.swift
[8/40] Compiling GrowthBook GrowthBookModel.swift
[9/40] Compiling GrowthBook GrowthBookSDK.swift
[10/40] Compiling GrowthBook JsonManager.swift
[11/40] Compiling GrowthBook CachingManager.swift
[12/40] Compiling GrowthBook ContextManager.swift
[13/40] Compiling GrowthBook ConditionEvaluator.swift
[14/40] Compiling GrowthBook ExperimentEvaluator.swift
[15/40] Compiling GrowthBook Formatter.swift
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Formatter.swift:303:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'Formatter' may have shared mutable state; this is an error in the Swift 6 language mode
 22 | open class Formatters {}
 23 |
 24 | open class Formatter: Formatters {
    |            `- note: class 'Formatter' does not conform to the 'Sendable' protocol
 25 |     /// The formatter format.
 26 |     private var format: String
    :
301 |
302 | extension Formatters {
303 |     public static let `default` = Formatter("[%@] %@ %@: %@", [
    |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'Formatter' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
304 |         .date("yyyy-MM-dd HH:mm:ss.SSS"),
305 |         .location,
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Formatter.swift:310:23: warning: static property 'minimal' is not concurrency-safe because non-'Sendable' type 'Formatter' may have shared mutable state; this is an error in the Swift 6 language mode
 22 | open class Formatters {}
 23 |
 24 | open class Formatter: Formatters {
    |            `- note: class 'Formatter' does not conform to the 'Sendable' protocol
 25 |     /// The formatter format.
 26 |     private var format: String
    :
308 |     ])
309 |
310 |     public static let minimal = Formatter("%@ %@: %@", [
    |                       |- warning: static property 'minimal' is not concurrency-safe because non-'Sendable' type 'Formatter' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'minimal' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
311 |         .location,
312 |         .level,
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Formatter.swift:316:23: warning: static property 'detailed' is not concurrency-safe because non-'Sendable' type 'Formatter' may have shared mutable state; this is an error in the Swift 6 language mode
 22 | open class Formatters {}
 23 |
 24 | open class Formatter: Formatters {
    |            `- note: class 'Formatter' does not conform to the 'Sendable' protocol
 25 |     /// The formatter format.
 26 |     private var format: String
    :
314 |     ])
315 |
316 |     public static let detailed = Formatter("[%@] %@.%@:%@ %@: %@", [
    |                       |- warning: static property 'detailed' is not concurrency-safe because non-'Sendable' type 'Formatter' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'detailed' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
317 |         .date("yyyy-MM-dd HH:mm:ss.SSS"),
318 |         .file(fullPath: false, fileExtension: false),
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/LoggingManager.swift:184:36: warning: capture of 'self' with non-sendable type 'GBLogger' in a '@Sendable' closure
 23 | }
 24 |
 25 | open class GBLogger {
    |            `- note: class 'GBLogger' does not conform to the 'Sendable' protocol
 26 |     /// The logger state.
 27 |     open var enabled: Bool = true
    :
182 |         queue.async {
183 |             if #available(iOS 14.0, macCatalyst 14.0, macOS 11.0, tvOS 14.0, watchOS 7.0, visionOS 1.0, *) {
184 |                 guard let logger = self.osLogger as? Logger else { return }
    |                                    `- warning: capture of 'self' with non-sendable type 'GBLogger' in a '@Sendable' closure
185 |                 switch level {
186 |                 case .trace, .debug:
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/LoggingManager.swift:185:24: warning: capture of 'level' with non-sendable type 'Level' in a '@Sendable' closure
  9 | import os
 10 |
 11 | public enum Level: Int {
    |             `- note: consider making enum 'Level' conform to the 'Sendable' protocol
 12 |     case trace, debug, info, warning, error
 13 |
    :
183 |             if #available(iOS 14.0, macCatalyst 14.0, macOS 11.0, tvOS 14.0, watchOS 7.0, visionOS 1.0, *) {
184 |                 guard let logger = self.osLogger as? Logger else { return }
185 |                 switch level {
    |                        `- warning: capture of 'level' with non-sendable type 'Level' in a '@Sendable' closure
186 |                 case .trace, .debug:
187 |                     logger.debug("\(result)")
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Theme.swift:67:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
 10 | open class Themes {}
 11 |
 12 | open class Theme: Themes {
    |            `- note: class 'Theme' does not conform to the 'Sendable' protocol
 13 |     /// The theme colors.
 14 |     var colors: [Level: String]
    :
 65 |
 66 | extension Themes {
 67 |     public static let `default` = Theme(
    |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 68 |         trace: "#C8C8C8",
 69 |         debug: "#0000FF",
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Theme.swift:75:23: warning: static property 'dusk' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
 10 | open class Themes {}
 11 |
 12 | open class Theme: Themes {
    |            `- note: class 'Theme' does not conform to the 'Sendable' protocol
 13 |     /// The theme colors.
 14 |     var colors: [Level: String]
    :
 73 |     )
 74 |
 75 |     public static let dusk = Theme(
    |                       |- warning: static property 'dusk' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'dusk' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 76 |         trace: "#FFFFFF",
 77 |         debug: "#526EDA",
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Theme.swift:83:23: warning: static property 'midnight' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
 10 | open class Themes {}
 11 |
 12 | open class Theme: Themes {
    |            `- note: class 'Theme' does not conform to the 'Sendable' protocol
 13 |     /// The theme colors.
 14 |     var colors: [Level: String]
    :
 81 |     )
 82 |
 83 |     public static let midnight = Theme(
    |                       |- warning: static property 'midnight' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'midnight' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 84 |         trace: "#FFFFFF",
 85 |         debug: "#527EFF",
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Theme.swift:91:23: warning: static property 'tomorrow' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
 10 | open class Themes {}
 11 |
 12 | open class Theme: Themes {
    |            `- note: class 'Theme' does not conform to the 'Sendable' protocol
 13 |     /// The theme colors.
 14 |     var colors: [Level: String]
    :
 89 |     )
 90 |
 91 |     public static let tomorrow = Theme(
    |                       |- warning: static property 'tomorrow' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'tomorrow' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 92 |         trace: "#4D4D4C",
 93 |         debug: "#4271AE",
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Theme.swift:99:23: warning: static property 'tomorrowNight' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
 10 | open class Themes {}
 11 |
 12 | open class Theme: Themes {
    |            `- note: class 'Theme' does not conform to the 'Sendable' protocol
 13 |     /// The theme colors.
 14 |     var colors: [Level: String]
    :
 97 |     )
 98 |
 99 |     public static let tomorrowNight = Theme(
    |                       |- warning: static property 'tomorrowNight' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'tomorrowNight' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
100 |         trace: "#C5C8C6",
101 |         debug: "#81A2BE",
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Theme.swift:107:23: warning: static property 'tomorrowNightEighties' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
 10 | open class Themes {}
 11 |
 12 | open class Theme: Themes {
    |            `- note: class 'Theme' does not conform to the 'Sendable' protocol
 13 |     /// The theme colors.
 14 |     var colors: [Level: String]
    :
105 |     )
106 |
107 |     public static let tomorrowNightEighties = Theme(
    |                       |- warning: static property 'tomorrowNightEighties' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'tomorrowNightEighties' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
108 |         trace: "#CCCCCC",
109 |         debug: "#6699CC",
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Theme.swift:115:23: warning: static property 'tomorrowNightBright' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
 10 | open class Themes {}
 11 |
 12 | open class Theme: Themes {
    |            `- note: class 'Theme' does not conform to the 'Sendable' protocol
 13 |     /// The theme colors.
 14 |     var colors: [Level: String]
    :
113 |     )
114 |
115 |     public static let tomorrowNightBright = Theme(
    |                       |- warning: static property 'tomorrowNightBright' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'tomorrowNightBright' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
116 |         trace: "#EAEAEA",
117 |         debug: "#7AA6DA",
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Theme.swift:56:17: warning: 'scanHexInt32' was deprecated in macOS 10.15
 54 |
 55 |         scanner.charactersToBeSkipped = CharacterSet(charactersIn: "#")
 56 |         scanner.scanHexInt32(&hex)
    |                 `- warning: 'scanHexInt32' was deprecated in macOS 10.15
 57 |
 58 |         let r = (hex & 0xFF0000) >> 16
[16/40] Compiling GrowthBook LoggingManager.swift
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Formatter.swift:303:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'Formatter' may have shared mutable state; this is an error in the Swift 6 language mode
 22 | open class Formatters {}
 23 |
 24 | open class Formatter: Formatters {
    |            `- note: class 'Formatter' does not conform to the 'Sendable' protocol
 25 |     /// The formatter format.
 26 |     private var format: String
    :
301 |
302 | extension Formatters {
303 |     public static let `default` = Formatter("[%@] %@ %@: %@", [
    |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'Formatter' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
304 |         .date("yyyy-MM-dd HH:mm:ss.SSS"),
305 |         .location,
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Formatter.swift:310:23: warning: static property 'minimal' is not concurrency-safe because non-'Sendable' type 'Formatter' may have shared mutable state; this is an error in the Swift 6 language mode
 22 | open class Formatters {}
 23 |
 24 | open class Formatter: Formatters {
    |            `- note: class 'Formatter' does not conform to the 'Sendable' protocol
 25 |     /// The formatter format.
 26 |     private var format: String
    :
308 |     ])
309 |
310 |     public static let minimal = Formatter("%@ %@: %@", [
    |                       |- warning: static property 'minimal' is not concurrency-safe because non-'Sendable' type 'Formatter' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'minimal' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
311 |         .location,
312 |         .level,
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Formatter.swift:316:23: warning: static property 'detailed' is not concurrency-safe because non-'Sendable' type 'Formatter' may have shared mutable state; this is an error in the Swift 6 language mode
 22 | open class Formatters {}
 23 |
 24 | open class Formatter: Formatters {
    |            `- note: class 'Formatter' does not conform to the 'Sendable' protocol
 25 |     /// The formatter format.
 26 |     private var format: String
    :
314 |     ])
315 |
316 |     public static let detailed = Formatter("[%@] %@.%@:%@ %@: %@", [
    |                       |- warning: static property 'detailed' is not concurrency-safe because non-'Sendable' type 'Formatter' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'detailed' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
317 |         .date("yyyy-MM-dd HH:mm:ss.SSS"),
318 |         .file(fullPath: false, fileExtension: false),
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/LoggingManager.swift:184:36: warning: capture of 'self' with non-sendable type 'GBLogger' in a '@Sendable' closure
 23 | }
 24 |
 25 | open class GBLogger {
    |            `- note: class 'GBLogger' does not conform to the 'Sendable' protocol
 26 |     /// The logger state.
 27 |     open var enabled: Bool = true
    :
182 |         queue.async {
183 |             if #available(iOS 14.0, macCatalyst 14.0, macOS 11.0, tvOS 14.0, watchOS 7.0, visionOS 1.0, *) {
184 |                 guard let logger = self.osLogger as? Logger else { return }
    |                                    `- warning: capture of 'self' with non-sendable type 'GBLogger' in a '@Sendable' closure
185 |                 switch level {
186 |                 case .trace, .debug:
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/LoggingManager.swift:185:24: warning: capture of 'level' with non-sendable type 'Level' in a '@Sendable' closure
  9 | import os
 10 |
 11 | public enum Level: Int {
    |             `- note: consider making enum 'Level' conform to the 'Sendable' protocol
 12 |     case trace, debug, info, warning, error
 13 |
    :
183 |             if #available(iOS 14.0, macCatalyst 14.0, macOS 11.0, tvOS 14.0, watchOS 7.0, visionOS 1.0, *) {
184 |                 guard let logger = self.osLogger as? Logger else { return }
185 |                 switch level {
    |                        `- warning: capture of 'level' with non-sendable type 'Level' in a '@Sendable' closure
186 |                 case .trace, .debug:
187 |                     logger.debug("\(result)")
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Theme.swift:67:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
 10 | open class Themes {}
 11 |
 12 | open class Theme: Themes {
    |            `- note: class 'Theme' does not conform to the 'Sendable' protocol
 13 |     /// The theme colors.
 14 |     var colors: [Level: String]
    :
 65 |
 66 | extension Themes {
 67 |     public static let `default` = Theme(
    |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 68 |         trace: "#C8C8C8",
 69 |         debug: "#0000FF",
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Theme.swift:75:23: warning: static property 'dusk' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
 10 | open class Themes {}
 11 |
 12 | open class Theme: Themes {
    |            `- note: class 'Theme' does not conform to the 'Sendable' protocol
 13 |     /// The theme colors.
 14 |     var colors: [Level: String]
    :
 73 |     )
 74 |
 75 |     public static let dusk = Theme(
    |                       |- warning: static property 'dusk' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'dusk' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 76 |         trace: "#FFFFFF",
 77 |         debug: "#526EDA",
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Theme.swift:83:23: warning: static property 'midnight' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
 10 | open class Themes {}
 11 |
 12 | open class Theme: Themes {
    |            `- note: class 'Theme' does not conform to the 'Sendable' protocol
 13 |     /// The theme colors.
 14 |     var colors: [Level: String]
    :
 81 |     )
 82 |
 83 |     public static let midnight = Theme(
    |                       |- warning: static property 'midnight' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'midnight' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 84 |         trace: "#FFFFFF",
 85 |         debug: "#527EFF",
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Theme.swift:91:23: warning: static property 'tomorrow' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
 10 | open class Themes {}
 11 |
 12 | open class Theme: Themes {
    |            `- note: class 'Theme' does not conform to the 'Sendable' protocol
 13 |     /// The theme colors.
 14 |     var colors: [Level: String]
    :
 89 |     )
 90 |
 91 |     public static let tomorrow = Theme(
    |                       |- warning: static property 'tomorrow' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'tomorrow' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 92 |         trace: "#4D4D4C",
 93 |         debug: "#4271AE",
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Theme.swift:99:23: warning: static property 'tomorrowNight' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
 10 | open class Themes {}
 11 |
 12 | open class Theme: Themes {
    |            `- note: class 'Theme' does not conform to the 'Sendable' protocol
 13 |     /// The theme colors.
 14 |     var colors: [Level: String]
    :
 97 |     )
 98 |
 99 |     public static let tomorrowNight = Theme(
    |                       |- warning: static property 'tomorrowNight' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'tomorrowNight' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
100 |         trace: "#C5C8C6",
101 |         debug: "#81A2BE",
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Theme.swift:107:23: warning: static property 'tomorrowNightEighties' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
 10 | open class Themes {}
 11 |
 12 | open class Theme: Themes {
    |            `- note: class 'Theme' does not conform to the 'Sendable' protocol
 13 |     /// The theme colors.
 14 |     var colors: [Level: String]
    :
105 |     )
106 |
107 |     public static let tomorrowNightEighties = Theme(
    |                       |- warning: static property 'tomorrowNightEighties' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'tomorrowNightEighties' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
108 |         trace: "#CCCCCC",
109 |         debug: "#6699CC",
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Theme.swift:115:23: warning: static property 'tomorrowNightBright' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
 10 | open class Themes {}
 11 |
 12 | open class Theme: Themes {
    |            `- note: class 'Theme' does not conform to the 'Sendable' protocol
 13 |     /// The theme colors.
 14 |     var colors: [Level: String]
    :
113 |     )
114 |
115 |     public static let tomorrowNightBright = Theme(
    |                       |- warning: static property 'tomorrowNightBright' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'tomorrowNightBright' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
116 |         trace: "#EAEAEA",
117 |         debug: "#7AA6DA",
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Theme.swift:56:17: warning: 'scanHexInt32' was deprecated in macOS 10.15
 54 |
 55 |         scanner.charactersToBeSkipped = CharacterSet(charactersIn: "#")
 56 |         scanner.scanHexInt32(&hex)
    |                 `- warning: 'scanHexInt32' was deprecated in macOS 10.15
 57 |
 58 |         let r = (hex & 0xFF0000) >> 16
[17/40] Compiling GrowthBook Theme.swift
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Formatter.swift:303:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'Formatter' may have shared mutable state; this is an error in the Swift 6 language mode
 22 | open class Formatters {}
 23 |
 24 | open class Formatter: Formatters {
    |            `- note: class 'Formatter' does not conform to the 'Sendable' protocol
 25 |     /// The formatter format.
 26 |     private var format: String
    :
301 |
302 | extension Formatters {
303 |     public static let `default` = Formatter("[%@] %@ %@: %@", [
    |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'Formatter' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
304 |         .date("yyyy-MM-dd HH:mm:ss.SSS"),
305 |         .location,
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Formatter.swift:310:23: warning: static property 'minimal' is not concurrency-safe because non-'Sendable' type 'Formatter' may have shared mutable state; this is an error in the Swift 6 language mode
 22 | open class Formatters {}
 23 |
 24 | open class Formatter: Formatters {
    |            `- note: class 'Formatter' does not conform to the 'Sendable' protocol
 25 |     /// The formatter format.
 26 |     private var format: String
    :
308 |     ])
309 |
310 |     public static let minimal = Formatter("%@ %@: %@", [
    |                       |- warning: static property 'minimal' is not concurrency-safe because non-'Sendable' type 'Formatter' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'minimal' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
311 |         .location,
312 |         .level,
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Formatter.swift:316:23: warning: static property 'detailed' is not concurrency-safe because non-'Sendable' type 'Formatter' may have shared mutable state; this is an error in the Swift 6 language mode
 22 | open class Formatters {}
 23 |
 24 | open class Formatter: Formatters {
    |            `- note: class 'Formatter' does not conform to the 'Sendable' protocol
 25 |     /// The formatter format.
 26 |     private var format: String
    :
314 |     ])
315 |
316 |     public static let detailed = Formatter("[%@] %@.%@:%@ %@: %@", [
    |                       |- warning: static property 'detailed' is not concurrency-safe because non-'Sendable' type 'Formatter' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'detailed' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
317 |         .date("yyyy-MM-dd HH:mm:ss.SSS"),
318 |         .file(fullPath: false, fileExtension: false),
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/LoggingManager.swift:184:36: warning: capture of 'self' with non-sendable type 'GBLogger' in a '@Sendable' closure
 23 | }
 24 |
 25 | open class GBLogger {
    |            `- note: class 'GBLogger' does not conform to the 'Sendable' protocol
 26 |     /// The logger state.
 27 |     open var enabled: Bool = true
    :
182 |         queue.async {
183 |             if #available(iOS 14.0, macCatalyst 14.0, macOS 11.0, tvOS 14.0, watchOS 7.0, visionOS 1.0, *) {
184 |                 guard let logger = self.osLogger as? Logger else { return }
    |                                    `- warning: capture of 'self' with non-sendable type 'GBLogger' in a '@Sendable' closure
185 |                 switch level {
186 |                 case .trace, .debug:
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/LoggingManager.swift:185:24: warning: capture of 'level' with non-sendable type 'Level' in a '@Sendable' closure
  9 | import os
 10 |
 11 | public enum Level: Int {
    |             `- note: consider making enum 'Level' conform to the 'Sendable' protocol
 12 |     case trace, debug, info, warning, error
 13 |
    :
183 |             if #available(iOS 14.0, macCatalyst 14.0, macOS 11.0, tvOS 14.0, watchOS 7.0, visionOS 1.0, *) {
184 |                 guard let logger = self.osLogger as? Logger else { return }
185 |                 switch level {
    |                        `- warning: capture of 'level' with non-sendable type 'Level' in a '@Sendable' closure
186 |                 case .trace, .debug:
187 |                     logger.debug("\(result)")
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Theme.swift:67:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
 10 | open class Themes {}
 11 |
 12 | open class Theme: Themes {
    |            `- note: class 'Theme' does not conform to the 'Sendable' protocol
 13 |     /// The theme colors.
 14 |     var colors: [Level: String]
    :
 65 |
 66 | extension Themes {
 67 |     public static let `default` = Theme(
    |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 68 |         trace: "#C8C8C8",
 69 |         debug: "#0000FF",
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Theme.swift:75:23: warning: static property 'dusk' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
 10 | open class Themes {}
 11 |
 12 | open class Theme: Themes {
    |            `- note: class 'Theme' does not conform to the 'Sendable' protocol
 13 |     /// The theme colors.
 14 |     var colors: [Level: String]
    :
 73 |     )
 74 |
 75 |     public static let dusk = Theme(
    |                       |- warning: static property 'dusk' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'dusk' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 76 |         trace: "#FFFFFF",
 77 |         debug: "#526EDA",
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Theme.swift:83:23: warning: static property 'midnight' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
 10 | open class Themes {}
 11 |
 12 | open class Theme: Themes {
    |            `- note: class 'Theme' does not conform to the 'Sendable' protocol
 13 |     /// The theme colors.
 14 |     var colors: [Level: String]
    :
 81 |     )
 82 |
 83 |     public static let midnight = Theme(
    |                       |- warning: static property 'midnight' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'midnight' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 84 |         trace: "#FFFFFF",
 85 |         debug: "#527EFF",
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Theme.swift:91:23: warning: static property 'tomorrow' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
 10 | open class Themes {}
 11 |
 12 | open class Theme: Themes {
    |            `- note: class 'Theme' does not conform to the 'Sendable' protocol
 13 |     /// The theme colors.
 14 |     var colors: [Level: String]
    :
 89 |     )
 90 |
 91 |     public static let tomorrow = Theme(
    |                       |- warning: static property 'tomorrow' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'tomorrow' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 92 |         trace: "#4D4D4C",
 93 |         debug: "#4271AE",
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Theme.swift:99:23: warning: static property 'tomorrowNight' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
 10 | open class Themes {}
 11 |
 12 | open class Theme: Themes {
    |            `- note: class 'Theme' does not conform to the 'Sendable' protocol
 13 |     /// The theme colors.
 14 |     var colors: [Level: String]
    :
 97 |     )
 98 |
 99 |     public static let tomorrowNight = Theme(
    |                       |- warning: static property 'tomorrowNight' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'tomorrowNight' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
100 |         trace: "#C5C8C6",
101 |         debug: "#81A2BE",
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Theme.swift:107:23: warning: static property 'tomorrowNightEighties' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
 10 | open class Themes {}
 11 |
 12 | open class Theme: Themes {
    |            `- note: class 'Theme' does not conform to the 'Sendable' protocol
 13 |     /// The theme colors.
 14 |     var colors: [Level: String]
    :
105 |     )
106 |
107 |     public static let tomorrowNightEighties = Theme(
    |                       |- warning: static property 'tomorrowNightEighties' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'tomorrowNightEighties' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
108 |         trace: "#CCCCCC",
109 |         debug: "#6699CC",
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Theme.swift:115:23: warning: static property 'tomorrowNightBright' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
 10 | open class Themes {}
 11 |
 12 | open class Theme: Themes {
    |            `- note: class 'Theme' does not conform to the 'Sendable' protocol
 13 |     /// The theme colors.
 14 |     var colors: [Level: String]
    :
113 |     )
114 |
115 |     public static let tomorrowNightBright = Theme(
    |                       |- warning: static property 'tomorrowNightBright' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'tomorrowNightBright' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
116 |         trace: "#EAEAEA",
117 |         debug: "#7AA6DA",
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Theme.swift:56:17: warning: 'scanHexInt32' was deprecated in macOS 10.15
 54 |
 55 |         scanner.charactersToBeSkipped = CharacterSet(charactersIn: "#")
 56 |         scanner.scanHexInt32(&hex)
    |                 `- warning: 'scanHexInt32' was deprecated in macOS 10.15
 57 |
 58 |         let r = (hex & 0xFF0000) >> 16
[18/40] Compiling GrowthBook Context.swift
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Formatter.swift:303:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'Formatter' may have shared mutable state; this is an error in the Swift 6 language mode
 22 | open class Formatters {}
 23 |
 24 | open class Formatter: Formatters {
    |            `- note: class 'Formatter' does not conform to the 'Sendable' protocol
 25 |     /// The formatter format.
 26 |     private var format: String
    :
301 |
302 | extension Formatters {
303 |     public static let `default` = Formatter("[%@] %@ %@: %@", [
    |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'Formatter' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
304 |         .date("yyyy-MM-dd HH:mm:ss.SSS"),
305 |         .location,
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Formatter.swift:310:23: warning: static property 'minimal' is not concurrency-safe because non-'Sendable' type 'Formatter' may have shared mutable state; this is an error in the Swift 6 language mode
 22 | open class Formatters {}
 23 |
 24 | open class Formatter: Formatters {
    |            `- note: class 'Formatter' does not conform to the 'Sendable' protocol
 25 |     /// The formatter format.
 26 |     private var format: String
    :
308 |     ])
309 |
310 |     public static let minimal = Formatter("%@ %@: %@", [
    |                       |- warning: static property 'minimal' is not concurrency-safe because non-'Sendable' type 'Formatter' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'minimal' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
311 |         .location,
312 |         .level,
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Formatter.swift:316:23: warning: static property 'detailed' is not concurrency-safe because non-'Sendable' type 'Formatter' may have shared mutable state; this is an error in the Swift 6 language mode
 22 | open class Formatters {}
 23 |
 24 | open class Formatter: Formatters {
    |            `- note: class 'Formatter' does not conform to the 'Sendable' protocol
 25 |     /// The formatter format.
 26 |     private var format: String
    :
314 |     ])
315 |
316 |     public static let detailed = Formatter("[%@] %@.%@:%@ %@: %@", [
    |                       |- warning: static property 'detailed' is not concurrency-safe because non-'Sendable' type 'Formatter' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'detailed' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
317 |         .date("yyyy-MM-dd HH:mm:ss.SSS"),
318 |         .file(fullPath: false, fileExtension: false),
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/LoggingManager.swift:184:36: warning: capture of 'self' with non-sendable type 'GBLogger' in a '@Sendable' closure
 23 | }
 24 |
 25 | open class GBLogger {
    |            `- note: class 'GBLogger' does not conform to the 'Sendable' protocol
 26 |     /// The logger state.
 27 |     open var enabled: Bool = true
    :
182 |         queue.async {
183 |             if #available(iOS 14.0, macCatalyst 14.0, macOS 11.0, tvOS 14.0, watchOS 7.0, visionOS 1.0, *) {
184 |                 guard let logger = self.osLogger as? Logger else { return }
    |                                    `- warning: capture of 'self' with non-sendable type 'GBLogger' in a '@Sendable' closure
185 |                 switch level {
186 |                 case .trace, .debug:
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/LoggingManager.swift:185:24: warning: capture of 'level' with non-sendable type 'Level' in a '@Sendable' closure
  9 | import os
 10 |
 11 | public enum Level: Int {
    |             `- note: consider making enum 'Level' conform to the 'Sendable' protocol
 12 |     case trace, debug, info, warning, error
 13 |
    :
183 |             if #available(iOS 14.0, macCatalyst 14.0, macOS 11.0, tvOS 14.0, watchOS 7.0, visionOS 1.0, *) {
184 |                 guard let logger = self.osLogger as? Logger else { return }
185 |                 switch level {
    |                        `- warning: capture of 'level' with non-sendable type 'Level' in a '@Sendable' closure
186 |                 case .trace, .debug:
187 |                     logger.debug("\(result)")
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Theme.swift:67:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
 10 | open class Themes {}
 11 |
 12 | open class Theme: Themes {
    |            `- note: class 'Theme' does not conform to the 'Sendable' protocol
 13 |     /// The theme colors.
 14 |     var colors: [Level: String]
    :
 65 |
 66 | extension Themes {
 67 |     public static let `default` = Theme(
    |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 68 |         trace: "#C8C8C8",
 69 |         debug: "#0000FF",
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Theme.swift:75:23: warning: static property 'dusk' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
 10 | open class Themes {}
 11 |
 12 | open class Theme: Themes {
    |            `- note: class 'Theme' does not conform to the 'Sendable' protocol
 13 |     /// The theme colors.
 14 |     var colors: [Level: String]
    :
 73 |     )
 74 |
 75 |     public static let dusk = Theme(
    |                       |- warning: static property 'dusk' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'dusk' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 76 |         trace: "#FFFFFF",
 77 |         debug: "#526EDA",
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Theme.swift:83:23: warning: static property 'midnight' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
 10 | open class Themes {}
 11 |
 12 | open class Theme: Themes {
    |            `- note: class 'Theme' does not conform to the 'Sendable' protocol
 13 |     /// The theme colors.
 14 |     var colors: [Level: String]
    :
 81 |     )
 82 |
 83 |     public static let midnight = Theme(
    |                       |- warning: static property 'midnight' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'midnight' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 84 |         trace: "#FFFFFF",
 85 |         debug: "#527EFF",
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Theme.swift:91:23: warning: static property 'tomorrow' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
 10 | open class Themes {}
 11 |
 12 | open class Theme: Themes {
    |            `- note: class 'Theme' does not conform to the 'Sendable' protocol
 13 |     /// The theme colors.
 14 |     var colors: [Level: String]
    :
 89 |     )
 90 |
 91 |     public static let tomorrow = Theme(
    |                       |- warning: static property 'tomorrow' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'tomorrow' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 92 |         trace: "#4D4D4C",
 93 |         debug: "#4271AE",
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Theme.swift:99:23: warning: static property 'tomorrowNight' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
 10 | open class Themes {}
 11 |
 12 | open class Theme: Themes {
    |            `- note: class 'Theme' does not conform to the 'Sendable' protocol
 13 |     /// The theme colors.
 14 |     var colors: [Level: String]
    :
 97 |     )
 98 |
 99 |     public static let tomorrowNight = Theme(
    |                       |- warning: static property 'tomorrowNight' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'tomorrowNight' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
100 |         trace: "#C5C8C6",
101 |         debug: "#81A2BE",
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Theme.swift:107:23: warning: static property 'tomorrowNightEighties' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
 10 | open class Themes {}
 11 |
 12 | open class Theme: Themes {
    |            `- note: class 'Theme' does not conform to the 'Sendable' protocol
 13 |     /// The theme colors.
 14 |     var colors: [Level: String]
    :
105 |     )
106 |
107 |     public static let tomorrowNightEighties = Theme(
    |                       |- warning: static property 'tomorrowNightEighties' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'tomorrowNightEighties' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
108 |         trace: "#CCCCCC",
109 |         debug: "#6699CC",
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Theme.swift:115:23: warning: static property 'tomorrowNightBright' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
 10 | open class Themes {}
 11 |
 12 | open class Theme: Themes {
    |            `- note: class 'Theme' does not conform to the 'Sendable' protocol
 13 |     /// The theme colors.
 14 |     var colors: [Level: String]
    :
113 |     )
114 |
115 |     public static let tomorrowNightBright = Theme(
    |                       |- warning: static property 'tomorrowNightBright' is not concurrency-safe because non-'Sendable' type 'Theme' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'tomorrowNightBright' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
116 |         trace: "#EAEAEA",
117 |         debug: "#7AA6DA",
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/LoggingManager/Theme.swift:56:17: warning: 'scanHexInt32' was deprecated in macOS 10.15
 54 |
 55 |         scanner.charactersToBeSkipped = CharacterSet(charactersIn: "#")
 56 |         scanner.scanHexInt32(&hex)
    |                 `- warning: 'scanHexInt32' was deprecated in macOS 10.15
 57 |
 58 |         let r = (hex & 0xFF0000) >> 16
[19/40] Compiling GrowthBook GlobalContext.swift
[20/40] Compiling GrowthBook RemoteEvalModel.swift
[21/40] Compiling GrowthBook StickyAssignmentsDocument.swift
[22/40] Compiling GrowthBook EventHandler.swift
[23/40] Compiling GrowthBook SSEHandler.swift
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Network/SSEHandler.swift:9:7: warning: non-final class 'SSEHandler' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
  7 | }
  8 |
  9 | class SSEHandler: NSObject, URLSessionDataDelegate {
    |       `- warning: non-final class 'SSEHandler' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
 10 |     static let DefaultRetryTime = 1000
 11 |     public let url: URL
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Network/SSEHandler.swift:12:16: warning: stored property 'lastEventId' of 'Sendable'-conforming class 'SSEHandler' is mutable; this is an error in the Swift 6 language mode
 10 |     static let DefaultRetryTime = 1000
 11 |     public let url: URL
 12 |     public var lastEventId: String?
    |                `- warning: stored property 'lastEventId' of 'Sendable'-conforming class 'SSEHandler' is mutable; this is an error in the Swift 6 language mode
 13 |     public var retryTime = SSEHandler.DefaultRetryTime
 14 |     public var headers: [String: String]
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Network/SSEHandler.swift:156:35: warning: capture of 'eventHandler' with non-sendable type '(String?, String?, String?) -> Void' in a '@Sendable' closure
154 |
155 |             if let eventName = event.event, let eventHandler = eventListeners[eventName] {
156 |                 mainQueue.async { eventHandler(event.id, event.event, event.data) }
    |                                   |- warning: capture of 'eventHandler' with non-sendable type '(String?, String?, String?) -> Void' in a '@Sendable' closure
    |                                   `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
157 |             }
158 |         }
[24/40] Compiling GrowthBook StickyBucketService.swift
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Network/SSEHandler.swift:9:7: warning: non-final class 'SSEHandler' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
  7 | }
  8 |
  9 | class SSEHandler: NSObject, URLSessionDataDelegate {
    |       `- warning: non-final class 'SSEHandler' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
 10 |     static let DefaultRetryTime = 1000
 11 |     public let url: URL
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Network/SSEHandler.swift:12:16: warning: stored property 'lastEventId' of 'Sendable'-conforming class 'SSEHandler' is mutable; this is an error in the Swift 6 language mode
 10 |     static let DefaultRetryTime = 1000
 11 |     public let url: URL
 12 |     public var lastEventId: String?
    |                `- warning: stored property 'lastEventId' of 'Sendable'-conforming class 'SSEHandler' is mutable; this is an error in the Swift 6 language mode
 13 |     public var retryTime = SSEHandler.DefaultRetryTime
 14 |     public var headers: [String: String]
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Network/SSEHandler.swift:156:35: warning: capture of 'eventHandler' with non-sendable type '(String?, String?, String?) -> Void' in a '@Sendable' closure
154 |
155 |             if let eventName = event.event, let eventHandler = eventListeners[eventName] {
156 |                 mainQueue.async { eventHandler(event.id, event.event, event.data) }
    |                                   |- warning: capture of 'eventHandler' with non-sendable type '(String?, String?, String?) -> Void' in a '@Sendable' closure
    |                                   `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
157 |             }
158 |         }
[25/40] Compiling GrowthBook Common.swift
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Network/SSEHandler.swift:9:7: warning: non-final class 'SSEHandler' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
  7 | }
  8 |
  9 | class SSEHandler: NSObject, URLSessionDataDelegate {
    |       `- warning: non-final class 'SSEHandler' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
 10 |     static let DefaultRetryTime = 1000
 11 |     public let url: URL
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Network/SSEHandler.swift:12:16: warning: stored property 'lastEventId' of 'Sendable'-conforming class 'SSEHandler' is mutable; this is an error in the Swift 6 language mode
 10 |     static let DefaultRetryTime = 1000
 11 |     public let url: URL
 12 |     public var lastEventId: String?
    |                `- warning: stored property 'lastEventId' of 'Sendable'-conforming class 'SSEHandler' is mutable; this is an error in the Swift 6 language mode
 13 |     public var retryTime = SSEHandler.DefaultRetryTime
 14 |     public var headers: [String: String]
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Network/SSEHandler.swift:156:35: warning: capture of 'eventHandler' with non-sendable type '(String?, String?, String?) -> Void' in a '@Sendable' closure
154 |
155 |             if let eventName = event.event, let eventHandler = eventListeners[eventName] {
156 |                 mainQueue.async { eventHandler(event.id, event.event, event.data) }
    |                                   |- warning: capture of 'eventHandler' with non-sendable type '(String?, String?, String?) -> Void' in a '@Sendable' closure
    |                                   `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
157 |             }
158 |         }
[26/40] Compiling GrowthBook ExperimentHelper.swift
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Evaluators/ExperimentHelper.swift:4:16: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'ExperimentHelper' may have shared mutable state; this is an error in the Swift 6 language mode
 1 | import Foundation
 2 |
 3 | internal class ExperimentHelper {
   |                `- note: class 'ExperimentHelper' does not conform to the 'Sendable' protocol
 4 |     static let shared = ExperimentHelper()
   |                |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'ExperimentHelper' may have shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 5 |
 6 |     private var trackedExperiments: Set<String> = Set<String>()
[27/40] Compiling GrowthBook FeatureEvaluator.swift
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Evaluators/ExperimentHelper.swift:4:16: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'ExperimentHelper' may have shared mutable state; this is an error in the Swift 6 language mode
 1 | import Foundation
 2 |
 3 | internal class ExperimentHelper {
   |                `- note: class 'ExperimentHelper' does not conform to the 'Sendable' protocol
 4 |     static let shared = ExperimentHelper()
   |                |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'ExperimentHelper' may have shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 5 |
 6 |     private var trackedExperiments: Set<String> = Set<String>()
[28/40] Compiling GrowthBook FeaturesDataModel.swift
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Evaluators/ExperimentHelper.swift:4:16: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'ExperimentHelper' may have shared mutable state; this is an error in the Swift 6 language mode
 1 | import Foundation
 2 |
 3 | internal class ExperimentHelper {
   |                `- note: class 'ExperimentHelper' does not conform to the 'Sendable' protocol
 4 |     static let shared = ExperimentHelper()
   |                |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'ExperimentHelper' may have shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 5 |
 6 |     private var trackedExperiments: Set<String> = Set<String>()
[29/40] Compiling GrowthBook FeaturesDataSource.swift
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Evaluators/ExperimentHelper.swift:4:16: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'ExperimentHelper' may have shared mutable state; this is an error in the Swift 6 language mode
 1 | import Foundation
 2 |
 3 | internal class ExperimentHelper {
   |                `- note: class 'ExperimentHelper' does not conform to the 'Sendable' protocol
 4 |     static let shared = ExperimentHelper()
   |                |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'ExperimentHelper' may have shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 5 |
 6 |     private var trackedExperiments: Set<String> = Set<String>()
[30/40] Compiling GrowthBook Constants.swift
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Utils/Constants.swift:104:16: warning: stored property 'code' of 'Sendable'-conforming class 'SDKError' has non-sendable type 'SDKErrorCode'; this is an error in the Swift 6 language mode
 80 | }
 81 |
 82 | public enum SDKErrorCode: String {
    |             `- note: consider making enum 'SDKErrorCode' conform to the 'Sendable' protocol
 83 |     case failedToLoadData
 84 |     case failedParsedData
    :
102 |     static func failedToFetchData(_ error: Error?) -> SDKError { .init(code: .failedToFetchData, underlying: error) }
103 |
104 |     public let code: SDKErrorCode
    |                `- warning: stored property 'code' of 'Sendable'-conforming class 'SDKError' has non-sendable type 'SDKErrorCode'; this is an error in the Swift 6 language mode
105 |     public let underlying: Error?
106 |
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Utils/DecryptionUtils.swift:91:7: warning: non-final class 'DecryptionException' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
89 | }
90 |
91 | class DecryptionException: Error {
   |       `- warning: non-final class 'DecryptionException' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
92 |     let errorMessage: String
93 |
[31/40] Compiling GrowthBook Crypto.swift
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Utils/Constants.swift:104:16: warning: stored property 'code' of 'Sendable'-conforming class 'SDKError' has non-sendable type 'SDKErrorCode'; this is an error in the Swift 6 language mode
 80 | }
 81 |
 82 | public enum SDKErrorCode: String {
    |             `- note: consider making enum 'SDKErrorCode' conform to the 'Sendable' protocol
 83 |     case failedToLoadData
 84 |     case failedParsedData
    :
102 |     static func failedToFetchData(_ error: Error?) -> SDKError { .init(code: .failedToFetchData, underlying: error) }
103 |
104 |     public let code: SDKErrorCode
    |                `- warning: stored property 'code' of 'Sendable'-conforming class 'SDKError' has non-sendable type 'SDKErrorCode'; this is an error in the Swift 6 language mode
105 |     public let underlying: Error?
106 |
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Utils/DecryptionUtils.swift:91:7: warning: non-final class 'DecryptionException' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
89 | }
90 |
91 | class DecryptionException: Error {
   |       `- warning: non-final class 'DecryptionException' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
92 |     let errorMessage: String
93 |
[32/40] Compiling GrowthBook DecryptionUtils.swift
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Utils/Constants.swift:104:16: warning: stored property 'code' of 'Sendable'-conforming class 'SDKError' has non-sendable type 'SDKErrorCode'; this is an error in the Swift 6 language mode
 80 | }
 81 |
 82 | public enum SDKErrorCode: String {
    |             `- note: consider making enum 'SDKErrorCode' conform to the 'Sendable' protocol
 83 |     case failedToLoadData
 84 |     case failedParsedData
    :
102 |     static func failedToFetchData(_ error: Error?) -> SDKError { .init(code: .failedToFetchData, underlying: error) }
103 |
104 |     public let code: SDKErrorCode
    |                `- warning: stored property 'code' of 'Sendable'-conforming class 'SDKError' has non-sendable type 'SDKErrorCode'; this is an error in the Swift 6 language mode
105 |     public let underlying: Error?
106 |
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Utils/DecryptionUtils.swift:91:7: warning: non-final class 'DecryptionException' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
89 | }
90 |
91 | class DecryptionException: Error {
   |       `- warning: non-final class 'DecryptionException' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
92 |     let errorMessage: String
93 |
[33/40] Compiling GrowthBook EvaluationData.swift
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:4:20: warning: non-final class 'Feature' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
  2 |
  3 | /// A Feature object consists of possible values plus rules for how to assign values to users.
  4 | @objc public class Feature: NSObject, Codable, Sendable {
    |                    `- warning: non-final class 'Feature' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
  5 |     /// The default value (should use null if not specified)
  6 |     public let defaultValue: JSON?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:6:16: warning: stored property 'defaultValue' of 'Sendable'-conforming class 'Feature' has non-sendable type 'JSON?'; this is an error in the Swift 6 language mode
  4 | @objc public class Feature: NSObject, Codable, Sendable {
  5 |     /// The default value (should use null if not specified)
  6 |     public let defaultValue: JSON?
    |                `- warning: stored property 'defaultValue' of 'Sendable'-conforming class 'Feature' has non-sendable type 'JSON?'; this is an error in the Swift 6 language mode
  7 |     /// Array of Rule objects that determine when and how the defaultValue gets overridden
  8 |     public let rules: [FeatureRule]?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/JsonManager/JsonManager.swift:53:15: note: consider making struct 'JSON' conform to the 'Sendable' protocol
  51 | // MARK: - JSON Base
  52 |
  53 | public struct JSON {
     |               `- note: consider making struct 'JSON' conform to the 'Sendable' protocol
  54 |
  55 |     /**
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:29:16: warning: stored property 'condition' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type 'JSON?'; this is an error in the Swift 6 language mode
 27 |     public let id: String?
 28 |     /// Optional targeting condition
 29 |     public let condition: JSON?
    |                `- warning: stored property 'condition' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type 'JSON?'; this is an error in the Swift 6 language mode
 30 |     /// Each item defines a prerequisite where a `condition` must evaluate against a parent feature's value (identified by `id`). If `gate` is true, then this is a blocking feature-level prerequisite; otherwise it applies to the current rule only.
 31 |     public let parentConditions: [ParentConditionInterface]?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/JsonManager/JsonManager.swift:53:15: note: consider making struct 'JSON' conform to the 'Sendable' protocol
  51 | // MARK: - JSON Base
  52 |
  53 | public struct JSON {
     |               `- note: consider making struct 'JSON' conform to the 'Sendable' protocol
  54 |
  55 |     /**
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:31:16: warning: stored property 'parentConditions' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[ParentConditionInterface]?'; this is an error in the Swift 6 language mode
 29 |     public let condition: JSON?
 30 |     /// Each item defines a prerequisite where a `condition` must evaluate against a parent feature's value (identified by `id`). If `gate` is true, then this is a blocking feature-level prerequisite; otherwise it applies to the current rule only.
 31 |     public let parentConditions: [ParentConditionInterface]?
    |                `- warning: stored property 'parentConditions' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[ParentConditionInterface]?'; this is an error in the Swift 6 language mode
 32 |     /// What percent of users should be included in the experiment (between 0 and 1, inclusive)
 33 |     public let coverage: Float?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Utils/Constants.swift:19:15: note: consider making struct 'ParentConditionInterface' conform to the 'Sendable' protocol
 17 | typealias Condition = JSON
 18 |
 19 | public struct ParentConditionInterface: Codable {
    |               `- note: consider making struct 'ParentConditionInterface' conform to the 'Sendable' protocol
 20 |     public let id: String
 21 |     public let condition: JSON
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:35:16: warning: stored property 'force' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type 'JSON?'; this is an error in the Swift 6 language mode
 33 |     public let coverage: Float?
 34 |     /// Immediately force a specific value (ignore every other option besides condition and coverage)
 35 |     public let force: JSON?
    |                `- warning: stored property 'force' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type 'JSON?'; this is an error in the Swift 6 language mode
 36 |     /// Run an experiment (A/B test) and randomly choose between these variations
 37 |     public let variations: [JSON]?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/JsonManager/JsonManager.swift:53:15: note: consider making struct 'JSON' conform to the 'Sendable' protocol
  51 | // MARK: - JSON Base
  52 |
  53 | public struct JSON {
     |               `- note: consider making struct 'JSON' conform to the 'Sendable' protocol
  54 |
  55 |     /**
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:37:16: warning: stored property 'variations' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[JSON]?'; this is an error in the Swift 6 language mode
 35 |     public let force: JSON?
 36 |     /// Run an experiment (A/B test) and randomly choose between these variations
 37 |     public let variations: [JSON]?
    |                `- warning: stored property 'variations' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[JSON]?'; this is an error in the Swift 6 language mode
 38 |     /// The globally unique tracking key for the experiment (default to the feature key)
 39 |     public let key: String?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/JsonManager/JsonManager.swift:53:15: note: consider making struct 'JSON' conform to the 'Sendable' protocol
  51 | // MARK: - JSON Base
  52 |
  53 | public struct JSON {
     |               `- note: consider making struct 'JSON' conform to the 'Sendable' protocol
  54 |
  55 |     /**
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:43:16: warning: stored property 'namespace' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[JSON]?'; this is an error in the Swift 6 language mode
 41 |     public let weights: [Float]?
 42 |     /// A tuple that contains the namespace identifier, plus a range of coverage for the experiment.
 43 |     public let namespace: [JSON]?
    |                `- warning: stored property 'namespace' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[JSON]?'; this is an error in the Swift 6 language mode
 44 |     /// What user attribute should be used to assign variations (defaults to id)
 45 |     public let hashAttribute: String?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/JsonManager/JsonManager.swift:53:15: note: consider making struct 'JSON' conform to the 'Sendable' protocol
  51 | // MARK: - JSON Base
  52 |
  53 | public struct JSON {
     |               `- note: consider making struct 'JSON' conform to the 'Sendable' protocol
  54 |
  55 |     /**
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:57:16: warning: stored property 'range' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type 'BucketRange?'; this is an error in the Swift 6 language mode
 55 |     public let minBucketVersion: Int?
 56 |     /// A more precise version of `coverage`
 57 |     public let range: BucketRange?
    |                `- warning: stored property 'range' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type 'BucketRange?'; this is an error in the Swift 6 language mode
 58 |     /// Ranges for experiment variations
 59 |     public let ranges: [BucketRange]?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Utils/Constants.swift:48:15: note: consider making struct 'BucketRange' conform to the 'Sendable' protocol
 46 |
 47 | /// Double Struct for GrowthBook Ranges
 48 | public struct BucketRange: Codable {
    |               `- note: consider making struct 'BucketRange' conform to the 'Sendable' protocol
 49 |     let number1: Float
 50 |     let number2: Float
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:59:16: warning: stored property 'ranges' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[BucketRange]?'; this is an error in the Swift 6 language mode
 57 |     public let range: BucketRange?
 58 |     /// Ranges for experiment variations
 59 |     public let ranges: [BucketRange]?
    |                `- warning: stored property 'ranges' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[BucketRange]?'; this is an error in the Swift 6 language mode
 60 |     /// Meta info about the experiment variations
 61 |     public let meta: [VariationMeta]?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Utils/Constants.swift:48:15: note: consider making struct 'BucketRange' conform to the 'Sendable' protocol
 46 |
 47 | /// Double Struct for GrowthBook Ranges
 48 | public struct BucketRange: Codable {
    |               `- note: consider making struct 'BucketRange' conform to the 'Sendable' protocol
 49 |     let number1: Float
 50 |     let number2: Float
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:61:16: warning: stored property 'meta' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[VariationMeta]?'; this is an error in the Swift 6 language mode
 59 |     public let ranges: [BucketRange]?
 60 |     /// Meta info about the experiment variations
 61 |     public let meta: [VariationMeta]?
    |                `- warning: stored property 'meta' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[VariationMeta]?'; this is an error in the Swift 6 language mode
 62 |     /// Array of filters to apply to the rule
 63 |     public let filters: [Filter]?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Utils/Constants.swift:114:15: note: consider making struct 'VariationMeta' conform to the 'Sendable' protocol
112 |
113 | /// Meta info about the variations
114 | public struct VariationMeta: Codable {
    |               `- note: consider making struct 'VariationMeta' conform to the 'Sendable' protocol
115 |     /// Used to implement holdout groups
116 |     let passthrough: Bool?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:63:16: warning: stored property 'filters' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[Filter]?'; this is an error in the Swift 6 language mode
 61 |     public let meta: [VariationMeta]?
 62 |     /// Array of filters to apply to the rule
 63 |     public let filters: [Filter]?
    |                `- warning: stored property 'filters' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[Filter]?'; this is an error in the Swift 6 language mode
 64 |     /// Seed to use for hashing
 65 |     public let seed: String?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Utils/Constants.swift:152:20: note: class 'Filter' does not conform to the 'Sendable' protocol
150 |
151 | /// Object used for mutual exclusion and filtering users out of experiments based on random hashes.
152 | @objc public class Filter: NSObject, Codable {
    |                    `- note: class 'Filter' does not conform to the 'Sendable' protocol
153 |     /// The attribute to use (default to `"id"`)
154 |     var attribute: String?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:71:16: warning: stored property 'tracks' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[Track]?'; this is an error in the Swift 6 language mode
 69 |     public let phase: String?
 70 |     /// Array of tracking calls to fire
 71 |     public let tracks: [Track]?
    |                `- warning: stored property 'tracks' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[Track]?'; this is an error in the Swift 6 language mode
 72 |
 73 |     init(id: String? = "", condition: Condition? = nil,
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Utils/Constants.swift:129:15: note: consider making struct 'Track' conform to the 'Sendable' protocol
127 | }
128 |
129 | public struct Track: Codable {
    |               `- note: consider making struct 'Track' conform to the 'Sendable' protocol
130 |     public let experiment: Experiment?
131 |     public let result: ExperimentResult?
[34/40] Compiling GrowthBook Experiment.swift
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:4:20: warning: non-final class 'Feature' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
  2 |
  3 | /// A Feature object consists of possible values plus rules for how to assign values to users.
  4 | @objc public class Feature: NSObject, Codable, Sendable {
    |                    `- warning: non-final class 'Feature' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
  5 |     /// The default value (should use null if not specified)
  6 |     public let defaultValue: JSON?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:6:16: warning: stored property 'defaultValue' of 'Sendable'-conforming class 'Feature' has non-sendable type 'JSON?'; this is an error in the Swift 6 language mode
  4 | @objc public class Feature: NSObject, Codable, Sendable {
  5 |     /// The default value (should use null if not specified)
  6 |     public let defaultValue: JSON?
    |                `- warning: stored property 'defaultValue' of 'Sendable'-conforming class 'Feature' has non-sendable type 'JSON?'; this is an error in the Swift 6 language mode
  7 |     /// Array of Rule objects that determine when and how the defaultValue gets overridden
  8 |     public let rules: [FeatureRule]?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/JsonManager/JsonManager.swift:53:15: note: consider making struct 'JSON' conform to the 'Sendable' protocol
  51 | // MARK: - JSON Base
  52 |
  53 | public struct JSON {
     |               `- note: consider making struct 'JSON' conform to the 'Sendable' protocol
  54 |
  55 |     /**
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:29:16: warning: stored property 'condition' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type 'JSON?'; this is an error in the Swift 6 language mode
 27 |     public let id: String?
 28 |     /// Optional targeting condition
 29 |     public let condition: JSON?
    |                `- warning: stored property 'condition' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type 'JSON?'; this is an error in the Swift 6 language mode
 30 |     /// Each item defines a prerequisite where a `condition` must evaluate against a parent feature's value (identified by `id`). If `gate` is true, then this is a blocking feature-level prerequisite; otherwise it applies to the current rule only.
 31 |     public let parentConditions: [ParentConditionInterface]?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/JsonManager/JsonManager.swift:53:15: note: consider making struct 'JSON' conform to the 'Sendable' protocol
  51 | // MARK: - JSON Base
  52 |
  53 | public struct JSON {
     |               `- note: consider making struct 'JSON' conform to the 'Sendable' protocol
  54 |
  55 |     /**
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:31:16: warning: stored property 'parentConditions' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[ParentConditionInterface]?'; this is an error in the Swift 6 language mode
 29 |     public let condition: JSON?
 30 |     /// Each item defines a prerequisite where a `condition` must evaluate against a parent feature's value (identified by `id`). If `gate` is true, then this is a blocking feature-level prerequisite; otherwise it applies to the current rule only.
 31 |     public let parentConditions: [ParentConditionInterface]?
    |                `- warning: stored property 'parentConditions' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[ParentConditionInterface]?'; this is an error in the Swift 6 language mode
 32 |     /// What percent of users should be included in the experiment (between 0 and 1, inclusive)
 33 |     public let coverage: Float?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Utils/Constants.swift:19:15: note: consider making struct 'ParentConditionInterface' conform to the 'Sendable' protocol
 17 | typealias Condition = JSON
 18 |
 19 | public struct ParentConditionInterface: Codable {
    |               `- note: consider making struct 'ParentConditionInterface' conform to the 'Sendable' protocol
 20 |     public let id: String
 21 |     public let condition: JSON
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:35:16: warning: stored property 'force' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type 'JSON?'; this is an error in the Swift 6 language mode
 33 |     public let coverage: Float?
 34 |     /// Immediately force a specific value (ignore every other option besides condition and coverage)
 35 |     public let force: JSON?
    |                `- warning: stored property 'force' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type 'JSON?'; this is an error in the Swift 6 language mode
 36 |     /// Run an experiment (A/B test) and randomly choose between these variations
 37 |     public let variations: [JSON]?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/JsonManager/JsonManager.swift:53:15: note: consider making struct 'JSON' conform to the 'Sendable' protocol
  51 | // MARK: - JSON Base
  52 |
  53 | public struct JSON {
     |               `- note: consider making struct 'JSON' conform to the 'Sendable' protocol
  54 |
  55 |     /**
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:37:16: warning: stored property 'variations' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[JSON]?'; this is an error in the Swift 6 language mode
 35 |     public let force: JSON?
 36 |     /// Run an experiment (A/B test) and randomly choose between these variations
 37 |     public let variations: [JSON]?
    |                `- warning: stored property 'variations' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[JSON]?'; this is an error in the Swift 6 language mode
 38 |     /// The globally unique tracking key for the experiment (default to the feature key)
 39 |     public let key: String?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/JsonManager/JsonManager.swift:53:15: note: consider making struct 'JSON' conform to the 'Sendable' protocol
  51 | // MARK: - JSON Base
  52 |
  53 | public struct JSON {
     |               `- note: consider making struct 'JSON' conform to the 'Sendable' protocol
  54 |
  55 |     /**
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:43:16: warning: stored property 'namespace' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[JSON]?'; this is an error in the Swift 6 language mode
 41 |     public let weights: [Float]?
 42 |     /// A tuple that contains the namespace identifier, plus a range of coverage for the experiment.
 43 |     public let namespace: [JSON]?
    |                `- warning: stored property 'namespace' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[JSON]?'; this is an error in the Swift 6 language mode
 44 |     /// What user attribute should be used to assign variations (defaults to id)
 45 |     public let hashAttribute: String?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/JsonManager/JsonManager.swift:53:15: note: consider making struct 'JSON' conform to the 'Sendable' protocol
  51 | // MARK: - JSON Base
  52 |
  53 | public struct JSON {
     |               `- note: consider making struct 'JSON' conform to the 'Sendable' protocol
  54 |
  55 |     /**
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:57:16: warning: stored property 'range' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type 'BucketRange?'; this is an error in the Swift 6 language mode
 55 |     public let minBucketVersion: Int?
 56 |     /// A more precise version of `coverage`
 57 |     public let range: BucketRange?
    |                `- warning: stored property 'range' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type 'BucketRange?'; this is an error in the Swift 6 language mode
 58 |     /// Ranges for experiment variations
 59 |     public let ranges: [BucketRange]?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Utils/Constants.swift:48:15: note: consider making struct 'BucketRange' conform to the 'Sendable' protocol
 46 |
 47 | /// Double Struct for GrowthBook Ranges
 48 | public struct BucketRange: Codable {
    |               `- note: consider making struct 'BucketRange' conform to the 'Sendable' protocol
 49 |     let number1: Float
 50 |     let number2: Float
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:59:16: warning: stored property 'ranges' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[BucketRange]?'; this is an error in the Swift 6 language mode
 57 |     public let range: BucketRange?
 58 |     /// Ranges for experiment variations
 59 |     public let ranges: [BucketRange]?
    |                `- warning: stored property 'ranges' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[BucketRange]?'; this is an error in the Swift 6 language mode
 60 |     /// Meta info about the experiment variations
 61 |     public let meta: [VariationMeta]?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Utils/Constants.swift:48:15: note: consider making struct 'BucketRange' conform to the 'Sendable' protocol
 46 |
 47 | /// Double Struct for GrowthBook Ranges
 48 | public struct BucketRange: Codable {
    |               `- note: consider making struct 'BucketRange' conform to the 'Sendable' protocol
 49 |     let number1: Float
 50 |     let number2: Float
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:61:16: warning: stored property 'meta' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[VariationMeta]?'; this is an error in the Swift 6 language mode
 59 |     public let ranges: [BucketRange]?
 60 |     /// Meta info about the experiment variations
 61 |     public let meta: [VariationMeta]?
    |                `- warning: stored property 'meta' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[VariationMeta]?'; this is an error in the Swift 6 language mode
 62 |     /// Array of filters to apply to the rule
 63 |     public let filters: [Filter]?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Utils/Constants.swift:114:15: note: consider making struct 'VariationMeta' conform to the 'Sendable' protocol
112 |
113 | /// Meta info about the variations
114 | public struct VariationMeta: Codable {
    |               `- note: consider making struct 'VariationMeta' conform to the 'Sendable' protocol
115 |     /// Used to implement holdout groups
116 |     let passthrough: Bool?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:63:16: warning: stored property 'filters' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[Filter]?'; this is an error in the Swift 6 language mode
 61 |     public let meta: [VariationMeta]?
 62 |     /// Array of filters to apply to the rule
 63 |     public let filters: [Filter]?
    |                `- warning: stored property 'filters' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[Filter]?'; this is an error in the Swift 6 language mode
 64 |     /// Seed to use for hashing
 65 |     public let seed: String?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Utils/Constants.swift:152:20: note: class 'Filter' does not conform to the 'Sendable' protocol
150 |
151 | /// Object used for mutual exclusion and filtering users out of experiments based on random hashes.
152 | @objc public class Filter: NSObject, Codable {
    |                    `- note: class 'Filter' does not conform to the 'Sendable' protocol
153 |     /// The attribute to use (default to `"id"`)
154 |     var attribute: String?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:71:16: warning: stored property 'tracks' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[Track]?'; this is an error in the Swift 6 language mode
 69 |     public let phase: String?
 70 |     /// Array of tracking calls to fire
 71 |     public let tracks: [Track]?
    |                `- warning: stored property 'tracks' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[Track]?'; this is an error in the Swift 6 language mode
 72 |
 73 |     init(id: String? = "", condition: Condition? = nil,
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Utils/Constants.swift:129:15: note: consider making struct 'Track' conform to the 'Sendable' protocol
127 | }
128 |
129 | public struct Track: Codable {
    |               `- note: consider making struct 'Track' conform to the 'Sendable' protocol
130 |     public let experiment: Experiment?
131 |     public let result: ExperimentResult?
[35/40] Compiling GrowthBook Feature.swift
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:4:20: warning: non-final class 'Feature' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
  2 |
  3 | /// A Feature object consists of possible values plus rules for how to assign values to users.
  4 | @objc public class Feature: NSObject, Codable, Sendable {
    |                    `- warning: non-final class 'Feature' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
  5 |     /// The default value (should use null if not specified)
  6 |     public let defaultValue: JSON?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:6:16: warning: stored property 'defaultValue' of 'Sendable'-conforming class 'Feature' has non-sendable type 'JSON?'; this is an error in the Swift 6 language mode
  4 | @objc public class Feature: NSObject, Codable, Sendable {
  5 |     /// The default value (should use null if not specified)
  6 |     public let defaultValue: JSON?
    |                `- warning: stored property 'defaultValue' of 'Sendable'-conforming class 'Feature' has non-sendable type 'JSON?'; this is an error in the Swift 6 language mode
  7 |     /// Array of Rule objects that determine when and how the defaultValue gets overridden
  8 |     public let rules: [FeatureRule]?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/JsonManager/JsonManager.swift:53:15: note: consider making struct 'JSON' conform to the 'Sendable' protocol
  51 | // MARK: - JSON Base
  52 |
  53 | public struct JSON {
     |               `- note: consider making struct 'JSON' conform to the 'Sendable' protocol
  54 |
  55 |     /**
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:29:16: warning: stored property 'condition' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type 'JSON?'; this is an error in the Swift 6 language mode
 27 |     public let id: String?
 28 |     /// Optional targeting condition
 29 |     public let condition: JSON?
    |                `- warning: stored property 'condition' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type 'JSON?'; this is an error in the Swift 6 language mode
 30 |     /// Each item defines a prerequisite where a `condition` must evaluate against a parent feature's value (identified by `id`). If `gate` is true, then this is a blocking feature-level prerequisite; otherwise it applies to the current rule only.
 31 |     public let parentConditions: [ParentConditionInterface]?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/JsonManager/JsonManager.swift:53:15: note: consider making struct 'JSON' conform to the 'Sendable' protocol
  51 | // MARK: - JSON Base
  52 |
  53 | public struct JSON {
     |               `- note: consider making struct 'JSON' conform to the 'Sendable' protocol
  54 |
  55 |     /**
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:31:16: warning: stored property 'parentConditions' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[ParentConditionInterface]?'; this is an error in the Swift 6 language mode
 29 |     public let condition: JSON?
 30 |     /// Each item defines a prerequisite where a `condition` must evaluate against a parent feature's value (identified by `id`). If `gate` is true, then this is a blocking feature-level prerequisite; otherwise it applies to the current rule only.
 31 |     public let parentConditions: [ParentConditionInterface]?
    |                `- warning: stored property 'parentConditions' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[ParentConditionInterface]?'; this is an error in the Swift 6 language mode
 32 |     /// What percent of users should be included in the experiment (between 0 and 1, inclusive)
 33 |     public let coverage: Float?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Utils/Constants.swift:19:15: note: consider making struct 'ParentConditionInterface' conform to the 'Sendable' protocol
 17 | typealias Condition = JSON
 18 |
 19 | public struct ParentConditionInterface: Codable {
    |               `- note: consider making struct 'ParentConditionInterface' conform to the 'Sendable' protocol
 20 |     public let id: String
 21 |     public let condition: JSON
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:35:16: warning: stored property 'force' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type 'JSON?'; this is an error in the Swift 6 language mode
 33 |     public let coverage: Float?
 34 |     /// Immediately force a specific value (ignore every other option besides condition and coverage)
 35 |     public let force: JSON?
    |                `- warning: stored property 'force' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type 'JSON?'; this is an error in the Swift 6 language mode
 36 |     /// Run an experiment (A/B test) and randomly choose between these variations
 37 |     public let variations: [JSON]?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/JsonManager/JsonManager.swift:53:15: note: consider making struct 'JSON' conform to the 'Sendable' protocol
  51 | // MARK: - JSON Base
  52 |
  53 | public struct JSON {
     |               `- note: consider making struct 'JSON' conform to the 'Sendable' protocol
  54 |
  55 |     /**
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:37:16: warning: stored property 'variations' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[JSON]?'; this is an error in the Swift 6 language mode
 35 |     public let force: JSON?
 36 |     /// Run an experiment (A/B test) and randomly choose between these variations
 37 |     public let variations: [JSON]?
    |                `- warning: stored property 'variations' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[JSON]?'; this is an error in the Swift 6 language mode
 38 |     /// The globally unique tracking key for the experiment (default to the feature key)
 39 |     public let key: String?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/JsonManager/JsonManager.swift:53:15: note: consider making struct 'JSON' conform to the 'Sendable' protocol
  51 | // MARK: - JSON Base
  52 |
  53 | public struct JSON {
     |               `- note: consider making struct 'JSON' conform to the 'Sendable' protocol
  54 |
  55 |     /**
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:43:16: warning: stored property 'namespace' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[JSON]?'; this is an error in the Swift 6 language mode
 41 |     public let weights: [Float]?
 42 |     /// A tuple that contains the namespace identifier, plus a range of coverage for the experiment.
 43 |     public let namespace: [JSON]?
    |                `- warning: stored property 'namespace' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[JSON]?'; this is an error in the Swift 6 language mode
 44 |     /// What user attribute should be used to assign variations (defaults to id)
 45 |     public let hashAttribute: String?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/JsonManager/JsonManager.swift:53:15: note: consider making struct 'JSON' conform to the 'Sendable' protocol
  51 | // MARK: - JSON Base
  52 |
  53 | public struct JSON {
     |               `- note: consider making struct 'JSON' conform to the 'Sendable' protocol
  54 |
  55 |     /**
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:57:16: warning: stored property 'range' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type 'BucketRange?'; this is an error in the Swift 6 language mode
 55 |     public let minBucketVersion: Int?
 56 |     /// A more precise version of `coverage`
 57 |     public let range: BucketRange?
    |                `- warning: stored property 'range' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type 'BucketRange?'; this is an error in the Swift 6 language mode
 58 |     /// Ranges for experiment variations
 59 |     public let ranges: [BucketRange]?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Utils/Constants.swift:48:15: note: consider making struct 'BucketRange' conform to the 'Sendable' protocol
 46 |
 47 | /// Double Struct for GrowthBook Ranges
 48 | public struct BucketRange: Codable {
    |               `- note: consider making struct 'BucketRange' conform to the 'Sendable' protocol
 49 |     let number1: Float
 50 |     let number2: Float
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:59:16: warning: stored property 'ranges' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[BucketRange]?'; this is an error in the Swift 6 language mode
 57 |     public let range: BucketRange?
 58 |     /// Ranges for experiment variations
 59 |     public let ranges: [BucketRange]?
    |                `- warning: stored property 'ranges' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[BucketRange]?'; this is an error in the Swift 6 language mode
 60 |     /// Meta info about the experiment variations
 61 |     public let meta: [VariationMeta]?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Utils/Constants.swift:48:15: note: consider making struct 'BucketRange' conform to the 'Sendable' protocol
 46 |
 47 | /// Double Struct for GrowthBook Ranges
 48 | public struct BucketRange: Codable {
    |               `- note: consider making struct 'BucketRange' conform to the 'Sendable' protocol
 49 |     let number1: Float
 50 |     let number2: Float
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:61:16: warning: stored property 'meta' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[VariationMeta]?'; this is an error in the Swift 6 language mode
 59 |     public let ranges: [BucketRange]?
 60 |     /// Meta info about the experiment variations
 61 |     public let meta: [VariationMeta]?
    |                `- warning: stored property 'meta' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[VariationMeta]?'; this is an error in the Swift 6 language mode
 62 |     /// Array of filters to apply to the rule
 63 |     public let filters: [Filter]?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Utils/Constants.swift:114:15: note: consider making struct 'VariationMeta' conform to the 'Sendable' protocol
112 |
113 | /// Meta info about the variations
114 | public struct VariationMeta: Codable {
    |               `- note: consider making struct 'VariationMeta' conform to the 'Sendable' protocol
115 |     /// Used to implement holdout groups
116 |     let passthrough: Bool?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:63:16: warning: stored property 'filters' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[Filter]?'; this is an error in the Swift 6 language mode
 61 |     public let meta: [VariationMeta]?
 62 |     /// Array of filters to apply to the rule
 63 |     public let filters: [Filter]?
    |                `- warning: stored property 'filters' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[Filter]?'; this is an error in the Swift 6 language mode
 64 |     /// Seed to use for hashing
 65 |     public let seed: String?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Utils/Constants.swift:152:20: note: class 'Filter' does not conform to the 'Sendable' protocol
150 |
151 | /// Object used for mutual exclusion and filtering users out of experiments based on random hashes.
152 | @objc public class Filter: NSObject, Codable {
    |                    `- note: class 'Filter' does not conform to the 'Sendable' protocol
153 |     /// The attribute to use (default to `"id"`)
154 |     var attribute: String?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:71:16: warning: stored property 'tracks' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[Track]?'; this is an error in the Swift 6 language mode
 69 |     public let phase: String?
 70 |     /// Array of tracking calls to fire
 71 |     public let tracks: [Track]?
    |                `- warning: stored property 'tracks' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[Track]?'; this is an error in the Swift 6 language mode
 72 |
 73 |     init(id: String? = "", condition: Condition? = nil,
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Utils/Constants.swift:129:15: note: consider making struct 'Track' conform to the 'Sendable' protocol
127 | }
128 |
129 | public struct Track: Codable {
    |               `- note: consider making struct 'Track' conform to the 'Sendable' protocol
130 |     public let experiment: Experiment?
131 |     public let result: ExperimentResult?
[36/40] Compiling GrowthBook GlobalConfig.swift
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:4:20: warning: non-final class 'Feature' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
  2 |
  3 | /// A Feature object consists of possible values plus rules for how to assign values to users.
  4 | @objc public class Feature: NSObject, Codable, Sendable {
    |                    `- warning: non-final class 'Feature' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
  5 |     /// The default value (should use null if not specified)
  6 |     public let defaultValue: JSON?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:6:16: warning: stored property 'defaultValue' of 'Sendable'-conforming class 'Feature' has non-sendable type 'JSON?'; this is an error in the Swift 6 language mode
  4 | @objc public class Feature: NSObject, Codable, Sendable {
  5 |     /// The default value (should use null if not specified)
  6 |     public let defaultValue: JSON?
    |                `- warning: stored property 'defaultValue' of 'Sendable'-conforming class 'Feature' has non-sendable type 'JSON?'; this is an error in the Swift 6 language mode
  7 |     /// Array of Rule objects that determine when and how the defaultValue gets overridden
  8 |     public let rules: [FeatureRule]?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/JsonManager/JsonManager.swift:53:15: note: consider making struct 'JSON' conform to the 'Sendable' protocol
  51 | // MARK: - JSON Base
  52 |
  53 | public struct JSON {
     |               `- note: consider making struct 'JSON' conform to the 'Sendable' protocol
  54 |
  55 |     /**
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:29:16: warning: stored property 'condition' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type 'JSON?'; this is an error in the Swift 6 language mode
 27 |     public let id: String?
 28 |     /// Optional targeting condition
 29 |     public let condition: JSON?
    |                `- warning: stored property 'condition' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type 'JSON?'; this is an error in the Swift 6 language mode
 30 |     /// Each item defines a prerequisite where a `condition` must evaluate against a parent feature's value (identified by `id`). If `gate` is true, then this is a blocking feature-level prerequisite; otherwise it applies to the current rule only.
 31 |     public let parentConditions: [ParentConditionInterface]?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/JsonManager/JsonManager.swift:53:15: note: consider making struct 'JSON' conform to the 'Sendable' protocol
  51 | // MARK: - JSON Base
  52 |
  53 | public struct JSON {
     |               `- note: consider making struct 'JSON' conform to the 'Sendable' protocol
  54 |
  55 |     /**
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:31:16: warning: stored property 'parentConditions' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[ParentConditionInterface]?'; this is an error in the Swift 6 language mode
 29 |     public let condition: JSON?
 30 |     /// Each item defines a prerequisite where a `condition` must evaluate against a parent feature's value (identified by `id`). If `gate` is true, then this is a blocking feature-level prerequisite; otherwise it applies to the current rule only.
 31 |     public let parentConditions: [ParentConditionInterface]?
    |                `- warning: stored property 'parentConditions' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[ParentConditionInterface]?'; this is an error in the Swift 6 language mode
 32 |     /// What percent of users should be included in the experiment (between 0 and 1, inclusive)
 33 |     public let coverage: Float?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Utils/Constants.swift:19:15: note: consider making struct 'ParentConditionInterface' conform to the 'Sendable' protocol
 17 | typealias Condition = JSON
 18 |
 19 | public struct ParentConditionInterface: Codable {
    |               `- note: consider making struct 'ParentConditionInterface' conform to the 'Sendable' protocol
 20 |     public let id: String
 21 |     public let condition: JSON
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:35:16: warning: stored property 'force' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type 'JSON?'; this is an error in the Swift 6 language mode
 33 |     public let coverage: Float?
 34 |     /// Immediately force a specific value (ignore every other option besides condition and coverage)
 35 |     public let force: JSON?
    |                `- warning: stored property 'force' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type 'JSON?'; this is an error in the Swift 6 language mode
 36 |     /// Run an experiment (A/B test) and randomly choose between these variations
 37 |     public let variations: [JSON]?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/JsonManager/JsonManager.swift:53:15: note: consider making struct 'JSON' conform to the 'Sendable' protocol
  51 | // MARK: - JSON Base
  52 |
  53 | public struct JSON {
     |               `- note: consider making struct 'JSON' conform to the 'Sendable' protocol
  54 |
  55 |     /**
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:37:16: warning: stored property 'variations' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[JSON]?'; this is an error in the Swift 6 language mode
 35 |     public let force: JSON?
 36 |     /// Run an experiment (A/B test) and randomly choose between these variations
 37 |     public let variations: [JSON]?
    |                `- warning: stored property 'variations' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[JSON]?'; this is an error in the Swift 6 language mode
 38 |     /// The globally unique tracking key for the experiment (default to the feature key)
 39 |     public let key: String?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/JsonManager/JsonManager.swift:53:15: note: consider making struct 'JSON' conform to the 'Sendable' protocol
  51 | // MARK: - JSON Base
  52 |
  53 | public struct JSON {
     |               `- note: consider making struct 'JSON' conform to the 'Sendable' protocol
  54 |
  55 |     /**
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:43:16: warning: stored property 'namespace' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[JSON]?'; this is an error in the Swift 6 language mode
 41 |     public let weights: [Float]?
 42 |     /// A tuple that contains the namespace identifier, plus a range of coverage for the experiment.
 43 |     public let namespace: [JSON]?
    |                `- warning: stored property 'namespace' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[JSON]?'; this is an error in the Swift 6 language mode
 44 |     /// What user attribute should be used to assign variations (defaults to id)
 45 |     public let hashAttribute: String?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/JsonManager/JsonManager.swift:53:15: note: consider making struct 'JSON' conform to the 'Sendable' protocol
  51 | // MARK: - JSON Base
  52 |
  53 | public struct JSON {
     |               `- note: consider making struct 'JSON' conform to the 'Sendable' protocol
  54 |
  55 |     /**
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:57:16: warning: stored property 'range' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type 'BucketRange?'; this is an error in the Swift 6 language mode
 55 |     public let minBucketVersion: Int?
 56 |     /// A more precise version of `coverage`
 57 |     public let range: BucketRange?
    |                `- warning: stored property 'range' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type 'BucketRange?'; this is an error in the Swift 6 language mode
 58 |     /// Ranges for experiment variations
 59 |     public let ranges: [BucketRange]?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Utils/Constants.swift:48:15: note: consider making struct 'BucketRange' conform to the 'Sendable' protocol
 46 |
 47 | /// Double Struct for GrowthBook Ranges
 48 | public struct BucketRange: Codable {
    |               `- note: consider making struct 'BucketRange' conform to the 'Sendable' protocol
 49 |     let number1: Float
 50 |     let number2: Float
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:59:16: warning: stored property 'ranges' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[BucketRange]?'; this is an error in the Swift 6 language mode
 57 |     public let range: BucketRange?
 58 |     /// Ranges for experiment variations
 59 |     public let ranges: [BucketRange]?
    |                `- warning: stored property 'ranges' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[BucketRange]?'; this is an error in the Swift 6 language mode
 60 |     /// Meta info about the experiment variations
 61 |     public let meta: [VariationMeta]?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Utils/Constants.swift:48:15: note: consider making struct 'BucketRange' conform to the 'Sendable' protocol
 46 |
 47 | /// Double Struct for GrowthBook Ranges
 48 | public struct BucketRange: Codable {
    |               `- note: consider making struct 'BucketRange' conform to the 'Sendable' protocol
 49 |     let number1: Float
 50 |     let number2: Float
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:61:16: warning: stored property 'meta' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[VariationMeta]?'; this is an error in the Swift 6 language mode
 59 |     public let ranges: [BucketRange]?
 60 |     /// Meta info about the experiment variations
 61 |     public let meta: [VariationMeta]?
    |                `- warning: stored property 'meta' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[VariationMeta]?'; this is an error in the Swift 6 language mode
 62 |     /// Array of filters to apply to the rule
 63 |     public let filters: [Filter]?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Utils/Constants.swift:114:15: note: consider making struct 'VariationMeta' conform to the 'Sendable' protocol
112 |
113 | /// Meta info about the variations
114 | public struct VariationMeta: Codable {
    |               `- note: consider making struct 'VariationMeta' conform to the 'Sendable' protocol
115 |     /// Used to implement holdout groups
116 |     let passthrough: Bool?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:63:16: warning: stored property 'filters' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[Filter]?'; this is an error in the Swift 6 language mode
 61 |     public let meta: [VariationMeta]?
 62 |     /// Array of filters to apply to the rule
 63 |     public let filters: [Filter]?
    |                `- warning: stored property 'filters' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[Filter]?'; this is an error in the Swift 6 language mode
 64 |     /// Seed to use for hashing
 65 |     public let seed: String?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Utils/Constants.swift:152:20: note: class 'Filter' does not conform to the 'Sendable' protocol
150 |
151 | /// Object used for mutual exclusion and filtering users out of experiments based on random hashes.
152 | @objc public class Filter: NSObject, Codable {
    |                    `- note: class 'Filter' does not conform to the 'Sendable' protocol
153 |     /// The attribute to use (default to `"id"`)
154 |     var attribute: String?
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Model/Feature.swift:71:16: warning: stored property 'tracks' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[Track]?'; this is an error in the Swift 6 language mode
 69 |     public let phase: String?
 70 |     /// Array of tracking calls to fire
 71 |     public let tracks: [Track]?
    |                `- warning: stored property 'tracks' of 'Sendable'-conforming struct 'FeatureRule' has non-sendable type '[Track]?'; this is an error in the Swift 6 language mode
 72 |
 73 |     init(id: String? = "", condition: Condition? = nil,
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Utils/Constants.swift:129:15: note: consider making struct 'Track' conform to the 'Sendable' protocol
127 | }
128 |
129 | public struct Track: Codable {
    |               `- note: consider making struct 'Track' conform to the 'Sendable' protocol
130 |     public let experiment: Experiment?
131 |     public let result: ExperimentResult?
[37/40] Compiling GrowthBook EventModel.swift
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Network/NetworkClient.swift:76:17: warning: capture of 'errorResult' with non-sendable type '(any Error) -> Void' in a '@Sendable' closure
 74 |         urlSession.dataTask(with: request) { data, response, error in
 75 |             if let error = error {
 76 |                 errorResult(error)
    |                 |- warning: capture of 'errorResult' with non-sendable type '(any Error) -> Void' in a '@Sendable' closure
    |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 77 |                 return
 78 |             }
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Network/NetworkClient.swift:82:39: warning: capture of 'self' with non-sendable type 'CoreNetworkClient' in a '@Sendable' closure
  9 | }
 10 |
 11 | class CoreNetworkClient: NetworkProtocol {
    |       `- note: class 'CoreNetworkClient' does not conform to the 'Sendable' protocol
 12 |     var apiRequestHeaders: [String: String]
 13 |     var streamingHostRequestHeaders: [String: String]
    :
 80 |             if let httpResponse = response as? HTTPURLResponse {
 81 |
 82 |                 if method == "GET" && self.matchesFeaturesPattern(urlString) {
    |                                       `- warning: capture of 'self' with non-sendable type 'CoreNetworkClient' in a '@Sendable' closure
 83 |                     if #available(iOS 13.0, tvOS 13.0, watchOS 6.0, macOS 10.15, *) {
 84 |                         if let etag = httpResponse.value(forHTTPHeaderField: "ETag") {
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Network/NetworkClient.swift:122:13: warning: capture of 'successResult' with non-sendable type '(Data) -> Void' in a '@Sendable' closure
120 |             }
121 |
122 |             successResult(responseData)
    |             |- warning: capture of 'successResult' with non-sendable type '(Data) -> Void' in a '@Sendable' closure
    |             `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
123 |         }.resume()
124 |     }
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Network/NetworkClient.swift:82:39: warning: implicit capture of 'self' requires that 'CoreNetworkClient' conforms to 'Sendable'; this is an error in the Swift 6 language mode
  9 | }
 10 |
 11 | class CoreNetworkClient: NetworkProtocol {
    |       `- note: class 'CoreNetworkClient' does not conform to the 'Sendable' protocol
 12 |     var apiRequestHeaders: [String: String]
 13 |     var streamingHostRequestHeaders: [String: String]
    :
 80 |             if let httpResponse = response as? HTTPURLResponse {
 81 |
 82 |                 if method == "GET" && self.matchesFeaturesPattern(urlString) {
    |                                       `- warning: implicit capture of 'self' requires that 'CoreNetworkClient' conforms to 'Sendable'; this is an error in the Swift 6 language mode
 83 |                     if #available(iOS 13.0, tvOS 13.0, watchOS 6.0, macOS 10.15, *) {
 84 |                         if let etag = httpResponse.value(forHTTPHeaderField: "ETag") {
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Network/NetworkRetryHandler.swift:14:30: warning: capture of 'self' with non-sendable type 'NetworkRetryHandler?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 2 | import Foundation
 3 |
 4 | final class NetworkRetryHandler {
   |             `- note: class 'NetworkRetryHandler' does not conform to the 'Sendable' protocol
 5 |     private let monitor = NWPathMonitor()
 6 |     private let monitorQueue = DispatchQueue(label: "NetworkRetryQueue")
   :
12 |     init() {
13 |         monitor.pathUpdateHandler = { [weak self] path in
14 |             guard let self = self else { return }
   |                              `- warning: capture of 'self' with non-sendable type 'NetworkRetryHandler?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
15 |
16 |             if path.status == .satisfied {
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Network/NetworkRetryHandler.swift:53:17: warning: capture of 'completion' with non-sendable type '(Bool) -> Void' in a '@Sendable' closure
51 |         URLSession.shared.dataTask(with: request) { _, response, error in
52 |             if let httpResponse = response as? HTTPURLResponse, (200..<300).contains(httpResponse.statusCode) {
53 |                 completion(true)
   |                 |- warning: capture of 'completion' with non-sendable type '(Bool) -> Void' in a '@Sendable' closure
   |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
54 |             } else {
55 |                 completion(false)
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Network/NetworkRetryHandler.swift:22:29: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
20 |                         logger.info("[NetworkRetryHandler] internet became available.")
21 |                         DispatchQueue.main.async {
22 |                             self.onOnlineCallbacks.forEach { $0() }
   |                             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
   |                             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
23 |                             self.onOnlineCallbacks.removeAll()
24 |                         }
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Network/NetworkRetryHandler.swift:41:17: warning: sending 'onOnline' risks causing data races; this is an error in the Swift 6 language mode
39 |         if isInternetAvailable {
40 |             DispatchQueue.main.async {
41 |                 onOnline()
   |                 |- warning: sending 'onOnline' risks causing data races; this is an error in the Swift 6 language mode
   |                 `- note: task-isolated 'onOnline' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
42 |             }
43 |         } else {
[38/40] Compiling GrowthBook LruETagCache.swift
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Network/NetworkClient.swift:76:17: warning: capture of 'errorResult' with non-sendable type '(any Error) -> Void' in a '@Sendable' closure
 74 |         urlSession.dataTask(with: request) { data, response, error in
 75 |             if let error = error {
 76 |                 errorResult(error)
    |                 |- warning: capture of 'errorResult' with non-sendable type '(any Error) -> Void' in a '@Sendable' closure
    |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 77 |                 return
 78 |             }
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Network/NetworkClient.swift:82:39: warning: capture of 'self' with non-sendable type 'CoreNetworkClient' in a '@Sendable' closure
  9 | }
 10 |
 11 | class CoreNetworkClient: NetworkProtocol {
    |       `- note: class 'CoreNetworkClient' does not conform to the 'Sendable' protocol
 12 |     var apiRequestHeaders: [String: String]
 13 |     var streamingHostRequestHeaders: [String: String]
    :
 80 |             if let httpResponse = response as? HTTPURLResponse {
 81 |
 82 |                 if method == "GET" && self.matchesFeaturesPattern(urlString) {
    |                                       `- warning: capture of 'self' with non-sendable type 'CoreNetworkClient' in a '@Sendable' closure
 83 |                     if #available(iOS 13.0, tvOS 13.0, watchOS 6.0, macOS 10.15, *) {
 84 |                         if let etag = httpResponse.value(forHTTPHeaderField: "ETag") {
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Network/NetworkClient.swift:122:13: warning: capture of 'successResult' with non-sendable type '(Data) -> Void' in a '@Sendable' closure
120 |             }
121 |
122 |             successResult(responseData)
    |             |- warning: capture of 'successResult' with non-sendable type '(Data) -> Void' in a '@Sendable' closure
    |             `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
123 |         }.resume()
124 |     }
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Network/NetworkClient.swift:82:39: warning: implicit capture of 'self' requires that 'CoreNetworkClient' conforms to 'Sendable'; this is an error in the Swift 6 language mode
  9 | }
 10 |
 11 | class CoreNetworkClient: NetworkProtocol {
    |       `- note: class 'CoreNetworkClient' does not conform to the 'Sendable' protocol
 12 |     var apiRequestHeaders: [String: String]
 13 |     var streamingHostRequestHeaders: [String: String]
    :
 80 |             if let httpResponse = response as? HTTPURLResponse {
 81 |
 82 |                 if method == "GET" && self.matchesFeaturesPattern(urlString) {
    |                                       `- warning: implicit capture of 'self' requires that 'CoreNetworkClient' conforms to 'Sendable'; this is an error in the Swift 6 language mode
 83 |                     if #available(iOS 13.0, tvOS 13.0, watchOS 6.0, macOS 10.15, *) {
 84 |                         if let etag = httpResponse.value(forHTTPHeaderField: "ETag") {
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Network/NetworkRetryHandler.swift:14:30: warning: capture of 'self' with non-sendable type 'NetworkRetryHandler?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 2 | import Foundation
 3 |
 4 | final class NetworkRetryHandler {
   |             `- note: class 'NetworkRetryHandler' does not conform to the 'Sendable' protocol
 5 |     private let monitor = NWPathMonitor()
 6 |     private let monitorQueue = DispatchQueue(label: "NetworkRetryQueue")
   :
12 |     init() {
13 |         monitor.pathUpdateHandler = { [weak self] path in
14 |             guard let self = self else { return }
   |                              `- warning: capture of 'self' with non-sendable type 'NetworkRetryHandler?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
15 |
16 |             if path.status == .satisfied {
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Network/NetworkRetryHandler.swift:53:17: warning: capture of 'completion' with non-sendable type '(Bool) -> Void' in a '@Sendable' closure
51 |         URLSession.shared.dataTask(with: request) { _, response, error in
52 |             if let httpResponse = response as? HTTPURLResponse, (200..<300).contains(httpResponse.statusCode) {
53 |                 completion(true)
   |                 |- warning: capture of 'completion' with non-sendable type '(Bool) -> Void' in a '@Sendable' closure
   |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
54 |             } else {
55 |                 completion(false)
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Network/NetworkRetryHandler.swift:22:29: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
20 |                         logger.info("[NetworkRetryHandler] internet became available.")
21 |                         DispatchQueue.main.async {
22 |                             self.onOnlineCallbacks.forEach { $0() }
   |                             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
   |                             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
23 |                             self.onOnlineCallbacks.removeAll()
24 |                         }
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Network/NetworkRetryHandler.swift:41:17: warning: sending 'onOnline' risks causing data races; this is an error in the Swift 6 language mode
39 |         if isInternetAvailable {
40 |             DispatchQueue.main.async {
41 |                 onOnline()
   |                 |- warning: sending 'onOnline' risks causing data races; this is an error in the Swift 6 language mode
   |                 `- note: task-isolated 'onOnline' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
42 |             }
43 |         } else {
[39/40] Compiling GrowthBook NetworkClient.swift
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Network/NetworkClient.swift:76:17: warning: capture of 'errorResult' with non-sendable type '(any Error) -> Void' in a '@Sendable' closure
 74 |         urlSession.dataTask(with: request) { data, response, error in
 75 |             if let error = error {
 76 |                 errorResult(error)
    |                 |- warning: capture of 'errorResult' with non-sendable type '(any Error) -> Void' in a '@Sendable' closure
    |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 77 |                 return
 78 |             }
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Network/NetworkClient.swift:82:39: warning: capture of 'self' with non-sendable type 'CoreNetworkClient' in a '@Sendable' closure
  9 | }
 10 |
 11 | class CoreNetworkClient: NetworkProtocol {
    |       `- note: class 'CoreNetworkClient' does not conform to the 'Sendable' protocol
 12 |     var apiRequestHeaders: [String: String]
 13 |     var streamingHostRequestHeaders: [String: String]
    :
 80 |             if let httpResponse = response as? HTTPURLResponse {
 81 |
 82 |                 if method == "GET" && self.matchesFeaturesPattern(urlString) {
    |                                       `- warning: capture of 'self' with non-sendable type 'CoreNetworkClient' in a '@Sendable' closure
 83 |                     if #available(iOS 13.0, tvOS 13.0, watchOS 6.0, macOS 10.15, *) {
 84 |                         if let etag = httpResponse.value(forHTTPHeaderField: "ETag") {
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Network/NetworkClient.swift:122:13: warning: capture of 'successResult' with non-sendable type '(Data) -> Void' in a '@Sendable' closure
120 |             }
121 |
122 |             successResult(responseData)
    |             |- warning: capture of 'successResult' with non-sendable type '(Data) -> Void' in a '@Sendable' closure
    |             `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
123 |         }.resume()
124 |     }
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Network/NetworkClient.swift:82:39: warning: implicit capture of 'self' requires that 'CoreNetworkClient' conforms to 'Sendable'; this is an error in the Swift 6 language mode
  9 | }
 10 |
 11 | class CoreNetworkClient: NetworkProtocol {
    |       `- note: class 'CoreNetworkClient' does not conform to the 'Sendable' protocol
 12 |     var apiRequestHeaders: [String: String]
 13 |     var streamingHostRequestHeaders: [String: String]
    :
 80 |             if let httpResponse = response as? HTTPURLResponse {
 81 |
 82 |                 if method == "GET" && self.matchesFeaturesPattern(urlString) {
    |                                       `- warning: implicit capture of 'self' requires that 'CoreNetworkClient' conforms to 'Sendable'; this is an error in the Swift 6 language mode
 83 |                     if #available(iOS 13.0, tvOS 13.0, watchOS 6.0, macOS 10.15, *) {
 84 |                         if let etag = httpResponse.value(forHTTPHeaderField: "ETag") {
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Network/NetworkRetryHandler.swift:14:30: warning: capture of 'self' with non-sendable type 'NetworkRetryHandler?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 2 | import Foundation
 3 |
 4 | final class NetworkRetryHandler {
   |             `- note: class 'NetworkRetryHandler' does not conform to the 'Sendable' protocol
 5 |     private let monitor = NWPathMonitor()
 6 |     private let monitorQueue = DispatchQueue(label: "NetworkRetryQueue")
   :
12 |     init() {
13 |         monitor.pathUpdateHandler = { [weak self] path in
14 |             guard let self = self else { return }
   |                              `- warning: capture of 'self' with non-sendable type 'NetworkRetryHandler?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
15 |
16 |             if path.status == .satisfied {
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Network/NetworkRetryHandler.swift:53:17: warning: capture of 'completion' with non-sendable type '(Bool) -> Void' in a '@Sendable' closure
51 |         URLSession.shared.dataTask(with: request) { _, response, error in
52 |             if let httpResponse = response as? HTTPURLResponse, (200..<300).contains(httpResponse.statusCode) {
53 |                 completion(true)
   |                 |- warning: capture of 'completion' with non-sendable type '(Bool) -> Void' in a '@Sendable' closure
   |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
54 |             } else {
55 |                 completion(false)
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Network/NetworkRetryHandler.swift:22:29: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
20 |                         logger.info("[NetworkRetryHandler] internet became available.")
21 |                         DispatchQueue.main.async {
22 |                             self.onOnlineCallbacks.forEach { $0() }
   |                             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
   |                             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
23 |                             self.onOnlineCallbacks.removeAll()
24 |                         }
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Network/NetworkRetryHandler.swift:41:17: warning: sending 'onOnline' risks causing data races; this is an error in the Swift 6 language mode
39 |         if isInternetAvailable {
40 |             DispatchQueue.main.async {
41 |                 onOnline()
   |                 |- warning: sending 'onOnline' risks causing data races; this is an error in the Swift 6 language mode
   |                 `- note: task-isolated 'onOnline' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
42 |             }
43 |         } else {
[40/40] Compiling GrowthBook NetworkRetryHandler.swift
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Network/NetworkClient.swift:76:17: warning: capture of 'errorResult' with non-sendable type '(any Error) -> Void' in a '@Sendable' closure
 74 |         urlSession.dataTask(with: request) { data, response, error in
 75 |             if let error = error {
 76 |                 errorResult(error)
    |                 |- warning: capture of 'errorResult' with non-sendable type '(any Error) -> Void' in a '@Sendable' closure
    |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 77 |                 return
 78 |             }
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Network/NetworkClient.swift:82:39: warning: capture of 'self' with non-sendable type 'CoreNetworkClient' in a '@Sendable' closure
  9 | }
 10 |
 11 | class CoreNetworkClient: NetworkProtocol {
    |       `- note: class 'CoreNetworkClient' does not conform to the 'Sendable' protocol
 12 |     var apiRequestHeaders: [String: String]
 13 |     var streamingHostRequestHeaders: [String: String]
    :
 80 |             if let httpResponse = response as? HTTPURLResponse {
 81 |
 82 |                 if method == "GET" && self.matchesFeaturesPattern(urlString) {
    |                                       `- warning: capture of 'self' with non-sendable type 'CoreNetworkClient' in a '@Sendable' closure
 83 |                     if #available(iOS 13.0, tvOS 13.0, watchOS 6.0, macOS 10.15, *) {
 84 |                         if let etag = httpResponse.value(forHTTPHeaderField: "ETag") {
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Network/NetworkClient.swift:122:13: warning: capture of 'successResult' with non-sendable type '(Data) -> Void' in a '@Sendable' closure
120 |             }
121 |
122 |             successResult(responseData)
    |             |- warning: capture of 'successResult' with non-sendable type '(Data) -> Void' in a '@Sendable' closure
    |             `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
123 |         }.resume()
124 |     }
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Network/NetworkClient.swift:82:39: warning: implicit capture of 'self' requires that 'CoreNetworkClient' conforms to 'Sendable'; this is an error in the Swift 6 language mode
  9 | }
 10 |
 11 | class CoreNetworkClient: NetworkProtocol {
    |       `- note: class 'CoreNetworkClient' does not conform to the 'Sendable' protocol
 12 |     var apiRequestHeaders: [String: String]
 13 |     var streamingHostRequestHeaders: [String: String]
    :
 80 |             if let httpResponse = response as? HTTPURLResponse {
 81 |
 82 |                 if method == "GET" && self.matchesFeaturesPattern(urlString) {
    |                                       `- warning: implicit capture of 'self' requires that 'CoreNetworkClient' conforms to 'Sendable'; this is an error in the Swift 6 language mode
 83 |                     if #available(iOS 13.0, tvOS 13.0, watchOS 6.0, macOS 10.15, *) {
 84 |                         if let etag = httpResponse.value(forHTTPHeaderField: "ETag") {
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Network/NetworkRetryHandler.swift:14:30: warning: capture of 'self' with non-sendable type 'NetworkRetryHandler?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 2 | import Foundation
 3 |
 4 | final class NetworkRetryHandler {
   |             `- note: class 'NetworkRetryHandler' does not conform to the 'Sendable' protocol
 5 |     private let monitor = NWPathMonitor()
 6 |     private let monitorQueue = DispatchQueue(label: "NetworkRetryQueue")
   :
12 |     init() {
13 |         monitor.pathUpdateHandler = { [weak self] path in
14 |             guard let self = self else { return }
   |                              `- warning: capture of 'self' with non-sendable type 'NetworkRetryHandler?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
15 |
16 |             if path.status == .satisfied {
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Network/NetworkRetryHandler.swift:53:17: warning: capture of 'completion' with non-sendable type '(Bool) -> Void' in a '@Sendable' closure
51 |         URLSession.shared.dataTask(with: request) { _, response, error in
52 |             if let httpResponse = response as? HTTPURLResponse, (200..<300).contains(httpResponse.statusCode) {
53 |                 completion(true)
   |                 |- warning: capture of 'completion' with non-sendable type '(Bool) -> Void' in a '@Sendable' closure
   |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
54 |             } else {
55 |                 completion(false)
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Network/NetworkRetryHandler.swift:22:29: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
20 |                         logger.info("[NetworkRetryHandler] internet became available.")
21 |                         DispatchQueue.main.async {
22 |                             self.onOnlineCallbacks.forEach { $0() }
   |                             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
   |                             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
23 |                             self.onOnlineCallbacks.removeAll()
24 |                         }
/Users/admin/builder/spi-builder-workspace/Sources/CommonMain/Network/NetworkRetryHandler.swift:41:17: warning: sending 'onOnline' risks causing data races; this is an error in the Swift 6 language mode
39 |         if isInternetAvailable {
40 |             DispatchQueue.main.async {
41 |                 onOnline()
   |                 |- warning: sending 'onOnline' risks causing data races; this is an error in the Swift 6 language mode
   |                 `- note: task-isolated 'onOnline' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
42 |             }
43 |         } else {
Build complete! (7.07s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "GrowthBook-IOS",
  "name" : "GrowthBook-IOS",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "10.15"
    },
    {
      "name" : "ios",
      "version" : "12.0"
    },
    {
      "name" : "tvos",
      "version" : "12.0"
    },
    {
      "name" : "watchos",
      "version" : "5.0"
    },
    {
      "name" : "visionos",
      "version" : "1.0"
    }
  ],
  "products" : [
    {
      "name" : "GrowthBook-IOS",
      "targets" : [
        "GrowthBook"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "GrowthBookTests",
      "module_type" : "SwiftTarget",
      "name" : "GrowthBookTests",
      "path" : "GrowthBookTests",
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/GrowthBookTests/Source/json.json",
          "rule" : {
            "process" : {
            }
          }
        }
      ],
      "sources" : [
        "BackgroundSyncTest.swift",
        "CachingManagerTest.swift",
        "ConditionTests.swift",
        "ContextManagerTests.swift",
        "CryptoTests.swift",
        "ExperimentRunTests.swift",
        "FeatureValueTests.swift",
        "FeaturesViewModelTests.swift",
        "GrowthBookSDKBuilderTests.swift",
        "LruETagCacheTests.swift",
        "MockNetworkClient.swift",
        "ModelTests.swift",
        "StickyBucketingTests.swift",
        "TestHelper.swift",
        "UtilsTests.swift"
      ],
      "target_dependencies" : [
        "GrowthBook"
      ],
      "type" : "test"
    },
    {
      "c99name" : "GrowthBook",
      "module_type" : "SwiftTarget",
      "name" : "GrowthBook",
      "path" : "Sources/CommonMain",
      "product_memberships" : [
        "GrowthBook-IOS"
      ],
      "sources" : [
        "Caching/CachingManager.swift",
        "ContextManager.swift",
        "Evaluators/ConditionEvaluator.swift",
        "Evaluators/ExperimentEvaluator.swift",
        "Evaluators/ExperimentHelper.swift",
        "Evaluators/FeatureEvaluator.swift",
        "Features/FeaturesDataModel.swift",
        "Features/FeaturesDataSource.swift",
        "Features/FeaturesViewModel.swift",
        "GrowthBookModel.swift",
        "GrowthBookSDK.swift",
        "JsonManager/JsonManager.swift",
        "LoggingManager/Formatter.swift",
        "LoggingManager/LoggingManager.swift",
        "LoggingManager/Theme.swift",
        "Model/Context.swift",
        "Model/EvaluationData.swift",
        "Model/Experiment.swift",
        "Model/Feature.swift",
        "Model/GlobalConfig.swift",
        "Model/GlobalContext.swift",
        "Model/RemoteEvalModel.swift",
        "Model/StickyAssignmentsDocument.swift",
        "Network/EventHandler.swift",
        "Network/EventModel.swift",
        "Network/LruETagCache.swift",
        "Network/NetworkClient.swift",
        "Network/NetworkRetryHandler.swift",
        "Network/SSEHandler.swift",
        "StickyBucket/StickyBucketService.swift",
        "Utils/Common.swift",
        "Utils/Constants.swift",
        "Utils/Crypto.swift",
        "Utils/DecryptionUtils.swift",
        "Utils/Extensions.swift",
        "Utils/Logger.swift",
        "Utils/Utils.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.9"
}
Done.