Build Information
Successful build of Amplitude-Swift, reference v1.18.1 (b6dd7d), with Swift 6.1 for macOS (SPM) on 21 Apr 2026 04:46:14 UTC.
Swift 6 data race errors: 19
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCapturesBuild Log
7 | import Foundation
8 |
9 | public class Amplitude {
| `- note: class 'Amplitude' does not conform to the 'Sendable' protocol
10 |
11 | public private(set) var configuration: Configuration
:
511 | e.userId = e.userId ?? identity.userId
512 | e.deviceId = e.deviceId ?? identity.deviceId
513 | self.timeline.processEvent(event: e)
| `- warning: capture of 'self' with non-sendable type 'Amplitude' in an isolated closure; this is an error in the Swift 6 language mode
514 | }
515 | }
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:511:44: warning: implicit capture of 'identity' requires that 'Identity' conforms to 'Sendable'; this is an error in the Swift 6 language mode
509 | if !configuration.optOut {
510 | events.forEach { e in
511 | e.userId = e.userId ?? identity.userId
| `- warning: implicit capture of 'identity' requires that 'Identity' conforms to 'Sendable'; this is an error in the Swift 6 language mode
512 | e.deviceId = e.deviceId ?? identity.deviceId
513 | self.timeline.processEvent(event: e)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Identity.swift:14:15: note: consider making struct 'Identity' conform to the 'Sendable' protocol
12 | #endif
13 |
14 | public struct Identity: AnalyticsIdentity {
| `- note: consider making struct 'Identity' conform to the 'Sendable' protocol
15 | public var userId: String?
16 | public var deviceId: String?
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:512:48: warning: implicit capture of 'identity' requires that 'Identity' conforms to 'Sendable'; this is an error in the Swift 6 language mode
510 | events.forEach { e in
511 | e.userId = e.userId ?? identity.userId
512 | e.deviceId = e.deviceId ?? identity.deviceId
| `- warning: implicit capture of 'identity' requires that 'Identity' conforms to 'Sendable'; this is an error in the Swift 6 language mode
513 | self.timeline.processEvent(event: e)
514 | }
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Identity.swift:14:15: note: consider making struct 'Identity' conform to the 'Sendable' protocol
12 | #endif
13 |
14 | public struct Identity: AnalyticsIdentity {
| `- note: consider making struct 'Identity' conform to the 'Sendable' protocol
15 | public var userId: String?
16 | public var deviceId: String?
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:522:13: warning: capture of 'self' with non-sendable type 'Amplitude' in a '@Sendable' closure
7 | import Foundation
8 |
9 | public class Amplitude {
| `- note: class 'Amplitude' does not conform to the 'Sendable' protocol
10 |
11 | public private(set) var configuration: Configuration
:
520 | inForeground = false
521 | trackingQueue.async { [self] in
522 | self.sessions.lastEventTime = timestamp
| `- warning: capture of 'self' with non-sendable type 'Amplitude' in a '@Sendable' closure
523 | }
524 | if configuration.flushEventsOnClose == true {
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/AutocaptureOptions.swift:10:23: warning: static property 'sessions' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public struct AutocaptureOptions: OptionSet {
| `- note: consider making struct 'AutocaptureOptions' conform to the 'Sendable' protocol
4 | public let rawValue: Int
5 |
:
8 | }
9 |
10 | public static let sessions = AutocaptureOptions(rawValue: 1 << 0)
| |- warning: static property 'sessions' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'sessions' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
11 | public static let appLifecycles = AutocaptureOptions(rawValue: 1 << 1)
12 | public static let screenViews = AutocaptureOptions(rawValue: 1 << 2)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/AutocaptureOptions.swift:11:23: warning: static property 'appLifecycles' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public struct AutocaptureOptions: OptionSet {
| `- note: consider making struct 'AutocaptureOptions' conform to the 'Sendable' protocol
4 | public let rawValue: Int
5 |
:
9 |
10 | public static let sessions = AutocaptureOptions(rawValue: 1 << 0)
11 | public static let appLifecycles = AutocaptureOptions(rawValue: 1 << 1)
| |- warning: static property 'appLifecycles' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'appLifecycles' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
12 | public static let screenViews = AutocaptureOptions(rawValue: 1 << 2)
13 | public static let elementInteractions = AutocaptureOptions(rawValue: 1 << 3)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/AutocaptureOptions.swift:12:23: warning: static property 'screenViews' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public struct AutocaptureOptions: OptionSet {
| `- note: consider making struct 'AutocaptureOptions' conform to the 'Sendable' protocol
4 | public let rawValue: Int
5 |
:
10 | public static let sessions = AutocaptureOptions(rawValue: 1 << 0)
11 | public static let appLifecycles = AutocaptureOptions(rawValue: 1 << 1)
12 | public static let screenViews = AutocaptureOptions(rawValue: 1 << 2)
| |- warning: static property 'screenViews' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'screenViews' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
13 | public static let elementInteractions = AutocaptureOptions(rawValue: 1 << 3)
14 | /// Won't work on watchOS
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/AutocaptureOptions.swift:13:23: warning: static property 'elementInteractions' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public struct AutocaptureOptions: OptionSet {
| `- note: consider making struct 'AutocaptureOptions' conform to the 'Sendable' protocol
4 | public let rawValue: Int
5 |
:
11 | public static let appLifecycles = AutocaptureOptions(rawValue: 1 << 1)
12 | public static let screenViews = AutocaptureOptions(rawValue: 1 << 2)
13 | public static let elementInteractions = AutocaptureOptions(rawValue: 1 << 3)
| |- warning: static property 'elementInteractions' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'elementInteractions' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
14 | /// Won't work on watchOS
15 | public static let networkTracking = AutocaptureOptions(rawValue: 1 << 4)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/AutocaptureOptions.swift:15:23: warning: static property 'networkTracking' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public struct AutocaptureOptions: OptionSet {
| `- note: consider making struct 'AutocaptureOptions' conform to the 'Sendable' protocol
4 | public let rawValue: Int
5 |
:
13 | public static let elementInteractions = AutocaptureOptions(rawValue: 1 << 3)
14 | /// Won't work on watchOS
15 | public static let networkTracking = AutocaptureOptions(rawValue: 1 << 4)
| |- warning: static property 'networkTracking' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'networkTracking' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
16 | /// Rage Click and Dead Click detection
17 | public static let frustrationInteractions = AutocaptureOptions(rawValue: 1 << 5)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/AutocaptureOptions.swift:17:23: warning: static property 'frustrationInteractions' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public struct AutocaptureOptions: OptionSet {
| `- note: consider making struct 'AutocaptureOptions' conform to the 'Sendable' protocol
4 | public let rawValue: Int
5 |
:
15 | public static let networkTracking = AutocaptureOptions(rawValue: 1 << 4)
16 | /// Rage Click and Dead Click detection
17 | public static let frustrationInteractions = AutocaptureOptions(rawValue: 1 << 5)
| |- warning: static property 'frustrationInteractions' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'frustrationInteractions' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
18 |
19 | public static let all: AutocaptureOptions = [
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/AutocaptureOptions.swift:19:23: warning: static property 'all' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public struct AutocaptureOptions: OptionSet {
| `- note: consider making struct 'AutocaptureOptions' conform to the 'Sendable' protocol
4 | public let rawValue: Int
5 |
:
17 | public static let frustrationInteractions = AutocaptureOptions(rawValue: 1 << 5)
18 |
19 | public static let all: AutocaptureOptions = [
| |- warning: static property 'all' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'all' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
20 | .sessions,
21 | .appLifecycles,
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Configuration.swift:32:27: warning: static property 'autocaptureOptions' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
30 | public static let flushEventsOnClose = true
31 | public static let maxQueuedEventCount = -1
32 | public static let autocaptureOptions: AutocaptureOptions = .sessions
| |- warning: static property 'autocaptureOptions' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'autocaptureOptions' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
33 | public static let migrateLegacyData = true
34 | public static let enableAutoCaptureRemoteConfig = true
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/AutocaptureOptions.swift:3:15: note: consider making struct 'AutocaptureOptions' conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public struct AutocaptureOptions: OptionSet {
| `- note: consider making struct 'AutocaptureOptions' conform to the 'Sendable' protocol
4 | public let rawValue: Int
5 |
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Configuration.swift:35:27: warning: static property 'trackingOptions' is not concurrency-safe because non-'Sendable' type 'TrackingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
33 | public static let migrateLegacyData = true
34 | public static let enableAutoCaptureRemoteConfig = true
35 | public static let trackingOptions = TrackingOptions()
| |- warning: static property 'trackingOptions' is not concurrency-safe because non-'Sendable' type 'TrackingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'trackingOptions' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
36 | public static let networkTrackingOptions = NetworkTrackingOptions.default
37 | public static let interactionsOptions = InteractionsOptions()
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/TrackingOptions.swift:10:14: note: class 'TrackingOptions' does not conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public class TrackingOptions {
| `- note: class 'TrackingOptions' does not conform to the 'Sendable' protocol
11 |
12 | public init() {}
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Configuration.swift:36:27: warning: static property 'networkTrackingOptions' is not concurrency-safe because non-'Sendable' type 'NetworkTrackingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
34 | public static let enableAutoCaptureRemoteConfig = true
35 | public static let trackingOptions = TrackingOptions()
36 | public static let networkTrackingOptions = NetworkTrackingOptions.default
| |- warning: static property 'networkTrackingOptions' is not concurrency-safe because non-'Sendable' type 'NetworkTrackingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'networkTrackingOptions' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
37 | public static let interactionsOptions = InteractionsOptions()
38 | public static let enableDiagnostics = true
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkTrackingPlugin.swift:68:15: note: consider making struct 'NetworkTrackingOptions' conform to the 'Sendable' protocol
66 | ]
67 |
68 | public struct NetworkTrackingOptions {
| `- note: consider making struct 'NetworkTrackingOptions' conform to the 'Sendable' protocol
69 | public enum URLPattern {
70 | case exact(String)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Configuration.swift:37:27: warning: static property 'interactionsOptions' is not concurrency-safe because non-'Sendable' type 'InteractionsOptions' may have shared mutable state; this is an error in the Swift 6 language mode
35 | public static let trackingOptions = TrackingOptions()
36 | public static let networkTrackingOptions = NetworkTrackingOptions.default
37 | public static let interactionsOptions = InteractionsOptions()
| |- warning: static property 'interactionsOptions' is not concurrency-safe because non-'Sendable' type 'InteractionsOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'interactionsOptions' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
38 | public static let enableDiagnostics = true
39 | public static let enableRequestBodyCompression = false
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/InteractionsOptions.swift:10:14: note: class 'InteractionsOptions' does not conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public class InteractionsOptions {
| `- note: class 'InteractionsOptions' does not conform to the 'Sendable' protocol
11 | public let rageClick: RageClickOptions
12 | public let deadClick: DeadClickOptions
[77/97] Compiling AmplitudeSwift BaseEvent.swift
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:202:13: warning: capture of 'self' with non-sendable type 'Amplitude' in a '@Sendable' closure
7 | import Foundation
8 |
9 | public class Amplitude {
| `- note: class 'Amplitude' does not conform to the 'Sendable' protocol
10 |
11 | public private(set) var configuration: Configuration
:
200 |
201 | trackingQueue.async { [self] in
202 | self.trimQueuedEvents()
| `- warning: capture of 'self' with non-sendable type 'Amplitude' in a '@Sendable' closure
203 | }
204 | trackingQueue.resume()
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:400:13: warning: capture of 'self' with non-sendable type 'Amplitude' in a '@Sendable' closure
7 | import Foundation
8 |
9 | public class Amplitude {
| `- note: class 'Amplitude' does not conform to the 'Sendable' protocol
10 |
11 | public private(set) var configuration: Configuration
:
398 | public func flush() -> Amplitude {
399 | trackingQueue.async {
400 | self.timeline.apply { plugin in
| `- warning: capture of 'self' with non-sendable type 'Amplitude' in a '@Sendable' closure
401 | if let _plugin = plugin as? EventPlugin {
402 | _plugin.flush()
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:438:33: warning: capture of 'self' with non-sendable type 'Amplitude' in a '@Sendable' closure
7 | import Foundation
8 |
9 | public class Amplitude {
| `- note: class 'Amplitude' does not conform to the 'Sendable' protocol
10 |
11 | public private(set) var configuration: Configuration
:
436 | let sessionEvents: [BaseEvent]
437 | if timestamp >= 0 {
438 | sessionEvents = self.sessions.startNewSession(timestamp: timestamp)
| `- warning: capture of 'self' with non-sendable type 'Amplitude' in a '@Sendable' closure
439 | } else {
440 | sessionEvents = self.sessions.endCurrentSession()
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:445:44: warning: capture of 'identity' with non-sendable type 'Identity' in a '@Sendable' closure
443 | if !configuration.optOut {
444 | self.sessions.assignEventId(events: sessionEvents).forEach { e in
445 | e.userId = e.userId ?? identity.userId
| `- warning: capture of 'identity' with non-sendable type 'Identity' in a '@Sendable' closure
446 | e.deviceId = e.deviceId ?? identity.deviceId
447 | self.timeline.processEvent(event: e)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Identity.swift:14:15: note: consider making struct 'Identity' conform to the 'Sendable' protocol
12 | #endif
13 |
14 | public struct Identity: AnalyticsIdentity {
| `- note: consider making struct 'Identity' conform to the 'Sendable' protocol
15 | public var userId: String?
16 | public var deviceId: String?
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:445:44: warning: capture of 'identity' with non-sendable type 'Identity' in an isolated closure; this is an error in the Swift 6 language mode
443 | if !configuration.optOut {
444 | self.sessions.assignEventId(events: sessionEvents).forEach { e in
445 | e.userId = e.userId ?? identity.userId
| `- warning: capture of 'identity' with non-sendable type 'Identity' in an isolated closure; this is an error in the Swift 6 language mode
446 | e.deviceId = e.deviceId ?? identity.deviceId
447 | self.timeline.processEvent(event: e)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Identity.swift:14:15: note: consider making struct 'Identity' conform to the 'Sendable' protocol
12 | #endif
13 |
14 | public struct Identity: AnalyticsIdentity {
| `- note: consider making struct 'Identity' conform to the 'Sendable' protocol
15 | public var userId: String?
16 | public var deviceId: String?
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:447:21: warning: capture of 'self' with non-sendable type 'Amplitude' in an isolated closure; this is an error in the Swift 6 language mode
7 | import Foundation
8 |
9 | public class Amplitude {
| `- note: class 'Amplitude' does not conform to the 'Sendable' protocol
10 |
11 | public private(set) var configuration: Configuration
:
445 | e.userId = e.userId ?? identity.userId
446 | e.deviceId = e.deviceId ?? identity.deviceId
447 | self.timeline.processEvent(event: e)
| `- warning: capture of 'self' with non-sendable type 'Amplitude' in an isolated closure; this is an error in the Swift 6 language mode
448 | }
449 | }
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:445:44: warning: implicit capture of 'identity' requires that 'Identity' conforms to 'Sendable'; this is an error in the Swift 6 language mode
443 | if !configuration.optOut {
444 | self.sessions.assignEventId(events: sessionEvents).forEach { e in
445 | e.userId = e.userId ?? identity.userId
| `- warning: implicit capture of 'identity' requires that 'Identity' conforms to 'Sendable'; this is an error in the Swift 6 language mode
446 | e.deviceId = e.deviceId ?? identity.deviceId
447 | self.timeline.processEvent(event: e)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Identity.swift:14:15: note: consider making struct 'Identity' conform to the 'Sendable' protocol
12 | #endif
13 |
14 | public struct Identity: AnalyticsIdentity {
| `- note: consider making struct 'Identity' conform to the 'Sendable' protocol
15 | public var userId: String?
16 | public var deviceId: String?
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:446:48: warning: implicit capture of 'identity' requires that 'Identity' conforms to 'Sendable'; this is an error in the Swift 6 language mode
444 | self.sessions.assignEventId(events: sessionEvents).forEach { e in
445 | e.userId = e.userId ?? identity.userId
446 | e.deviceId = e.deviceId ?? identity.deviceId
| `- warning: implicit capture of 'identity' requires that 'Identity' conforms to 'Sendable'; this is an error in the Swift 6 language mode
447 | self.timeline.processEvent(event: e)
448 | }
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Identity.swift:14:15: note: consider making struct 'Identity' conform to the 'Sendable' protocol
12 | #endif
13 |
14 | public struct Identity: AnalyticsIdentity {
| `- note: consider making struct 'Identity' conform to the 'Sendable' protocol
15 | public var userId: String?
16 | public var deviceId: String?
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:491:26: warning: capture of 'self' with non-sendable type 'Amplitude' in a '@Sendable' closure
7 | import Foundation
8 |
9 | public class Amplitude {
| `- note: class 'Amplitude' does not conform to the 'Sendable' protocol
10 |
11 | public private(set) var configuration: Configuration
:
489 |
490 | trackingQueue.async { [self, identity, inForeground] in
491 | let events = self.sessions.processEvent(event: event, inForeground: inForeground)
| `- warning: capture of 'self' with non-sendable type 'Amplitude' in a '@Sendable' closure
492 | events.forEach { e in
493 | e.userId = e.userId ?? identity.userId
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:491:60: warning: capture of 'event' with non-sendable type 'BaseEvent' in a '@Sendable' closure
489 |
490 | trackingQueue.async { [self, identity, inForeground] in
491 | let events = self.sessions.processEvent(event: event, inForeground: inForeground)
| `- warning: capture of 'event' with non-sendable type 'BaseEvent' in a '@Sendable' closure
492 | events.forEach { e in
493 | e.userId = e.userId ?? identity.userId
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Events/BaseEvent.swift:15:12: note: class 'BaseEvent' does not conform to the 'Sendable' protocol
13 | import Foundation
14 |
15 | open class BaseEvent: EventOptions, AnalyticsEvent, Codable {
| `- note: class 'BaseEvent' does not conform to the 'Sendable' protocol
16 | public var eventType: String
17 | public var eventProperties: [String: Any]?
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:493:40: warning: capture of 'identity' with non-sendable type 'Identity' in a '@Sendable' closure
491 | let events = self.sessions.processEvent(event: event, inForeground: inForeground)
492 | events.forEach { e in
493 | e.userId = e.userId ?? identity.userId
| `- warning: capture of 'identity' with non-sendable type 'Identity' in a '@Sendable' closure
494 | e.deviceId = e.deviceId ?? identity.deviceId
495 | self.timeline.processEvent(event: e)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Identity.swift:14:15: note: consider making struct 'Identity' conform to the 'Sendable' protocol
12 | #endif
13 |
14 | public struct Identity: AnalyticsIdentity {
| `- note: consider making struct 'Identity' conform to the 'Sendable' protocol
15 | public var userId: String?
16 | public var deviceId: String?
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:493:40: warning: capture of 'identity' with non-sendable type 'Identity' in an isolated closure; this is an error in the Swift 6 language mode
491 | let events = self.sessions.processEvent(event: event, inForeground: inForeground)
492 | events.forEach { e in
493 | e.userId = e.userId ?? identity.userId
| `- warning: capture of 'identity' with non-sendable type 'Identity' in an isolated closure; this is an error in the Swift 6 language mode
494 | e.deviceId = e.deviceId ?? identity.deviceId
495 | self.timeline.processEvent(event: e)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Identity.swift:14:15: note: consider making struct 'Identity' conform to the 'Sendable' protocol
12 | #endif
13 |
14 | public struct Identity: AnalyticsIdentity {
| `- note: consider making struct 'Identity' conform to the 'Sendable' protocol
15 | public var userId: String?
16 | public var deviceId: String?
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:495:17: warning: capture of 'self' with non-sendable type 'Amplitude' in an isolated closure; this is an error in the Swift 6 language mode
7 | import Foundation
8 |
9 | public class Amplitude {
| `- note: class 'Amplitude' does not conform to the 'Sendable' protocol
10 |
11 | public private(set) var configuration: Configuration
:
493 | e.userId = e.userId ?? identity.userId
494 | e.deviceId = e.deviceId ?? identity.deviceId
495 | self.timeline.processEvent(event: e)
| `- warning: capture of 'self' with non-sendable type 'Amplitude' in an isolated closure; this is an error in the Swift 6 language mode
496 | }
497 | }
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:493:40: warning: implicit capture of 'identity' requires that 'Identity' conforms to 'Sendable'; this is an error in the Swift 6 language mode
491 | let events = self.sessions.processEvent(event: event, inForeground: inForeground)
492 | events.forEach { e in
493 | e.userId = e.userId ?? identity.userId
| `- warning: implicit capture of 'identity' requires that 'Identity' conforms to 'Sendable'; this is an error in the Swift 6 language mode
494 | e.deviceId = e.deviceId ?? identity.deviceId
495 | self.timeline.processEvent(event: e)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Identity.swift:14:15: note: consider making struct 'Identity' conform to the 'Sendable' protocol
12 | #endif
13 |
14 | public struct Identity: AnalyticsIdentity {
| `- note: consider making struct 'Identity' conform to the 'Sendable' protocol
15 | public var userId: String?
16 | public var deviceId: String?
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:494:44: warning: implicit capture of 'identity' requires that 'Identity' conforms to 'Sendable'; this is an error in the Swift 6 language mode
492 | events.forEach { e in
493 | e.userId = e.userId ?? identity.userId
494 | e.deviceId = e.deviceId ?? identity.deviceId
| `- warning: implicit capture of 'identity' requires that 'Identity' conforms to 'Sendable'; this is an error in the Swift 6 language mode
495 | self.timeline.processEvent(event: e)
496 | }
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Identity.swift:14:15: note: consider making struct 'Identity' conform to the 'Sendable' protocol
12 | #endif
13 |
14 | public struct Identity: AnalyticsIdentity {
| `- note: consider making struct 'Identity' conform to the 'Sendable' protocol
15 | public var userId: String?
16 | public var deviceId: String?
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:508:26: warning: capture of 'self' with non-sendable type 'Amplitude' in a '@Sendable' closure
7 | import Foundation
8 |
9 | public class Amplitude {
| `- note: class 'Amplitude' does not conform to the 'Sendable' protocol
10 |
11 | public private(set) var configuration: Configuration
:
506 | trackingQueue.async { [self, identity] in
507 | // set inForeground to false to represent state before event was fired
508 | let events = self.sessions.processEvent(event: dummySessionStartEvent, inForeground: false)
| `- warning: capture of 'self' with non-sendable type 'Amplitude' in a '@Sendable' closure
509 | if !configuration.optOut {
510 | events.forEach { e in
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:508:60: warning: capture of 'dummySessionStartEvent' with non-sendable type 'BaseEvent' in a '@Sendable' closure
506 | trackingQueue.async { [self, identity] in
507 | // set inForeground to false to represent state before event was fired
508 | let events = self.sessions.processEvent(event: dummySessionStartEvent, inForeground: false)
| `- warning: capture of 'dummySessionStartEvent' with non-sendable type 'BaseEvent' in a '@Sendable' closure
509 | if !configuration.optOut {
510 | events.forEach { e in
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Events/BaseEvent.swift:15:12: note: class 'BaseEvent' does not conform to the 'Sendable' protocol
13 | import Foundation
14 |
15 | open class BaseEvent: EventOptions, AnalyticsEvent, Codable {
| `- note: class 'BaseEvent' does not conform to the 'Sendable' protocol
16 | public var eventType: String
17 | public var eventProperties: [String: Any]?
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:511:44: warning: capture of 'identity' with non-sendable type 'Identity' in a '@Sendable' closure
509 | if !configuration.optOut {
510 | events.forEach { e in
511 | e.userId = e.userId ?? identity.userId
| `- warning: capture of 'identity' with non-sendable type 'Identity' in a '@Sendable' closure
512 | e.deviceId = e.deviceId ?? identity.deviceId
513 | self.timeline.processEvent(event: e)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Identity.swift:14:15: note: consider making struct 'Identity' conform to the 'Sendable' protocol
12 | #endif
13 |
14 | public struct Identity: AnalyticsIdentity {
| `- note: consider making struct 'Identity' conform to the 'Sendable' protocol
15 | public var userId: String?
16 | public var deviceId: String?
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:511:44: warning: capture of 'identity' with non-sendable type 'Identity' in an isolated closure; this is an error in the Swift 6 language mode
509 | if !configuration.optOut {
510 | events.forEach { e in
511 | e.userId = e.userId ?? identity.userId
| `- warning: capture of 'identity' with non-sendable type 'Identity' in an isolated closure; this is an error in the Swift 6 language mode
512 | e.deviceId = e.deviceId ?? identity.deviceId
513 | self.timeline.processEvent(event: e)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Identity.swift:14:15: note: consider making struct 'Identity' conform to the 'Sendable' protocol
12 | #endif
13 |
14 | public struct Identity: AnalyticsIdentity {
| `- note: consider making struct 'Identity' conform to the 'Sendable' protocol
15 | public var userId: String?
16 | public var deviceId: String?
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:513:21: warning: capture of 'self' with non-sendable type 'Amplitude' in an isolated closure; this is an error in the Swift 6 language mode
7 | import Foundation
8 |
9 | public class Amplitude {
| `- note: class 'Amplitude' does not conform to the 'Sendable' protocol
10 |
11 | public private(set) var configuration: Configuration
:
511 | e.userId = e.userId ?? identity.userId
512 | e.deviceId = e.deviceId ?? identity.deviceId
513 | self.timeline.processEvent(event: e)
| `- warning: capture of 'self' with non-sendable type 'Amplitude' in an isolated closure; this is an error in the Swift 6 language mode
514 | }
515 | }
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:511:44: warning: implicit capture of 'identity' requires that 'Identity' conforms to 'Sendable'; this is an error in the Swift 6 language mode
509 | if !configuration.optOut {
510 | events.forEach { e in
511 | e.userId = e.userId ?? identity.userId
| `- warning: implicit capture of 'identity' requires that 'Identity' conforms to 'Sendable'; this is an error in the Swift 6 language mode
512 | e.deviceId = e.deviceId ?? identity.deviceId
513 | self.timeline.processEvent(event: e)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Identity.swift:14:15: note: consider making struct 'Identity' conform to the 'Sendable' protocol
12 | #endif
13 |
14 | public struct Identity: AnalyticsIdentity {
| `- note: consider making struct 'Identity' conform to the 'Sendable' protocol
15 | public var userId: String?
16 | public var deviceId: String?
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:512:48: warning: implicit capture of 'identity' requires that 'Identity' conforms to 'Sendable'; this is an error in the Swift 6 language mode
510 | events.forEach { e in
511 | e.userId = e.userId ?? identity.userId
512 | e.deviceId = e.deviceId ?? identity.deviceId
| `- warning: implicit capture of 'identity' requires that 'Identity' conforms to 'Sendable'; this is an error in the Swift 6 language mode
513 | self.timeline.processEvent(event: e)
514 | }
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Identity.swift:14:15: note: consider making struct 'Identity' conform to the 'Sendable' protocol
12 | #endif
13 |
14 | public struct Identity: AnalyticsIdentity {
| `- note: consider making struct 'Identity' conform to the 'Sendable' protocol
15 | public var userId: String?
16 | public var deviceId: String?
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:522:13: warning: capture of 'self' with non-sendable type 'Amplitude' in a '@Sendable' closure
7 | import Foundation
8 |
9 | public class Amplitude {
| `- note: class 'Amplitude' does not conform to the 'Sendable' protocol
10 |
11 | public private(set) var configuration: Configuration
:
520 | inForeground = false
521 | trackingQueue.async { [self] in
522 | self.sessions.lastEventTime = timestamp
| `- warning: capture of 'self' with non-sendable type 'Amplitude' in a '@Sendable' closure
523 | }
524 | if configuration.flushEventsOnClose == true {
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/AutocaptureOptions.swift:10:23: warning: static property 'sessions' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public struct AutocaptureOptions: OptionSet {
| `- note: consider making struct 'AutocaptureOptions' conform to the 'Sendable' protocol
4 | public let rawValue: Int
5 |
:
8 | }
9 |
10 | public static let sessions = AutocaptureOptions(rawValue: 1 << 0)
| |- warning: static property 'sessions' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'sessions' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
11 | public static let appLifecycles = AutocaptureOptions(rawValue: 1 << 1)
12 | public static let screenViews = AutocaptureOptions(rawValue: 1 << 2)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/AutocaptureOptions.swift:11:23: warning: static property 'appLifecycles' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public struct AutocaptureOptions: OptionSet {
| `- note: consider making struct 'AutocaptureOptions' conform to the 'Sendable' protocol
4 | public let rawValue: Int
5 |
:
9 |
10 | public static let sessions = AutocaptureOptions(rawValue: 1 << 0)
11 | public static let appLifecycles = AutocaptureOptions(rawValue: 1 << 1)
| |- warning: static property 'appLifecycles' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'appLifecycles' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
12 | public static let screenViews = AutocaptureOptions(rawValue: 1 << 2)
13 | public static let elementInteractions = AutocaptureOptions(rawValue: 1 << 3)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/AutocaptureOptions.swift:12:23: warning: static property 'screenViews' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public struct AutocaptureOptions: OptionSet {
| `- note: consider making struct 'AutocaptureOptions' conform to the 'Sendable' protocol
4 | public let rawValue: Int
5 |
:
10 | public static let sessions = AutocaptureOptions(rawValue: 1 << 0)
11 | public static let appLifecycles = AutocaptureOptions(rawValue: 1 << 1)
12 | public static let screenViews = AutocaptureOptions(rawValue: 1 << 2)
| |- warning: static property 'screenViews' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'screenViews' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
13 | public static let elementInteractions = AutocaptureOptions(rawValue: 1 << 3)
14 | /// Won't work on watchOS
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/AutocaptureOptions.swift:13:23: warning: static property 'elementInteractions' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public struct AutocaptureOptions: OptionSet {
| `- note: consider making struct 'AutocaptureOptions' conform to the 'Sendable' protocol
4 | public let rawValue: Int
5 |
:
11 | public static let appLifecycles = AutocaptureOptions(rawValue: 1 << 1)
12 | public static let screenViews = AutocaptureOptions(rawValue: 1 << 2)
13 | public static let elementInteractions = AutocaptureOptions(rawValue: 1 << 3)
| |- warning: static property 'elementInteractions' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'elementInteractions' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
14 | /// Won't work on watchOS
15 | public static let networkTracking = AutocaptureOptions(rawValue: 1 << 4)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/AutocaptureOptions.swift:15:23: warning: static property 'networkTracking' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public struct AutocaptureOptions: OptionSet {
| `- note: consider making struct 'AutocaptureOptions' conform to the 'Sendable' protocol
4 | public let rawValue: Int
5 |
:
13 | public static let elementInteractions = AutocaptureOptions(rawValue: 1 << 3)
14 | /// Won't work on watchOS
15 | public static let networkTracking = AutocaptureOptions(rawValue: 1 << 4)
| |- warning: static property 'networkTracking' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'networkTracking' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
16 | /// Rage Click and Dead Click detection
17 | public static let frustrationInteractions = AutocaptureOptions(rawValue: 1 << 5)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/AutocaptureOptions.swift:17:23: warning: static property 'frustrationInteractions' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public struct AutocaptureOptions: OptionSet {
| `- note: consider making struct 'AutocaptureOptions' conform to the 'Sendable' protocol
4 | public let rawValue: Int
5 |
:
15 | public static let networkTracking = AutocaptureOptions(rawValue: 1 << 4)
16 | /// Rage Click and Dead Click detection
17 | public static let frustrationInteractions = AutocaptureOptions(rawValue: 1 << 5)
| |- warning: static property 'frustrationInteractions' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'frustrationInteractions' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
18 |
19 | public static let all: AutocaptureOptions = [
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/AutocaptureOptions.swift:19:23: warning: static property 'all' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public struct AutocaptureOptions: OptionSet {
| `- note: consider making struct 'AutocaptureOptions' conform to the 'Sendable' protocol
4 | public let rawValue: Int
5 |
:
17 | public static let frustrationInteractions = AutocaptureOptions(rawValue: 1 << 5)
18 |
19 | public static let all: AutocaptureOptions = [
| |- warning: static property 'all' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'all' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
20 | .sessions,
21 | .appLifecycles,
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Configuration.swift:32:27: warning: static property 'autocaptureOptions' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
30 | public static let flushEventsOnClose = true
31 | public static let maxQueuedEventCount = -1
32 | public static let autocaptureOptions: AutocaptureOptions = .sessions
| |- warning: static property 'autocaptureOptions' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'autocaptureOptions' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
33 | public static let migrateLegacyData = true
34 | public static let enableAutoCaptureRemoteConfig = true
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/AutocaptureOptions.swift:3:15: note: consider making struct 'AutocaptureOptions' conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public struct AutocaptureOptions: OptionSet {
| `- note: consider making struct 'AutocaptureOptions' conform to the 'Sendable' protocol
4 | public let rawValue: Int
5 |
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Configuration.swift:35:27: warning: static property 'trackingOptions' is not concurrency-safe because non-'Sendable' type 'TrackingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
33 | public static let migrateLegacyData = true
34 | public static let enableAutoCaptureRemoteConfig = true
35 | public static let trackingOptions = TrackingOptions()
| |- warning: static property 'trackingOptions' is not concurrency-safe because non-'Sendable' type 'TrackingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'trackingOptions' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
36 | public static let networkTrackingOptions = NetworkTrackingOptions.default
37 | public static let interactionsOptions = InteractionsOptions()
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/TrackingOptions.swift:10:14: note: class 'TrackingOptions' does not conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public class TrackingOptions {
| `- note: class 'TrackingOptions' does not conform to the 'Sendable' protocol
11 |
12 | public init() {}
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Configuration.swift:36:27: warning: static property 'networkTrackingOptions' is not concurrency-safe because non-'Sendable' type 'NetworkTrackingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
34 | public static let enableAutoCaptureRemoteConfig = true
35 | public static let trackingOptions = TrackingOptions()
36 | public static let networkTrackingOptions = NetworkTrackingOptions.default
| |- warning: static property 'networkTrackingOptions' is not concurrency-safe because non-'Sendable' type 'NetworkTrackingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'networkTrackingOptions' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
37 | public static let interactionsOptions = InteractionsOptions()
38 | public static let enableDiagnostics = true
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkTrackingPlugin.swift:68:15: note: consider making struct 'NetworkTrackingOptions' conform to the 'Sendable' protocol
66 | ]
67 |
68 | public struct NetworkTrackingOptions {
| `- note: consider making struct 'NetworkTrackingOptions' conform to the 'Sendable' protocol
69 | public enum URLPattern {
70 | case exact(String)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Configuration.swift:37:27: warning: static property 'interactionsOptions' is not concurrency-safe because non-'Sendable' type 'InteractionsOptions' may have shared mutable state; this is an error in the Swift 6 language mode
35 | public static let trackingOptions = TrackingOptions()
36 | public static let networkTrackingOptions = NetworkTrackingOptions.default
37 | public static let interactionsOptions = InteractionsOptions()
| |- warning: static property 'interactionsOptions' is not concurrency-safe because non-'Sendable' type 'InteractionsOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'interactionsOptions' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
38 | public static let enableDiagnostics = true
39 | public static let enableRequestBodyCompression = false
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/InteractionsOptions.swift:10:14: note: class 'InteractionsOptions' does not conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public class InteractionsOptions {
| `- note: class 'InteractionsOptions' does not conform to the 'Sendable' protocol
11 | public let rageClick: RageClickOptions
12 | public let deadClick: DeadClickOptions
[78/97] Compiling AmplitudeSwift DeepLinkOpenedEvent.swift
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:202:13: warning: capture of 'self' with non-sendable type 'Amplitude' in a '@Sendable' closure
7 | import Foundation
8 |
9 | public class Amplitude {
| `- note: class 'Amplitude' does not conform to the 'Sendable' protocol
10 |
11 | public private(set) var configuration: Configuration
:
200 |
201 | trackingQueue.async { [self] in
202 | self.trimQueuedEvents()
| `- warning: capture of 'self' with non-sendable type 'Amplitude' in a '@Sendable' closure
203 | }
204 | trackingQueue.resume()
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:400:13: warning: capture of 'self' with non-sendable type 'Amplitude' in a '@Sendable' closure
7 | import Foundation
8 |
9 | public class Amplitude {
| `- note: class 'Amplitude' does not conform to the 'Sendable' protocol
10 |
11 | public private(set) var configuration: Configuration
:
398 | public func flush() -> Amplitude {
399 | trackingQueue.async {
400 | self.timeline.apply { plugin in
| `- warning: capture of 'self' with non-sendable type 'Amplitude' in a '@Sendable' closure
401 | if let _plugin = plugin as? EventPlugin {
402 | _plugin.flush()
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:438:33: warning: capture of 'self' with non-sendable type 'Amplitude' in a '@Sendable' closure
7 | import Foundation
8 |
9 | public class Amplitude {
| `- note: class 'Amplitude' does not conform to the 'Sendable' protocol
10 |
11 | public private(set) var configuration: Configuration
:
436 | let sessionEvents: [BaseEvent]
437 | if timestamp >= 0 {
438 | sessionEvents = self.sessions.startNewSession(timestamp: timestamp)
| `- warning: capture of 'self' with non-sendable type 'Amplitude' in a '@Sendable' closure
439 | } else {
440 | sessionEvents = self.sessions.endCurrentSession()
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:445:44: warning: capture of 'identity' with non-sendable type 'Identity' in a '@Sendable' closure
443 | if !configuration.optOut {
444 | self.sessions.assignEventId(events: sessionEvents).forEach { e in
445 | e.userId = e.userId ?? identity.userId
| `- warning: capture of 'identity' with non-sendable type 'Identity' in a '@Sendable' closure
446 | e.deviceId = e.deviceId ?? identity.deviceId
447 | self.timeline.processEvent(event: e)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Identity.swift:14:15: note: consider making struct 'Identity' conform to the 'Sendable' protocol
12 | #endif
13 |
14 | public struct Identity: AnalyticsIdentity {
| `- note: consider making struct 'Identity' conform to the 'Sendable' protocol
15 | public var userId: String?
16 | public var deviceId: String?
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:445:44: warning: capture of 'identity' with non-sendable type 'Identity' in an isolated closure; this is an error in the Swift 6 language mode
443 | if !configuration.optOut {
444 | self.sessions.assignEventId(events: sessionEvents).forEach { e in
445 | e.userId = e.userId ?? identity.userId
| `- warning: capture of 'identity' with non-sendable type 'Identity' in an isolated closure; this is an error in the Swift 6 language mode
446 | e.deviceId = e.deviceId ?? identity.deviceId
447 | self.timeline.processEvent(event: e)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Identity.swift:14:15: note: consider making struct 'Identity' conform to the 'Sendable' protocol
12 | #endif
13 |
14 | public struct Identity: AnalyticsIdentity {
| `- note: consider making struct 'Identity' conform to the 'Sendable' protocol
15 | public var userId: String?
16 | public var deviceId: String?
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:447:21: warning: capture of 'self' with non-sendable type 'Amplitude' in an isolated closure; this is an error in the Swift 6 language mode
7 | import Foundation
8 |
9 | public class Amplitude {
| `- note: class 'Amplitude' does not conform to the 'Sendable' protocol
10 |
11 | public private(set) var configuration: Configuration
:
445 | e.userId = e.userId ?? identity.userId
446 | e.deviceId = e.deviceId ?? identity.deviceId
447 | self.timeline.processEvent(event: e)
| `- warning: capture of 'self' with non-sendable type 'Amplitude' in an isolated closure; this is an error in the Swift 6 language mode
448 | }
449 | }
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:445:44: warning: implicit capture of 'identity' requires that 'Identity' conforms to 'Sendable'; this is an error in the Swift 6 language mode
443 | if !configuration.optOut {
444 | self.sessions.assignEventId(events: sessionEvents).forEach { e in
445 | e.userId = e.userId ?? identity.userId
| `- warning: implicit capture of 'identity' requires that 'Identity' conforms to 'Sendable'; this is an error in the Swift 6 language mode
446 | e.deviceId = e.deviceId ?? identity.deviceId
447 | self.timeline.processEvent(event: e)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Identity.swift:14:15: note: consider making struct 'Identity' conform to the 'Sendable' protocol
12 | #endif
13 |
14 | public struct Identity: AnalyticsIdentity {
| `- note: consider making struct 'Identity' conform to the 'Sendable' protocol
15 | public var userId: String?
16 | public var deviceId: String?
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:446:48: warning: implicit capture of 'identity' requires that 'Identity' conforms to 'Sendable'; this is an error in the Swift 6 language mode
444 | self.sessions.assignEventId(events: sessionEvents).forEach { e in
445 | e.userId = e.userId ?? identity.userId
446 | e.deviceId = e.deviceId ?? identity.deviceId
| `- warning: implicit capture of 'identity' requires that 'Identity' conforms to 'Sendable'; this is an error in the Swift 6 language mode
447 | self.timeline.processEvent(event: e)
448 | }
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Identity.swift:14:15: note: consider making struct 'Identity' conform to the 'Sendable' protocol
12 | #endif
13 |
14 | public struct Identity: AnalyticsIdentity {
| `- note: consider making struct 'Identity' conform to the 'Sendable' protocol
15 | public var userId: String?
16 | public var deviceId: String?
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:491:26: warning: capture of 'self' with non-sendable type 'Amplitude' in a '@Sendable' closure
7 | import Foundation
8 |
9 | public class Amplitude {
| `- note: class 'Amplitude' does not conform to the 'Sendable' protocol
10 |
11 | public private(set) var configuration: Configuration
:
489 |
490 | trackingQueue.async { [self, identity, inForeground] in
491 | let events = self.sessions.processEvent(event: event, inForeground: inForeground)
| `- warning: capture of 'self' with non-sendable type 'Amplitude' in a '@Sendable' closure
492 | events.forEach { e in
493 | e.userId = e.userId ?? identity.userId
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:491:60: warning: capture of 'event' with non-sendable type 'BaseEvent' in a '@Sendable' closure
489 |
490 | trackingQueue.async { [self, identity, inForeground] in
491 | let events = self.sessions.processEvent(event: event, inForeground: inForeground)
| `- warning: capture of 'event' with non-sendable type 'BaseEvent' in a '@Sendable' closure
492 | events.forEach { e in
493 | e.userId = e.userId ?? identity.userId
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Events/BaseEvent.swift:15:12: note: class 'BaseEvent' does not conform to the 'Sendable' protocol
13 | import Foundation
14 |
15 | open class BaseEvent: EventOptions, AnalyticsEvent, Codable {
| `- note: class 'BaseEvent' does not conform to the 'Sendable' protocol
16 | public var eventType: String
17 | public var eventProperties: [String: Any]?
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:493:40: warning: capture of 'identity' with non-sendable type 'Identity' in a '@Sendable' closure
491 | let events = self.sessions.processEvent(event: event, inForeground: inForeground)
492 | events.forEach { e in
493 | e.userId = e.userId ?? identity.userId
| `- warning: capture of 'identity' with non-sendable type 'Identity' in a '@Sendable' closure
494 | e.deviceId = e.deviceId ?? identity.deviceId
495 | self.timeline.processEvent(event: e)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Identity.swift:14:15: note: consider making struct 'Identity' conform to the 'Sendable' protocol
12 | #endif
13 |
14 | public struct Identity: AnalyticsIdentity {
| `- note: consider making struct 'Identity' conform to the 'Sendable' protocol
15 | public var userId: String?
16 | public var deviceId: String?
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:493:40: warning: capture of 'identity' with non-sendable type 'Identity' in an isolated closure; this is an error in the Swift 6 language mode
491 | let events = self.sessions.processEvent(event: event, inForeground: inForeground)
492 | events.forEach { e in
493 | e.userId = e.userId ?? identity.userId
| `- warning: capture of 'identity' with non-sendable type 'Identity' in an isolated closure; this is an error in the Swift 6 language mode
494 | e.deviceId = e.deviceId ?? identity.deviceId
495 | self.timeline.processEvent(event: e)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Identity.swift:14:15: note: consider making struct 'Identity' conform to the 'Sendable' protocol
12 | #endif
13 |
14 | public struct Identity: AnalyticsIdentity {
| `- note: consider making struct 'Identity' conform to the 'Sendable' protocol
15 | public var userId: String?
16 | public var deviceId: String?
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:495:17: warning: capture of 'self' with non-sendable type 'Amplitude' in an isolated closure; this is an error in the Swift 6 language mode
7 | import Foundation
8 |
9 | public class Amplitude {
| `- note: class 'Amplitude' does not conform to the 'Sendable' protocol
10 |
11 | public private(set) var configuration: Configuration
:
493 | e.userId = e.userId ?? identity.userId
494 | e.deviceId = e.deviceId ?? identity.deviceId
495 | self.timeline.processEvent(event: e)
| `- warning: capture of 'self' with non-sendable type 'Amplitude' in an isolated closure; this is an error in the Swift 6 language mode
496 | }
497 | }
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:493:40: warning: implicit capture of 'identity' requires that 'Identity' conforms to 'Sendable'; this is an error in the Swift 6 language mode
491 | let events = self.sessions.processEvent(event: event, inForeground: inForeground)
492 | events.forEach { e in
493 | e.userId = e.userId ?? identity.userId
| `- warning: implicit capture of 'identity' requires that 'Identity' conforms to 'Sendable'; this is an error in the Swift 6 language mode
494 | e.deviceId = e.deviceId ?? identity.deviceId
495 | self.timeline.processEvent(event: e)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Identity.swift:14:15: note: consider making struct 'Identity' conform to the 'Sendable' protocol
12 | #endif
13 |
14 | public struct Identity: AnalyticsIdentity {
| `- note: consider making struct 'Identity' conform to the 'Sendable' protocol
15 | public var userId: String?
16 | public var deviceId: String?
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:494:44: warning: implicit capture of 'identity' requires that 'Identity' conforms to 'Sendable'; this is an error in the Swift 6 language mode
492 | events.forEach { e in
493 | e.userId = e.userId ?? identity.userId
494 | e.deviceId = e.deviceId ?? identity.deviceId
| `- warning: implicit capture of 'identity' requires that 'Identity' conforms to 'Sendable'; this is an error in the Swift 6 language mode
495 | self.timeline.processEvent(event: e)
496 | }
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Identity.swift:14:15: note: consider making struct 'Identity' conform to the 'Sendable' protocol
12 | #endif
13 |
14 | public struct Identity: AnalyticsIdentity {
| `- note: consider making struct 'Identity' conform to the 'Sendable' protocol
15 | public var userId: String?
16 | public var deviceId: String?
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:508:26: warning: capture of 'self' with non-sendable type 'Amplitude' in a '@Sendable' closure
7 | import Foundation
8 |
9 | public class Amplitude {
| `- note: class 'Amplitude' does not conform to the 'Sendable' protocol
10 |
11 | public private(set) var configuration: Configuration
:
506 | trackingQueue.async { [self, identity] in
507 | // set inForeground to false to represent state before event was fired
508 | let events = self.sessions.processEvent(event: dummySessionStartEvent, inForeground: false)
| `- warning: capture of 'self' with non-sendable type 'Amplitude' in a '@Sendable' closure
509 | if !configuration.optOut {
510 | events.forEach { e in
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:508:60: warning: capture of 'dummySessionStartEvent' with non-sendable type 'BaseEvent' in a '@Sendable' closure
506 | trackingQueue.async { [self, identity] in
507 | // set inForeground to false to represent state before event was fired
508 | let events = self.sessions.processEvent(event: dummySessionStartEvent, inForeground: false)
| `- warning: capture of 'dummySessionStartEvent' with non-sendable type 'BaseEvent' in a '@Sendable' closure
509 | if !configuration.optOut {
510 | events.forEach { e in
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Events/BaseEvent.swift:15:12: note: class 'BaseEvent' does not conform to the 'Sendable' protocol
13 | import Foundation
14 |
15 | open class BaseEvent: EventOptions, AnalyticsEvent, Codable {
| `- note: class 'BaseEvent' does not conform to the 'Sendable' protocol
16 | public var eventType: String
17 | public var eventProperties: [String: Any]?
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:511:44: warning: capture of 'identity' with non-sendable type 'Identity' in a '@Sendable' closure
509 | if !configuration.optOut {
510 | events.forEach { e in
511 | e.userId = e.userId ?? identity.userId
| `- warning: capture of 'identity' with non-sendable type 'Identity' in a '@Sendable' closure
512 | e.deviceId = e.deviceId ?? identity.deviceId
513 | self.timeline.processEvent(event: e)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Identity.swift:14:15: note: consider making struct 'Identity' conform to the 'Sendable' protocol
12 | #endif
13 |
14 | public struct Identity: AnalyticsIdentity {
| `- note: consider making struct 'Identity' conform to the 'Sendable' protocol
15 | public var userId: String?
16 | public var deviceId: String?
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:511:44: warning: capture of 'identity' with non-sendable type 'Identity' in an isolated closure; this is an error in the Swift 6 language mode
509 | if !configuration.optOut {
510 | events.forEach { e in
511 | e.userId = e.userId ?? identity.userId
| `- warning: capture of 'identity' with non-sendable type 'Identity' in an isolated closure; this is an error in the Swift 6 language mode
512 | e.deviceId = e.deviceId ?? identity.deviceId
513 | self.timeline.processEvent(event: e)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Identity.swift:14:15: note: consider making struct 'Identity' conform to the 'Sendable' protocol
12 | #endif
13 |
14 | public struct Identity: AnalyticsIdentity {
| `- note: consider making struct 'Identity' conform to the 'Sendable' protocol
15 | public var userId: String?
16 | public var deviceId: String?
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:513:21: warning: capture of 'self' with non-sendable type 'Amplitude' in an isolated closure; this is an error in the Swift 6 language mode
7 | import Foundation
8 |
9 | public class Amplitude {
| `- note: class 'Amplitude' does not conform to the 'Sendable' protocol
10 |
11 | public private(set) var configuration: Configuration
:
511 | e.userId = e.userId ?? identity.userId
512 | e.deviceId = e.deviceId ?? identity.deviceId
513 | self.timeline.processEvent(event: e)
| `- warning: capture of 'self' with non-sendable type 'Amplitude' in an isolated closure; this is an error in the Swift 6 language mode
514 | }
515 | }
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:511:44: warning: implicit capture of 'identity' requires that 'Identity' conforms to 'Sendable'; this is an error in the Swift 6 language mode
509 | if !configuration.optOut {
510 | events.forEach { e in
511 | e.userId = e.userId ?? identity.userId
| `- warning: implicit capture of 'identity' requires that 'Identity' conforms to 'Sendable'; this is an error in the Swift 6 language mode
512 | e.deviceId = e.deviceId ?? identity.deviceId
513 | self.timeline.processEvent(event: e)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Identity.swift:14:15: note: consider making struct 'Identity' conform to the 'Sendable' protocol
12 | #endif
13 |
14 | public struct Identity: AnalyticsIdentity {
| `- note: consider making struct 'Identity' conform to the 'Sendable' protocol
15 | public var userId: String?
16 | public var deviceId: String?
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:512:48: warning: implicit capture of 'identity' requires that 'Identity' conforms to 'Sendable'; this is an error in the Swift 6 language mode
510 | events.forEach { e in
511 | e.userId = e.userId ?? identity.userId
512 | e.deviceId = e.deviceId ?? identity.deviceId
| `- warning: implicit capture of 'identity' requires that 'Identity' conforms to 'Sendable'; this is an error in the Swift 6 language mode
513 | self.timeline.processEvent(event: e)
514 | }
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Identity.swift:14:15: note: consider making struct 'Identity' conform to the 'Sendable' protocol
12 | #endif
13 |
14 | public struct Identity: AnalyticsIdentity {
| `- note: consider making struct 'Identity' conform to the 'Sendable' protocol
15 | public var userId: String?
16 | public var deviceId: String?
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:522:13: warning: capture of 'self' with non-sendable type 'Amplitude' in a '@Sendable' closure
7 | import Foundation
8 |
9 | public class Amplitude {
| `- note: class 'Amplitude' does not conform to the 'Sendable' protocol
10 |
11 | public private(set) var configuration: Configuration
:
520 | inForeground = false
521 | trackingQueue.async { [self] in
522 | self.sessions.lastEventTime = timestamp
| `- warning: capture of 'self' with non-sendable type 'Amplitude' in a '@Sendable' closure
523 | }
524 | if configuration.flushEventsOnClose == true {
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/AutocaptureOptions.swift:10:23: warning: static property 'sessions' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public struct AutocaptureOptions: OptionSet {
| `- note: consider making struct 'AutocaptureOptions' conform to the 'Sendable' protocol
4 | public let rawValue: Int
5 |
:
8 | }
9 |
10 | public static let sessions = AutocaptureOptions(rawValue: 1 << 0)
| |- warning: static property 'sessions' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'sessions' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
11 | public static let appLifecycles = AutocaptureOptions(rawValue: 1 << 1)
12 | public static let screenViews = AutocaptureOptions(rawValue: 1 << 2)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/AutocaptureOptions.swift:11:23: warning: static property 'appLifecycles' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public struct AutocaptureOptions: OptionSet {
| `- note: consider making struct 'AutocaptureOptions' conform to the 'Sendable' protocol
4 | public let rawValue: Int
5 |
:
9 |
10 | public static let sessions = AutocaptureOptions(rawValue: 1 << 0)
11 | public static let appLifecycles = AutocaptureOptions(rawValue: 1 << 1)
| |- warning: static property 'appLifecycles' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'appLifecycles' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
12 | public static let screenViews = AutocaptureOptions(rawValue: 1 << 2)
13 | public static let elementInteractions = AutocaptureOptions(rawValue: 1 << 3)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/AutocaptureOptions.swift:12:23: warning: static property 'screenViews' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public struct AutocaptureOptions: OptionSet {
| `- note: consider making struct 'AutocaptureOptions' conform to the 'Sendable' protocol
4 | public let rawValue: Int
5 |
:
10 | public static let sessions = AutocaptureOptions(rawValue: 1 << 0)
11 | public static let appLifecycles = AutocaptureOptions(rawValue: 1 << 1)
12 | public static let screenViews = AutocaptureOptions(rawValue: 1 << 2)
| |- warning: static property 'screenViews' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'screenViews' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
13 | public static let elementInteractions = AutocaptureOptions(rawValue: 1 << 3)
14 | /// Won't work on watchOS
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/AutocaptureOptions.swift:13:23: warning: static property 'elementInteractions' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public struct AutocaptureOptions: OptionSet {
| `- note: consider making struct 'AutocaptureOptions' conform to the 'Sendable' protocol
4 | public let rawValue: Int
5 |
:
11 | public static let appLifecycles = AutocaptureOptions(rawValue: 1 << 1)
12 | public static let screenViews = AutocaptureOptions(rawValue: 1 << 2)
13 | public static let elementInteractions = AutocaptureOptions(rawValue: 1 << 3)
| |- warning: static property 'elementInteractions' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'elementInteractions' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
14 | /// Won't work on watchOS
15 | public static let networkTracking = AutocaptureOptions(rawValue: 1 << 4)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/AutocaptureOptions.swift:15:23: warning: static property 'networkTracking' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public struct AutocaptureOptions: OptionSet {
| `- note: consider making struct 'AutocaptureOptions' conform to the 'Sendable' protocol
4 | public let rawValue: Int
5 |
:
13 | public static let elementInteractions = AutocaptureOptions(rawValue: 1 << 3)
14 | /// Won't work on watchOS
15 | public static let networkTracking = AutocaptureOptions(rawValue: 1 << 4)
| |- warning: static property 'networkTracking' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'networkTracking' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
16 | /// Rage Click and Dead Click detection
17 | public static let frustrationInteractions = AutocaptureOptions(rawValue: 1 << 5)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/AutocaptureOptions.swift:17:23: warning: static property 'frustrationInteractions' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public struct AutocaptureOptions: OptionSet {
| `- note: consider making struct 'AutocaptureOptions' conform to the 'Sendable' protocol
4 | public let rawValue: Int
5 |
:
15 | public static let networkTracking = AutocaptureOptions(rawValue: 1 << 4)
16 | /// Rage Click and Dead Click detection
17 | public static let frustrationInteractions = AutocaptureOptions(rawValue: 1 << 5)
| |- warning: static property 'frustrationInteractions' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'frustrationInteractions' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
18 |
19 | public static let all: AutocaptureOptions = [
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/AutocaptureOptions.swift:19:23: warning: static property 'all' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public struct AutocaptureOptions: OptionSet {
| `- note: consider making struct 'AutocaptureOptions' conform to the 'Sendable' protocol
4 | public let rawValue: Int
5 |
:
17 | public static let frustrationInteractions = AutocaptureOptions(rawValue: 1 << 5)
18 |
19 | public static let all: AutocaptureOptions = [
| |- warning: static property 'all' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'all' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
20 | .sessions,
21 | .appLifecycles,
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Configuration.swift:32:27: warning: static property 'autocaptureOptions' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
30 | public static let flushEventsOnClose = true
31 | public static let maxQueuedEventCount = -1
32 | public static let autocaptureOptions: AutocaptureOptions = .sessions
| |- warning: static property 'autocaptureOptions' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'autocaptureOptions' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
33 | public static let migrateLegacyData = true
34 | public static let enableAutoCaptureRemoteConfig = true
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/AutocaptureOptions.swift:3:15: note: consider making struct 'AutocaptureOptions' conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public struct AutocaptureOptions: OptionSet {
| `- note: consider making struct 'AutocaptureOptions' conform to the 'Sendable' protocol
4 | public let rawValue: Int
5 |
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Configuration.swift:35:27: warning: static property 'trackingOptions' is not concurrency-safe because non-'Sendable' type 'TrackingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
33 | public static let migrateLegacyData = true
34 | public static let enableAutoCaptureRemoteConfig = true
35 | public static let trackingOptions = TrackingOptions()
| |- warning: static property 'trackingOptions' is not concurrency-safe because non-'Sendable' type 'TrackingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'trackingOptions' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
36 | public static let networkTrackingOptions = NetworkTrackingOptions.default
37 | public static let interactionsOptions = InteractionsOptions()
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/TrackingOptions.swift:10:14: note: class 'TrackingOptions' does not conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public class TrackingOptions {
| `- note: class 'TrackingOptions' does not conform to the 'Sendable' protocol
11 |
12 | public init() {}
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Configuration.swift:36:27: warning: static property 'networkTrackingOptions' is not concurrency-safe because non-'Sendable' type 'NetworkTrackingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
34 | public static let enableAutoCaptureRemoteConfig = true
35 | public static let trackingOptions = TrackingOptions()
36 | public static let networkTrackingOptions = NetworkTrackingOptions.default
| |- warning: static property 'networkTrackingOptions' is not concurrency-safe because non-'Sendable' type 'NetworkTrackingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'networkTrackingOptions' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
37 | public static let interactionsOptions = InteractionsOptions()
38 | public static let enableDiagnostics = true
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkTrackingPlugin.swift:68:15: note: consider making struct 'NetworkTrackingOptions' conform to the 'Sendable' protocol
66 | ]
67 |
68 | public struct NetworkTrackingOptions {
| `- note: consider making struct 'NetworkTrackingOptions' conform to the 'Sendable' protocol
69 | public enum URLPattern {
70 | case exact(String)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Configuration.swift:37:27: warning: static property 'interactionsOptions' is not concurrency-safe because non-'Sendable' type 'InteractionsOptions' may have shared mutable state; this is an error in the Swift 6 language mode
35 | public static let trackingOptions = TrackingOptions()
36 | public static let networkTrackingOptions = NetworkTrackingOptions.default
37 | public static let interactionsOptions = InteractionsOptions()
| |- warning: static property 'interactionsOptions' is not concurrency-safe because non-'Sendable' type 'InteractionsOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'interactionsOptions' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
38 | public static let enableDiagnostics = true
39 | public static let enableRequestBodyCompression = false
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/InteractionsOptions.swift:10:14: note: class 'InteractionsOptions' does not conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public class InteractionsOptions {
| `- note: class 'InteractionsOptions' does not conform to the 'Sendable' protocol
11 | public let rageClick: RageClickOptions
12 | public let deadClick: DeadClickOptions
[79/97] Compiling AmplitudeSwift ElementInteractionEvent.swift
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:202:13: warning: capture of 'self' with non-sendable type 'Amplitude' in a '@Sendable' closure
7 | import Foundation
8 |
9 | public class Amplitude {
| `- note: class 'Amplitude' does not conform to the 'Sendable' protocol
10 |
11 | public private(set) var configuration: Configuration
:
200 |
201 | trackingQueue.async { [self] in
202 | self.trimQueuedEvents()
| `- warning: capture of 'self' with non-sendable type 'Amplitude' in a '@Sendable' closure
203 | }
204 | trackingQueue.resume()
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:400:13: warning: capture of 'self' with non-sendable type 'Amplitude' in a '@Sendable' closure
7 | import Foundation
8 |
9 | public class Amplitude {
| `- note: class 'Amplitude' does not conform to the 'Sendable' protocol
10 |
11 | public private(set) var configuration: Configuration
:
398 | public func flush() -> Amplitude {
399 | trackingQueue.async {
400 | self.timeline.apply { plugin in
| `- warning: capture of 'self' with non-sendable type 'Amplitude' in a '@Sendable' closure
401 | if let _plugin = plugin as? EventPlugin {
402 | _plugin.flush()
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:438:33: warning: capture of 'self' with non-sendable type 'Amplitude' in a '@Sendable' closure
7 | import Foundation
8 |
9 | public class Amplitude {
| `- note: class 'Amplitude' does not conform to the 'Sendable' protocol
10 |
11 | public private(set) var configuration: Configuration
:
436 | let sessionEvents: [BaseEvent]
437 | if timestamp >= 0 {
438 | sessionEvents = self.sessions.startNewSession(timestamp: timestamp)
| `- warning: capture of 'self' with non-sendable type 'Amplitude' in a '@Sendable' closure
439 | } else {
440 | sessionEvents = self.sessions.endCurrentSession()
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:445:44: warning: capture of 'identity' with non-sendable type 'Identity' in a '@Sendable' closure
443 | if !configuration.optOut {
444 | self.sessions.assignEventId(events: sessionEvents).forEach { e in
445 | e.userId = e.userId ?? identity.userId
| `- warning: capture of 'identity' with non-sendable type 'Identity' in a '@Sendable' closure
446 | e.deviceId = e.deviceId ?? identity.deviceId
447 | self.timeline.processEvent(event: e)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Identity.swift:14:15: note: consider making struct 'Identity' conform to the 'Sendable' protocol
12 | #endif
13 |
14 | public struct Identity: AnalyticsIdentity {
| `- note: consider making struct 'Identity' conform to the 'Sendable' protocol
15 | public var userId: String?
16 | public var deviceId: String?
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:445:44: warning: capture of 'identity' with non-sendable type 'Identity' in an isolated closure; this is an error in the Swift 6 language mode
443 | if !configuration.optOut {
444 | self.sessions.assignEventId(events: sessionEvents).forEach { e in
445 | e.userId = e.userId ?? identity.userId
| `- warning: capture of 'identity' with non-sendable type 'Identity' in an isolated closure; this is an error in the Swift 6 language mode
446 | e.deviceId = e.deviceId ?? identity.deviceId
447 | self.timeline.processEvent(event: e)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Identity.swift:14:15: note: consider making struct 'Identity' conform to the 'Sendable' protocol
12 | #endif
13 |
14 | public struct Identity: AnalyticsIdentity {
| `- note: consider making struct 'Identity' conform to the 'Sendable' protocol
15 | public var userId: String?
16 | public var deviceId: String?
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:447:21: warning: capture of 'self' with non-sendable type 'Amplitude' in an isolated closure; this is an error in the Swift 6 language mode
7 | import Foundation
8 |
9 | public class Amplitude {
| `- note: class 'Amplitude' does not conform to the 'Sendable' protocol
10 |
11 | public private(set) var configuration: Configuration
:
445 | e.userId = e.userId ?? identity.userId
446 | e.deviceId = e.deviceId ?? identity.deviceId
447 | self.timeline.processEvent(event: e)
| `- warning: capture of 'self' with non-sendable type 'Amplitude' in an isolated closure; this is an error in the Swift 6 language mode
448 | }
449 | }
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:445:44: warning: implicit capture of 'identity' requires that 'Identity' conforms to 'Sendable'; this is an error in the Swift 6 language mode
443 | if !configuration.optOut {
444 | self.sessions.assignEventId(events: sessionEvents).forEach { e in
445 | e.userId = e.userId ?? identity.userId
| `- warning: implicit capture of 'identity' requires that 'Identity' conforms to 'Sendable'; this is an error in the Swift 6 language mode
446 | e.deviceId = e.deviceId ?? identity.deviceId
447 | self.timeline.processEvent(event: e)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Identity.swift:14:15: note: consider making struct 'Identity' conform to the 'Sendable' protocol
12 | #endif
13 |
14 | public struct Identity: AnalyticsIdentity {
| `- note: consider making struct 'Identity' conform to the 'Sendable' protocol
15 | public var userId: String?
16 | public var deviceId: String?
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:446:48: warning: implicit capture of 'identity' requires that 'Identity' conforms to 'Sendable'; this is an error in the Swift 6 language mode
444 | self.sessions.assignEventId(events: sessionEvents).forEach { e in
445 | e.userId = e.userId ?? identity.userId
446 | e.deviceId = e.deviceId ?? identity.deviceId
| `- warning: implicit capture of 'identity' requires that 'Identity' conforms to 'Sendable'; this is an error in the Swift 6 language mode
447 | self.timeline.processEvent(event: e)
448 | }
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Identity.swift:14:15: note: consider making struct 'Identity' conform to the 'Sendable' protocol
12 | #endif
13 |
14 | public struct Identity: AnalyticsIdentity {
| `- note: consider making struct 'Identity' conform to the 'Sendable' protocol
15 | public var userId: String?
16 | public var deviceId: String?
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:491:26: warning: capture of 'self' with non-sendable type 'Amplitude' in a '@Sendable' closure
7 | import Foundation
8 |
9 | public class Amplitude {
| `- note: class 'Amplitude' does not conform to the 'Sendable' protocol
10 |
11 | public private(set) var configuration: Configuration
:
489 |
490 | trackingQueue.async { [self, identity, inForeground] in
491 | let events = self.sessions.processEvent(event: event, inForeground: inForeground)
| `- warning: capture of 'self' with non-sendable type 'Amplitude' in a '@Sendable' closure
492 | events.forEach { e in
493 | e.userId = e.userId ?? identity.userId
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:491:60: warning: capture of 'event' with non-sendable type 'BaseEvent' in a '@Sendable' closure
489 |
490 | trackingQueue.async { [self, identity, inForeground] in
491 | let events = self.sessions.processEvent(event: event, inForeground: inForeground)
| `- warning: capture of 'event' with non-sendable type 'BaseEvent' in a '@Sendable' closure
492 | events.forEach { e in
493 | e.userId = e.userId ?? identity.userId
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Events/BaseEvent.swift:15:12: note: class 'BaseEvent' does not conform to the 'Sendable' protocol
13 | import Foundation
14 |
15 | open class BaseEvent: EventOptions, AnalyticsEvent, Codable {
| `- note: class 'BaseEvent' does not conform to the 'Sendable' protocol
16 | public var eventType: String
17 | public var eventProperties: [String: Any]?
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:493:40: warning: capture of 'identity' with non-sendable type 'Identity' in a '@Sendable' closure
491 | let events = self.sessions.processEvent(event: event, inForeground: inForeground)
492 | events.forEach { e in
493 | e.userId = e.userId ?? identity.userId
| `- warning: capture of 'identity' with non-sendable type 'Identity' in a '@Sendable' closure
494 | e.deviceId = e.deviceId ?? identity.deviceId
495 | self.timeline.processEvent(event: e)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Identity.swift:14:15: note: consider making struct 'Identity' conform to the 'Sendable' protocol
12 | #endif
13 |
14 | public struct Identity: AnalyticsIdentity {
| `- note: consider making struct 'Identity' conform to the 'Sendable' protocol
15 | public var userId: String?
16 | public var deviceId: String?
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:493:40: warning: capture of 'identity' with non-sendable type 'Identity' in an isolated closure; this is an error in the Swift 6 language mode
491 | let events = self.sessions.processEvent(event: event, inForeground: inForeground)
492 | events.forEach { e in
493 | e.userId = e.userId ?? identity.userId
| `- warning: capture of 'identity' with non-sendable type 'Identity' in an isolated closure; this is an error in the Swift 6 language mode
494 | e.deviceId = e.deviceId ?? identity.deviceId
495 | self.timeline.processEvent(event: e)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Identity.swift:14:15: note: consider making struct 'Identity' conform to the 'Sendable' protocol
12 | #endif
13 |
14 | public struct Identity: AnalyticsIdentity {
| `- note: consider making struct 'Identity' conform to the 'Sendable' protocol
15 | public var userId: String?
16 | public var deviceId: String?
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:495:17: warning: capture of 'self' with non-sendable type 'Amplitude' in an isolated closure; this is an error in the Swift 6 language mode
7 | import Foundation
8 |
9 | public class Amplitude {
| `- note: class 'Amplitude' does not conform to the 'Sendable' protocol
10 |
11 | public private(set) var configuration: Configuration
:
493 | e.userId = e.userId ?? identity.userId
494 | e.deviceId = e.deviceId ?? identity.deviceId
495 | self.timeline.processEvent(event: e)
| `- warning: capture of 'self' with non-sendable type 'Amplitude' in an isolated closure; this is an error in the Swift 6 language mode
496 | }
497 | }
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:493:40: warning: implicit capture of 'identity' requires that 'Identity' conforms to 'Sendable'; this is an error in the Swift 6 language mode
491 | let events = self.sessions.processEvent(event: event, inForeground: inForeground)
492 | events.forEach { e in
493 | e.userId = e.userId ?? identity.userId
| `- warning: implicit capture of 'identity' requires that 'Identity' conforms to 'Sendable'; this is an error in the Swift 6 language mode
494 | e.deviceId = e.deviceId ?? identity.deviceId
495 | self.timeline.processEvent(event: e)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Identity.swift:14:15: note: consider making struct 'Identity' conform to the 'Sendable' protocol
12 | #endif
13 |
14 | public struct Identity: AnalyticsIdentity {
| `- note: consider making struct 'Identity' conform to the 'Sendable' protocol
15 | public var userId: String?
16 | public var deviceId: String?
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:494:44: warning: implicit capture of 'identity' requires that 'Identity' conforms to 'Sendable'; this is an error in the Swift 6 language mode
492 | events.forEach { e in
493 | e.userId = e.userId ?? identity.userId
494 | e.deviceId = e.deviceId ?? identity.deviceId
| `- warning: implicit capture of 'identity' requires that 'Identity' conforms to 'Sendable'; this is an error in the Swift 6 language mode
495 | self.timeline.processEvent(event: e)
496 | }
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Identity.swift:14:15: note: consider making struct 'Identity' conform to the 'Sendable' protocol
12 | #endif
13 |
14 | public struct Identity: AnalyticsIdentity {
| `- note: consider making struct 'Identity' conform to the 'Sendable' protocol
15 | public var userId: String?
16 | public var deviceId: String?
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:508:26: warning: capture of 'self' with non-sendable type 'Amplitude' in a '@Sendable' closure
7 | import Foundation
8 |
9 | public class Amplitude {
| `- note: class 'Amplitude' does not conform to the 'Sendable' protocol
10 |
11 | public private(set) var configuration: Configuration
:
506 | trackingQueue.async { [self, identity] in
507 | // set inForeground to false to represent state before event was fired
508 | let events = self.sessions.processEvent(event: dummySessionStartEvent, inForeground: false)
| `- warning: capture of 'self' with non-sendable type 'Amplitude' in a '@Sendable' closure
509 | if !configuration.optOut {
510 | events.forEach { e in
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:508:60: warning: capture of 'dummySessionStartEvent' with non-sendable type 'BaseEvent' in a '@Sendable' closure
506 | trackingQueue.async { [self, identity] in
507 | // set inForeground to false to represent state before event was fired
508 | let events = self.sessions.processEvent(event: dummySessionStartEvent, inForeground: false)
| `- warning: capture of 'dummySessionStartEvent' with non-sendable type 'BaseEvent' in a '@Sendable' closure
509 | if !configuration.optOut {
510 | events.forEach { e in
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Events/BaseEvent.swift:15:12: note: class 'BaseEvent' does not conform to the 'Sendable' protocol
13 | import Foundation
14 |
15 | open class BaseEvent: EventOptions, AnalyticsEvent, Codable {
| `- note: class 'BaseEvent' does not conform to the 'Sendable' protocol
16 | public var eventType: String
17 | public var eventProperties: [String: Any]?
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:511:44: warning: capture of 'identity' with non-sendable type 'Identity' in a '@Sendable' closure
509 | if !configuration.optOut {
510 | events.forEach { e in
511 | e.userId = e.userId ?? identity.userId
| `- warning: capture of 'identity' with non-sendable type 'Identity' in a '@Sendable' closure
512 | e.deviceId = e.deviceId ?? identity.deviceId
513 | self.timeline.processEvent(event: e)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Identity.swift:14:15: note: consider making struct 'Identity' conform to the 'Sendable' protocol
12 | #endif
13 |
14 | public struct Identity: AnalyticsIdentity {
| `- note: consider making struct 'Identity' conform to the 'Sendable' protocol
15 | public var userId: String?
16 | public var deviceId: String?
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:511:44: warning: capture of 'identity' with non-sendable type 'Identity' in an isolated closure; this is an error in the Swift 6 language mode
509 | if !configuration.optOut {
510 | events.forEach { e in
511 | e.userId = e.userId ?? identity.userId
| `- warning: capture of 'identity' with non-sendable type 'Identity' in an isolated closure; this is an error in the Swift 6 language mode
512 | e.deviceId = e.deviceId ?? identity.deviceId
513 | self.timeline.processEvent(event: e)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Identity.swift:14:15: note: consider making struct 'Identity' conform to the 'Sendable' protocol
12 | #endif
13 |
14 | public struct Identity: AnalyticsIdentity {
| `- note: consider making struct 'Identity' conform to the 'Sendable' protocol
15 | public var userId: String?
16 | public var deviceId: String?
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:513:21: warning: capture of 'self' with non-sendable type 'Amplitude' in an isolated closure; this is an error in the Swift 6 language mode
7 | import Foundation
8 |
9 | public class Amplitude {
| `- note: class 'Amplitude' does not conform to the 'Sendable' protocol
10 |
11 | public private(set) var configuration: Configuration
:
511 | e.userId = e.userId ?? identity.userId
512 | e.deviceId = e.deviceId ?? identity.deviceId
513 | self.timeline.processEvent(event: e)
| `- warning: capture of 'self' with non-sendable type 'Amplitude' in an isolated closure; this is an error in the Swift 6 language mode
514 | }
515 | }
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:511:44: warning: implicit capture of 'identity' requires that 'Identity' conforms to 'Sendable'; this is an error in the Swift 6 language mode
509 | if !configuration.optOut {
510 | events.forEach { e in
511 | e.userId = e.userId ?? identity.userId
| `- warning: implicit capture of 'identity' requires that 'Identity' conforms to 'Sendable'; this is an error in the Swift 6 language mode
512 | e.deviceId = e.deviceId ?? identity.deviceId
513 | self.timeline.processEvent(event: e)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Identity.swift:14:15: note: consider making struct 'Identity' conform to the 'Sendable' protocol
12 | #endif
13 |
14 | public struct Identity: AnalyticsIdentity {
| `- note: consider making struct 'Identity' conform to the 'Sendable' protocol
15 | public var userId: String?
16 | public var deviceId: String?
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:512:48: warning: implicit capture of 'identity' requires that 'Identity' conforms to 'Sendable'; this is an error in the Swift 6 language mode
510 | events.forEach { e in
511 | e.userId = e.userId ?? identity.userId
512 | e.deviceId = e.deviceId ?? identity.deviceId
| `- warning: implicit capture of 'identity' requires that 'Identity' conforms to 'Sendable'; this is an error in the Swift 6 language mode
513 | self.timeline.processEvent(event: e)
514 | }
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Identity.swift:14:15: note: consider making struct 'Identity' conform to the 'Sendable' protocol
12 | #endif
13 |
14 | public struct Identity: AnalyticsIdentity {
| `- note: consider making struct 'Identity' conform to the 'Sendable' protocol
15 | public var userId: String?
16 | public var deviceId: String?
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Amplitude.swift:522:13: warning: capture of 'self' with non-sendable type 'Amplitude' in a '@Sendable' closure
7 | import Foundation
8 |
9 | public class Amplitude {
| `- note: class 'Amplitude' does not conform to the 'Sendable' protocol
10 |
11 | public private(set) var configuration: Configuration
:
520 | inForeground = false
521 | trackingQueue.async { [self] in
522 | self.sessions.lastEventTime = timestamp
| `- warning: capture of 'self' with non-sendable type 'Amplitude' in a '@Sendable' closure
523 | }
524 | if configuration.flushEventsOnClose == true {
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/AutocaptureOptions.swift:10:23: warning: static property 'sessions' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public struct AutocaptureOptions: OptionSet {
| `- note: consider making struct 'AutocaptureOptions' conform to the 'Sendable' protocol
4 | public let rawValue: Int
5 |
:
8 | }
9 |
10 | public static let sessions = AutocaptureOptions(rawValue: 1 << 0)
| |- warning: static property 'sessions' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'sessions' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
11 | public static let appLifecycles = AutocaptureOptions(rawValue: 1 << 1)
12 | public static let screenViews = AutocaptureOptions(rawValue: 1 << 2)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/AutocaptureOptions.swift:11:23: warning: static property 'appLifecycles' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public struct AutocaptureOptions: OptionSet {
| `- note: consider making struct 'AutocaptureOptions' conform to the 'Sendable' protocol
4 | public let rawValue: Int
5 |
:
9 |
10 | public static let sessions = AutocaptureOptions(rawValue: 1 << 0)
11 | public static let appLifecycles = AutocaptureOptions(rawValue: 1 << 1)
| |- warning: static property 'appLifecycles' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'appLifecycles' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
12 | public static let screenViews = AutocaptureOptions(rawValue: 1 << 2)
13 | public static let elementInteractions = AutocaptureOptions(rawValue: 1 << 3)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/AutocaptureOptions.swift:12:23: warning: static property 'screenViews' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public struct AutocaptureOptions: OptionSet {
| `- note: consider making struct 'AutocaptureOptions' conform to the 'Sendable' protocol
4 | public let rawValue: Int
5 |
:
10 | public static let sessions = AutocaptureOptions(rawValue: 1 << 0)
11 | public static let appLifecycles = AutocaptureOptions(rawValue: 1 << 1)
12 | public static let screenViews = AutocaptureOptions(rawValue: 1 << 2)
| |- warning: static property 'screenViews' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'screenViews' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
13 | public static let elementInteractions = AutocaptureOptions(rawValue: 1 << 3)
14 | /// Won't work on watchOS
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/AutocaptureOptions.swift:13:23: warning: static property 'elementInteractions' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public struct AutocaptureOptions: OptionSet {
| `- note: consider making struct 'AutocaptureOptions' conform to the 'Sendable' protocol
4 | public let rawValue: Int
5 |
:
11 | public static let appLifecycles = AutocaptureOptions(rawValue: 1 << 1)
12 | public static let screenViews = AutocaptureOptions(rawValue: 1 << 2)
13 | public static let elementInteractions = AutocaptureOptions(rawValue: 1 << 3)
| |- warning: static property 'elementInteractions' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'elementInteractions' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
14 | /// Won't work on watchOS
15 | public static let networkTracking = AutocaptureOptions(rawValue: 1 << 4)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/AutocaptureOptions.swift:15:23: warning: static property 'networkTracking' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public struct AutocaptureOptions: OptionSet {
| `- note: consider making struct 'AutocaptureOptions' conform to the 'Sendable' protocol
4 | public let rawValue: Int
5 |
:
13 | public static let elementInteractions = AutocaptureOptions(rawValue: 1 << 3)
14 | /// Won't work on watchOS
15 | public static let networkTracking = AutocaptureOptions(rawValue: 1 << 4)
| |- warning: static property 'networkTracking' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'networkTracking' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
16 | /// Rage Click and Dead Click detection
17 | public static let frustrationInteractions = AutocaptureOptions(rawValue: 1 << 5)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/AutocaptureOptions.swift:17:23: warning: static property 'frustrationInteractions' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public struct AutocaptureOptions: OptionSet {
| `- note: consider making struct 'AutocaptureOptions' conform to the 'Sendable' protocol
4 | public let rawValue: Int
5 |
:
15 | public static let networkTracking = AutocaptureOptions(rawValue: 1 << 4)
16 | /// Rage Click and Dead Click detection
17 | public static let frustrationInteractions = AutocaptureOptions(rawValue: 1 << 5)
| |- warning: static property 'frustrationInteractions' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'frustrationInteractions' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
18 |
19 | public static let all: AutocaptureOptions = [
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/AutocaptureOptions.swift:19:23: warning: static property 'all' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public struct AutocaptureOptions: OptionSet {
| `- note: consider making struct 'AutocaptureOptions' conform to the 'Sendable' protocol
4 | public let rawValue: Int
5 |
:
17 | public static let frustrationInteractions = AutocaptureOptions(rawValue: 1 << 5)
18 |
19 | public static let all: AutocaptureOptions = [
| |- warning: static property 'all' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'all' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
20 | .sessions,
21 | .appLifecycles,
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Configuration.swift:32:27: warning: static property 'autocaptureOptions' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
30 | public static let flushEventsOnClose = true
31 | public static let maxQueuedEventCount = -1
32 | public static let autocaptureOptions: AutocaptureOptions = .sessions
| |- warning: static property 'autocaptureOptions' is not concurrency-safe because non-'Sendable' type 'AutocaptureOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'autocaptureOptions' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
33 | public static let migrateLegacyData = true
34 | public static let enableAutoCaptureRemoteConfig = true
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/AutocaptureOptions.swift:3:15: note: consider making struct 'AutocaptureOptions' conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public struct AutocaptureOptions: OptionSet {
| `- note: consider making struct 'AutocaptureOptions' conform to the 'Sendable' protocol
4 | public let rawValue: Int
5 |
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Configuration.swift:35:27: warning: static property 'trackingOptions' is not concurrency-safe because non-'Sendable' type 'TrackingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
33 | public static let migrateLegacyData = true
34 | public static let enableAutoCaptureRemoteConfig = true
35 | public static let trackingOptions = TrackingOptions()
| |- warning: static property 'trackingOptions' is not concurrency-safe because non-'Sendable' type 'TrackingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'trackingOptions' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
36 | public static let networkTrackingOptions = NetworkTrackingOptions.default
37 | public static let interactionsOptions = InteractionsOptions()
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/TrackingOptions.swift:10:14: note: class 'TrackingOptions' does not conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public class TrackingOptions {
| `- note: class 'TrackingOptions' does not conform to the 'Sendable' protocol
11 |
12 | public init() {}
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Configuration.swift:36:27: warning: static property 'networkTrackingOptions' is not concurrency-safe because non-'Sendable' type 'NetworkTrackingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
34 | public static let enableAutoCaptureRemoteConfig = true
35 | public static let trackingOptions = TrackingOptions()
36 | public static let networkTrackingOptions = NetworkTrackingOptions.default
| |- warning: static property 'networkTrackingOptions' is not concurrency-safe because non-'Sendable' type 'NetworkTrackingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'networkTrackingOptions' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
37 | public static let interactionsOptions = InteractionsOptions()
38 | public static let enableDiagnostics = true
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkTrackingPlugin.swift:68:15: note: consider making struct 'NetworkTrackingOptions' conform to the 'Sendable' protocol
66 | ]
67 |
68 | public struct NetworkTrackingOptions {
| `- note: consider making struct 'NetworkTrackingOptions' conform to the 'Sendable' protocol
69 | public enum URLPattern {
70 | case exact(String)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Configuration.swift:37:27: warning: static property 'interactionsOptions' is not concurrency-safe because non-'Sendable' type 'InteractionsOptions' may have shared mutable state; this is an error in the Swift 6 language mode
35 | public static let trackingOptions = TrackingOptions()
36 | public static let networkTrackingOptions = NetworkTrackingOptions.default
37 | public static let interactionsOptions = InteractionsOptions()
| |- warning: static property 'interactionsOptions' is not concurrency-safe because non-'Sendable' type 'InteractionsOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'interactionsOptions' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
38 | public static let enableDiagnostics = true
39 | public static let enableRequestBodyCompression = false
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/InteractionsOptions.swift:10:14: note: class 'InteractionsOptions' does not conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public class InteractionsOptions {
| `- note: class 'InteractionsOptions' does not conform to the 'Sendable' protocol
11 | public let rageClick: RageClickOptions
12 | public let deadClick: DeadClickOptions
[80/97] Compiling AmplitudeSwift ObjCPlan.swift
[81/97] Compiling AmplitudeSwift ObjCPlugin.swift
[82/97] Compiling AmplitudeSwift ObjCProperties.swift
[83/97] Compiling AmplitudeSwift ObjCRevenue.swift
[84/97] Compiling AmplitudeSwift ObjCScreenViewedEvent.swift
[85/97] Compiling AmplitudeSwift ObjCStorage.swift
[86/97] Compiling AmplitudeSwift ObjCTrackingOptions.swift
[87/97] Compiling AmplitudeSwift AmplitudeDestinationPlugin.swift
[88/97] Compiling AmplitudeSwift AnalyticsConnectorIdentityPlugin.swift
[89/97] Compiling AmplitudeSwift AnalyticsConnectorPlugin.swift
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/ContextPlugin.swift:14:25: warning: static property 'device' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
12 |
13 | class ContextPlugin: BeforePlugin {
14 | internal static var device = VendorSystem.current
| |- warning: static property 'device' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'device' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'device' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
15 |
16 | override func setup(amplitude: Amplitude) {
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/Mac/MacOSLifecycleMonitor.swift:20:46: warning: main actor-isolated class property 'shared' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
18 |
19 | override init() {
20 | self.application = NSApplication.shared
| `- warning: main actor-isolated class property 'shared' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
21 | super.init()
22 | setupListeners()
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSApplication.h:193:61: note: class property declared here
191 | APPKIT_EXTERN __kindof NSApplication * _Null_unspecified NSApp NS_SWIFT_UI_ACTOR;
192 |
193 | @property (class, readonly, strong) __kindof NSApplication *sharedApplication;
| `- note: class property declared here
194 | @property (nullable, weak) id<NSApplicationDelegate> delegate;
195 |
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkConnectivityCheckerPlugin.swift:34:35: warning: converting non-sendable function value to '@Sendable (NWPath) -> Void' may introduce data races
32 |
33 | func start(queue: DispatchQueue) {
34 | monitor.pathUpdateHandler = subject.send
| `- warning: converting non-sendable function value to '@Sendable (NWPath) -> Void' may introduce data races
35 | networkPathPublisher = subject
36 | .map { NetworkPath(status: $0.status) }
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkTrackingPlugin.swift:434:13: warning: var 'sendTimeKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
432 |
433 | // Key for associated object
434 | private var sendTimeKey: UInt8 = 0
| |- warning: var 'sendTimeKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'sendTimeKey' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make var 'sendTimeKey' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
435 | private var responseDataKey: UInt8 = 0
436 |
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkTrackingPlugin.swift:435:13: warning: var 'responseDataKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
433 | // Key for associated object
434 | private var sendTimeKey: UInt8 = 0
435 | private var responseDataKey: UInt8 = 0
| |- warning: var 'responseDataKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'responseDataKey' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make var 'responseDataKey' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
436 |
437 | extension URLSessionTask {
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkTrackingPlugin.swift:411:78: warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
409 | if rule.responseBody != nil {
410 | // onDataTaskCompletion is called earlier than onTask, add delay to make response body capture more stable
411 | networkTrackingQueue.asyncAfter(deadline: .now() + 0.1, execute: sendEventAction)
| `- warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
412 | } else {
413 | networkTrackingQueue.async(execute: sendEventAction)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkTrackingPlugin.swift:413:49: warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
411 | networkTrackingQueue.asyncAfter(deadline: .now() + 0.1, execute: sendEventAction)
412 | } else {
413 | networkTrackingQueue.async(execute: sendEventAction)
| `- warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
414 | }
415 | }
[90/97] Compiling AmplitudeSwift BasePlugins.swift
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/ContextPlugin.swift:14:25: warning: static property 'device' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
12 |
13 | class ContextPlugin: BeforePlugin {
14 | internal static var device = VendorSystem.current
| |- warning: static property 'device' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'device' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'device' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
15 |
16 | override func setup(amplitude: Amplitude) {
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/Mac/MacOSLifecycleMonitor.swift:20:46: warning: main actor-isolated class property 'shared' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
18 |
19 | override init() {
20 | self.application = NSApplication.shared
| `- warning: main actor-isolated class property 'shared' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
21 | super.init()
22 | setupListeners()
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSApplication.h:193:61: note: class property declared here
191 | APPKIT_EXTERN __kindof NSApplication * _Null_unspecified NSApp NS_SWIFT_UI_ACTOR;
192 |
193 | @property (class, readonly, strong) __kindof NSApplication *sharedApplication;
| `- note: class property declared here
194 | @property (nullable, weak) id<NSApplicationDelegate> delegate;
195 |
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkConnectivityCheckerPlugin.swift:34:35: warning: converting non-sendable function value to '@Sendable (NWPath) -> Void' may introduce data races
32 |
33 | func start(queue: DispatchQueue) {
34 | monitor.pathUpdateHandler = subject.send
| `- warning: converting non-sendable function value to '@Sendable (NWPath) -> Void' may introduce data races
35 | networkPathPublisher = subject
36 | .map { NetworkPath(status: $0.status) }
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkTrackingPlugin.swift:434:13: warning: var 'sendTimeKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
432 |
433 | // Key for associated object
434 | private var sendTimeKey: UInt8 = 0
| |- warning: var 'sendTimeKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'sendTimeKey' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make var 'sendTimeKey' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
435 | private var responseDataKey: UInt8 = 0
436 |
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkTrackingPlugin.swift:435:13: warning: var 'responseDataKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
433 | // Key for associated object
434 | private var sendTimeKey: UInt8 = 0
435 | private var responseDataKey: UInt8 = 0
| |- warning: var 'responseDataKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'responseDataKey' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make var 'responseDataKey' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
436 |
437 | extension URLSessionTask {
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkTrackingPlugin.swift:411:78: warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
409 | if rule.responseBody != nil {
410 | // onDataTaskCompletion is called earlier than onTask, add delay to make response body capture more stable
411 | networkTrackingQueue.asyncAfter(deadline: .now() + 0.1, execute: sendEventAction)
| `- warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
412 | } else {
413 | networkTrackingQueue.async(execute: sendEventAction)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkTrackingPlugin.swift:413:49: warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
411 | networkTrackingQueue.asyncAfter(deadline: .now() + 0.1, execute: sendEventAction)
412 | } else {
413 | networkTrackingQueue.async(execute: sendEventAction)
| `- warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
414 | }
415 | }
[91/97] Compiling AmplitudeSwift ContextPlugin.swift
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/ContextPlugin.swift:14:25: warning: static property 'device' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
12 |
13 | class ContextPlugin: BeforePlugin {
14 | internal static var device = VendorSystem.current
| |- warning: static property 'device' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'device' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'device' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
15 |
16 | override func setup(amplitude: Amplitude) {
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/Mac/MacOSLifecycleMonitor.swift:20:46: warning: main actor-isolated class property 'shared' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
18 |
19 | override init() {
20 | self.application = NSApplication.shared
| `- warning: main actor-isolated class property 'shared' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
21 | super.init()
22 | setupListeners()
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSApplication.h:193:61: note: class property declared here
191 | APPKIT_EXTERN __kindof NSApplication * _Null_unspecified NSApp NS_SWIFT_UI_ACTOR;
192 |
193 | @property (class, readonly, strong) __kindof NSApplication *sharedApplication;
| `- note: class property declared here
194 | @property (nullable, weak) id<NSApplicationDelegate> delegate;
195 |
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkConnectivityCheckerPlugin.swift:34:35: warning: converting non-sendable function value to '@Sendable (NWPath) -> Void' may introduce data races
32 |
33 | func start(queue: DispatchQueue) {
34 | monitor.pathUpdateHandler = subject.send
| `- warning: converting non-sendable function value to '@Sendable (NWPath) -> Void' may introduce data races
35 | networkPathPublisher = subject
36 | .map { NetworkPath(status: $0.status) }
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkTrackingPlugin.swift:434:13: warning: var 'sendTimeKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
432 |
433 | // Key for associated object
434 | private var sendTimeKey: UInt8 = 0
| |- warning: var 'sendTimeKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'sendTimeKey' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make var 'sendTimeKey' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
435 | private var responseDataKey: UInt8 = 0
436 |
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkTrackingPlugin.swift:435:13: warning: var 'responseDataKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
433 | // Key for associated object
434 | private var sendTimeKey: UInt8 = 0
435 | private var responseDataKey: UInt8 = 0
| |- warning: var 'responseDataKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'responseDataKey' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make var 'responseDataKey' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
436 |
437 | extension URLSessionTask {
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkTrackingPlugin.swift:411:78: warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
409 | if rule.responseBody != nil {
410 | // onDataTaskCompletion is called earlier than onTask, add delay to make response body capture more stable
411 | networkTrackingQueue.asyncAfter(deadline: .now() + 0.1, execute: sendEventAction)
| `- warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
412 | } else {
413 | networkTrackingQueue.async(execute: sendEventAction)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkTrackingPlugin.swift:413:49: warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
411 | networkTrackingQueue.asyncAfter(deadline: .now() + 0.1, execute: sendEventAction)
412 | } else {
413 | networkTrackingQueue.async(execute: sendEventAction)
| `- warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
414 | }
415 | }
[92/97] Compiling AmplitudeSwift DestinationPlugin.swift
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/ContextPlugin.swift:14:25: warning: static property 'device' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
12 |
13 | class ContextPlugin: BeforePlugin {
14 | internal static var device = VendorSystem.current
| |- warning: static property 'device' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'device' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'device' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
15 |
16 | override func setup(amplitude: Amplitude) {
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/Mac/MacOSLifecycleMonitor.swift:20:46: warning: main actor-isolated class property 'shared' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
18 |
19 | override init() {
20 | self.application = NSApplication.shared
| `- warning: main actor-isolated class property 'shared' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
21 | super.init()
22 | setupListeners()
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSApplication.h:193:61: note: class property declared here
191 | APPKIT_EXTERN __kindof NSApplication * _Null_unspecified NSApp NS_SWIFT_UI_ACTOR;
192 |
193 | @property (class, readonly, strong) __kindof NSApplication *sharedApplication;
| `- note: class property declared here
194 | @property (nullable, weak) id<NSApplicationDelegate> delegate;
195 |
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkConnectivityCheckerPlugin.swift:34:35: warning: converting non-sendable function value to '@Sendable (NWPath) -> Void' may introduce data races
32 |
33 | func start(queue: DispatchQueue) {
34 | monitor.pathUpdateHandler = subject.send
| `- warning: converting non-sendable function value to '@Sendable (NWPath) -> Void' may introduce data races
35 | networkPathPublisher = subject
36 | .map { NetworkPath(status: $0.status) }
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkTrackingPlugin.swift:434:13: warning: var 'sendTimeKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
432 |
433 | // Key for associated object
434 | private var sendTimeKey: UInt8 = 0
| |- warning: var 'sendTimeKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'sendTimeKey' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make var 'sendTimeKey' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
435 | private var responseDataKey: UInt8 = 0
436 |
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkTrackingPlugin.swift:435:13: warning: var 'responseDataKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
433 | // Key for associated object
434 | private var sendTimeKey: UInt8 = 0
435 | private var responseDataKey: UInt8 = 0
| |- warning: var 'responseDataKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'responseDataKey' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make var 'responseDataKey' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
436 |
437 | extension URLSessionTask {
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkTrackingPlugin.swift:411:78: warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
409 | if rule.responseBody != nil {
410 | // onDataTaskCompletion is called earlier than onTask, add delay to make response body capture more stable
411 | networkTrackingQueue.asyncAfter(deadline: .now() + 0.1, execute: sendEventAction)
| `- warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
412 | } else {
413 | networkTrackingQueue.async(execute: sendEventAction)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkTrackingPlugin.swift:413:49: warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
411 | networkTrackingQueue.asyncAfter(deadline: .now() + 0.1, execute: sendEventAction)
412 | } else {
413 | networkTrackingQueue.async(execute: sendEventAction)
| `- warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
414 | }
415 | }
[93/97] Compiling AmplitudeSwift IdentityEventSender.swift
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/ContextPlugin.swift:14:25: warning: static property 'device' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
12 |
13 | class ContextPlugin: BeforePlugin {
14 | internal static var device = VendorSystem.current
| |- warning: static property 'device' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'device' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'device' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
15 |
16 | override func setup(amplitude: Amplitude) {
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/Mac/MacOSLifecycleMonitor.swift:20:46: warning: main actor-isolated class property 'shared' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
18 |
19 | override init() {
20 | self.application = NSApplication.shared
| `- warning: main actor-isolated class property 'shared' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
21 | super.init()
22 | setupListeners()
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSApplication.h:193:61: note: class property declared here
191 | APPKIT_EXTERN __kindof NSApplication * _Null_unspecified NSApp NS_SWIFT_UI_ACTOR;
192 |
193 | @property (class, readonly, strong) __kindof NSApplication *sharedApplication;
| `- note: class property declared here
194 | @property (nullable, weak) id<NSApplicationDelegate> delegate;
195 |
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkConnectivityCheckerPlugin.swift:34:35: warning: converting non-sendable function value to '@Sendable (NWPath) -> Void' may introduce data races
32 |
33 | func start(queue: DispatchQueue) {
34 | monitor.pathUpdateHandler = subject.send
| `- warning: converting non-sendable function value to '@Sendable (NWPath) -> Void' may introduce data races
35 | networkPathPublisher = subject
36 | .map { NetworkPath(status: $0.status) }
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkTrackingPlugin.swift:434:13: warning: var 'sendTimeKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
432 |
433 | // Key for associated object
434 | private var sendTimeKey: UInt8 = 0
| |- warning: var 'sendTimeKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'sendTimeKey' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make var 'sendTimeKey' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
435 | private var responseDataKey: UInt8 = 0
436 |
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkTrackingPlugin.swift:435:13: warning: var 'responseDataKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
433 | // Key for associated object
434 | private var sendTimeKey: UInt8 = 0
435 | private var responseDataKey: UInt8 = 0
| |- warning: var 'responseDataKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'responseDataKey' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make var 'responseDataKey' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
436 |
437 | extension URLSessionTask {
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkTrackingPlugin.swift:411:78: warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
409 | if rule.responseBody != nil {
410 | // onDataTaskCompletion is called earlier than onTask, add delay to make response body capture more stable
411 | networkTrackingQueue.asyncAfter(deadline: .now() + 0.1, execute: sendEventAction)
| `- warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
412 | } else {
413 | networkTrackingQueue.async(execute: sendEventAction)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkTrackingPlugin.swift:413:49: warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
411 | networkTrackingQueue.asyncAfter(deadline: .now() + 0.1, execute: sendEventAction)
412 | } else {
413 | networkTrackingQueue.async(execute: sendEventAction)
| `- warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
414 | }
415 | }
[94/97] Compiling AmplitudeSwift MacOSLifecycleMonitor.swift
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/ContextPlugin.swift:14:25: warning: static property 'device' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
12 |
13 | class ContextPlugin: BeforePlugin {
14 | internal static var device = VendorSystem.current
| |- warning: static property 'device' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'device' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'device' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
15 |
16 | override func setup(amplitude: Amplitude) {
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/Mac/MacOSLifecycleMonitor.swift:20:46: warning: main actor-isolated class property 'shared' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
18 |
19 | override init() {
20 | self.application = NSApplication.shared
| `- warning: main actor-isolated class property 'shared' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
21 | super.init()
22 | setupListeners()
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSApplication.h:193:61: note: class property declared here
191 | APPKIT_EXTERN __kindof NSApplication * _Null_unspecified NSApp NS_SWIFT_UI_ACTOR;
192 |
193 | @property (class, readonly, strong) __kindof NSApplication *sharedApplication;
| `- note: class property declared here
194 | @property (nullable, weak) id<NSApplicationDelegate> delegate;
195 |
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkConnectivityCheckerPlugin.swift:34:35: warning: converting non-sendable function value to '@Sendable (NWPath) -> Void' may introduce data races
32 |
33 | func start(queue: DispatchQueue) {
34 | monitor.pathUpdateHandler = subject.send
| `- warning: converting non-sendable function value to '@Sendable (NWPath) -> Void' may introduce data races
35 | networkPathPublisher = subject
36 | .map { NetworkPath(status: $0.status) }
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkTrackingPlugin.swift:434:13: warning: var 'sendTimeKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
432 |
433 | // Key for associated object
434 | private var sendTimeKey: UInt8 = 0
| |- warning: var 'sendTimeKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'sendTimeKey' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make var 'sendTimeKey' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
435 | private var responseDataKey: UInt8 = 0
436 |
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkTrackingPlugin.swift:435:13: warning: var 'responseDataKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
433 | // Key for associated object
434 | private var sendTimeKey: UInt8 = 0
435 | private var responseDataKey: UInt8 = 0
| |- warning: var 'responseDataKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'responseDataKey' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make var 'responseDataKey' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
436 |
437 | extension URLSessionTask {
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkTrackingPlugin.swift:411:78: warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
409 | if rule.responseBody != nil {
410 | // onDataTaskCompletion is called earlier than onTask, add delay to make response body capture more stable
411 | networkTrackingQueue.asyncAfter(deadline: .now() + 0.1, execute: sendEventAction)
| `- warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
412 | } else {
413 | networkTrackingQueue.async(execute: sendEventAction)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkTrackingPlugin.swift:413:49: warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
411 | networkTrackingQueue.asyncAfter(deadline: .now() + 0.1, execute: sendEventAction)
412 | } else {
413 | networkTrackingQueue.async(execute: sendEventAction)
| `- warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
414 | }
415 | }
[95/97] Compiling AmplitudeSwift NetworkConnectivityCheckerPlugin.swift
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/ContextPlugin.swift:14:25: warning: static property 'device' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
12 |
13 | class ContextPlugin: BeforePlugin {
14 | internal static var device = VendorSystem.current
| |- warning: static property 'device' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'device' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'device' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
15 |
16 | override func setup(amplitude: Amplitude) {
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/Mac/MacOSLifecycleMonitor.swift:20:46: warning: main actor-isolated class property 'shared' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
18 |
19 | override init() {
20 | self.application = NSApplication.shared
| `- warning: main actor-isolated class property 'shared' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
21 | super.init()
22 | setupListeners()
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSApplication.h:193:61: note: class property declared here
191 | APPKIT_EXTERN __kindof NSApplication * _Null_unspecified NSApp NS_SWIFT_UI_ACTOR;
192 |
193 | @property (class, readonly, strong) __kindof NSApplication *sharedApplication;
| `- note: class property declared here
194 | @property (nullable, weak) id<NSApplicationDelegate> delegate;
195 |
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkConnectivityCheckerPlugin.swift:34:35: warning: converting non-sendable function value to '@Sendable (NWPath) -> Void' may introduce data races
32 |
33 | func start(queue: DispatchQueue) {
34 | monitor.pathUpdateHandler = subject.send
| `- warning: converting non-sendable function value to '@Sendable (NWPath) -> Void' may introduce data races
35 | networkPathPublisher = subject
36 | .map { NetworkPath(status: $0.status) }
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkTrackingPlugin.swift:434:13: warning: var 'sendTimeKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
432 |
433 | // Key for associated object
434 | private var sendTimeKey: UInt8 = 0
| |- warning: var 'sendTimeKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'sendTimeKey' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make var 'sendTimeKey' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
435 | private var responseDataKey: UInt8 = 0
436 |
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkTrackingPlugin.swift:435:13: warning: var 'responseDataKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
433 | // Key for associated object
434 | private var sendTimeKey: UInt8 = 0
435 | private var responseDataKey: UInt8 = 0
| |- warning: var 'responseDataKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'responseDataKey' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make var 'responseDataKey' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
436 |
437 | extension URLSessionTask {
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkTrackingPlugin.swift:411:78: warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
409 | if rule.responseBody != nil {
410 | // onDataTaskCompletion is called earlier than onTask, add delay to make response body capture more stable
411 | networkTrackingQueue.asyncAfter(deadline: .now() + 0.1, execute: sendEventAction)
| `- warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
412 | } else {
413 | networkTrackingQueue.async(execute: sendEventAction)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkTrackingPlugin.swift:413:49: warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
411 | networkTrackingQueue.asyncAfter(deadline: .now() + 0.1, execute: sendEventAction)
412 | } else {
413 | networkTrackingQueue.async(execute: sendEventAction)
| `- warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
414 | }
415 | }
[96/97] Compiling AmplitudeSwift NetworkTrackingPlugin.swift
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/ContextPlugin.swift:14:25: warning: static property 'device' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
12 |
13 | class ContextPlugin: BeforePlugin {
14 | internal static var device = VendorSystem.current
| |- warning: static property 'device' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'device' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'device' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
15 |
16 | override func setup(amplitude: Amplitude) {
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/Mac/MacOSLifecycleMonitor.swift:20:46: warning: main actor-isolated class property 'shared' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
18 |
19 | override init() {
20 | self.application = NSApplication.shared
| `- warning: main actor-isolated class property 'shared' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
21 | super.init()
22 | setupListeners()
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSApplication.h:193:61: note: class property declared here
191 | APPKIT_EXTERN __kindof NSApplication * _Null_unspecified NSApp NS_SWIFT_UI_ACTOR;
192 |
193 | @property (class, readonly, strong) __kindof NSApplication *sharedApplication;
| `- note: class property declared here
194 | @property (nullable, weak) id<NSApplicationDelegate> delegate;
195 |
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkConnectivityCheckerPlugin.swift:34:35: warning: converting non-sendable function value to '@Sendable (NWPath) -> Void' may introduce data races
32 |
33 | func start(queue: DispatchQueue) {
34 | monitor.pathUpdateHandler = subject.send
| `- warning: converting non-sendable function value to '@Sendable (NWPath) -> Void' may introduce data races
35 | networkPathPublisher = subject
36 | .map { NetworkPath(status: $0.status) }
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkTrackingPlugin.swift:434:13: warning: var 'sendTimeKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
432 |
433 | // Key for associated object
434 | private var sendTimeKey: UInt8 = 0
| |- warning: var 'sendTimeKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'sendTimeKey' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make var 'sendTimeKey' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
435 | private var responseDataKey: UInt8 = 0
436 |
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkTrackingPlugin.swift:435:13: warning: var 'responseDataKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
433 | // Key for associated object
434 | private var sendTimeKey: UInt8 = 0
435 | private var responseDataKey: UInt8 = 0
| |- warning: var 'responseDataKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'responseDataKey' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make var 'responseDataKey' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
436 |
437 | extension URLSessionTask {
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkTrackingPlugin.swift:411:78: warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
409 | if rule.responseBody != nil {
410 | // onDataTaskCompletion is called earlier than onTask, add delay to make response body capture more stable
411 | networkTrackingQueue.asyncAfter(deadline: .now() + 0.1, execute: sendEventAction)
| `- warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
412 | } else {
413 | networkTrackingQueue.async(execute: sendEventAction)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkTrackingPlugin.swift:413:49: warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
411 | networkTrackingQueue.asyncAfter(deadline: .now() + 0.1, execute: sendEventAction)
412 | } else {
413 | networkTrackingQueue.async(execute: sendEventAction)
| `- warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
414 | }
415 | }
[97/97] Compiling AmplitudeSwift AppUtil.swift
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/ContextPlugin.swift:14:25: warning: static property 'device' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
12 |
13 | class ContextPlugin: BeforePlugin {
14 | internal static var device = VendorSystem.current
| |- warning: static property 'device' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'device' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'device' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
15 |
16 | override func setup(amplitude: Amplitude) {
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/Mac/MacOSLifecycleMonitor.swift:20:46: warning: main actor-isolated class property 'shared' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
18 |
19 | override init() {
20 | self.application = NSApplication.shared
| `- warning: main actor-isolated class property 'shared' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
21 | super.init()
22 | setupListeners()
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSApplication.h:193:61: note: class property declared here
191 | APPKIT_EXTERN __kindof NSApplication * _Null_unspecified NSApp NS_SWIFT_UI_ACTOR;
192 |
193 | @property (class, readonly, strong) __kindof NSApplication *sharedApplication;
| `- note: class property declared here
194 | @property (nullable, weak) id<NSApplicationDelegate> delegate;
195 |
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkConnectivityCheckerPlugin.swift:34:35: warning: converting non-sendable function value to '@Sendable (NWPath) -> Void' may introduce data races
32 |
33 | func start(queue: DispatchQueue) {
34 | monitor.pathUpdateHandler = subject.send
| `- warning: converting non-sendable function value to '@Sendable (NWPath) -> Void' may introduce data races
35 | networkPathPublisher = subject
36 | .map { NetworkPath(status: $0.status) }
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkTrackingPlugin.swift:434:13: warning: var 'sendTimeKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
432 |
433 | // Key for associated object
434 | private var sendTimeKey: UInt8 = 0
| |- warning: var 'sendTimeKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'sendTimeKey' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make var 'sendTimeKey' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
435 | private var responseDataKey: UInt8 = 0
436 |
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkTrackingPlugin.swift:435:13: warning: var 'responseDataKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
433 | // Key for associated object
434 | private var sendTimeKey: UInt8 = 0
435 | private var responseDataKey: UInt8 = 0
| |- warning: var 'responseDataKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'responseDataKey' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make var 'responseDataKey' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
436 |
437 | extension URLSessionTask {
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkTrackingPlugin.swift:411:78: warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
409 | if rule.responseBody != nil {
410 | // onDataTaskCompletion is called earlier than onTask, add delay to make response body capture more stable
411 | networkTrackingQueue.asyncAfter(deadline: .now() + 0.1, execute: sendEventAction)
| `- warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
412 | } else {
413 | networkTrackingQueue.async(execute: sendEventAction)
/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/Plugins/NetworkTrackingPlugin.swift:413:49: warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
411 | networkTrackingQueue.asyncAfter(deadline: .now() + 0.1, execute: sendEventAction)
412 | } else {
413 | networkTrackingQueue.async(execute: sendEventAction)
| `- warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
414 | }
415 | }
Build complete! (18.68s)
Fetching https://github.com/amplitude/analytics-connector-ios.git
Fetching https://github.com/amplitude/AmplitudeCore-Swift.git
[1/425] Fetching analytics-connector-ios
[346/1629] Fetching analytics-connector-ios, amplitudecore-swift
Fetched https://github.com/amplitude/analytics-connector-ios.git from cache (0.83s)
Fetched https://github.com/amplitude/AmplitudeCore-Swift.git from cache (0.83s)
Computing version for https://github.com/amplitude/analytics-connector-ios.git
Computed https://github.com/amplitude/analytics-connector-ios.git at 1.3.1 (1.38s)
Computing version for https://github.com/amplitude/AmplitudeCore-Swift.git
warning: 'amplitudecore-swift': /Package@swift-5.9.swift:9:15: warning: 'v11' is deprecated: iOS 12.0 is the oldest supported version
7 | platforms: [
8 | .macOS(.v10_13),
9 | .iOS(.v11),
| `- warning: 'v11' is deprecated: iOS 12.0 is the oldest supported version
10 | .tvOS(.v11),
11 | .watchOS(.v4),
/Package@swift-5.9.swift:10:16: warning: 'v11' is deprecated: tvOS 12.0 is the oldest supported version
8 | .macOS(.v10_13),
9 | .iOS(.v11),
10 | .tvOS(.v11),
| `- warning: 'v11' is deprecated: tvOS 12.0 is the oldest supported version
11 | .watchOS(.v4),
12 | .visionOS(.v1),
Computed https://github.com/amplitude/AmplitudeCore-Swift.git at 1.4.5 (0.52s)
Creating working copy for https://github.com/amplitude/AmplitudeCore-Swift.git
Working copy of https://github.com/amplitude/AmplitudeCore-Swift.git resolved at 1.4.5
Creating working copy for https://github.com/amplitude/analytics-connector-ios.git
Working copy of https://github.com/amplitude/analytics-connector-ios.git resolved at 1.3.1
warning: 'amplitudecore-swift': /Users/admin/builder/spi-builder-workspace/.build/checkouts/AmplitudeCore-Swift/Package@swift-5.9.swift:9:15: warning: 'v11' is deprecated: iOS 12.0 is the oldest supported version
7 | platforms: [
8 | .macOS(.v10_13),
9 | .iOS(.v11),
| `- warning: 'v11' is deprecated: iOS 12.0 is the oldest supported version
10 | .tvOS(.v11),
11 | .watchOS(.v4),
/Users/admin/builder/spi-builder-workspace/.build/checkouts/AmplitudeCore-Swift/Package@swift-5.9.swift:10:16: warning: 'v11' is deprecated: tvOS 12.0 is the oldest supported version
8 | .macOS(.v10_13),
9 | .iOS(.v11),
10 | .tvOS(.v11),
| `- warning: 'v11' is deprecated: tvOS 12.0 is the oldest supported version
11 | .watchOS(.v4),
12 | .visionOS(.v1),
Downloading binary artifact https://github.com/amplitude/AmplitudeCore-Swift/releases/download/v1.4.5/AmplitudeCore.zip
Downloading binary artifact https://github.com/amplitude/analytics-connector-ios/releases/download/v1.3.1/AnalyticsConnector.xcframework.zip
Downloading binary artifact https://github.com/amplitude/AmplitudeCore-Swift/releases/download/v1.4.5/AmplitudeCoreNoUIKit.zip
[16375/7515307] Downloading https://github.com/amplitude/analytics-connector-ios/releases/download/v1.3.1/AnalyticsConnector.xcframework.zip
[7524255/24473461] Downloading https://github.com/amplitude/analytics-connector-ios/releases/download/v1.3.1/AnalyticsConnector.xcframework.zip, https://github.com/amplitude/AmplitudeCore-Swift/releases/download/v1.4.5/AmplitudeCoreNoUIKit.zip
[7588990/43811395] Downloading https://github.com/amplitude/analytics-connector-ios/releases/download/v1.3.1/AnalyticsConnector.xcframework.zip, https://github.com/amplitude/AmplitudeCore-Swift/releases/download/v1.4.5/AmplitudeCoreNoUIKit.zip, https://github.com/amplitude/AmplitudeCore-Swift/releases/download/v1.4.5/AmplitudeCore.zip
Downloaded https://github.com/amplitude/analytics-connector-ios/releases/download/v1.3.1/AnalyticsConnector.xcframework.zip (1.23s)
[30136874/36296088] Downloading https://github.com/amplitude/AmplitudeCore-Swift/releases/download/v1.4.5/AmplitudeCoreNoUIKit.zip, https://github.com/amplitude/AmplitudeCore-Swift/releases/download/v1.4.5/AmplitudeCore.zip
Downloaded https://github.com/amplitude/AmplitudeCore-Swift/releases/download/v1.4.5/AmplitudeCore.zip (2.00s)
Downloaded https://github.com/amplitude/AmplitudeCore-Swift/releases/download/v1.4.5/AmplitudeCoreNoUIKit.zip (2.31s)
Build complete.
{
"dependencies" : [
{
"identity" : "analytics-connector-ios",
"requirement" : {
"range" : [
{
"lower_bound" : "1.3.0",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/amplitude/analytics-connector-ios.git"
},
{
"identity" : "amplitudecore-swift",
"requirement" : {
"range" : [
{
"lower_bound" : "1.4.1",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/amplitude/AmplitudeCore-Swift.git"
}
],
"manifest_display_name" : "Amplitude-Swift",
"name" : "Amplitude-Swift",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "10.15"
},
{
"name" : "ios",
"version" : "13.0"
},
{
"name" : "tvos",
"version" : "13.0"
},
{
"name" : "watchos",
"version" : "7.0"
},
{
"name" : "visionos",
"version" : "1.0"
}
],
"products" : [
{
"name" : "AmplitudeSwift",
"targets" : [
"AmplitudeSwift"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "AmplitudeSwift",
"module_type" : "SwiftTarget",
"name" : "AmplitudeSwift",
"path" : "Sources/Amplitude",
"product_dependencies" : [
"AmplitudeCoreFramework",
"AnalyticsConnector"
],
"product_memberships" : [
"AmplitudeSwift"
],
"resources" : [
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/Amplitude/PrivacyInfo.xcprivacy",
"rule" : {
"copy" : {
}
}
}
],
"sources" : [
"Amplitude.swift",
"AutocaptureOptions.swift",
"Configuration.swift",
"ConsoleLogger.swift",
"Constants.swift",
"DefaultTrackingOptions.swift",
"Events/BaseEvent.swift",
"Events/DeepLinkOpenedEvent.swift",
"Events/ElementInteractionEvent.swift",
"Events/EventOptions.swift",
"Events/GroupIdentifyEvent.swift",
"Events/Identify.swift",
"Events/IdentifyEvent.swift",
"Events/NetworkRequestEvent.swift",
"Events/Revenue.swift",
"Events/RevenueEvent.swift",
"Events/ScreenViewedEvent.swift",
"Identity.swift",
"InteractionsOptions.swift",
"Mediator.swift",
"Migration/LegacyDatabaseStorage.swift",
"Migration/RemnantDataMigration.swift",
"Migration/StoragePrefixMigration.swift",
"ObjC/ObjCAmplitude.swift",
"ObjC/ObjCAutocaptureOptions.swift",
"ObjC/ObjCBaseEvent.swift",
"ObjC/ObjCConfiguration.swift",
"ObjC/ObjCDeepLinkOpenedEvent.swift",
"ObjC/ObjCDefaultTrackingOptions.swift",
"ObjC/ObjCEventOptions.swift",
"ObjC/ObjCIdentify.swift",
"ObjC/ObjCIngestionMetadata.swift",
"ObjC/ObjCInteractionsOptions.swift",
"ObjC/ObjCLoggerProvider.swift",
"ObjC/ObjCNetworkConnectivityCheckerPlugin.swift",
"ObjC/ObjCNetworkTrackingOptions.swift",
"ObjC/ObjCPlan.swift",
"ObjC/ObjCPlugin.swift",
"ObjC/ObjCProperties.swift",
"ObjC/ObjCRevenue.swift",
"ObjC/ObjCScreenViewedEvent.swift",
"ObjC/ObjCStorage.swift",
"ObjC/ObjCTrackingOptions.swift",
"Plugins/AmplitudeDestinationPlugin.swift",
"Plugins/AnalyticsConnectorIdentityPlugin.swift",
"Plugins/AnalyticsConnectorPlugin.swift",
"Plugins/BasePlugins.swift",
"Plugins/ContextPlugin.swift",
"Plugins/DestinationPlugin.swift",
"Plugins/IdentityEventSender.swift",
"Plugins/Mac/MacOSLifecycleMonitor.swift",
"Plugins/NetworkConnectivityCheckerPlugin.swift",
"Plugins/NetworkTrackingPlugin.swift",
"Plugins/Vendors/AppUtil.swift",
"Plugins/Vendors/VendorSystem.swift",
"Plugins/iOS/FrustrationIgnoreExtensions.swift",
"Plugins/iOS/FrustrationInteractions.swift",
"Plugins/iOS/IOSLifecycleMonitor.swift",
"Plugins/iOS/UIKitElementInteractions.swift",
"Plugins/iOS/UIKitScreenViews.swift",
"Plugins/watchOS/WatchOSLifecycleMonitor.swift",
"Sessions.swift",
"Storages/InMemoryStorage.swift",
"Storages/PersistentStorage.swift",
"Timeline.swift",
"TrackingOptions.swift",
"Types.swift",
"Utilities/Atomic.swift",
"Utilities/AutocaptureManager.swift",
"Utilities/CodableExtension.swift",
"Utilities/Data+Gzip.swift",
"Utilities/DefaultEventUtils.swift",
"Utilities/Diagonostics.swift",
"Utilities/DispatchQueueHolder.swift",
"Utilities/EventPipeline.swift",
"Utilities/HttpClient.swift",
"Utilities/IdentifyInterceptor.swift",
"Utilities/MethodSwizzler.swift",
"Utilities/MiscellaneousExtension.swift",
"Utilities/NetworkSwizzler.swift",
"Utilities/ObjectFilter.swift",
"Utilities/OutputFileStream.swift",
"Utilities/PersistentStorageResponseHandler.swift",
"Utilities/QueueTimer.swift",
"Utilities/SandboxHelper.swift",
"Utilities/UrlExtension.swift"
],
"type" : "library"
},
{
"c99name" : "Amplitude_SwiftTests",
"module_type" : "SwiftTarget",
"name" : "Amplitude-SwiftTests",
"path" : "Tests/AmplitudeTests",
"resources" : [
{
"path" : "/Users/admin/builder/spi-builder-workspace/Tests/AmplitudeTests/Migration/legacy_v3.sqlite",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Tests/AmplitudeTests/Migration/legacy_v4.sqlite",
"rule" : {
"process" : {
}
}
}
],
"sources" : [
"Amplitude+Extensions.swift",
"AmplitudeIOSTests.swift",
"AmplitudeSessionTests.swift",
"AmplitudeTests.swift",
"AutocaptureOptionsTests.swift",
"AutocaptureRemoteConfigTests.swift",
"ConfigurationTests.swift",
"ConsoleLoggerTests.swift",
"Events/BaseEventTests.swift",
"Events/GroupIdentifyEventTests.swift",
"Events/IdentifyEventTests.swift",
"Events/IdentifyTests.swift",
"Events/RevenueEventTests.swift",
"Events/RevenueTests.swift",
"IdentityTests.swift",
"Migration/LegacyDatabaseStorageTests.swift",
"Migration/RemnantDataMigrationTests.swift",
"Migration/StoragePrefixMigrationTests.swift",
"NetworkTrackingPlugin+Extensions.swift",
"Plugins/NetworkConnectivityCheckerPluginTests.swift",
"Plugins/NetworkTrackingPluginTest.swift",
"Plugins/UIKitScreenViewsPluginTests.swift",
"Plugins/UIKitUserInteractionPluginTest.swift",
"Storages/PersistentStorageTests.swift",
"Supports/FakeURLProtocol.swift",
"Supports/TestUtilities.swift",
"TimelineTests.swift",
"TypesTests.swift",
"Utilities/Data+Gzip.swift",
"Utilities/DiagnosticsTests.swift",
"Utilities/EventPipelineTests.swift",
"Utilities/GzipTests.swift",
"Utilities/HttpClientTests.swift",
"Utilities/IdentifyInterceptorTests.swift",
"Utilities/MethodSwizzlerTest.swift",
"Utilities/ObjectFilterTests.swift",
"Utilities/PersistentStorageResponseHandlerTests.swift",
"Utilities/QueueTimeTests.swift",
"Utilities/SandboxHelperTests.swift",
"Utilities/TimeIntervalExtensionsTests.swift",
"Utilities/UrlExtensionTests.swift"
],
"target_dependencies" : [
"AmplitudeSwift"
],
"type" : "test"
}
],
"tools_version" : "5.9"
}
Done.