Build Information
Successful build of QSChatView, reference v0.3.0 (9b1546
), with Swift 6.0 for macOS (SPM) on 30 Nov 2024 06:48:35 UTC.
Swift 6 data race errors: 4
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures
Build Log
========================================
RunAll
========================================
Builder version: 4.58.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/FiveSheepCo/QSChatView.git
Reference: v0.3.0
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/FiveSheepCo/QSChatView
* tag v0.3.0 -> FETCH_HEAD
HEAD is now at 9b15461 Add message deletion and `ChatConfigBuilder`
Cloned https://github.com/FiveSheepCo/QSChatView.git
Revision (git rev-parse @):
9b1546132d09f1b34d2e6051eaaf5b413334482f
SUCCESS checkout https://github.com/FiveSheepCo/QSChatView.git at v0.3.0
========================================
ResolveProductDependencies
========================================
Resolving dependencies ...
{
"identity": ".resolve-product-dependencies",
"name": "resolve-dependencies",
"url": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
"dependencies": [
{
"identity": "qschatview",
"name": "QSChatView",
"url": "https://github.com/FiveSheepCo/QSChatView.git",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/QSChatView",
"dependencies": [
]
}
]
}
Fetching https://github.com/FiveSheepCo/QSChatView.git
[1/233] Fetching qschatview
Fetched https://github.com/FiveSheepCo/QSChatView.git from cache (7.75s)
Creating working copy for https://github.com/FiveSheepCo/QSChatView.git
Working copy of https://github.com/FiveSheepCo/QSChatView.git resolved at v0.3.0 (9b15461)
warning: '.resolve-product-dependencies': dependency 'qschatview' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.0
Building package at path: $PWD
https://github.com/FiveSheepCo/QSChatView.git
{
"dependencies" : [
],
"manifest_display_name" : "QSChatView",
"name" : "QSChatView",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "15.0"
},
{
"name" : "macos",
"version" : "12.0"
},
{
"name" : "maccatalyst",
"version" : "15.0"
}
],
"products" : [
{
"name" : "QSChatView",
"targets" : [
"QSChatView"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "QSChatViewTests",
"module_type" : "SwiftTarget",
"name" : "QSChatViewTests",
"path" : "Tests/QSChatViewTests",
"sources" : [
"ChatControllerTests.swift",
"QSChatViewTests.swift"
],
"target_dependencies" : [
"QSChatView"
],
"type" : "test"
},
{
"c99name" : "QSChatView",
"module_type" : "SwiftTarget",
"name" : "QSChatView",
"path" : "Sources/QSChatView",
"product_memberships" : [
"QSChatView"
],
"sources" : [
"Internal/Components/BetterScrollView.swift",
"Internal/Components/ChatBubble.swift",
"Internal/Components/ChatTextField.swift",
"Internal/Components/TypingIndicator.swift",
"Internal/Components/WrappedChatBubble.swift",
"Internal/Data/ScrollViewData.swift",
"Internal/Modifiers/ContentHeightModifier.swift",
"Internal/Modifiers/ScrollOffsetModifier.swift",
"Internal/PreferenceKeys/ContentHeightPreferenceKey.swift",
"Internal/PreferenceKeys/ScrollOffsetPreferenceKey.swift",
"Internal/Styles/ChatTextFieldStyle.swift",
"Public/ChatAvatar.swift",
"Public/ChatController.swift",
"Public/ChatMessage.swift",
"Public/ChatMessageContent.swift",
"Public/ChatMessagePromise.swift",
"Public/ChatParticipant.swift",
"Public/ChatParticipantBuilder.swift",
"Public/ChatParticipantRole.swift",
"Public/Config/ChatConfig.swift",
"Public/Config/ChatConfigBuilder.swift",
"Public/Config/ChatContextMenuItem.swift",
"Public/Config/ChatScrollBehavior.swift",
"QSChatView.swift"
],
"type" : "library"
}
],
"tools_version" : "5.7"
}
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version--7754E27361AE5C74.txt
[3/25] Emitting module QSChatView
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Public/ChatParticipant.swift:19:23: warning: static property 'me' is not concurrency-safe because non-'Sendable' type 'ChatParticipant' may have shared mutable state; this is an error in the Swift 6 language mode
12 | ///
13 | /// You should use ``ChatParticipantBuilder`` to instantiate this.
14 | public class ChatParticipant: Identifiable, Equatable {
| `- note: class 'ChatParticipant' does not conform to the 'Sendable' protocol
15 | @available(*, deprecated, message: "Use ChatParticipant.me instead.")
16 | public static let defaultChatter = ChatParticipant(role: .chatter)
17 |
18 | /// A chat participant representing the current user.
19 | public static let me = ChatParticipant(role: .chatter)
| |- warning: static property 'me' is not concurrency-safe because non-'Sendable' type 'ChatParticipant' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'me' 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 | let name: String?
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Internal/PreferenceKeys/ContentHeightPreferenceKey.swift:13:16: warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
11 | struct ContentHeightPreferenceKey: PreferenceKey {
12 | typealias Value = CGFloat
13 | static var defaultValue: CGFloat = 0
| |- warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'defaultValue' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'defaultValue' 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
14 |
15 | static func reduce(value: inout Value, nextValue: () -> Value) {
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Internal/PreferenceKeys/ScrollOffsetPreferenceKey.swift:13:16: warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
11 | struct ScrollOffsetPreferenceKey: PreferenceKey {
12 | typealias Value = CGFloat
13 | static var defaultValue: CGFloat = 0
| |- warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'defaultValue' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'defaultValue' 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
14 |
15 | static func reduce(value: inout Value, nextValue: () -> Value) {
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Public/ChatParticipant.swift:16:23: warning: static property 'defaultChatter' is not concurrency-safe because non-'Sendable' type 'ChatParticipant' may have shared mutable state; this is an error in the Swift 6 language mode
12 | ///
13 | /// You should use ``ChatParticipantBuilder`` to instantiate this.
14 | public class ChatParticipant: Identifiable, Equatable {
| `- note: class 'ChatParticipant' does not conform to the 'Sendable' protocol
15 | @available(*, deprecated, message: "Use ChatParticipant.me instead.")
16 | public static let defaultChatter = ChatParticipant(role: .chatter)
| |- warning: static property 'defaultChatter' is not concurrency-safe because non-'Sendable' type 'ChatParticipant' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'defaultChatter' 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 | /// A chat participant representing the current user.
[4/27] Compiling QSChatView ChatConfigBuilder.swift
[5/27] Compiling QSChatView ChatContextMenuItem.swift
[6/27] Compiling QSChatView ChatParticipantRole.swift
[7/27] Compiling QSChatView ChatConfig.swift
[8/27] Compiling QSChatView ContentHeightModifier.swift
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Internal/PreferenceKeys/ContentHeightPreferenceKey.swift:13:16: warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
11 | struct ContentHeightPreferenceKey: PreferenceKey {
12 | typealias Value = CGFloat
13 | static var defaultValue: CGFloat = 0
| |- warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'defaultValue' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'defaultValue' 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
14 |
15 | static func reduce(value: inout Value, nextValue: () -> Value) {
[9/27] Compiling QSChatView ScrollOffsetModifier.swift
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Internal/PreferenceKeys/ContentHeightPreferenceKey.swift:13:16: warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
11 | struct ContentHeightPreferenceKey: PreferenceKey {
12 | typealias Value = CGFloat
13 | static var defaultValue: CGFloat = 0
| |- warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'defaultValue' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'defaultValue' 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
14 |
15 | static func reduce(value: inout Value, nextValue: () -> Value) {
[10/27] Compiling QSChatView ContentHeightPreferenceKey.swift
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Internal/PreferenceKeys/ContentHeightPreferenceKey.swift:13:16: warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
11 | struct ContentHeightPreferenceKey: PreferenceKey {
12 | typealias Value = CGFloat
13 | static var defaultValue: CGFloat = 0
| |- warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'defaultValue' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'defaultValue' 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
14 |
15 | static func reduce(value: inout Value, nextValue: () -> Value) {
[11/27] Compiling QSChatView ChatScrollBehavior.swift
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Public/ChatParticipant.swift:19:23: warning: static property 'me' is not concurrency-safe because non-'Sendable' type 'ChatParticipant' may have shared mutable state; this is an error in the Swift 6 language mode
12 | ///
13 | /// You should use ``ChatParticipantBuilder`` to instantiate this.
14 | public class ChatParticipant: Identifiable, Equatable {
| `- note: class 'ChatParticipant' does not conform to the 'Sendable' protocol
15 | @available(*, deprecated, message: "Use ChatParticipant.me instead.")
16 | public static let defaultChatter = ChatParticipant(role: .chatter)
17 |
18 | /// A chat participant representing the current user.
19 | public static let me = ChatParticipant(role: .chatter)
| |- warning: static property 'me' is not concurrency-safe because non-'Sendable' type 'ChatParticipant' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'me' 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 | let name: String?
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/QSChatView.swift:185:53: warning: capture of 'chattee' with non-sendable type 'ChatParticipant' in a `@Sendable` closure; this is an error in the Swift 6 language mode
183 | }
184 | DispatchQueue.main.async {
185 | let participant = offset % 2 == 0 ? chattee : chatter
| `- warning: capture of 'chattee' with non-sendable type 'ChatParticipant' in a `@Sendable` closure; this is an error in the Swift 6 language mode
186 | let promise = controller.sendPromise(from: participant)
187 | let content = ChatMessageContent.text(dummyConversation[offset])
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Public/ChatParticipant.swift:14:14: note: class 'ChatParticipant' does not conform to the 'Sendable' protocol
12 | ///
13 | /// You should use ``ChatParticipantBuilder`` to instantiate this.
14 | public class ChatParticipant: Identifiable, Equatable {
| `- note: class 'ChatParticipant' does not conform to the 'Sendable' protocol
15 | @available(*, deprecated, message: "Use ChatParticipant.me instead.")
16 | public static let defaultChatter = ChatParticipant(role: .chatter)
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/QSChatView.swift:185:63: warning: capture of 'chatter' with non-sendable type 'ChatParticipant' in a `@Sendable` closure; this is an error in the Swift 6 language mode
183 | }
184 | DispatchQueue.main.async {
185 | let participant = offset % 2 == 0 ? chattee : chatter
| `- warning: capture of 'chatter' with non-sendable type 'ChatParticipant' in a `@Sendable` closure; this is an error in the Swift 6 language mode
186 | let promise = controller.sendPromise(from: participant)
187 | let content = ChatMessageContent.text(dummyConversation[offset])
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Public/ChatParticipant.swift:14:14: note: class 'ChatParticipant' does not conform to the 'Sendable' protocol
12 | ///
13 | /// You should use ``ChatParticipantBuilder`` to instantiate this.
14 | public class ChatParticipant: Identifiable, Equatable {
| `- note: class 'ChatParticipant' does not conform to the 'Sendable' protocol
15 | @available(*, deprecated, message: "Use ChatParticipant.me instead.")
16 | public static let defaultChatter = ChatParticipant(role: .chatter)
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/QSChatView.swift:186:31: warning: capture of 'controller' with non-sendable type 'ChatController' in a `@Sendable` closure; this is an error in the Swift 6 language mode
184 | DispatchQueue.main.async {
185 | let participant = offset % 2 == 0 ? chattee : chatter
186 | let promise = controller.sendPromise(from: participant)
| `- warning: capture of 'controller' with non-sendable type 'ChatController' in a `@Sendable` closure; this is an error in the Swift 6 language mode
187 | let content = ChatMessageContent.text(dummyConversation[offset])
188 | Timer.scheduledTimer(withTimeInterval: 1, repeats: false) { _ in
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Public/ChatController.swift:12:14: note: class 'ChatController' does not conform to the 'Sendable' protocol
10 |
11 | /// The chat controller used by ``QSChatView``.
12 | public class ChatController: ObservableObject {
| `- note: class 'ChatController' does not conform to the 'Sendable' protocol
13 | @Published var textInputContent: String = ""
14 | @Published var messages: [ChatMessage] = []
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/QSChatView.swift:180:16: warning: reference to captured var 'offset' in concurrently-executing code; this is an error in the Swift 6 language mode
178 | timer?.invalidate()
179 | timer = Timer.scheduledTimer(withTimeInterval: 2, repeats: true) { timer in
180 | if offset == dummyConversation.count {
| `- warning: reference to captured var 'offset' in concurrently-executing code; this is an error in the Swift 6 language mode
181 | timer.invalidate()
182 | return
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/QSChatView.swift:180:26: warning: main actor-isolated static property 'dummyConversation' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
141 | static var timer: Timer? = nil
142 |
143 | static var dummyConversation: [String] {
| `- note: static property declared here
144 | [
145 | "Hey! How's your day going?",
:
178 | timer?.invalidate()
179 | timer = Timer.scheduledTimer(withTimeInterval: 2, repeats: true) { timer in
180 | if offset == dummyConversation.count {
| `- warning: main actor-isolated static property 'dummyConversation' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
181 | timer.invalidate()
182 | return
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/QSChatView.swift:190:25: warning: capture of 'controller' with non-sendable type 'ChatController' in a `@Sendable` closure; this is an error in the Swift 6 language mode
188 | Timer.scheduledTimer(withTimeInterval: 1, repeats: false) { _ in
189 | DispatchQueue.main.async {
190 | controller.fulfill(promise, withContent: content, timestamp: Date(timeIntervalSince1970: startTimestamp))
| `- warning: capture of 'controller' with non-sendable type 'ChatController' in a `@Sendable` closure; this is an error in the Swift 6 language mode
191 | startTimestamp += 60 * 2
192 | }
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Public/ChatController.swift:12:14: note: class 'ChatController' does not conform to the 'Sendable' protocol
10 |
11 | /// The chat controller used by ``QSChatView``.
12 | public class ChatController: ObservableObject {
| `- note: class 'ChatController' does not conform to the 'Sendable' protocol
13 | @Published var textInputContent: String = ""
14 | @Published var messages: [ChatMessage] = []
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/QSChatView.swift:190:44: warning: capture of 'promise' with non-sendable type 'ChatMessagePromise' in a `@Sendable` closure; this is an error in the Swift 6 language mode
188 | Timer.scheduledTimer(withTimeInterval: 1, repeats: false) { _ in
189 | DispatchQueue.main.async {
190 | controller.fulfill(promise, withContent: content, timestamp: Date(timeIntervalSince1970: startTimestamp))
| `- warning: capture of 'promise' with non-sendable type 'ChatMessagePromise' in a `@Sendable` closure; this is an error in the Swift 6 language mode
191 | startTimestamp += 60 * 2
192 | }
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Public/ChatMessagePromise.swift:13:15: note: consider making struct 'ChatMessagePromise' conform to the 'Sendable' protocol
11 | ///
12 | /// Use via ``ChatController/sendPromise(from:)``
13 | public struct ChatMessagePromise {
| `- note: consider making struct 'ChatMessagePromise' conform to the 'Sendable' protocol
14 | let controller: ChatController
15 | let messageId: UUID
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/QSChatView.swift:190:66: warning: capture of 'content' with non-sendable type 'ChatMessageContent' in a `@Sendable` closure; this is an error in the Swift 6 language mode
188 | Timer.scheduledTimer(withTimeInterval: 1, repeats: false) { _ in
189 | DispatchQueue.main.async {
190 | controller.fulfill(promise, withContent: content, timestamp: Date(timeIntervalSince1970: startTimestamp))
| `- warning: capture of 'content' with non-sendable type 'ChatMessageContent' in a `@Sendable` closure; this is an error in the Swift 6 language mode
191 | startTimestamp += 60 * 2
192 | }
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Public/ChatMessageContent.swift:12:13: note: consider making enum 'ChatMessageContent' conform to the 'Sendable' protocol
10 |
11 | /// The content of a chat message.
12 | public enum ChatMessageContent: Equatable {
| `- note: consider making enum 'ChatMessageContent' conform to the 'Sendable' protocol
13 |
14 | /// A typing indicator.
[12/27] Compiling QSChatView QSChatView.swift
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Public/ChatParticipant.swift:19:23: warning: static property 'me' is not concurrency-safe because non-'Sendable' type 'ChatParticipant' may have shared mutable state; this is an error in the Swift 6 language mode
12 | ///
13 | /// You should use ``ChatParticipantBuilder`` to instantiate this.
14 | public class ChatParticipant: Identifiable, Equatable {
| `- note: class 'ChatParticipant' does not conform to the 'Sendable' protocol
15 | @available(*, deprecated, message: "Use ChatParticipant.me instead.")
16 | public static let defaultChatter = ChatParticipant(role: .chatter)
17 |
18 | /// A chat participant representing the current user.
19 | public static let me = ChatParticipant(role: .chatter)
| |- warning: static property 'me' is not concurrency-safe because non-'Sendable' type 'ChatParticipant' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'me' 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 | let name: String?
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/QSChatView.swift:185:53: warning: capture of 'chattee' with non-sendable type 'ChatParticipant' in a `@Sendable` closure; this is an error in the Swift 6 language mode
183 | }
184 | DispatchQueue.main.async {
185 | let participant = offset % 2 == 0 ? chattee : chatter
| `- warning: capture of 'chattee' with non-sendable type 'ChatParticipant' in a `@Sendable` closure; this is an error in the Swift 6 language mode
186 | let promise = controller.sendPromise(from: participant)
187 | let content = ChatMessageContent.text(dummyConversation[offset])
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Public/ChatParticipant.swift:14:14: note: class 'ChatParticipant' does not conform to the 'Sendable' protocol
12 | ///
13 | /// You should use ``ChatParticipantBuilder`` to instantiate this.
14 | public class ChatParticipant: Identifiable, Equatable {
| `- note: class 'ChatParticipant' does not conform to the 'Sendable' protocol
15 | @available(*, deprecated, message: "Use ChatParticipant.me instead.")
16 | public static let defaultChatter = ChatParticipant(role: .chatter)
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/QSChatView.swift:185:63: warning: capture of 'chatter' with non-sendable type 'ChatParticipant' in a `@Sendable` closure; this is an error in the Swift 6 language mode
183 | }
184 | DispatchQueue.main.async {
185 | let participant = offset % 2 == 0 ? chattee : chatter
| `- warning: capture of 'chatter' with non-sendable type 'ChatParticipant' in a `@Sendable` closure; this is an error in the Swift 6 language mode
186 | let promise = controller.sendPromise(from: participant)
187 | let content = ChatMessageContent.text(dummyConversation[offset])
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Public/ChatParticipant.swift:14:14: note: class 'ChatParticipant' does not conform to the 'Sendable' protocol
12 | ///
13 | /// You should use ``ChatParticipantBuilder`` to instantiate this.
14 | public class ChatParticipant: Identifiable, Equatable {
| `- note: class 'ChatParticipant' does not conform to the 'Sendable' protocol
15 | @available(*, deprecated, message: "Use ChatParticipant.me instead.")
16 | public static let defaultChatter = ChatParticipant(role: .chatter)
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/QSChatView.swift:186:31: warning: capture of 'controller' with non-sendable type 'ChatController' in a `@Sendable` closure; this is an error in the Swift 6 language mode
184 | DispatchQueue.main.async {
185 | let participant = offset % 2 == 0 ? chattee : chatter
186 | let promise = controller.sendPromise(from: participant)
| `- warning: capture of 'controller' with non-sendable type 'ChatController' in a `@Sendable` closure; this is an error in the Swift 6 language mode
187 | let content = ChatMessageContent.text(dummyConversation[offset])
188 | Timer.scheduledTimer(withTimeInterval: 1, repeats: false) { _ in
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Public/ChatController.swift:12:14: note: class 'ChatController' does not conform to the 'Sendable' protocol
10 |
11 | /// The chat controller used by ``QSChatView``.
12 | public class ChatController: ObservableObject {
| `- note: class 'ChatController' does not conform to the 'Sendable' protocol
13 | @Published var textInputContent: String = ""
14 | @Published var messages: [ChatMessage] = []
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/QSChatView.swift:180:16: warning: reference to captured var 'offset' in concurrently-executing code; this is an error in the Swift 6 language mode
178 | timer?.invalidate()
179 | timer = Timer.scheduledTimer(withTimeInterval: 2, repeats: true) { timer in
180 | if offset == dummyConversation.count {
| `- warning: reference to captured var 'offset' in concurrently-executing code; this is an error in the Swift 6 language mode
181 | timer.invalidate()
182 | return
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/QSChatView.swift:180:26: warning: main actor-isolated static property 'dummyConversation' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
141 | static var timer: Timer? = nil
142 |
143 | static var dummyConversation: [String] {
| `- note: static property declared here
144 | [
145 | "Hey! How's your day going?",
:
178 | timer?.invalidate()
179 | timer = Timer.scheduledTimer(withTimeInterval: 2, repeats: true) { timer in
180 | if offset == dummyConversation.count {
| `- warning: main actor-isolated static property 'dummyConversation' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
181 | timer.invalidate()
182 | return
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/QSChatView.swift:190:25: warning: capture of 'controller' with non-sendable type 'ChatController' in a `@Sendable` closure; this is an error in the Swift 6 language mode
188 | Timer.scheduledTimer(withTimeInterval: 1, repeats: false) { _ in
189 | DispatchQueue.main.async {
190 | controller.fulfill(promise, withContent: content, timestamp: Date(timeIntervalSince1970: startTimestamp))
| `- warning: capture of 'controller' with non-sendable type 'ChatController' in a `@Sendable` closure; this is an error in the Swift 6 language mode
191 | startTimestamp += 60 * 2
192 | }
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Public/ChatController.swift:12:14: note: class 'ChatController' does not conform to the 'Sendable' protocol
10 |
11 | /// The chat controller used by ``QSChatView``.
12 | public class ChatController: ObservableObject {
| `- note: class 'ChatController' does not conform to the 'Sendable' protocol
13 | @Published var textInputContent: String = ""
14 | @Published var messages: [ChatMessage] = []
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/QSChatView.swift:190:44: warning: capture of 'promise' with non-sendable type 'ChatMessagePromise' in a `@Sendable` closure; this is an error in the Swift 6 language mode
188 | Timer.scheduledTimer(withTimeInterval: 1, repeats: false) { _ in
189 | DispatchQueue.main.async {
190 | controller.fulfill(promise, withContent: content, timestamp: Date(timeIntervalSince1970: startTimestamp))
| `- warning: capture of 'promise' with non-sendable type 'ChatMessagePromise' in a `@Sendable` closure; this is an error in the Swift 6 language mode
191 | startTimestamp += 60 * 2
192 | }
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Public/ChatMessagePromise.swift:13:15: note: consider making struct 'ChatMessagePromise' conform to the 'Sendable' protocol
11 | ///
12 | /// Use via ``ChatController/sendPromise(from:)``
13 | public struct ChatMessagePromise {
| `- note: consider making struct 'ChatMessagePromise' conform to the 'Sendable' protocol
14 | let controller: ChatController
15 | let messageId: UUID
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/QSChatView.swift:190:66: warning: capture of 'content' with non-sendable type 'ChatMessageContent' in a `@Sendable` closure; this is an error in the Swift 6 language mode
188 | Timer.scheduledTimer(withTimeInterval: 1, repeats: false) { _ in
189 | DispatchQueue.main.async {
190 | controller.fulfill(promise, withContent: content, timestamp: Date(timeIntervalSince1970: startTimestamp))
| `- warning: capture of 'content' with non-sendable type 'ChatMessageContent' in a `@Sendable` closure; this is an error in the Swift 6 language mode
191 | startTimestamp += 60 * 2
192 | }
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Public/ChatMessageContent.swift:12:13: note: consider making enum 'ChatMessageContent' conform to the 'Sendable' protocol
10 |
11 | /// The content of a chat message.
12 | public enum ChatMessageContent: Equatable {
| `- note: consider making enum 'ChatMessageContent' conform to the 'Sendable' protocol
13 |
14 | /// A typing indicator.
[13/27] Compiling QSChatView ChatMessageContent.swift
[14/27] Compiling QSChatView ChatMessagePromise.swift
[15/27] Compiling QSChatView ScrollOffsetPreferenceKey.swift
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Internal/PreferenceKeys/ScrollOffsetPreferenceKey.swift:13:16: warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
11 | struct ScrollOffsetPreferenceKey: PreferenceKey {
12 | typealias Value = CGFloat
13 | static var defaultValue: CGFloat = 0
| |- warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'defaultValue' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'defaultValue' 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
14 |
15 | static func reduce(value: inout Value, nextValue: () -> Value) {
[16/27] Compiling QSChatView ChatTextFieldStyle.swift
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Internal/PreferenceKeys/ScrollOffsetPreferenceKey.swift:13:16: warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
11 | struct ScrollOffsetPreferenceKey: PreferenceKey {
12 | typealias Value = CGFloat
13 | static var defaultValue: CGFloat = 0
| |- warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'defaultValue' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'defaultValue' 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
14 |
15 | static func reduce(value: inout Value, nextValue: () -> Value) {
[17/27] Compiling QSChatView ChatAvatar.swift
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Internal/PreferenceKeys/ScrollOffsetPreferenceKey.swift:13:16: warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
11 | struct ScrollOffsetPreferenceKey: PreferenceKey {
12 | typealias Value = CGFloat
13 | static var defaultValue: CGFloat = 0
| |- warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'defaultValue' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'defaultValue' 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
14 |
15 | static func reduce(value: inout Value, nextValue: () -> Value) {
[18/27] Compiling QSChatView ChatController.swift
[19/27] Compiling QSChatView ChatMessage.swift
[20/27] Compiling QSChatView TypingIndicator.swift
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Internal/Components/TypingIndicator.swift:39:21: warning: main actor-isolated property 'offset' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
18 | let innerSpacing: Double = 7.5
19 |
20 | @State private var offset: Double = 0
| `- note: mutation of this property is only permitted within the actor
21 | @State private var timer: Timer?
22 |
:
37 | ) { _ in
38 | withAnimation(.linear(duration: timeInterval)) {
39 | offset += offsetChangePerTimeStep
| `- warning: main actor-isolated property 'offset' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
40 | }
41 | }
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Public/ChatParticipant.swift:19:23: warning: static property 'me' is not concurrency-safe because non-'Sendable' type 'ChatParticipant' may have shared mutable state; this is an error in the Swift 6 language mode
12 | ///
13 | /// You should use ``ChatParticipantBuilder`` to instantiate this.
14 | public class ChatParticipant: Identifiable, Equatable {
| `- note: class 'ChatParticipant' does not conform to the 'Sendable' protocol
15 | @available(*, deprecated, message: "Use ChatParticipant.me instead.")
16 | public static let defaultChatter = ChatParticipant(role: .chatter)
17 |
18 | /// A chat participant representing the current user.
19 | public static let me = ChatParticipant(role: .chatter)
| |- warning: static property 'me' is not concurrency-safe because non-'Sendable' type 'ChatParticipant' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'me' 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 | let name: String?
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Internal/Data/ScrollViewData.swift:26:56: warning: main actor-isolated property 'frame' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
24 | return UIScreen.main.bounds.height
25 | #elseif os(macOS)
26 | return Double(NSApplication.shared.mainWindow?.frame.height ?? 0)
| `- warning: main actor-isolated property 'frame' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
27 | #endif
28 | }
AppKit.NSWindow:78:25: note: property declared here
76 | @available(macOS 15.0, *)
77 | open var cascadingReferenceFrame: NSRect { get }
78 | @MainActor open var frame: NSRect { get }
| `- note: property declared here
79 | open func animationResizeTime(_ newFrame: NSRect) -> TimeInterval
80 | open func setFrame(_ frameRect: NSRect, display displayFlag: Bool, animate animateFlag: Bool)
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Internal/Data/ScrollViewData.swift:26:44: warning: main actor-isolated property 'mainWindow' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
24 | return UIScreen.main.bounds.height
25 | #elseif os(macOS)
26 | return Double(NSApplication.shared.mainWindow?.frame.height ?? 0)
| `- warning: main actor-isolated property 'mainWindow' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
27 | #endif
28 | }
AppKit.NSApplication:12:30: note: property declared here
10 | @available(swift, obsoleted: 3, renamed: "window(withWindowNumber:)")
11 | open func windowWithWindowNumber(_ windowNum: Int) -> NSWindow?
12 | @MainActor weak open var mainWindow: NSWindow? { get }
| `- note: property declared here
13 | weak open var keyWindow: NSWindow? { get }
14 | open var isActive: Bool { get }
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Internal/Data/ScrollViewData.swift:26:37: warning: main actor-isolated class property 'shared' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
24 | return UIScreen.main.bounds.height
25 | #elseif os(macOS)
26 | return Double(NSApplication.shared.mainWindow?.frame.height ?? 0)
| `- warning: main actor-isolated class property 'shared' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
27 | #endif
28 | }
AppKit.NSApplication:2:20: note: class property declared here
1 | @MainActor open class NSApplication : NSResponder, NSUserInterfaceValidations, NSMenuItemValidation, NSAccessibilityElementProtocol, NSAccessibilityProtocol {
2 | open class var shared: NSApplication { get }
| `- note: class property declared here
3 | @available(swift, obsoleted: 3, renamed: "shared")
4 | open class var sharedApplication: NSApplication { get }
[21/27] Compiling QSChatView WrappedChatBubble.swift
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Internal/Components/TypingIndicator.swift:39:21: warning: main actor-isolated property 'offset' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
18 | let innerSpacing: Double = 7.5
19 |
20 | @State private var offset: Double = 0
| `- note: mutation of this property is only permitted within the actor
21 | @State private var timer: Timer?
22 |
:
37 | ) { _ in
38 | withAnimation(.linear(duration: timeInterval)) {
39 | offset += offsetChangePerTimeStep
| `- warning: main actor-isolated property 'offset' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
40 | }
41 | }
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Public/ChatParticipant.swift:19:23: warning: static property 'me' is not concurrency-safe because non-'Sendable' type 'ChatParticipant' may have shared mutable state; this is an error in the Swift 6 language mode
12 | ///
13 | /// You should use ``ChatParticipantBuilder`` to instantiate this.
14 | public class ChatParticipant: Identifiable, Equatable {
| `- note: class 'ChatParticipant' does not conform to the 'Sendable' protocol
15 | @available(*, deprecated, message: "Use ChatParticipant.me instead.")
16 | public static let defaultChatter = ChatParticipant(role: .chatter)
17 |
18 | /// A chat participant representing the current user.
19 | public static let me = ChatParticipant(role: .chatter)
| |- warning: static property 'me' is not concurrency-safe because non-'Sendable' type 'ChatParticipant' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'me' 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 | let name: String?
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Internal/Data/ScrollViewData.swift:26:56: warning: main actor-isolated property 'frame' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
24 | return UIScreen.main.bounds.height
25 | #elseif os(macOS)
26 | return Double(NSApplication.shared.mainWindow?.frame.height ?? 0)
| `- warning: main actor-isolated property 'frame' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
27 | #endif
28 | }
AppKit.NSWindow:78:25: note: property declared here
76 | @available(macOS 15.0, *)
77 | open var cascadingReferenceFrame: NSRect { get }
78 | @MainActor open var frame: NSRect { get }
| `- note: property declared here
79 | open func animationResizeTime(_ newFrame: NSRect) -> TimeInterval
80 | open func setFrame(_ frameRect: NSRect, display displayFlag: Bool, animate animateFlag: Bool)
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Internal/Data/ScrollViewData.swift:26:44: warning: main actor-isolated property 'mainWindow' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
24 | return UIScreen.main.bounds.height
25 | #elseif os(macOS)
26 | return Double(NSApplication.shared.mainWindow?.frame.height ?? 0)
| `- warning: main actor-isolated property 'mainWindow' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
27 | #endif
28 | }
AppKit.NSApplication:12:30: note: property declared here
10 | @available(swift, obsoleted: 3, renamed: "window(withWindowNumber:)")
11 | open func windowWithWindowNumber(_ windowNum: Int) -> NSWindow?
12 | @MainActor weak open var mainWindow: NSWindow? { get }
| `- note: property declared here
13 | weak open var keyWindow: NSWindow? { get }
14 | open var isActive: Bool { get }
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Internal/Data/ScrollViewData.swift:26:37: warning: main actor-isolated class property 'shared' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
24 | return UIScreen.main.bounds.height
25 | #elseif os(macOS)
26 | return Double(NSApplication.shared.mainWindow?.frame.height ?? 0)
| `- warning: main actor-isolated class property 'shared' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
27 | #endif
28 | }
AppKit.NSApplication:2:20: note: class property declared here
1 | @MainActor open class NSApplication : NSResponder, NSUserInterfaceValidations, NSMenuItemValidation, NSAccessibilityElementProtocol, NSAccessibilityProtocol {
2 | open class var shared: NSApplication { get }
| `- note: class property declared here
3 | @available(swift, obsoleted: 3, renamed: "shared")
4 | open class var sharedApplication: NSApplication { get }
[22/27] Compiling QSChatView ScrollViewData.swift
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Internal/Components/TypingIndicator.swift:39:21: warning: main actor-isolated property 'offset' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
18 | let innerSpacing: Double = 7.5
19 |
20 | @State private var offset: Double = 0
| `- note: mutation of this property is only permitted within the actor
21 | @State private var timer: Timer?
22 |
:
37 | ) { _ in
38 | withAnimation(.linear(duration: timeInterval)) {
39 | offset += offsetChangePerTimeStep
| `- warning: main actor-isolated property 'offset' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
40 | }
41 | }
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Public/ChatParticipant.swift:19:23: warning: static property 'me' is not concurrency-safe because non-'Sendable' type 'ChatParticipant' may have shared mutable state; this is an error in the Swift 6 language mode
12 | ///
13 | /// You should use ``ChatParticipantBuilder`` to instantiate this.
14 | public class ChatParticipant: Identifiable, Equatable {
| `- note: class 'ChatParticipant' does not conform to the 'Sendable' protocol
15 | @available(*, deprecated, message: "Use ChatParticipant.me instead.")
16 | public static let defaultChatter = ChatParticipant(role: .chatter)
17 |
18 | /// A chat participant representing the current user.
19 | public static let me = ChatParticipant(role: .chatter)
| |- warning: static property 'me' is not concurrency-safe because non-'Sendable' type 'ChatParticipant' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'me' 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 | let name: String?
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Internal/Data/ScrollViewData.swift:26:56: warning: main actor-isolated property 'frame' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
24 | return UIScreen.main.bounds.height
25 | #elseif os(macOS)
26 | return Double(NSApplication.shared.mainWindow?.frame.height ?? 0)
| `- warning: main actor-isolated property 'frame' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
27 | #endif
28 | }
AppKit.NSWindow:78:25: note: property declared here
76 | @available(macOS 15.0, *)
77 | open var cascadingReferenceFrame: NSRect { get }
78 | @MainActor open var frame: NSRect { get }
| `- note: property declared here
79 | open func animationResizeTime(_ newFrame: NSRect) -> TimeInterval
80 | open func setFrame(_ frameRect: NSRect, display displayFlag: Bool, animate animateFlag: Bool)
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Internal/Data/ScrollViewData.swift:26:44: warning: main actor-isolated property 'mainWindow' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
24 | return UIScreen.main.bounds.height
25 | #elseif os(macOS)
26 | return Double(NSApplication.shared.mainWindow?.frame.height ?? 0)
| `- warning: main actor-isolated property 'mainWindow' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
27 | #endif
28 | }
AppKit.NSApplication:12:30: note: property declared here
10 | @available(swift, obsoleted: 3, renamed: "window(withWindowNumber:)")
11 | open func windowWithWindowNumber(_ windowNum: Int) -> NSWindow?
12 | @MainActor weak open var mainWindow: NSWindow? { get }
| `- note: property declared here
13 | weak open var keyWindow: NSWindow? { get }
14 | open var isActive: Bool { get }
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Internal/Data/ScrollViewData.swift:26:37: warning: main actor-isolated class property 'shared' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
24 | return UIScreen.main.bounds.height
25 | #elseif os(macOS)
26 | return Double(NSApplication.shared.mainWindow?.frame.height ?? 0)
| `- warning: main actor-isolated class property 'shared' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
27 | #endif
28 | }
AppKit.NSApplication:2:20: note: class property declared here
1 | @MainActor open class NSApplication : NSResponder, NSUserInterfaceValidations, NSMenuItemValidation, NSAccessibilityElementProtocol, NSAccessibilityProtocol {
2 | open class var shared: NSApplication { get }
| `- note: class property declared here
3 | @available(swift, obsoleted: 3, renamed: "shared")
4 | open class var sharedApplication: NSApplication { get }
[23/27] Compiling QSChatView BetterScrollView.swift
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Internal/Components/ChatBubble.swift:38:9: warning: conformance of 'NSParagraphStyle' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
36 | var str = AttributedString(stringLiteral: message.displayTimeStamp)
37 | str.foregroundColor = timestampColor
38 | str.paragraphStyle = paragraphStyle
| `- warning: conformance of 'NSParagraphStyle' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
39 | str.font = .footnote
40 | return str
AppKit.NSParagraphStyle:2:11: note: conformance of 'NSParagraphStyle' to 'Sendable' has been explicitly marked unavailable here
1 | @available(*, unavailable)
2 | extension NSParagraphStyle : @unchecked Sendable {
| `- note: conformance of 'NSParagraphStyle' to 'Sendable' has been explicitly marked unavailable here
3 | }
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Public/ChatParticipant.swift:19:23: warning: static property 'me' is not concurrency-safe because non-'Sendable' type 'ChatParticipant' may have shared mutable state; this is an error in the Swift 6 language mode
12 | ///
13 | /// You should use ``ChatParticipantBuilder`` to instantiate this.
14 | public class ChatParticipant: Identifiable, Equatable {
| `- note: class 'ChatParticipant' does not conform to the 'Sendable' protocol
15 | @available(*, deprecated, message: "Use ChatParticipant.me instead.")
16 | public static let defaultChatter = ChatParticipant(role: .chatter)
17 |
18 | /// A chat participant representing the current user.
19 | public static let me = ChatParticipant(role: .chatter)
| |- warning: static property 'me' is not concurrency-safe because non-'Sendable' type 'ChatParticipant' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'me' 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 | let name: String?
[24/27] Compiling QSChatView ChatBubble.swift
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Internal/Components/ChatBubble.swift:38:9: warning: conformance of 'NSParagraphStyle' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
36 | var str = AttributedString(stringLiteral: message.displayTimeStamp)
37 | str.foregroundColor = timestampColor
38 | str.paragraphStyle = paragraphStyle
| `- warning: conformance of 'NSParagraphStyle' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
39 | str.font = .footnote
40 | return str
AppKit.NSParagraphStyle:2:11: note: conformance of 'NSParagraphStyle' to 'Sendable' has been explicitly marked unavailable here
1 | @available(*, unavailable)
2 | extension NSParagraphStyle : @unchecked Sendable {
| `- note: conformance of 'NSParagraphStyle' to 'Sendable' has been explicitly marked unavailable here
3 | }
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Public/ChatParticipant.swift:19:23: warning: static property 'me' is not concurrency-safe because non-'Sendable' type 'ChatParticipant' may have shared mutable state; this is an error in the Swift 6 language mode
12 | ///
13 | /// You should use ``ChatParticipantBuilder`` to instantiate this.
14 | public class ChatParticipant: Identifiable, Equatable {
| `- note: class 'ChatParticipant' does not conform to the 'Sendable' protocol
15 | @available(*, deprecated, message: "Use ChatParticipant.me instead.")
16 | public static let defaultChatter = ChatParticipant(role: .chatter)
17 |
18 | /// A chat participant representing the current user.
19 | public static let me = ChatParticipant(role: .chatter)
| |- warning: static property 'me' is not concurrency-safe because non-'Sendable' type 'ChatParticipant' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'me' 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 | let name: String?
[25/27] Compiling QSChatView ChatTextField.swift
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Internal/Components/ChatBubble.swift:38:9: warning: conformance of 'NSParagraphStyle' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
36 | var str = AttributedString(stringLiteral: message.displayTimeStamp)
37 | str.foregroundColor = timestampColor
38 | str.paragraphStyle = paragraphStyle
| `- warning: conformance of 'NSParagraphStyle' to 'Sendable' is unavailable; this is an error in the Swift 6 language mode
39 | str.font = .footnote
40 | return str
AppKit.NSParagraphStyle:2:11: note: conformance of 'NSParagraphStyle' to 'Sendable' has been explicitly marked unavailable here
1 | @available(*, unavailable)
2 | extension NSParagraphStyle : @unchecked Sendable {
| `- note: conformance of 'NSParagraphStyle' to 'Sendable' has been explicitly marked unavailable here
3 | }
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Public/ChatParticipant.swift:19:23: warning: static property 'me' is not concurrency-safe because non-'Sendable' type 'ChatParticipant' may have shared mutable state; this is an error in the Swift 6 language mode
12 | ///
13 | /// You should use ``ChatParticipantBuilder`` to instantiate this.
14 | public class ChatParticipant: Identifiable, Equatable {
| `- note: class 'ChatParticipant' does not conform to the 'Sendable' protocol
15 | @available(*, deprecated, message: "Use ChatParticipant.me instead.")
16 | public static let defaultChatter = ChatParticipant(role: .chatter)
17 |
18 | /// A chat participant representing the current user.
19 | public static let me = ChatParticipant(role: .chatter)
| |- warning: static property 'me' is not concurrency-safe because non-'Sendable' type 'ChatParticipant' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'me' 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 | let name: String?
[26/27] Compiling QSChatView ChatParticipant.swift
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Public/ChatParticipant.swift:16:23: warning: static property 'defaultChatter' is not concurrency-safe because non-'Sendable' type 'ChatParticipant' may have shared mutable state; this is an error in the Swift 6 language mode
12 | ///
13 | /// You should use ``ChatParticipantBuilder`` to instantiate this.
14 | public class ChatParticipant: Identifiable, Equatable {
| `- note: class 'ChatParticipant' does not conform to the 'Sendable' protocol
15 | @available(*, deprecated, message: "Use ChatParticipant.me instead.")
16 | public static let defaultChatter = ChatParticipant(role: .chatter)
| |- warning: static property 'defaultChatter' is not concurrency-safe because non-'Sendable' type 'ChatParticipant' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'defaultChatter' 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 | /// A chat participant representing the current user.
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Public/ChatParticipant.swift:19:23: warning: static property 'me' is not concurrency-safe because non-'Sendable' type 'ChatParticipant' may have shared mutable state; this is an error in the Swift 6 language mode
12 | ///
13 | /// You should use ``ChatParticipantBuilder`` to instantiate this.
14 | public class ChatParticipant: Identifiable, Equatable {
| `- note: class 'ChatParticipant' does not conform to the 'Sendable' protocol
15 | @available(*, deprecated, message: "Use ChatParticipant.me instead.")
16 | public static let defaultChatter = ChatParticipant(role: .chatter)
17 |
18 | /// A chat participant representing the current user.
19 | public static let me = ChatParticipant(role: .chatter)
| |- warning: static property 'me' is not concurrency-safe because non-'Sendable' type 'ChatParticipant' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'me' 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 | let name: String?
[27/27] Compiling QSChatView ChatParticipantBuilder.swift
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Public/ChatParticipant.swift:16:23: warning: static property 'defaultChatter' is not concurrency-safe because non-'Sendable' type 'ChatParticipant' may have shared mutable state; this is an error in the Swift 6 language mode
12 | ///
13 | /// You should use ``ChatParticipantBuilder`` to instantiate this.
14 | public class ChatParticipant: Identifiable, Equatable {
| `- note: class 'ChatParticipant' does not conform to the 'Sendable' protocol
15 | @available(*, deprecated, message: "Use ChatParticipant.me instead.")
16 | public static let defaultChatter = ChatParticipant(role: .chatter)
| |- warning: static property 'defaultChatter' is not concurrency-safe because non-'Sendable' type 'ChatParticipant' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'defaultChatter' 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 | /// A chat participant representing the current user.
/Users/admin/builder/spi-builder-workspace/Sources/QSChatView/Public/ChatParticipant.swift:19:23: warning: static property 'me' is not concurrency-safe because non-'Sendable' type 'ChatParticipant' may have shared mutable state; this is an error in the Swift 6 language mode
12 | ///
13 | /// You should use ``ChatParticipantBuilder`` to instantiate this.
14 | public class ChatParticipant: Identifiable, Equatable {
| `- note: class 'ChatParticipant' does not conform to the 'Sendable' protocol
15 | @available(*, deprecated, message: "Use ChatParticipant.me instead.")
16 | public static let defaultChatter = ChatParticipant(role: .chatter)
17 |
18 | /// A chat participant representing the current user.
19 | public static let me = ChatParticipant(role: .chatter)
| |- warning: static property 'me' is not concurrency-safe because non-'Sendable' type 'ChatParticipant' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'me' 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 | let name: String?
Build complete! (31.38s)
Build complete.
{
"dependencies" : [
],
"manifest_display_name" : "QSChatView",
"name" : "QSChatView",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "15.0"
},
{
"name" : "macos",
"version" : "12.0"
},
{
"name" : "maccatalyst",
"version" : "15.0"
}
],
"products" : [
{
"name" : "QSChatView",
"targets" : [
"QSChatView"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "QSChatViewTests",
"module_type" : "SwiftTarget",
"name" : "QSChatViewTests",
"path" : "Tests/QSChatViewTests",
"sources" : [
"ChatControllerTests.swift",
"QSChatViewTests.swift"
],
"target_dependencies" : [
"QSChatView"
],
"type" : "test"
},
{
"c99name" : "QSChatView",
"module_type" : "SwiftTarget",
"name" : "QSChatView",
"path" : "Sources/QSChatView",
"product_memberships" : [
"QSChatView"
],
"sources" : [
"Internal/Components/BetterScrollView.swift",
"Internal/Components/ChatBubble.swift",
"Internal/Components/ChatTextField.swift",
"Internal/Components/TypingIndicator.swift",
"Internal/Components/WrappedChatBubble.swift",
"Internal/Data/ScrollViewData.swift",
"Internal/Modifiers/ContentHeightModifier.swift",
"Internal/Modifiers/ScrollOffsetModifier.swift",
"Internal/PreferenceKeys/ContentHeightPreferenceKey.swift",
"Internal/PreferenceKeys/ScrollOffsetPreferenceKey.swift",
"Internal/Styles/ChatTextFieldStyle.swift",
"Public/ChatAvatar.swift",
"Public/ChatController.swift",
"Public/ChatMessage.swift",
"Public/ChatMessageContent.swift",
"Public/ChatMessagePromise.swift",
"Public/ChatParticipant.swift",
"Public/ChatParticipantBuilder.swift",
"Public/ChatParticipantRole.swift",
"Public/Config/ChatConfig.swift",
"Public/Config/ChatConfigBuilder.swift",
"Public/Config/ChatContextMenuItem.swift",
"Public/Config/ChatScrollBehavior.swift",
"QSChatView.swift"
],
"type" : "library"
}
],
"tools_version" : "5.7"
}
Done.