This is a staging environment. For live and up-to-date package information, visit swiftpackageindex.com.

The Swift Package Index logo.Swift Package Index

Track the adoption of Swift 6 strict concurrency checks for data race safety. How many packages are Ready for Swift 6?

Build Information

Successful build of AgoraRtm with Swift 6.0 for macOS (SPM).

Swift 6 data race errors: 18

Build Command

env DEVELOPER_DIR=/Applications/Xcode-15.3.0.app xcrun --toolchain org.swift.600202405261a swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete

Build Log

========================================
RunAll
========================================
Builder version: 4.40.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/AgoraIO/AgoraRtm_Apple.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/AgoraIO/AgoraRtm_Apple
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at 77eb015 Merge pull request #3 from AgoraIO/spi-doc-link
Cloned https://github.com/AgoraIO/AgoraRtm_Apple.git
Revision (git rev-parse @):
77eb015463c31764ad8230c0a0f5d5431e64fc18
SPI manifest file found: $workDir/.spi.yml
SUCCESS checkout https://github.com/AgoraIO/AgoraRtm_Apple.git at main
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.0
Building package at path:  $workDir
https://github.com/AgoraIO/AgoraRtm_Apple.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-15.3.0.app xcrun --toolchain org.swift.600202405261a swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Building for debugging...
[0/3] Write sources
[1/3] Copying AgoraRtmKit.framework
[2/3] Write swift-version-6F35C1178C84523A.txt
[4/29] Emitting module AgoraRtm
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmClientConfig+RtmAreaCode.swift:16:29: warning: static property 'mainlandChina' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | /// An option set representing different area codes for the Agora Real-Time Messaging (RTM) client.
11 | @objc public class RtmAreaCode: NSObject, OptionSet {
   |                    `- note: class 'RtmAreaCode' does not conform to the 'Sendable' protocol
12 |     /// The raw value type of the option set, based on `AgoraAreaCodeType.RawValue`.
13 |     @objc public let rawValue: AgoraRtmAreaCode.RawValue
14 |
15 |     /// Option representing Mainland China.
16 |     @objc public static let mainlandChina = RtmAreaCode(rawValue: AgoraRtmAreaCode.CN.rawValue)
   |                             |- warning: static property 'mainlandChina' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
   |                             |- note: annotate 'mainlandChina' with '@MainActor' if property should only be accessed from the main actor
   |                             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |
18 |     /// Option representing North America.
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmClientConfig+RtmAreaCode.swift:19:29: warning: static property 'northAmerica' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | /// An option set representing different area codes for the Agora Real-Time Messaging (RTM) client.
11 | @objc public class RtmAreaCode: NSObject, OptionSet {
   |                    `- note: class 'RtmAreaCode' does not conform to the 'Sendable' protocol
12 |     /// The raw value type of the option set, based on `AgoraAreaCodeType.RawValue`.
13 |     @objc public let rawValue: AgoraRtmAreaCode.RawValue
   :
17 |
18 |     /// Option representing North America.
19 |     @objc public static let northAmerica = RtmAreaCode(rawValue: AgoraRtmAreaCode.NA.rawValue)
   |                             |- warning: static property 'northAmerica' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
   |                             |- note: annotate 'northAmerica' with '@MainActor' if property should only be accessed from the main actor
   |                             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
20 |
21 |     /// Option representing Europe.
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmClientConfig+RtmAreaCode.swift:22:29: warning: static property 'europe' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | /// An option set representing different area codes for the Agora Real-Time Messaging (RTM) client.
11 | @objc public class RtmAreaCode: NSObject, OptionSet {
   |                    `- note: class 'RtmAreaCode' does not conform to the 'Sendable' protocol
12 |     /// The raw value type of the option set, based on `AgoraAreaCodeType.RawValue`.
13 |     @objc public let rawValue: AgoraRtmAreaCode.RawValue
   :
20 |
21 |     /// Option representing Europe.
22 |     @objc public static let europe = RtmAreaCode(rawValue: AgoraRtmAreaCode.EU.rawValue)
   |                             |- warning: static property 'europe' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
   |                             |- note: annotate 'europe' with '@MainActor' if property should only be accessed from the main actor
   |                             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
23 |
24 |     /// Option representing Asia, excluding Mainland China.
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmClientConfig+RtmAreaCode.swift:25:29: warning: static property 'asiaExcludingChina' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | /// An option set representing different area codes for the Agora Real-Time Messaging (RTM) client.
11 | @objc public class RtmAreaCode: NSObject, OptionSet {
   |                    `- note: class 'RtmAreaCode' does not conform to the 'Sendable' protocol
12 |     /// The raw value type of the option set, based on `AgoraAreaCodeType.RawValue`.
13 |     @objc public let rawValue: AgoraRtmAreaCode.RawValue
   :
23 |
24 |     /// Option representing Asia, excluding Mainland China.
25 |     @objc public static let asiaExcludingChina = RtmAreaCode(rawValue: AgoraRtmAreaCode.AS.rawValue)
   |                             |- warning: static property 'asiaExcludingChina' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
   |                             |- note: annotate 'asiaExcludingChina' with '@MainActor' if property should only be accessed from the main actor
   |                             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
26 |
27 |     /// Option representing Japan.
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmClientConfig+RtmAreaCode.swift:28:29: warning: static property 'japan' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | /// An option set representing different area codes for the Agora Real-Time Messaging (RTM) client.
11 | @objc public class RtmAreaCode: NSObject, OptionSet {
   |                    `- note: class 'RtmAreaCode' does not conform to the 'Sendable' protocol
12 |     /// The raw value type of the option set, based on `AgoraAreaCodeType.RawValue`.
13 |     @objc public let rawValue: AgoraRtmAreaCode.RawValue
   :
26 |
27 |     /// Option representing Japan.
28 |     @objc public static let japan = RtmAreaCode(rawValue: AgoraRtmAreaCode.JP.rawValue)
   |                             |- warning: static property 'japan' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
   |                             |- note: annotate 'japan' with '@MainActor' if property should only be accessed from the main actor
   |                             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     /// Option representing India.
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmClientConfig+RtmAreaCode.swift:31:29: warning: static property 'india' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | /// An option set representing different area codes for the Agora Real-Time Messaging (RTM) client.
11 | @objc public class RtmAreaCode: NSObject, OptionSet {
   |                    `- note: class 'RtmAreaCode' does not conform to the 'Sendable' protocol
12 |     /// The raw value type of the option set, based on `AgoraAreaCodeType.RawValue`.
13 |     @objc public let rawValue: AgoraRtmAreaCode.RawValue
   :
29 |
30 |     /// Option representing India.
31 |     @objc public static let india = RtmAreaCode(rawValue: AgoraRtmAreaCode.IN.rawValue)
   |                             |- warning: static property 'india' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
   |                             |- note: annotate 'india' with '@MainActor' if property should only be accessed from the main actor
   |                             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
32 |
33 |     /// Option representing Global (Default).
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmClientConfig+RtmAreaCode.swift:34:29: warning: static property 'global' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | /// An option set representing different area codes for the Agora Real-Time Messaging (RTM) client.
11 | @objc public class RtmAreaCode: NSObject, OptionSet {
   |                    `- note: class 'RtmAreaCode' does not conform to the 'Sendable' protocol
12 |     /// The raw value type of the option set, based on `AgoraAreaCodeType.RawValue`.
13 |     @objc public let rawValue: AgoraRtmAreaCode.RawValue
   :
32 |
33 |     /// Option representing Global (Default).
34 |     @objc public static let global = RtmAreaCode(rawValue: AgoraRtmAreaCode.GLOB.rawValue)
   |                             |- warning: static property 'global' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
   |                             |- note: annotate 'global' with '@MainActor' if property should only be accessed from the main actor
   |                             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
35 |
36 |     /// Converts the raw value to an `AgoraAreaCodeType` instance, representing a single area code.
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmClientKit.swift:335:23: warning: static property 'messages' is not concurrency-safe because non-'Sendable' type 'RtmSubscribeFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
327 | /// - See Also: ``RtmClientKit/subscribe(toChannel:features:)`` and
328 | ///          ``RtmClientKit/subscribe(toChannel:features:completion:)``
329 | public struct RtmSubscribeFeatures: OptionSet {
    |               `- note: consider making struct 'RtmSubscribeFeatures' conform to the 'Sendable' protocol
330 |     public let rawValue: UInt
331 |
    :
333 |     ///
334 |     /// This option allows you to receive messages sent to the subscribed channels.
335 |     public static let messages = RtmSubscribeFeatures(rawValue: AgoraRtmSubscribeChannelFeature.message.rawValue)
    |                       |- warning: static property 'messages' is not concurrency-safe because non-'Sendable' type 'RtmSubscribeFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'messages' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
336 |
337 |     /// Subscribe to channels with metadata.
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmClientKit.swift:345:23: warning: static property 'presence' is not concurrency-safe because non-'Sendable' type 'RtmSubscribeFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
327 | /// - See Also: ``RtmClientKit/subscribe(toChannel:features:)`` and
328 | ///          ``RtmClientKit/subscribe(toChannel:features:completion:)``
329 | public struct RtmSubscribeFeatures: OptionSet {
    |               `- note: consider making struct 'RtmSubscribeFeatures' conform to the 'Sendable' protocol
330 |     public let rawValue: UInt
331 |
    :
343 |     ///
344 |     /// This option allows you to receive presence updates for the users in the subscribed channels.
345 |     public static let presence = RtmSubscribeFeatures(rawValue: AgoraRtmSubscribeChannelFeature.presence.rawValue)
    |                       |- warning: static property 'presence' is not concurrency-safe because non-'Sendable' type 'RtmSubscribeFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'presence' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
346 |
347 |     /// Subscribe to channels with lock updates.
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmClientKit.swift:340:23: warning: static property 'metadata' is not concurrency-safe because non-'Sendable' type 'RtmSubscribeFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
327 | /// - See Also: ``RtmClientKit/subscribe(toChannel:features:)`` and
328 | ///          ``RtmClientKit/subscribe(toChannel:features:completion:)``
329 | public struct RtmSubscribeFeatures: OptionSet {
    |               `- note: consider making struct 'RtmSubscribeFeatures' conform to the 'Sendable' protocol
330 |     public let rawValue: UInt
331 |
    :
338 |     ///
339 |     /// This option allows you to receive metadata updates for the subscribed channels.
340 |     public static let metadata = RtmSubscribeFeatures(rawValue: AgoraRtmSubscribeChannelFeature.metadata.rawValue)
    |                       |- warning: static property 'metadata' is not concurrency-safe because non-'Sendable' type 'RtmSubscribeFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'metadata' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
341 |
342 |     /// Subscribe to channels with user presence updates.
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmClientKit.swift:350:23: warning: static property 'lock' is not concurrency-safe because non-'Sendable' type 'RtmSubscribeFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
327 | /// - See Also: ``RtmClientKit/subscribe(toChannel:features:)`` and
328 | ///          ``RtmClientKit/subscribe(toChannel:features:completion:)``
329 | public struct RtmSubscribeFeatures: OptionSet {
    |               `- note: consider making struct 'RtmSubscribeFeatures' conform to the 'Sendable' protocol
330 |     public let rawValue: UInt
331 |
    :
348 |     ///
349 |     /// This option allows you to receive updates about channel locks in the subscribed channels.
350 |     public static let lock = RtmSubscribeFeatures(rawValue: AgoraRtmSubscribeChannelFeature.lock.rawValue)
    |                       |- warning: static property 'lock' is not concurrency-safe because non-'Sendable' type 'RtmSubscribeFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'lock' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
351 |
352 |     public init(rawValue: UInt) {
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmErrorCode.swift:34:16: warning: stored property 'errorCode' of 'Sendable'-conforming struct 'RtmErrorInfo' has non-sendable type 'RtmErrorCode'; this is an error in the Swift 6 language mode
 32 | public struct RtmErrorInfo: RtmError {
 33 |     /// The error code associated with the error.
 34 |     public let errorCode: RtmErrorCode
    |                `- warning: stored property 'errorCode' of 'Sendable'-conforming struct 'RtmErrorInfo' has non-sendable type 'RtmErrorCode'; this is an error in the Swift 6 language mode
 35 |
 36 |     /// The raw error code value received from the SDK.
    :
 87 | /// These error codes are used to identify and handle various error scenarios that may occur when
 88 | /// using the Agora Signaling service in your application.
 89 | public enum RtmErrorCode: Int, ErrorCode {
    |             `- note: consider making enum 'RtmErrorCode' conform to the 'Sendable' protocol
 90 |     // `ok` is not a valid error, absence of an error indicates no error.
 91 | //    case ok = 0
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmPresence.swift:42:23: warning: static property 'userId' is not concurrency-safe because non-'Sendable' type 'RtmPresenceOptionFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
 32 |
 33 | /// Options to include in the presence query result.
 34 | public struct RtmPresenceOptionFeatures: OptionSet {
    |               `- note: consider making struct 'RtmPresenceOptionFeatures' conform to the 'Sendable' protocol
 35 |     public let rawValue: Int
 36 |
    :
 40 |
 41 |     /// Include user ID in the query result.
 42 |     public static let userId = RtmPresenceOptionFeatures(rawValue: 1 << 0)
    |                       |- warning: static property 'userId' is not concurrency-safe because non-'Sendable' type 'RtmPresenceOptionFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'userId' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 43 |
 44 |     /// Include user state in the query result.
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmPresence.swift:45:23: warning: static property 'userState' is not concurrency-safe because non-'Sendable' type 'RtmPresenceOptionFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
 32 |
 33 | /// Options to include in the presence query result.
 34 | public struct RtmPresenceOptionFeatures: OptionSet {
    |               `- note: consider making struct 'RtmPresenceOptionFeatures' conform to the 'Sendable' protocol
 35 |     public let rawValue: Int
 36 |
    :
 43 |
 44 |     /// Include user state in the query result.
 45 |     public static let userState = RtmPresenceOptionFeatures(rawValue: 1 << 1)
    |                       |- warning: static property 'userState' is not concurrency-safe because non-'Sendable' type 'RtmPresenceOptionFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'userState' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 46 |
 47 |     /// Include both user ID and user state in the query result.
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmPresence.swift:48:23: warning: static property 'all' is not concurrency-safe because non-'Sendable' type 'RtmPresenceOptionFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
 32 |
 33 | /// Options to include in the presence query result.
 34 | public struct RtmPresenceOptionFeatures: OptionSet {
    |               `- note: consider making struct 'RtmPresenceOptionFeatures' conform to the 'Sendable' protocol
 35 |     public let rawValue: Int
 36 |
    :
 46 |
 47 |     /// Include both user ID and user state in the query result.
 48 |     public static let all: RtmPresenceOptionFeatures = [.userId, .userState]
    |                       |- warning: static property 'all' is not concurrency-safe because non-'Sendable' type 'RtmPresenceOptionFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'all' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 49 | }
 50 |
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmStreamChannel+ChannelOptions.swift:76:23: warning: static property 'metadata' is not concurrency-safe because non-'Sendable' type 'RtmJoinChannelFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
 70 |
 71 | /// Option set for features to use when joining the channel.
 72 | public struct RtmJoinChannelFeatures: OptionSet {
    |               `- note: consider making struct 'RtmJoinChannelFeatures' conform to the 'Sendable' protocol
 73 |     public let rawValue: Int
 74 |
 75 |     /// Whether to join channel with storage (metadata).
 76 |     public static let metadata = RtmJoinChannelFeatures(rawValue: AgoraRtmJoinChannelFeature.metadata.rawValue)
    |                       |- warning: static property 'metadata' is not concurrency-safe because non-'Sendable' type 'RtmJoinChannelFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'metadata' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 77 |     /// Whether to join channel with user presence.
 78 |     public static let presence = RtmJoinChannelFeatures(rawValue: AgoraRtmJoinChannelFeature.presence.rawValue)
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmStreamChannel+ChannelOptions.swift:78:23: warning: static property 'presence' is not concurrency-safe because non-'Sendable' type 'RtmJoinChannelFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
 70 |
 71 | /// Option set for features to use when joining the channel.
 72 | public struct RtmJoinChannelFeatures: OptionSet {
    |               `- note: consider making struct 'RtmJoinChannelFeatures' conform to the 'Sendable' protocol
 73 |     public let rawValue: Int
 74 |
    :
 76 |     public static let metadata = RtmJoinChannelFeatures(rawValue: AgoraRtmJoinChannelFeature.metadata.rawValue)
 77 |     /// Whether to join channel with user presence.
 78 |     public static let presence = RtmJoinChannelFeatures(rawValue: AgoraRtmJoinChannelFeature.presence.rawValue)
    |                       |- warning: static property 'presence' is not concurrency-safe because non-'Sendable' type 'RtmJoinChannelFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'presence' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 79 |     /// Whether to join channel with lock.
 80 |     public static let lock = RtmJoinChannelFeatures(rawValue: AgoraRtmJoinChannelFeature.lock.rawValue)
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmStreamChannel+ChannelOptions.swift:80:23: warning: static property 'lock' is not concurrency-safe because non-'Sendable' type 'RtmJoinChannelFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
 70 |
 71 | /// Option set for features to use when joining the channel.
 72 | public struct RtmJoinChannelFeatures: OptionSet {
    |               `- note: consider making struct 'RtmJoinChannelFeatures' conform to the 'Sendable' protocol
 73 |     public let rawValue: Int
 74 |
    :
 78 |     public static let presence = RtmJoinChannelFeatures(rawValue: AgoraRtmJoinChannelFeature.presence.rawValue)
 79 |     /// Whether to join channel with lock.
 80 |     public static let lock = RtmJoinChannelFeatures(rawValue: AgoraRtmJoinChannelFeature.lock.rawValue)
    |                       |- warning: static property 'lock' is not concurrency-safe because non-'Sendable' type 'RtmJoinChannelFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'lock' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 81 |
 82 |     private init(rawValue: UInt) { self.init(rawValue: Int(rawValue)) }
[5/31] Compiling AgoraRtm RtmStorage.swift
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmStreamChannel+ChannelOptions.swift:76:23: warning: static property 'metadata' is not concurrency-safe because non-'Sendable' type 'RtmJoinChannelFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
 70 |
 71 | /// Option set for features to use when joining the channel.
 72 | public struct RtmJoinChannelFeatures: OptionSet {
    |               `- note: consider making struct 'RtmJoinChannelFeatures' conform to the 'Sendable' protocol
 73 |     public let rawValue: Int
 74 |
 75 |     /// Whether to join channel with storage (metadata).
 76 |     public static let metadata = RtmJoinChannelFeatures(rawValue: AgoraRtmJoinChannelFeature.metadata.rawValue)
    |                       |- warning: static property 'metadata' is not concurrency-safe because non-'Sendable' type 'RtmJoinChannelFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'metadata' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 77 |     /// Whether to join channel with user presence.
 78 |     public static let presence = RtmJoinChannelFeatures(rawValue: AgoraRtmJoinChannelFeature.presence.rawValue)
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmStreamChannel+ChannelOptions.swift:78:23: warning: static property 'presence' is not concurrency-safe because non-'Sendable' type 'RtmJoinChannelFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
 70 |
 71 | /// Option set for features to use when joining the channel.
 72 | public struct RtmJoinChannelFeatures: OptionSet {
    |               `- note: consider making struct 'RtmJoinChannelFeatures' conform to the 'Sendable' protocol
 73 |     public let rawValue: Int
 74 |
    :
 76 |     public static let metadata = RtmJoinChannelFeatures(rawValue: AgoraRtmJoinChannelFeature.metadata.rawValue)
 77 |     /// Whether to join channel with user presence.
 78 |     public static let presence = RtmJoinChannelFeatures(rawValue: AgoraRtmJoinChannelFeature.presence.rawValue)
    |                       |- warning: static property 'presence' is not concurrency-safe because non-'Sendable' type 'RtmJoinChannelFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'presence' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 79 |     /// Whether to join channel with lock.
 80 |     public static let lock = RtmJoinChannelFeatures(rawValue: AgoraRtmJoinChannelFeature.lock.rawValue)
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmStreamChannel+ChannelOptions.swift:80:23: warning: static property 'lock' is not concurrency-safe because non-'Sendable' type 'RtmJoinChannelFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
 70 |
 71 | /// Option set for features to use when joining the channel.
 72 | public struct RtmJoinChannelFeatures: OptionSet {
    |               `- note: consider making struct 'RtmJoinChannelFeatures' conform to the 'Sendable' protocol
 73 |     public let rawValue: Int
 74 |
    :
 78 |     public static let presence = RtmJoinChannelFeatures(rawValue: AgoraRtmJoinChannelFeature.presence.rawValue)
 79 |     /// Whether to join channel with lock.
 80 |     public static let lock = RtmJoinChannelFeatures(rawValue: AgoraRtmJoinChannelFeature.lock.rawValue)
    |                       |- warning: static property 'lock' is not concurrency-safe because non-'Sendable' type 'RtmJoinChannelFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'lock' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 81 |
 82 |     private init(rawValue: UInt) { self.init(rawValue: Int(rawValue)) }
[6/31] Compiling AgoraRtm RtmStreamChannel+ChannelOptions.swift
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmStreamChannel+ChannelOptions.swift:76:23: warning: static property 'metadata' is not concurrency-safe because non-'Sendable' type 'RtmJoinChannelFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
 70 |
 71 | /// Option set for features to use when joining the channel.
 72 | public struct RtmJoinChannelFeatures: OptionSet {
    |               `- note: consider making struct 'RtmJoinChannelFeatures' conform to the 'Sendable' protocol
 73 |     public let rawValue: Int
 74 |
 75 |     /// Whether to join channel with storage (metadata).
 76 |     public static let metadata = RtmJoinChannelFeatures(rawValue: AgoraRtmJoinChannelFeature.metadata.rawValue)
    |                       |- warning: static property 'metadata' is not concurrency-safe because non-'Sendable' type 'RtmJoinChannelFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'metadata' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 77 |     /// Whether to join channel with user presence.
 78 |     public static let presence = RtmJoinChannelFeatures(rawValue: AgoraRtmJoinChannelFeature.presence.rawValue)
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmStreamChannel+ChannelOptions.swift:78:23: warning: static property 'presence' is not concurrency-safe because non-'Sendable' type 'RtmJoinChannelFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
 70 |
 71 | /// Option set for features to use when joining the channel.
 72 | public struct RtmJoinChannelFeatures: OptionSet {
    |               `- note: consider making struct 'RtmJoinChannelFeatures' conform to the 'Sendable' protocol
 73 |     public let rawValue: Int
 74 |
    :
 76 |     public static let metadata = RtmJoinChannelFeatures(rawValue: AgoraRtmJoinChannelFeature.metadata.rawValue)
 77 |     /// Whether to join channel with user presence.
 78 |     public static let presence = RtmJoinChannelFeatures(rawValue: AgoraRtmJoinChannelFeature.presence.rawValue)
    |                       |- warning: static property 'presence' is not concurrency-safe because non-'Sendable' type 'RtmJoinChannelFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'presence' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 79 |     /// Whether to join channel with lock.
 80 |     public static let lock = RtmJoinChannelFeatures(rawValue: AgoraRtmJoinChannelFeature.lock.rawValue)
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmStreamChannel+ChannelOptions.swift:80:23: warning: static property 'lock' is not concurrency-safe because non-'Sendable' type 'RtmJoinChannelFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
 70 |
 71 | /// Option set for features to use when joining the channel.
 72 | public struct RtmJoinChannelFeatures: OptionSet {
    |               `- note: consider making struct 'RtmJoinChannelFeatures' conform to the 'Sendable' protocol
 73 |     public let rawValue: Int
 74 |
    :
 78 |     public static let presence = RtmJoinChannelFeatures(rawValue: AgoraRtmJoinChannelFeature.presence.rawValue)
 79 |     /// Whether to join channel with lock.
 80 |     public static let lock = RtmJoinChannelFeatures(rawValue: AgoraRtmJoinChannelFeature.lock.rawValue)
    |                       |- warning: static property 'lock' is not concurrency-safe because non-'Sendable' type 'RtmJoinChannelFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'lock' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 81 |
 82 |     private init(rawValue: UInt) { self.init(rawValue: Int(rawValue)) }
[7/31] Compiling AgoraRtm RtmStorage+Channel.swift
[8/31] Compiling AgoraRtm RtmStorage+User.swift
[9/31] Compiling AgoraRtm RtmClientConfig+RtmLogConfig.swift
[10/31] Compiling AgoraRtm RtmClientConfig+RtmProxyConfig.swift
[11/31] Compiling AgoraRtm RtmClientConfig.swift
[12/31] Compiling AgoraRtm RtmClientDelegate+StateChanged.swift
[13/31] Compiling AgoraRtm RtmClientDelegate+Storage.swift
[14/31] Compiling AgoraRtm RtmClientDelegate+Topic.swift
[15/31] Compiling AgoraRtm RtmClientDelegate+Lock.swift
[16/31] Compiling AgoraRtm RtmClientDelegate+Messages.swift
[17/31] Compiling AgoraRtm RtmClientDelegate+Presence.swift
[18/31] Compiling AgoraRtm RtmLock.swift
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmPresence.swift:42:23: warning: static property 'userId' is not concurrency-safe because non-'Sendable' type 'RtmPresenceOptionFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
 32 |
 33 | /// Options to include in the presence query result.
 34 | public struct RtmPresenceOptionFeatures: OptionSet {
    |               `- note: consider making struct 'RtmPresenceOptionFeatures' conform to the 'Sendable' protocol
 35 |     public let rawValue: Int
 36 |
    :
 40 |
 41 |     /// Include user ID in the query result.
 42 |     public static let userId = RtmPresenceOptionFeatures(rawValue: 1 << 0)
    |                       |- warning: static property 'userId' is not concurrency-safe because non-'Sendable' type 'RtmPresenceOptionFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'userId' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 43 |
 44 |     /// Include user state in the query result.
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmPresence.swift:45:23: warning: static property 'userState' is not concurrency-safe because non-'Sendable' type 'RtmPresenceOptionFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
 32 |
 33 | /// Options to include in the presence query result.
 34 | public struct RtmPresenceOptionFeatures: OptionSet {
    |               `- note: consider making struct 'RtmPresenceOptionFeatures' conform to the 'Sendable' protocol
 35 |     public let rawValue: Int
 36 |
    :
 43 |
 44 |     /// Include user state in the query result.
 45 |     public static let userState = RtmPresenceOptionFeatures(rawValue: 1 << 1)
    |                       |- warning: static property 'userState' is not concurrency-safe because non-'Sendable' type 'RtmPresenceOptionFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'userState' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 46 |
 47 |     /// Include both user ID and user state in the query result.
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmPresence.swift:48:23: warning: static property 'all' is not concurrency-safe because non-'Sendable' type 'RtmPresenceOptionFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
 32 |
 33 | /// Options to include in the presence query result.
 34 | public struct RtmPresenceOptionFeatures: OptionSet {
    |               `- note: consider making struct 'RtmPresenceOptionFeatures' conform to the 'Sendable' protocol
 35 |     public let rawValue: Int
 36 |
    :
 46 |
 47 |     /// Include both user ID and user state in the query result.
 48 |     public static let all: RtmPresenceOptionFeatures = [.userId, .userState]
    |                       |- warning: static property 'all' is not concurrency-safe because non-'Sendable' type 'RtmPresenceOptionFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'all' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 49 | }
 50 |
[19/31] Compiling AgoraRtm RtmPresence+Async.swift
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmPresence.swift:42:23: warning: static property 'userId' is not concurrency-safe because non-'Sendable' type 'RtmPresenceOptionFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
 32 |
 33 | /// Options to include in the presence query result.
 34 | public struct RtmPresenceOptionFeatures: OptionSet {
    |               `- note: consider making struct 'RtmPresenceOptionFeatures' conform to the 'Sendable' protocol
 35 |     public let rawValue: Int
 36 |
    :
 40 |
 41 |     /// Include user ID in the query result.
 42 |     public static let userId = RtmPresenceOptionFeatures(rawValue: 1 << 0)
    |                       |- warning: static property 'userId' is not concurrency-safe because non-'Sendable' type 'RtmPresenceOptionFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'userId' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 43 |
 44 |     /// Include user state in the query result.
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmPresence.swift:45:23: warning: static property 'userState' is not concurrency-safe because non-'Sendable' type 'RtmPresenceOptionFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
 32 |
 33 | /// Options to include in the presence query result.
 34 | public struct RtmPresenceOptionFeatures: OptionSet {
    |               `- note: consider making struct 'RtmPresenceOptionFeatures' conform to the 'Sendable' protocol
 35 |     public let rawValue: Int
 36 |
    :
 43 |
 44 |     /// Include user state in the query result.
 45 |     public static let userState = RtmPresenceOptionFeatures(rawValue: 1 << 1)
    |                       |- warning: static property 'userState' is not concurrency-safe because non-'Sendable' type 'RtmPresenceOptionFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'userState' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 46 |
 47 |     /// Include both user ID and user state in the query result.
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmPresence.swift:48:23: warning: static property 'all' is not concurrency-safe because non-'Sendable' type 'RtmPresenceOptionFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
 32 |
 33 | /// Options to include in the presence query result.
 34 | public struct RtmPresenceOptionFeatures: OptionSet {
    |               `- note: consider making struct 'RtmPresenceOptionFeatures' conform to the 'Sendable' protocol
 35 |     public let rawValue: Int
 36 |
    :
 46 |
 47 |     /// Include both user ID and user state in the query result.
 48 |     public static let all: RtmPresenceOptionFeatures = [.userId, .userState]
    |                       |- warning: static property 'all' is not concurrency-safe because non-'Sendable' type 'RtmPresenceOptionFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'all' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 49 | }
 50 |
[20/31] Compiling AgoraRtm RtmPresence.swift
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmPresence.swift:42:23: warning: static property 'userId' is not concurrency-safe because non-'Sendable' type 'RtmPresenceOptionFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
 32 |
 33 | /// Options to include in the presence query result.
 34 | public struct RtmPresenceOptionFeatures: OptionSet {
    |               `- note: consider making struct 'RtmPresenceOptionFeatures' conform to the 'Sendable' protocol
 35 |     public let rawValue: Int
 36 |
    :
 40 |
 41 |     /// Include user ID in the query result.
 42 |     public static let userId = RtmPresenceOptionFeatures(rawValue: 1 << 0)
    |                       |- warning: static property 'userId' is not concurrency-safe because non-'Sendable' type 'RtmPresenceOptionFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'userId' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 43 |
 44 |     /// Include user state in the query result.
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmPresence.swift:45:23: warning: static property 'userState' is not concurrency-safe because non-'Sendable' type 'RtmPresenceOptionFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
 32 |
 33 | /// Options to include in the presence query result.
 34 | public struct RtmPresenceOptionFeatures: OptionSet {
    |               `- note: consider making struct 'RtmPresenceOptionFeatures' conform to the 'Sendable' protocol
 35 |     public let rawValue: Int
 36 |
    :
 43 |
 44 |     /// Include user state in the query result.
 45 |     public static let userState = RtmPresenceOptionFeatures(rawValue: 1 << 1)
    |                       |- warning: static property 'userState' is not concurrency-safe because non-'Sendable' type 'RtmPresenceOptionFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'userState' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 46 |
 47 |     /// Include both user ID and user state in the query result.
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmPresence.swift:48:23: warning: static property 'all' is not concurrency-safe because non-'Sendable' type 'RtmPresenceOptionFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
 32 |
 33 | /// Options to include in the presence query result.
 34 | public struct RtmPresenceOptionFeatures: OptionSet {
    |               `- note: consider making struct 'RtmPresenceOptionFeatures' conform to the 'Sendable' protocol
 35 |     public let rawValue: Int
 36 |
    :
 46 |
 47 |     /// Include both user ID and user state in the query result.
 48 |     public static let all: RtmPresenceOptionFeatures = [.userId, .userState]
    |                       |- warning: static property 'all' is not concurrency-safe because non-'Sendable' type 'RtmPresenceOptionFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'all' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 49 | }
 50 |
[21/31] Compiling AgoraRtm CompletionHandlers.swift
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmClientConfig+RtmAreaCode.swift:16:29: warning: static property 'mainlandChina' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | /// An option set representing different area codes for the Agora Real-Time Messaging (RTM) client.
11 | @objc public class RtmAreaCode: NSObject, OptionSet {
   |                    `- note: class 'RtmAreaCode' does not conform to the 'Sendable' protocol
12 |     /// The raw value type of the option set, based on `AgoraAreaCodeType.RawValue`.
13 |     @objc public let rawValue: AgoraRtmAreaCode.RawValue
14 |
15 |     /// Option representing Mainland China.
16 |     @objc public static let mainlandChina = RtmAreaCode(rawValue: AgoraRtmAreaCode.CN.rawValue)
   |                             |- warning: static property 'mainlandChina' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
   |                             |- note: annotate 'mainlandChina' with '@MainActor' if property should only be accessed from the main actor
   |                             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |
18 |     /// Option representing North America.
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmClientConfig+RtmAreaCode.swift:19:29: warning: static property 'northAmerica' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | /// An option set representing different area codes for the Agora Real-Time Messaging (RTM) client.
11 | @objc public class RtmAreaCode: NSObject, OptionSet {
   |                    `- note: class 'RtmAreaCode' does not conform to the 'Sendable' protocol
12 |     /// The raw value type of the option set, based on `AgoraAreaCodeType.RawValue`.
13 |     @objc public let rawValue: AgoraRtmAreaCode.RawValue
   :
17 |
18 |     /// Option representing North America.
19 |     @objc public static let northAmerica = RtmAreaCode(rawValue: AgoraRtmAreaCode.NA.rawValue)
   |                             |- warning: static property 'northAmerica' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
   |                             |- note: annotate 'northAmerica' with '@MainActor' if property should only be accessed from the main actor
   |                             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
20 |
21 |     /// Option representing Europe.
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmClientConfig+RtmAreaCode.swift:22:29: warning: static property 'europe' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | /// An option set representing different area codes for the Agora Real-Time Messaging (RTM) client.
11 | @objc public class RtmAreaCode: NSObject, OptionSet {
   |                    `- note: class 'RtmAreaCode' does not conform to the 'Sendable' protocol
12 |     /// The raw value type of the option set, based on `AgoraAreaCodeType.RawValue`.
13 |     @objc public let rawValue: AgoraRtmAreaCode.RawValue
   :
20 |
21 |     /// Option representing Europe.
22 |     @objc public static let europe = RtmAreaCode(rawValue: AgoraRtmAreaCode.EU.rawValue)
   |                             |- warning: static property 'europe' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
   |                             |- note: annotate 'europe' with '@MainActor' if property should only be accessed from the main actor
   |                             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
23 |
24 |     /// Option representing Asia, excluding Mainland China.
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmClientConfig+RtmAreaCode.swift:25:29: warning: static property 'asiaExcludingChina' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | /// An option set representing different area codes for the Agora Real-Time Messaging (RTM) client.
11 | @objc public class RtmAreaCode: NSObject, OptionSet {
   |                    `- note: class 'RtmAreaCode' does not conform to the 'Sendable' protocol
12 |     /// The raw value type of the option set, based on `AgoraAreaCodeType.RawValue`.
13 |     @objc public let rawValue: AgoraRtmAreaCode.RawValue
   :
23 |
24 |     /// Option representing Asia, excluding Mainland China.
25 |     @objc public static let asiaExcludingChina = RtmAreaCode(rawValue: AgoraRtmAreaCode.AS.rawValue)
   |                             |- warning: static property 'asiaExcludingChina' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
   |                             |- note: annotate 'asiaExcludingChina' with '@MainActor' if property should only be accessed from the main actor
   |                             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
26 |
27 |     /// Option representing Japan.
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmClientConfig+RtmAreaCode.swift:28:29: warning: static property 'japan' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | /// An option set representing different area codes for the Agora Real-Time Messaging (RTM) client.
11 | @objc public class RtmAreaCode: NSObject, OptionSet {
   |                    `- note: class 'RtmAreaCode' does not conform to the 'Sendable' protocol
12 |     /// The raw value type of the option set, based on `AgoraAreaCodeType.RawValue`.
13 |     @objc public let rawValue: AgoraRtmAreaCode.RawValue
   :
26 |
27 |     /// Option representing Japan.
28 |     @objc public static let japan = RtmAreaCode(rawValue: AgoraRtmAreaCode.JP.rawValue)
   |                             |- warning: static property 'japan' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
   |                             |- note: annotate 'japan' with '@MainActor' if property should only be accessed from the main actor
   |                             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     /// Option representing India.
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmClientConfig+RtmAreaCode.swift:31:29: warning: static property 'india' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | /// An option set representing different area codes for the Agora Real-Time Messaging (RTM) client.
11 | @objc public class RtmAreaCode: NSObject, OptionSet {
   |                    `- note: class 'RtmAreaCode' does not conform to the 'Sendable' protocol
12 |     /// The raw value type of the option set, based on `AgoraAreaCodeType.RawValue`.
13 |     @objc public let rawValue: AgoraRtmAreaCode.RawValue
   :
29 |
30 |     /// Option representing India.
31 |     @objc public static let india = RtmAreaCode(rawValue: AgoraRtmAreaCode.IN.rawValue)
   |                             |- warning: static property 'india' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
   |                             |- note: annotate 'india' with '@MainActor' if property should only be accessed from the main actor
   |                             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
32 |
33 |     /// Option representing Global (Default).
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmClientConfig+RtmAreaCode.swift:34:29: warning: static property 'global' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | /// An option set representing different area codes for the Agora Real-Time Messaging (RTM) client.
11 | @objc public class RtmAreaCode: NSObject, OptionSet {
   |                    `- note: class 'RtmAreaCode' does not conform to the 'Sendable' protocol
12 |     /// The raw value type of the option set, based on `AgoraAreaCodeType.RawValue`.
13 |     @objc public let rawValue: AgoraRtmAreaCode.RawValue
   :
32 |
33 |     /// Option representing Global (Default).
34 |     @objc public static let global = RtmAreaCode(rawValue: AgoraRtmAreaCode.GLOB.rawValue)
   |                             |- warning: static property 'global' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
   |                             |- note: annotate 'global' with '@MainActor' if property should only be accessed from the main actor
   |                             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
35 |
36 |     /// Converts the raw value to an `AgoraAreaCodeType` instance, representing a single area code.
[22/31] Compiling AgoraRtm RtmClientConfig+RtmAreaCode.swift
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmClientConfig+RtmAreaCode.swift:16:29: warning: static property 'mainlandChina' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | /// An option set representing different area codes for the Agora Real-Time Messaging (RTM) client.
11 | @objc public class RtmAreaCode: NSObject, OptionSet {
   |                    `- note: class 'RtmAreaCode' does not conform to the 'Sendable' protocol
12 |     /// The raw value type of the option set, based on `AgoraAreaCodeType.RawValue`.
13 |     @objc public let rawValue: AgoraRtmAreaCode.RawValue
14 |
15 |     /// Option representing Mainland China.
16 |     @objc public static let mainlandChina = RtmAreaCode(rawValue: AgoraRtmAreaCode.CN.rawValue)
   |                             |- warning: static property 'mainlandChina' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
   |                             |- note: annotate 'mainlandChina' with '@MainActor' if property should only be accessed from the main actor
   |                             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |
18 |     /// Option representing North America.
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmClientConfig+RtmAreaCode.swift:19:29: warning: static property 'northAmerica' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | /// An option set representing different area codes for the Agora Real-Time Messaging (RTM) client.
11 | @objc public class RtmAreaCode: NSObject, OptionSet {
   |                    `- note: class 'RtmAreaCode' does not conform to the 'Sendable' protocol
12 |     /// The raw value type of the option set, based on `AgoraAreaCodeType.RawValue`.
13 |     @objc public let rawValue: AgoraRtmAreaCode.RawValue
   :
17 |
18 |     /// Option representing North America.
19 |     @objc public static let northAmerica = RtmAreaCode(rawValue: AgoraRtmAreaCode.NA.rawValue)
   |                             |- warning: static property 'northAmerica' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
   |                             |- note: annotate 'northAmerica' with '@MainActor' if property should only be accessed from the main actor
   |                             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
20 |
21 |     /// Option representing Europe.
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmClientConfig+RtmAreaCode.swift:22:29: warning: static property 'europe' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | /// An option set representing different area codes for the Agora Real-Time Messaging (RTM) client.
11 | @objc public class RtmAreaCode: NSObject, OptionSet {
   |                    `- note: class 'RtmAreaCode' does not conform to the 'Sendable' protocol
12 |     /// The raw value type of the option set, based on `AgoraAreaCodeType.RawValue`.
13 |     @objc public let rawValue: AgoraRtmAreaCode.RawValue
   :
20 |
21 |     /// Option representing Europe.
22 |     @objc public static let europe = RtmAreaCode(rawValue: AgoraRtmAreaCode.EU.rawValue)
   |                             |- warning: static property 'europe' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
   |                             |- note: annotate 'europe' with '@MainActor' if property should only be accessed from the main actor
   |                             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
23 |
24 |     /// Option representing Asia, excluding Mainland China.
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmClientConfig+RtmAreaCode.swift:25:29: warning: static property 'asiaExcludingChina' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | /// An option set representing different area codes for the Agora Real-Time Messaging (RTM) client.
11 | @objc public class RtmAreaCode: NSObject, OptionSet {
   |                    `- note: class 'RtmAreaCode' does not conform to the 'Sendable' protocol
12 |     /// The raw value type of the option set, based on `AgoraAreaCodeType.RawValue`.
13 |     @objc public let rawValue: AgoraRtmAreaCode.RawValue
   :
23 |
24 |     /// Option representing Asia, excluding Mainland China.
25 |     @objc public static let asiaExcludingChina = RtmAreaCode(rawValue: AgoraRtmAreaCode.AS.rawValue)
   |                             |- warning: static property 'asiaExcludingChina' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
   |                             |- note: annotate 'asiaExcludingChina' with '@MainActor' if property should only be accessed from the main actor
   |                             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
26 |
27 |     /// Option representing Japan.
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmClientConfig+RtmAreaCode.swift:28:29: warning: static property 'japan' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | /// An option set representing different area codes for the Agora Real-Time Messaging (RTM) client.
11 | @objc public class RtmAreaCode: NSObject, OptionSet {
   |                    `- note: class 'RtmAreaCode' does not conform to the 'Sendable' protocol
12 |     /// The raw value type of the option set, based on `AgoraAreaCodeType.RawValue`.
13 |     @objc public let rawValue: AgoraRtmAreaCode.RawValue
   :
26 |
27 |     /// Option representing Japan.
28 |     @objc public static let japan = RtmAreaCode(rawValue: AgoraRtmAreaCode.JP.rawValue)
   |                             |- warning: static property 'japan' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
   |                             |- note: annotate 'japan' with '@MainActor' if property should only be accessed from the main actor
   |                             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     /// Option representing India.
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmClientConfig+RtmAreaCode.swift:31:29: warning: static property 'india' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | /// An option set representing different area codes for the Agora Real-Time Messaging (RTM) client.
11 | @objc public class RtmAreaCode: NSObject, OptionSet {
   |                    `- note: class 'RtmAreaCode' does not conform to the 'Sendable' protocol
12 |     /// The raw value type of the option set, based on `AgoraAreaCodeType.RawValue`.
13 |     @objc public let rawValue: AgoraRtmAreaCode.RawValue
   :
29 |
30 |     /// Option representing India.
31 |     @objc public static let india = RtmAreaCode(rawValue: AgoraRtmAreaCode.IN.rawValue)
   |                             |- warning: static property 'india' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
   |                             |- note: annotate 'india' with '@MainActor' if property should only be accessed from the main actor
   |                             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
32 |
33 |     /// Option representing Global (Default).
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmClientConfig+RtmAreaCode.swift:34:29: warning: static property 'global' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | /// An option set representing different area codes for the Agora Real-Time Messaging (RTM) client.
11 | @objc public class RtmAreaCode: NSObject, OptionSet {
   |                    `- note: class 'RtmAreaCode' does not conform to the 'Sendable' protocol
12 |     /// The raw value type of the option set, based on `AgoraAreaCodeType.RawValue`.
13 |     @objc public let rawValue: AgoraRtmAreaCode.RawValue
   :
32 |
33 |     /// Option representing Global (Default).
34 |     @objc public static let global = RtmAreaCode(rawValue: AgoraRtmAreaCode.GLOB.rawValue)
   |                             |- warning: static property 'global' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
   |                             |- note: annotate 'global' with '@MainActor' if property should only be accessed from the main actor
   |                             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
35 |
36 |     /// Converts the raw value to an `AgoraAreaCodeType` instance, representing a single area code.
[23/31] Compiling AgoraRtm RtmClientConfig+RtmEncryptionConfig.swift
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmClientConfig+RtmAreaCode.swift:16:29: warning: static property 'mainlandChina' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | /// An option set representing different area codes for the Agora Real-Time Messaging (RTM) client.
11 | @objc public class RtmAreaCode: NSObject, OptionSet {
   |                    `- note: class 'RtmAreaCode' does not conform to the 'Sendable' protocol
12 |     /// The raw value type of the option set, based on `AgoraAreaCodeType.RawValue`.
13 |     @objc public let rawValue: AgoraRtmAreaCode.RawValue
14 |
15 |     /// Option representing Mainland China.
16 |     @objc public static let mainlandChina = RtmAreaCode(rawValue: AgoraRtmAreaCode.CN.rawValue)
   |                             |- warning: static property 'mainlandChina' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
   |                             |- note: annotate 'mainlandChina' with '@MainActor' if property should only be accessed from the main actor
   |                             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |
18 |     /// Option representing North America.
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmClientConfig+RtmAreaCode.swift:19:29: warning: static property 'northAmerica' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | /// An option set representing different area codes for the Agora Real-Time Messaging (RTM) client.
11 | @objc public class RtmAreaCode: NSObject, OptionSet {
   |                    `- note: class 'RtmAreaCode' does not conform to the 'Sendable' protocol
12 |     /// The raw value type of the option set, based on `AgoraAreaCodeType.RawValue`.
13 |     @objc public let rawValue: AgoraRtmAreaCode.RawValue
   :
17 |
18 |     /// Option representing North America.
19 |     @objc public static let northAmerica = RtmAreaCode(rawValue: AgoraRtmAreaCode.NA.rawValue)
   |                             |- warning: static property 'northAmerica' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
   |                             |- note: annotate 'northAmerica' with '@MainActor' if property should only be accessed from the main actor
   |                             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
20 |
21 |     /// Option representing Europe.
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmClientConfig+RtmAreaCode.swift:22:29: warning: static property 'europe' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | /// An option set representing different area codes for the Agora Real-Time Messaging (RTM) client.
11 | @objc public class RtmAreaCode: NSObject, OptionSet {
   |                    `- note: class 'RtmAreaCode' does not conform to the 'Sendable' protocol
12 |     /// The raw value type of the option set, based on `AgoraAreaCodeType.RawValue`.
13 |     @objc public let rawValue: AgoraRtmAreaCode.RawValue
   :
20 |
21 |     /// Option representing Europe.
22 |     @objc public static let europe = RtmAreaCode(rawValue: AgoraRtmAreaCode.EU.rawValue)
   |                             |- warning: static property 'europe' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
   |                             |- note: annotate 'europe' with '@MainActor' if property should only be accessed from the main actor
   |                             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
23 |
24 |     /// Option representing Asia, excluding Mainland China.
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmClientConfig+RtmAreaCode.swift:25:29: warning: static property 'asiaExcludingChina' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | /// An option set representing different area codes for the Agora Real-Time Messaging (RTM) client.
11 | @objc public class RtmAreaCode: NSObject, OptionSet {
   |                    `- note: class 'RtmAreaCode' does not conform to the 'Sendable' protocol
12 |     /// The raw value type of the option set, based on `AgoraAreaCodeType.RawValue`.
13 |     @objc public let rawValue: AgoraRtmAreaCode.RawValue
   :
23 |
24 |     /// Option representing Asia, excluding Mainland China.
25 |     @objc public static let asiaExcludingChina = RtmAreaCode(rawValue: AgoraRtmAreaCode.AS.rawValue)
   |                             |- warning: static property 'asiaExcludingChina' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
   |                             |- note: annotate 'asiaExcludingChina' with '@MainActor' if property should only be accessed from the main actor
   |                             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
26 |
27 |     /// Option representing Japan.
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmClientConfig+RtmAreaCode.swift:28:29: warning: static property 'japan' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | /// An option set representing different area codes for the Agora Real-Time Messaging (RTM) client.
11 | @objc public class RtmAreaCode: NSObject, OptionSet {
   |                    `- note: class 'RtmAreaCode' does not conform to the 'Sendable' protocol
12 |     /// The raw value type of the option set, based on `AgoraAreaCodeType.RawValue`.
13 |     @objc public let rawValue: AgoraRtmAreaCode.RawValue
   :
26 |
27 |     /// Option representing Japan.
28 |     @objc public static let japan = RtmAreaCode(rawValue: AgoraRtmAreaCode.JP.rawValue)
   |                             |- warning: static property 'japan' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
   |                             |- note: annotate 'japan' with '@MainActor' if property should only be accessed from the main actor
   |                             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     /// Option representing India.
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmClientConfig+RtmAreaCode.swift:31:29: warning: static property 'india' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | /// An option set representing different area codes for the Agora Real-Time Messaging (RTM) client.
11 | @objc public class RtmAreaCode: NSObject, OptionSet {
   |                    `- note: class 'RtmAreaCode' does not conform to the 'Sendable' protocol
12 |     /// The raw value type of the option set, based on `AgoraAreaCodeType.RawValue`.
13 |     @objc public let rawValue: AgoraRtmAreaCode.RawValue
   :
29 |
30 |     /// Option representing India.
31 |     @objc public static let india = RtmAreaCode(rawValue: AgoraRtmAreaCode.IN.rawValue)
   |                             |- warning: static property 'india' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
   |                             |- note: annotate 'india' with '@MainActor' if property should only be accessed from the main actor
   |                             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
32 |
33 |     /// Option representing Global (Default).
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmClientConfig+RtmAreaCode.swift:34:29: warning: static property 'global' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | /// An option set representing different area codes for the Agora Real-Time Messaging (RTM) client.
11 | @objc public class RtmAreaCode: NSObject, OptionSet {
   |                    `- note: class 'RtmAreaCode' does not conform to the 'Sendable' protocol
12 |     /// The raw value type of the option set, based on `AgoraAreaCodeType.RawValue`.
13 |     @objc public let rawValue: AgoraRtmAreaCode.RawValue
   :
32 |
33 |     /// Option representing Global (Default).
34 |     @objc public static let global = RtmAreaCode(rawValue: AgoraRtmAreaCode.GLOB.rawValue)
   |                             |- warning: static property 'global' is not concurrency-safe because non-'Sendable' type 'RtmAreaCode' may have shared mutable state; this is an error in the Swift 6 language mode
   |                             |- note: annotate 'global' with '@MainActor' if property should only be accessed from the main actor
   |                             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
35 |
36 |     /// Converts the raw value to an `AgoraAreaCodeType` instance, representing a single area code.
[24/31] Compiling AgoraRtm RtmStreamChannel.swift
[25/31] Compiling AgoraRtm Utilities+Encodable.swift
[26/31] Compiling AgoraRtm RtmErrorCode.swift
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmErrorCode.swift:34:16: warning: stored property 'errorCode' of 'Sendable'-conforming struct 'RtmErrorInfo' has non-sendable type 'RtmErrorCode'; this is an error in the Swift 6 language mode
 32 | public struct RtmErrorInfo: RtmError {
 33 |     /// The error code associated with the error.
 34 |     public let errorCode: RtmErrorCode
    |                `- warning: stored property 'errorCode' of 'Sendable'-conforming struct 'RtmErrorInfo' has non-sendable type 'RtmErrorCode'; this is an error in the Swift 6 language mode
 35 |
 36 |     /// The raw error code value received from the SDK.
    :
 87 | /// These error codes are used to identify and handle various error scenarios that may occur when
 88 | /// using the Agora Signaling service in your application.
 89 | public enum RtmErrorCode: Int, ErrorCode {
    |             `- note: consider making enum 'RtmErrorCode' conform to the 'Sendable' protocol
 90 |     // `ok` is not a valid error, absence of an error indicates no error.
 91 | //    case ok = 0
[27/31] Compiling AgoraRtm RtmLegalCharacterSets.swift
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmErrorCode.swift:34:16: warning: stored property 'errorCode' of 'Sendable'-conforming struct 'RtmErrorInfo' has non-sendable type 'RtmErrorCode'; this is an error in the Swift 6 language mode
 32 | public struct RtmErrorInfo: RtmError {
 33 |     /// The error code associated with the error.
 34 |     public let errorCode: RtmErrorCode
    |                `- warning: stored property 'errorCode' of 'Sendable'-conforming struct 'RtmErrorInfo' has non-sendable type 'RtmErrorCode'; this is an error in the Swift 6 language mode
 35 |
 36 |     /// The raw error code value received from the SDK.
    :
 87 | /// These error codes are used to identify and handle various error scenarios that may occur when
 88 | /// using the Agora Signaling service in your application.
 89 | public enum RtmErrorCode: Int, ErrorCode {
    |             `- note: consider making enum 'RtmErrorCode' conform to the 'Sendable' protocol
 90 |     // `ok` is not a valid error, absence of an error indicates no error.
 91 | //    case ok = 0
[28/31] Compiling AgoraRtm RtmLock+Async.swift
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmErrorCode.swift:34:16: warning: stored property 'errorCode' of 'Sendable'-conforming struct 'RtmErrorInfo' has non-sendable type 'RtmErrorCode'; this is an error in the Swift 6 language mode
 32 | public struct RtmErrorInfo: RtmError {
 33 |     /// The error code associated with the error.
 34 |     public let errorCode: RtmErrorCode
    |                `- warning: stored property 'errorCode' of 'Sendable'-conforming struct 'RtmErrorInfo' has non-sendable type 'RtmErrorCode'; this is an error in the Swift 6 language mode
 35 |
 36 |     /// The raw error code value received from the SDK.
    :
 87 | /// These error codes are used to identify and handle various error scenarios that may occur when
 88 | /// using the Agora Signaling service in your application.
 89 | public enum RtmErrorCode: Int, ErrorCode {
    |             `- note: consider making enum 'RtmErrorCode' conform to the 'Sendable' protocol
 90 |     // `ok` is not a valid error, absence of an error indicates no error.
 91 | //    case ok = 0
[29/31] Compiling AgoraRtm RtmClientDelegate.swift
<module-includes>:1:9: note: in file included from <module-includes>:1:
1 | #import "Headers/AgoraRtmKit.h"
  |         `- note: in file included from <module-includes>:1:
2 | #import "Headers/AgoraRtmClientKit.h"
3 | #import "Headers/AgoraRtmEnumerates.h"
/Users/admin/builder/spi-builder-workspace/.build/arm64-apple-macosx/debug/AgoraRtmKit.framework/Headers/AgoraRtmKit.h:8:9: note: in file included from /Users/admin/builder/spi-builder-workspace/.build/arm64-apple-macosx/debug/AgoraRtmKit.framework/Headers/AgoraRtmKit.h:8:
 6 | //
 7 |
 8 | #import <AgoraRtmKit/AgoraRtmClientKit.h>
   |         `- note: in file included from /Users/admin/builder/spi-builder-workspace/.build/arm64-apple-macosx/debug/AgoraRtmKit.framework/Headers/AgoraRtmKit.h:8:
 9 | #import <AgoraRtmKit/AgoraRtmEnumerates.h>
10 | #import <AgoraRtmKit/AgoraRtmObjects.h>
/Users/admin/builder/spi-builder-workspace/.build/arm64-apple-macosx/debug/AgoraRtmKit.framework/Headers/AgoraRtmClientKit.h:8:9: note: in file included from /Users/admin/builder/spi-builder-workspace/.build/arm64-apple-macosx/debug/AgoraRtmKit.framework/Headers/AgoraRtmClientKit.h:8:
  6 | //
  7 | #import <Foundation/Foundation.h>
  8 | #import "AgoraRtmObjects.h"
    |         `- note: in file included from /Users/admin/builder/spi-builder-workspace/.build/arm64-apple-macosx/debug/AgoraRtmKit.framework/Headers/AgoraRtmClientKit.h:8:
  9 | @protocol AgoraRtmClientDelegate <NSObject>
 10 | @optional
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmClientKit.swift:335:23: warning: static property 'messages' is not concurrency-safe because non-'Sendable' type 'RtmSubscribeFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
327 | /// - See Also: ``RtmClientKit/subscribe(toChannel:features:)`` and
328 | ///          ``RtmClientKit/subscribe(toChannel:features:completion:)``
329 | public struct RtmSubscribeFeatures: OptionSet {
    |               `- note: consider making struct 'RtmSubscribeFeatures' conform to the 'Sendable' protocol
330 |     public let rawValue: UInt
331 |
    :
333 |     ///
334 |     /// This option allows you to receive messages sent to the subscribed channels.
335 |     public static let messages = RtmSubscribeFeatures(rawValue: AgoraRtmSubscribeChannelFeature.message.rawValue)
    |                       |- warning: static property 'messages' is not concurrency-safe because non-'Sendable' type 'RtmSubscribeFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'messages' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
336 |
337 |     /// Subscribe to channels with metadata.
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmClientKit.swift:345:23: warning: static property 'presence' is not concurrency-safe because non-'Sendable' type 'RtmSubscribeFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
327 | /// - See Also: ``RtmClientKit/subscribe(toChannel:features:)`` and
328 | ///          ``RtmClientKit/subscribe(toChannel:features:completion:)``
329 | public struct RtmSubscribeFeatures: OptionSet {
    |               `- note: consider making struct 'RtmSubscribeFeatures' conform to the 'Sendable' protocol
330 |     public let rawValue: UInt
331 |
    :
343 |     ///
344 |     /// This option allows you to receive presence updates for the users in the subscribed channels.
345 |     public static let presence = RtmSubscribeFeatures(rawValue: AgoraRtmSubscribeChannelFeature.presence.rawValue)
    |                       |- warning: static property 'presence' is not concurrency-safe because non-'Sendable' type 'RtmSubscribeFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'presence' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
346 |
347 |     /// Subscribe to channels with lock updates.
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmClientKit.swift:340:23: warning: static property 'metadata' is not concurrency-safe because non-'Sendable' type 'RtmSubscribeFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
327 | /// - See Also: ``RtmClientKit/subscribe(toChannel:features:)`` and
328 | ///          ``RtmClientKit/subscribe(toChannel:features:completion:)``
329 | public struct RtmSubscribeFeatures: OptionSet {
    |               `- note: consider making struct 'RtmSubscribeFeatures' conform to the 'Sendable' protocol
330 |     public let rawValue: UInt
331 |
    :
338 |     ///
339 |     /// This option allows you to receive metadata updates for the subscribed channels.
340 |     public static let metadata = RtmSubscribeFeatures(rawValue: AgoraRtmSubscribeChannelFeature.metadata.rawValue)
    |                       |- warning: static property 'metadata' is not concurrency-safe because non-'Sendable' type 'RtmSubscribeFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'metadata' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
341 |
342 |     /// Subscribe to channels with user presence updates.
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmClientKit.swift:350:23: warning: static property 'lock' is not concurrency-safe because non-'Sendable' type 'RtmSubscribeFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
327 | /// - See Also: ``RtmClientKit/subscribe(toChannel:features:)`` and
328 | ///          ``RtmClientKit/subscribe(toChannel:features:completion:)``
329 | public struct RtmSubscribeFeatures: OptionSet {
    |               `- note: consider making struct 'RtmSubscribeFeatures' conform to the 'Sendable' protocol
330 |     public let rawValue: UInt
331 |
    :
348 |     ///
349 |     /// This option allows you to receive updates about channel locks in the subscribed channels.
350 |     public static let lock = RtmSubscribeFeatures(rawValue: AgoraRtmSubscribeChannelFeature.lock.rawValue)
    |                       |- warning: static property 'lock' is not concurrency-safe because non-'Sendable' type 'RtmSubscribeFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'lock' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
351 |
352 |     public init(rawValue: UInt) {
[30/31] Compiling AgoraRtm RtmClientKit.swift
<module-includes>:1:9: note: in file included from <module-includes>:1:
1 | #import "Headers/AgoraRtmKit.h"
  |         `- note: in file included from <module-includes>:1:
2 | #import "Headers/AgoraRtmClientKit.h"
3 | #import "Headers/AgoraRtmEnumerates.h"
/Users/admin/builder/spi-builder-workspace/.build/arm64-apple-macosx/debug/AgoraRtmKit.framework/Headers/AgoraRtmKit.h:8:9: note: in file included from /Users/admin/builder/spi-builder-workspace/.build/arm64-apple-macosx/debug/AgoraRtmKit.framework/Headers/AgoraRtmKit.h:8:
 6 | //
 7 |
 8 | #import <AgoraRtmKit/AgoraRtmClientKit.h>
   |         `- note: in file included from /Users/admin/builder/spi-builder-workspace/.build/arm64-apple-macosx/debug/AgoraRtmKit.framework/Headers/AgoraRtmKit.h:8:
 9 | #import <AgoraRtmKit/AgoraRtmEnumerates.h>
10 | #import <AgoraRtmKit/AgoraRtmObjects.h>
/Users/admin/builder/spi-builder-workspace/.build/arm64-apple-macosx/debug/AgoraRtmKit.framework/Headers/AgoraRtmClientKit.h:8:9: note: in file included from /Users/admin/builder/spi-builder-workspace/.build/arm64-apple-macosx/debug/AgoraRtmKit.framework/Headers/AgoraRtmClientKit.h:8:
  6 | //
  7 | #import <Foundation/Foundation.h>
  8 | #import "AgoraRtmObjects.h"
    |         `- note: in file included from /Users/admin/builder/spi-builder-workspace/.build/arm64-apple-macosx/debug/AgoraRtmKit.framework/Headers/AgoraRtmClientKit.h:8:
  9 | @protocol AgoraRtmClientDelegate <NSObject>
 10 | @optional
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmClientKit.swift:335:23: warning: static property 'messages' is not concurrency-safe because non-'Sendable' type 'RtmSubscribeFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
327 | /// - See Also: ``RtmClientKit/subscribe(toChannel:features:)`` and
328 | ///          ``RtmClientKit/subscribe(toChannel:features:completion:)``
329 | public struct RtmSubscribeFeatures: OptionSet {
    |               `- note: consider making struct 'RtmSubscribeFeatures' conform to the 'Sendable' protocol
330 |     public let rawValue: UInt
331 |
    :
333 |     ///
334 |     /// This option allows you to receive messages sent to the subscribed channels.
335 |     public static let messages = RtmSubscribeFeatures(rawValue: AgoraRtmSubscribeChannelFeature.message.rawValue)
    |                       |- warning: static property 'messages' is not concurrency-safe because non-'Sendable' type 'RtmSubscribeFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'messages' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
336 |
337 |     /// Subscribe to channels with metadata.
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmClientKit.swift:345:23: warning: static property 'presence' is not concurrency-safe because non-'Sendable' type 'RtmSubscribeFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
327 | /// - See Also: ``RtmClientKit/subscribe(toChannel:features:)`` and
328 | ///          ``RtmClientKit/subscribe(toChannel:features:completion:)``
329 | public struct RtmSubscribeFeatures: OptionSet {
    |               `- note: consider making struct 'RtmSubscribeFeatures' conform to the 'Sendable' protocol
330 |     public let rawValue: UInt
331 |
    :
343 |     ///
344 |     /// This option allows you to receive presence updates for the users in the subscribed channels.
345 |     public static let presence = RtmSubscribeFeatures(rawValue: AgoraRtmSubscribeChannelFeature.presence.rawValue)
    |                       |- warning: static property 'presence' is not concurrency-safe because non-'Sendable' type 'RtmSubscribeFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'presence' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
346 |
347 |     /// Subscribe to channels with lock updates.
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmClientKit.swift:340:23: warning: static property 'metadata' is not concurrency-safe because non-'Sendable' type 'RtmSubscribeFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
327 | /// - See Also: ``RtmClientKit/subscribe(toChannel:features:)`` and
328 | ///          ``RtmClientKit/subscribe(toChannel:features:completion:)``
329 | public struct RtmSubscribeFeatures: OptionSet {
    |               `- note: consider making struct 'RtmSubscribeFeatures' conform to the 'Sendable' protocol
330 |     public let rawValue: UInt
331 |
    :
338 |     ///
339 |     /// This option allows you to receive metadata updates for the subscribed channels.
340 |     public static let metadata = RtmSubscribeFeatures(rawValue: AgoraRtmSubscribeChannelFeature.metadata.rawValue)
    |                       |- warning: static property 'metadata' is not concurrency-safe because non-'Sendable' type 'RtmSubscribeFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'metadata' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
341 |
342 |     /// Subscribe to channels with user presence updates.
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmClientKit.swift:350:23: warning: static property 'lock' is not concurrency-safe because non-'Sendable' type 'RtmSubscribeFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
327 | /// - See Also: ``RtmClientKit/subscribe(toChannel:features:)`` and
328 | ///          ``RtmClientKit/subscribe(toChannel:features:completion:)``
329 | public struct RtmSubscribeFeatures: OptionSet {
    |               `- note: consider making struct 'RtmSubscribeFeatures' conform to the 'Sendable' protocol
330 |     public let rawValue: UInt
331 |
    :
348 |     ///
349 |     /// This option allows you to receive updates about channel locks in the subscribed channels.
350 |     public static let lock = RtmSubscribeFeatures(rawValue: AgoraRtmSubscribeChannelFeature.lock.rawValue)
    |                       |- warning: static property 'lock' is not concurrency-safe because non-'Sendable' type 'RtmSubscribeFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'lock' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
351 |
352 |     public init(rawValue: UInt) {
[31/31] Compiling AgoraRtm RtmClientResponses.swift
<module-includes>:1:9: note: in file included from <module-includes>:1:
1 | #import "Headers/AgoraRtmKit.h"
  |         `- note: in file included from <module-includes>:1:
2 | #import "Headers/AgoraRtmClientKit.h"
3 | #import "Headers/AgoraRtmEnumerates.h"
/Users/admin/builder/spi-builder-workspace/.build/arm64-apple-macosx/debug/AgoraRtmKit.framework/Headers/AgoraRtmKit.h:8:9: note: in file included from /Users/admin/builder/spi-builder-workspace/.build/arm64-apple-macosx/debug/AgoraRtmKit.framework/Headers/AgoraRtmKit.h:8:
 6 | //
 7 |
 8 | #import <AgoraRtmKit/AgoraRtmClientKit.h>
   |         `- note: in file included from /Users/admin/builder/spi-builder-workspace/.build/arm64-apple-macosx/debug/AgoraRtmKit.framework/Headers/AgoraRtmKit.h:8:
 9 | #import <AgoraRtmKit/AgoraRtmEnumerates.h>
10 | #import <AgoraRtmKit/AgoraRtmObjects.h>
/Users/admin/builder/spi-builder-workspace/.build/arm64-apple-macosx/debug/AgoraRtmKit.framework/Headers/AgoraRtmClientKit.h:8:9: note: in file included from /Users/admin/builder/spi-builder-workspace/.build/arm64-apple-macosx/debug/AgoraRtmKit.framework/Headers/AgoraRtmClientKit.h:8:
  6 | //
  7 | #import <Foundation/Foundation.h>
  8 | #import "AgoraRtmObjects.h"
    |         `- note: in file included from /Users/admin/builder/spi-builder-workspace/.build/arm64-apple-macosx/debug/AgoraRtmKit.framework/Headers/AgoraRtmClientKit.h:8:
  9 | @protocol AgoraRtmClientDelegate <NSObject>
 10 | @optional
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmClientKit.swift:335:23: warning: static property 'messages' is not concurrency-safe because non-'Sendable' type 'RtmSubscribeFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
327 | /// - See Also: ``RtmClientKit/subscribe(toChannel:features:)`` and
328 | ///          ``RtmClientKit/subscribe(toChannel:features:completion:)``
329 | public struct RtmSubscribeFeatures: OptionSet {
    |               `- note: consider making struct 'RtmSubscribeFeatures' conform to the 'Sendable' protocol
330 |     public let rawValue: UInt
331 |
    :
333 |     ///
334 |     /// This option allows you to receive messages sent to the subscribed channels.
335 |     public static let messages = RtmSubscribeFeatures(rawValue: AgoraRtmSubscribeChannelFeature.message.rawValue)
    |                       |- warning: static property 'messages' is not concurrency-safe because non-'Sendable' type 'RtmSubscribeFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'messages' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
336 |
337 |     /// Subscribe to channels with metadata.
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmClientKit.swift:345:23: warning: static property 'presence' is not concurrency-safe because non-'Sendable' type 'RtmSubscribeFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
327 | /// - See Also: ``RtmClientKit/subscribe(toChannel:features:)`` and
328 | ///          ``RtmClientKit/subscribe(toChannel:features:completion:)``
329 | public struct RtmSubscribeFeatures: OptionSet {
    |               `- note: consider making struct 'RtmSubscribeFeatures' conform to the 'Sendable' protocol
330 |     public let rawValue: UInt
331 |
    :
343 |     ///
344 |     /// This option allows you to receive presence updates for the users in the subscribed channels.
345 |     public static let presence = RtmSubscribeFeatures(rawValue: AgoraRtmSubscribeChannelFeature.presence.rawValue)
    |                       |- warning: static property 'presence' is not concurrency-safe because non-'Sendable' type 'RtmSubscribeFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'presence' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
346 |
347 |     /// Subscribe to channels with lock updates.
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmClientKit.swift:340:23: warning: static property 'metadata' is not concurrency-safe because non-'Sendable' type 'RtmSubscribeFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
327 | /// - See Also: ``RtmClientKit/subscribe(toChannel:features:)`` and
328 | ///          ``RtmClientKit/subscribe(toChannel:features:completion:)``
329 | public struct RtmSubscribeFeatures: OptionSet {
    |               `- note: consider making struct 'RtmSubscribeFeatures' conform to the 'Sendable' protocol
330 |     public let rawValue: UInt
331 |
    :
338 |     ///
339 |     /// This option allows you to receive metadata updates for the subscribed channels.
340 |     public static let metadata = RtmSubscribeFeatures(rawValue: AgoraRtmSubscribeChannelFeature.metadata.rawValue)
    |                       |- warning: static property 'metadata' is not concurrency-safe because non-'Sendable' type 'RtmSubscribeFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'metadata' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
341 |
342 |     /// Subscribe to channels with user presence updates.
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtm/RtmClientKit.swift:350:23: warning: static property 'lock' is not concurrency-safe because non-'Sendable' type 'RtmSubscribeFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
327 | /// - See Also: ``RtmClientKit/subscribe(toChannel:features:)`` and
328 | ///          ``RtmClientKit/subscribe(toChannel:features:completion:)``
329 | public struct RtmSubscribeFeatures: OptionSet {
    |               `- note: consider making struct 'RtmSubscribeFeatures' conform to the 'Sendable' protocol
330 |     public let rawValue: UInt
331 |
    :
348 |     ///
349 |     /// This option allows you to receive updates about channel locks in the subscribed channels.
350 |     public static let lock = RtmSubscribeFeatures(rawValue: AgoraRtmSubscribeChannelFeature.lock.rawValue)
    |                       |- warning: static property 'lock' is not concurrency-safe because non-'Sendable' type 'RtmSubscribeFeatures' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'lock' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
351 |
352 |     public init(rawValue: UInt) {
Build complete! (24.33s)
[9637/30134450] Downloading https://github.com/AgoraIO/AgoraRtm_Apple/releases/download/2.1.8-beta.1/AgoraRtmKit.xcframework.zip
Downloading binary artifact https://github.com/AgoraIO/AgoraRtm_Apple/releases/download/2.1.8-beta.1/AgoraRtmKit.xcframework.zip
Downloaded https://github.com/AgoraIO/AgoraRtm_Apple/releases/download/2.1.8-beta.1/AgoraRtmKit.xcframework.zip (2.92s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "AgoraRtm",
  "name" : "AgoraRtm",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "12.0"
    },
    {
      "name" : "macos",
      "version" : "10.15"
    },
    {
      "name" : "visionos",
      "version" : "1.0"
    }
  ],
  "products" : [
    {
      "name" : "AgoraRtmKit-Swift",
      "targets" : [
        "AgoraRtm"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "AgoraRtmKit-OC",
      "targets" : [
        "AgoraRtmKit-OC"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "AgoraRtmTests",
      "module_type" : "SwiftTarget",
      "name" : "AgoraRtmTests",
      "path" : "Tests/AgoraRtmTests",
      "sources" : [
        "RtmClientConfigTests.swift",
        "RtmClientKitTests.swift",
        "RtmDelegateTests.swift",
        "RtmErrorTests.swift"
      ],
      "target_dependencies" : [
        "AgoraRtm"
      ],
      "type" : "test"
    },
    {
      "c99name" : "AgoraRtmKit_OC",
      "module_type" : "BinaryTarget",
      "name" : "AgoraRtmKit-OC",
      "path" : "remote/archive/AgoraRtmKit.xcframework.zip",
      "product_memberships" : [
        "AgoraRtmKit-Swift",
        "AgoraRtmKit-OC"
      ],
      "sources" : [
      ],
      "type" : "binary"
    },
    {
      "c99name" : "AgoraRtm",
      "module_type" : "SwiftTarget",
      "name" : "AgoraRtm",
      "path" : "Sources/AgoraRtm",
      "product_memberships" : [
        "AgoraRtmKit-Swift"
      ],
      "sources" : [
        "CompletionHandlers.swift",
        "RtmClientConfig+RtmAreaCode.swift",
        "RtmClientConfig+RtmEncryptionConfig.swift",
        "RtmClientConfig+RtmLogConfig.swift",
        "RtmClientConfig+RtmProxyConfig.swift",
        "RtmClientConfig.swift",
        "RtmClientDelegate+Lock.swift",
        "RtmClientDelegate+Messages.swift",
        "RtmClientDelegate+Presence.swift",
        "RtmClientDelegate+StateChanged.swift",
        "RtmClientDelegate+Storage.swift",
        "RtmClientDelegate+Topic.swift",
        "RtmClientDelegate.swift",
        "RtmClientKit.swift",
        "RtmClientResponses.swift",
        "RtmErrorCode.swift",
        "RtmLegalCharacterSets.swift",
        "RtmLock+Async.swift",
        "RtmLock.swift",
        "RtmPresence+Async.swift",
        "RtmPresence.swift",
        "RtmStorage+Channel.swift",
        "RtmStorage+User.swift",
        "RtmStorage.swift",
        "RtmStreamChannel+ChannelOptions.swift",
        "RtmStreamChannel.swift",
        "Utilities+Encodable.swift"
      ],
      "target_dependencies" : [
        "AgoraRtmKit-OC"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.9"
}
Done.
This is a staging environment. For live and up-to-date package information, visit swiftpackageindex.com.