The Swift Package Index logo.Swift Package Index

Build Information

Successful build of MarkdownEngine, reference main (a832dd), with Swift 6.1 for macOS (SPM) on 13 Oct 2026 22:56:58 UTC.

Swift 6 data race errors: 27

Build Command

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

Build Log

/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextView/NativeTextView+FrameAndOverscroll.swift:495:10: note: calls to instance method 'ensureVisibleLayout()' from outside of its actor context are implicitly asynchronous
493 |     /// a bistable frame height; steady-state cost here is an enumeration over
494 |     /// already-laid-out fragments.
495 |     func ensureVisibleLayout() {
    |          |- note: calls to instance method 'ensureVisibleLayout()' from outside of its actor context are implicitly asynchronous
    |          `- note: main actor isolation inferred from inheritance from class 'NSTextView'
496 |         guard let tlm = textLayoutManager else { return }
497 |         let visBot = visibleRect.maxY
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:414:24: warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
412 |         NotificationCenter.default.addObserver(forName: NSView.boundsDidChangeNotification, object: scrollView.contentView, queue: nil) { _ in
413 |             textView.ensureVisibleLayout()
414 |             if context.coordinator.isWritingToolsActive {
    |                        `- warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
415 |                 context.coordinator.fixWritingToolsChildWindowIfNeeded(textView: textView)
416 |             }
SwiftUI.NSViewRepresentableContext.coordinator:2:39: note: property declared here
1 | generic struct NSViewRepresentableContext {
2 | @MainActor @preconcurrency public let coordinator: View.Coordinator}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:415:25: warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
413 |             textView.ensureVisibleLayout()
414 |             if context.coordinator.isWritingToolsActive {
415 |                 context.coordinator.fixWritingToolsChildWindowIfNeeded(textView: textView)
    |                         `- warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
416 |             }
417 |             scrollView.clampToInsets()
SwiftUI.NSViewRepresentableContext.coordinator:2:39: note: property declared here
1 | generic struct NSViewRepresentableContext {
2 | @MainActor @preconcurrency public let coordinator: View.Coordinator}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:417:24: warning: call to main actor-isolated instance method 'clampToInsets()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
415 |                 context.coordinator.fixWritingToolsChildWindowIfNeeded(textView: textView)
416 |             }
417 |             scrollView.clampToInsets()
    |                        `- warning: call to main actor-isolated instance method 'clampToInsets()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
418 |             context.coordinator.refreshActiveLinkCaretRect()
419 |             context.coordinator.updateCodeBlockSelection(textView: textView)
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/ClampedScrollView.swift:171:10: note: calls to instance method 'clampToInsets()' from outside of its actor context are implicitly asynchronous
169 |     }
170 |
171 |     func clampToInsets() {
    |          |- note: calls to instance method 'clampToInsets()' from outside of its actor context are implicitly asynchronous
    |          `- note: main actor isolation inferred from inheritance from class 'NSScrollView'
172 |         guard !fitsContent else { return }
173 |         guard let doc = documentView else { return }
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:418:21: warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
416 |             }
417 |             scrollView.clampToInsets()
418 |             context.coordinator.refreshActiveLinkCaretRect()
    |                     `- warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
419 |             context.coordinator.updateCodeBlockSelection(textView: textView)
420 |         }
SwiftUI.NSViewRepresentableContext.coordinator:2:39: note: property declared here
1 | generic struct NSViewRepresentableContext {
2 | @MainActor @preconcurrency public let coordinator: View.Coordinator}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:419:21: warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
417 |             scrollView.clampToInsets()
418 |             context.coordinator.refreshActiveLinkCaretRect()
419 |             context.coordinator.updateCodeBlockSelection(textView: textView)
    |                     `- warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
420 |         }
421 |         reconcileHeader(textView: textView, context: context)
SwiftUI.NSViewRepresentableContext.coordinator:2:39: note: property declared here
1 | generic struct NSViewRepresentableContext {
2 | @MainActor @preconcurrency public let coordinator: View.Coordinator}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/ScrollingHeaderController.swift:77:9: warning: cannot access property 'clipFrameObserver' with a non-sendable type '(any NSObjectProtocol)?' from nonisolated deinit; this is an error in the Swift 6 language mode
 75 |
 76 |     deinit {
 77 |         if let clipFrameObserver {
    |         `- warning: cannot access property 'clipFrameObserver' with a non-sendable type '(any NSObjectProtocol)?' from nonisolated deinit; this is an error in the Swift 6 language mode
 78 |             NotificationCenter.default.removeObserver(clipFrameObserver)
 79 |         }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include/objc/NSObject.h:15:11: note: protocol 'NSObjectProtocol' does not conform to the 'Sendable' protocol
 13 | @class NSString, NSMethodSignature, NSInvocation;
 14 |
 15 | @protocol NSObject
    |           `- note: protocol 'NSObjectProtocol' does not conform to the 'Sendable' protocol
 16 |
 17 | - (BOOL)isEqual:(id)object;
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/ScrollingHeaderController.swift:13:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'ObjectiveC'
 11 | //
 12 |
 13 | import AppKit
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'ObjectiveC'
 14 | import SwiftUI
 15 |
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/ScrollingHeaderController.swift:80:9: warning: cannot access property 'hostFrameObserver' with a non-sendable type '(any NSObjectProtocol)?' from nonisolated deinit; this is an error in the Swift 6 language mode
 78 |             NotificationCenter.default.removeObserver(clipFrameObserver)
 79 |         }
 80 |         if let hostFrameObserver {
    |         `- warning: cannot access property 'hostFrameObserver' with a non-sendable type '(any NSObjectProtocol)?' from nonisolated deinit; this is an error in the Swift 6 language mode
 81 |             NotificationCenter.default.removeObserver(hostFrameObserver)
 82 |         }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include/objc/NSObject.h:15:11: note: protocol 'NSObjectProtocol' does not conform to the 'Sendable' protocol
 13 | @class NSString, NSMethodSignature, NSInvocation;
 14 |
 15 | @protocol NSObject
    |           `- note: protocol 'NSObjectProtocol' does not conform to the 'Sendable' protocol
 16 |
 17 | - (BOOL)isEqual:(id)object;
[369/373] Compiling MarkdownEngine NativeTextViewContainer.swift
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:376:51: warning: main actor-isolated property 'bounds' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
374 |         NotificationCenter.default.addObserver(forName: NSView.frameDidChangeNotification, object: scrollView.contentView, queue: nil) { _ in
375 |             // Refresh code-block overlays only on real viewport width changes, not on TextKit height-only echoes during typing.
376 |             let newWidth = scrollView.contentView.bounds.width
    |                                                   `- warning: main actor-isolated property 'bounds' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
377 |             if abs(newWidth - lastObservedViewportWidth) > 0.5 {
378 |                 lastObservedViewportWidth = newWidth
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSView.h:139:18: note: property declared here
137 | - (void)scaleUnitSquareToSize:(NSSize)newUnitSize;
138 | - (void)rotateByAngle:(CGFloat)angle;
139 | @property NSRect bounds;
    |                  `- note: property declared here
140 |
141 | @property (getter=isFlipped, readonly) BOOL flipped;
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:376:39: warning: main actor-isolated property 'contentView' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
374 |         NotificationCenter.default.addObserver(forName: NSView.frameDidChangeNotification, object: scrollView.contentView, queue: nil) { _ in
375 |             // Refresh code-block overlays only on real viewport width changes, not on TextKit height-only echoes during typing.
376 |             let newWidth = scrollView.contentView.bounds.width
    |                                       `- warning: main actor-isolated property 'contentView' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
377 |             if abs(newWidth - lastObservedViewportWidth) > 0.5 {
378 |                 lastObservedViewportWidth = newWidth
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSScrollView.h:49:32: note: property declared here
 47 | @property (readonly) NSSize contentSize;
 48 | @property (nullable, strong) __kindof NSView *documentView;
 49 | @property (strong) NSClipView *contentView;
    |                                `- note: property declared here
 50 | @property (nullable, strong) NSCursor *documentCursor;
 51 | @property NSBorderType borderType;
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:377:31: warning: reference to captured var 'lastObservedViewportWidth' in concurrently-executing code
375 |             // Refresh code-block overlays only on real viewport width changes, not on TextKit height-only echoes during typing.
376 |             let newWidth = scrollView.contentView.bounds.width
377 |             if abs(newWidth - lastObservedViewportWidth) > 0.5 {
    |                               `- warning: reference to captured var 'lastObservedViewportWidth' in concurrently-executing code
378 |                 lastObservedViewportWidth = newWidth
379 |                 // Re-center the column by position (no redraw) so it stays smooth during live resize.
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:378:17: warning: mutation of captured var 'lastObservedViewportWidth' in concurrently-executing code
376 |             let newWidth = scrollView.contentView.bounds.width
377 |             if abs(newWidth - lastObservedViewportWidth) > 0.5 {
378 |                 lastObservedViewportWidth = newWidth
    |                 `- warning: mutation of captured var 'lastObservedViewportWidth' in concurrently-executing code
379 |                 // Re-center the column by position (no redraw) so it stays smooth during live resize.
380 |                 // Read readingWidth from the live textView.configuration (a class, captured by
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:383:29: warning: main actor-isolated property 'configuration' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
381 |                 // reference) instead of the struct `configuration` captured by value at
382 |                 // makeNSView time — the embedder may change readingWidth between updates.
383 |                 if textView.configuration.readingWidth != nil {
    |                             `- warning: main actor-isolated property 'configuration' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
384 |                     textView.centerReadingColumn(forClipWidth: newWidth)
385 |                 }
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextView/NativeTextView.swift:38:9: note: property declared here
 36 |
 37 |     // MARK: Configuration
 38 |     var configuration: MarkdownEditorConfiguration = .default {
    |         `- note: property declared here
 39 |         didSet {
 40 |             overscrollPercent = configuration.overscroll.percent
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:384:30: warning: call to main actor-isolated instance method 'centerReadingColumn(forClipWidth:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
382 |                 // makeNSView time — the embedder may change readingWidth between updates.
383 |                 if textView.configuration.readingWidth != nil {
384 |                     textView.centerReadingColumn(forClipWidth: newWidth)
    |                              `- warning: call to main actor-isolated instance method 'centerReadingColumn(forClipWidth:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
385 |                 }
386 |                 context.coordinator.didEnsureLayoutForCurrentDocument = false
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextView/NativeTextView+FrameAndOverscroll.swift:232:10: note: calls to instance method 'centerReadingColumn(forClipWidth:)' from outside of its actor context are implicitly asynchronous
230 |
231 |     /// Re-center the column by moving its X (not resizing it) so it stays smooth during live resize.
232 |     func centerReadingColumn(forClipWidth clipWidth: CGFloat) {
    |          |- note: calls to instance method 'centerReadingColumn(forClipWidth:)' from outside of its actor context are implicitly asynchronous
    |          `- note: main actor isolation inferred from inheritance from class 'NSTextView'
233 |         guard configuration.readingWidth != nil,
234 |               let container = superview as? NativeTextViewContainer else { return }
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:386:25: warning: main actor-isolated property 'coordinator' can not be mutated from a Sendable closure; this is an error in the Swift 6 language mode
384 |                     textView.centerReadingColumn(forClipWidth: newWidth)
385 |                 }
386 |                 context.coordinator.didEnsureLayoutForCurrentDocument = false
    |                         `- warning: main actor-isolated property 'coordinator' can not be mutated from a Sendable closure; this is an error in the Swift 6 language mode
387 |                 context.coordinator.updateCodeBlockSelection(textView: textView)
388 |             }
SwiftUI.NSViewRepresentableContext.coordinator:2:39: note: mutation of this property is only permitted within the actor
1 | generic struct NSViewRepresentableContext {
2 | @MainActor @preconcurrency public let coordinator: View.Coordinator}
  |                                       `- note: mutation of this property is only permitted within the actor
3 |
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:387:25: warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
385 |                 }
386 |                 context.coordinator.didEnsureLayoutForCurrentDocument = false
387 |                 context.coordinator.updateCodeBlockSelection(textView: textView)
    |                         `- warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
388 |             }
389 |             // Only react with overscroll recalc when the viewport itself resizes
SwiftUI.NSViewRepresentableContext.coordinator:2:39: note: property declared here
1 | generic struct NSViewRepresentableContext {
2 | @MainActor @preconcurrency public let coordinator: View.Coordinator}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:394:46: warning: main actor-isolated property 'documentView' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
392 |             // oscillation after clicks. Compare the CONTAINER (the document view) height
393 |             // to the viewport — it tracks the viewport for short docs.
394 |             guard let container = scrollView.documentView as? NativeTextViewContainer else { return }
    |                                              `- warning: main actor-isolated property 'documentView' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
395 |             // Read heightBehavior from the live textView.configuration (a class,
396 |             // captured by reference) — not the struct `configuration` captured by
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSScrollView.h:48:47: note: property declared here
 46 | @property (readonly) NSRect documentVisibleRect;
 47 | @property (readonly) NSSize contentSize;
 48 | @property (nullable, strong) __kindof NSView *documentView;
    |                                               `- note: property declared here
 49 | @property (strong) NSClipView *contentView;
 50 | @property (nullable, strong) NSCursor *documentCursor;
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:400:25: warning: main actor-isolated property 'configuration' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
398 |             // switch leaves this closure permanently early-returning, so viewport-
399 |             // resize-driven recalcOverscroll is skipped → stale overscroll.
400 |             if textView.configuration.heightBehavior == .fitsContent {
    |                         `- warning: main actor-isolated property 'configuration' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
401 |                 // In .fitsContent the container is content-tall (not viewport-tall),
402 |                 // so the container-vs-viewport guard below is always true — which
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextView/NativeTextView.swift:38:9: note: property declared here
 36 |
 37 |     // MARK: Configuration
 38 |     var configuration: MarkdownEditorConfiguration = .default {
    |         `- note: property declared here
 39 |         didSet {
 40 |             overscrollPercent = configuration.overscroll.percent
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:408:33: warning: main actor-isolated property 'frame' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
406 |                 return
407 |             }
408 |             guard abs(container.frame.height - scrollView.contentView.bounds.height) > 1 else { return }
    |                                 `- warning: main actor-isolated property 'frame' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
409 |             textView.recalcOverscroll(for: scrollView)
410 |             scrollView.clampToInsets()
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSView.h:129:18: note: property declared here
127 | - (void)setFrameOrigin:(NSPoint)newOrigin;
128 | - (void)setFrameSize:(NSSize)newSize;
129 | @property NSRect frame;
    |                  `- note: property declared here
130 | @property CGFloat frameRotation;
131 | @property CGFloat frameCenterRotation API_AVAILABLE(macos(10.5));
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:408:71: warning: main actor-isolated property 'bounds' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
406 |                 return
407 |             }
408 |             guard abs(container.frame.height - scrollView.contentView.bounds.height) > 1 else { return }
    |                                                                       `- warning: main actor-isolated property 'bounds' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
409 |             textView.recalcOverscroll(for: scrollView)
410 |             scrollView.clampToInsets()
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSView.h:139:18: note: property declared here
137 | - (void)scaleUnitSquareToSize:(NSSize)newUnitSize;
138 | - (void)rotateByAngle:(CGFloat)angle;
139 | @property NSRect bounds;
    |                  `- note: property declared here
140 |
141 | @property (getter=isFlipped, readonly) BOOL flipped;
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:408:59: warning: main actor-isolated property 'contentView' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
406 |                 return
407 |             }
408 |             guard abs(container.frame.height - scrollView.contentView.bounds.height) > 1 else { return }
    |                                                           `- warning: main actor-isolated property 'contentView' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
409 |             textView.recalcOverscroll(for: scrollView)
410 |             scrollView.clampToInsets()
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSScrollView.h:49:32: note: property declared here
 47 | @property (readonly) NSSize contentSize;
 48 | @property (nullable, strong) __kindof NSView *documentView;
 49 | @property (strong) NSClipView *contentView;
    |                                `- note: property declared here
 50 | @property (nullable, strong) NSCursor *documentCursor;
 51 | @property NSBorderType borderType;
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:409:22: warning: call to main actor-isolated instance method 'recalcOverscroll(for:targetWidth:debugTag:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
407 |             }
408 |             guard abs(container.frame.height - scrollView.contentView.bounds.height) > 1 else { return }
409 |             textView.recalcOverscroll(for: scrollView)
    |                      `- warning: call to main actor-isolated instance method 'recalcOverscroll(for:targetWidth:debugTag:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
410 |             scrollView.clampToInsets()
411 |         }
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextView/NativeTextView+FrameAndOverscroll.swift:20:10: note: calls to instance method 'recalcOverscroll(for:targetWidth:debugTag:)' from outside of its actor context are implicitly asynchronous
 18 |     }
 19 |
 20 |     func recalcOverscroll(
    |          |- note: calls to instance method 'recalcOverscroll(for:targetWidth:debugTag:)' from outside of its actor context are implicitly asynchronous
    |          `- note: main actor isolation inferred from inheritance from class 'NSTextView'
 21 |         for scrollView: NSScrollView,
 22 |         targetWidth: CGFloat? = nil,
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:410:24: warning: call to main actor-isolated instance method 'clampToInsets()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
408 |             guard abs(container.frame.height - scrollView.contentView.bounds.height) > 1 else { return }
409 |             textView.recalcOverscroll(for: scrollView)
410 |             scrollView.clampToInsets()
    |                        `- warning: call to main actor-isolated instance method 'clampToInsets()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
411 |         }
412 |         NotificationCenter.default.addObserver(forName: NSView.boundsDidChangeNotification, object: scrollView.contentView, queue: nil) { _ in
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/ClampedScrollView.swift:171:10: note: calls to instance method 'clampToInsets()' from outside of its actor context are implicitly asynchronous
169 |     }
170 |
171 |     func clampToInsets() {
    |          |- note: calls to instance method 'clampToInsets()' from outside of its actor context are implicitly asynchronous
    |          `- note: main actor isolation inferred from inheritance from class 'NSScrollView'
172 |         guard !fitsContent else { return }
173 |         guard let doc = documentView else { return }
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:413:22: warning: call to main actor-isolated instance method 'ensureVisibleLayout()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
411 |         }
412 |         NotificationCenter.default.addObserver(forName: NSView.boundsDidChangeNotification, object: scrollView.contentView, queue: nil) { _ in
413 |             textView.ensureVisibleLayout()
    |                      `- warning: call to main actor-isolated instance method 'ensureVisibleLayout()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
414 |             if context.coordinator.isWritingToolsActive {
415 |                 context.coordinator.fixWritingToolsChildWindowIfNeeded(textView: textView)
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextView/NativeTextView+FrameAndOverscroll.swift:495:10: note: calls to instance method 'ensureVisibleLayout()' from outside of its actor context are implicitly asynchronous
493 |     /// a bistable frame height; steady-state cost here is an enumeration over
494 |     /// already-laid-out fragments.
495 |     func ensureVisibleLayout() {
    |          |- note: calls to instance method 'ensureVisibleLayout()' from outside of its actor context are implicitly asynchronous
    |          `- note: main actor isolation inferred from inheritance from class 'NSTextView'
496 |         guard let tlm = textLayoutManager else { return }
497 |         let visBot = visibleRect.maxY
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:414:24: warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
412 |         NotificationCenter.default.addObserver(forName: NSView.boundsDidChangeNotification, object: scrollView.contentView, queue: nil) { _ in
413 |             textView.ensureVisibleLayout()
414 |             if context.coordinator.isWritingToolsActive {
    |                        `- warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
415 |                 context.coordinator.fixWritingToolsChildWindowIfNeeded(textView: textView)
416 |             }
SwiftUI.NSViewRepresentableContext.coordinator:2:39: note: property declared here
1 | generic struct NSViewRepresentableContext {
2 | @MainActor @preconcurrency public let coordinator: View.Coordinator}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:415:25: warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
413 |             textView.ensureVisibleLayout()
414 |             if context.coordinator.isWritingToolsActive {
415 |                 context.coordinator.fixWritingToolsChildWindowIfNeeded(textView: textView)
    |                         `- warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
416 |             }
417 |             scrollView.clampToInsets()
SwiftUI.NSViewRepresentableContext.coordinator:2:39: note: property declared here
1 | generic struct NSViewRepresentableContext {
2 | @MainActor @preconcurrency public let coordinator: View.Coordinator}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:417:24: warning: call to main actor-isolated instance method 'clampToInsets()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
415 |                 context.coordinator.fixWritingToolsChildWindowIfNeeded(textView: textView)
416 |             }
417 |             scrollView.clampToInsets()
    |                        `- warning: call to main actor-isolated instance method 'clampToInsets()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
418 |             context.coordinator.refreshActiveLinkCaretRect()
419 |             context.coordinator.updateCodeBlockSelection(textView: textView)
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/ClampedScrollView.swift:171:10: note: calls to instance method 'clampToInsets()' from outside of its actor context are implicitly asynchronous
169 |     }
170 |
171 |     func clampToInsets() {
    |          |- note: calls to instance method 'clampToInsets()' from outside of its actor context are implicitly asynchronous
    |          `- note: main actor isolation inferred from inheritance from class 'NSScrollView'
172 |         guard !fitsContent else { return }
173 |         guard let doc = documentView else { return }
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:418:21: warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
416 |             }
417 |             scrollView.clampToInsets()
418 |             context.coordinator.refreshActiveLinkCaretRect()
    |                     `- warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
419 |             context.coordinator.updateCodeBlockSelection(textView: textView)
420 |         }
SwiftUI.NSViewRepresentableContext.coordinator:2:39: note: property declared here
1 | generic struct NSViewRepresentableContext {
2 | @MainActor @preconcurrency public let coordinator: View.Coordinator}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:419:21: warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
417 |             scrollView.clampToInsets()
418 |             context.coordinator.refreshActiveLinkCaretRect()
419 |             context.coordinator.updateCodeBlockSelection(textView: textView)
    |                     `- warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
420 |         }
421 |         reconcileHeader(textView: textView, context: context)
SwiftUI.NSViewRepresentableContext.coordinator:2:39: note: property declared here
1 | generic struct NSViewRepresentableContext {
2 | @MainActor @preconcurrency public let coordinator: View.Coordinator}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/ScrollingHeaderController.swift:77:9: warning: cannot access property 'clipFrameObserver' with a non-sendable type '(any NSObjectProtocol)?' from nonisolated deinit; this is an error in the Swift 6 language mode
 75 |
 76 |     deinit {
 77 |         if let clipFrameObserver {
    |         `- warning: cannot access property 'clipFrameObserver' with a non-sendable type '(any NSObjectProtocol)?' from nonisolated deinit; this is an error in the Swift 6 language mode
 78 |             NotificationCenter.default.removeObserver(clipFrameObserver)
 79 |         }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include/objc/NSObject.h:15:11: note: protocol 'NSObjectProtocol' does not conform to the 'Sendable' protocol
 13 | @class NSString, NSMethodSignature, NSInvocation;
 14 |
 15 | @protocol NSObject
    |           `- note: protocol 'NSObjectProtocol' does not conform to the 'Sendable' protocol
 16 |
 17 | - (BOOL)isEqual:(id)object;
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/ScrollingHeaderController.swift:13:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'ObjectiveC'
 11 | //
 12 |
 13 | import AppKit
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'ObjectiveC'
 14 | import SwiftUI
 15 |
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/ScrollingHeaderController.swift:80:9: warning: cannot access property 'hostFrameObserver' with a non-sendable type '(any NSObjectProtocol)?' from nonisolated deinit; this is an error in the Swift 6 language mode
 78 |             NotificationCenter.default.removeObserver(clipFrameObserver)
 79 |         }
 80 |         if let hostFrameObserver {
    |         `- warning: cannot access property 'hostFrameObserver' with a non-sendable type '(any NSObjectProtocol)?' from nonisolated deinit; this is an error in the Swift 6 language mode
 81 |             NotificationCenter.default.removeObserver(hostFrameObserver)
 82 |         }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include/objc/NSObject.h:15:11: note: protocol 'NSObjectProtocol' does not conform to the 'Sendable' protocol
 13 | @class NSString, NSMethodSignature, NSInvocation;
 14 |
 15 | @protocol NSObject
    |           `- note: protocol 'NSObjectProtocol' does not conform to the 'Sendable' protocol
 16 |
 17 | - (BOOL)isEqual:(id)object;
[370/373] Compiling MarkdownEngine NativeTextViewSelectionTypes.swift
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:376:51: warning: main actor-isolated property 'bounds' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
374 |         NotificationCenter.default.addObserver(forName: NSView.frameDidChangeNotification, object: scrollView.contentView, queue: nil) { _ in
375 |             // Refresh code-block overlays only on real viewport width changes, not on TextKit height-only echoes during typing.
376 |             let newWidth = scrollView.contentView.bounds.width
    |                                                   `- warning: main actor-isolated property 'bounds' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
377 |             if abs(newWidth - lastObservedViewportWidth) > 0.5 {
378 |                 lastObservedViewportWidth = newWidth
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSView.h:139:18: note: property declared here
137 | - (void)scaleUnitSquareToSize:(NSSize)newUnitSize;
138 | - (void)rotateByAngle:(CGFloat)angle;
139 | @property NSRect bounds;
    |                  `- note: property declared here
140 |
141 | @property (getter=isFlipped, readonly) BOOL flipped;
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:376:39: warning: main actor-isolated property 'contentView' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
374 |         NotificationCenter.default.addObserver(forName: NSView.frameDidChangeNotification, object: scrollView.contentView, queue: nil) { _ in
375 |             // Refresh code-block overlays only on real viewport width changes, not on TextKit height-only echoes during typing.
376 |             let newWidth = scrollView.contentView.bounds.width
    |                                       `- warning: main actor-isolated property 'contentView' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
377 |             if abs(newWidth - lastObservedViewportWidth) > 0.5 {
378 |                 lastObservedViewportWidth = newWidth
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSScrollView.h:49:32: note: property declared here
 47 | @property (readonly) NSSize contentSize;
 48 | @property (nullable, strong) __kindof NSView *documentView;
 49 | @property (strong) NSClipView *contentView;
    |                                `- note: property declared here
 50 | @property (nullable, strong) NSCursor *documentCursor;
 51 | @property NSBorderType borderType;
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:377:31: warning: reference to captured var 'lastObservedViewportWidth' in concurrently-executing code
375 |             // Refresh code-block overlays only on real viewport width changes, not on TextKit height-only echoes during typing.
376 |             let newWidth = scrollView.contentView.bounds.width
377 |             if abs(newWidth - lastObservedViewportWidth) > 0.5 {
    |                               `- warning: reference to captured var 'lastObservedViewportWidth' in concurrently-executing code
378 |                 lastObservedViewportWidth = newWidth
379 |                 // Re-center the column by position (no redraw) so it stays smooth during live resize.
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:378:17: warning: mutation of captured var 'lastObservedViewportWidth' in concurrently-executing code
376 |             let newWidth = scrollView.contentView.bounds.width
377 |             if abs(newWidth - lastObservedViewportWidth) > 0.5 {
378 |                 lastObservedViewportWidth = newWidth
    |                 `- warning: mutation of captured var 'lastObservedViewportWidth' in concurrently-executing code
379 |                 // Re-center the column by position (no redraw) so it stays smooth during live resize.
380 |                 // Read readingWidth from the live textView.configuration (a class, captured by
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:383:29: warning: main actor-isolated property 'configuration' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
381 |                 // reference) instead of the struct `configuration` captured by value at
382 |                 // makeNSView time — the embedder may change readingWidth between updates.
383 |                 if textView.configuration.readingWidth != nil {
    |                             `- warning: main actor-isolated property 'configuration' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
384 |                     textView.centerReadingColumn(forClipWidth: newWidth)
385 |                 }
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextView/NativeTextView.swift:38:9: note: property declared here
 36 |
 37 |     // MARK: Configuration
 38 |     var configuration: MarkdownEditorConfiguration = .default {
    |         `- note: property declared here
 39 |         didSet {
 40 |             overscrollPercent = configuration.overscroll.percent
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:384:30: warning: call to main actor-isolated instance method 'centerReadingColumn(forClipWidth:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
382 |                 // makeNSView time — the embedder may change readingWidth between updates.
383 |                 if textView.configuration.readingWidth != nil {
384 |                     textView.centerReadingColumn(forClipWidth: newWidth)
    |                              `- warning: call to main actor-isolated instance method 'centerReadingColumn(forClipWidth:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
385 |                 }
386 |                 context.coordinator.didEnsureLayoutForCurrentDocument = false
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextView/NativeTextView+FrameAndOverscroll.swift:232:10: note: calls to instance method 'centerReadingColumn(forClipWidth:)' from outside of its actor context are implicitly asynchronous
230 |
231 |     /// Re-center the column by moving its X (not resizing it) so it stays smooth during live resize.
232 |     func centerReadingColumn(forClipWidth clipWidth: CGFloat) {
    |          |- note: calls to instance method 'centerReadingColumn(forClipWidth:)' from outside of its actor context are implicitly asynchronous
    |          `- note: main actor isolation inferred from inheritance from class 'NSTextView'
233 |         guard configuration.readingWidth != nil,
234 |               let container = superview as? NativeTextViewContainer else { return }
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:386:25: warning: main actor-isolated property 'coordinator' can not be mutated from a Sendable closure; this is an error in the Swift 6 language mode
384 |                     textView.centerReadingColumn(forClipWidth: newWidth)
385 |                 }
386 |                 context.coordinator.didEnsureLayoutForCurrentDocument = false
    |                         `- warning: main actor-isolated property 'coordinator' can not be mutated from a Sendable closure; this is an error in the Swift 6 language mode
387 |                 context.coordinator.updateCodeBlockSelection(textView: textView)
388 |             }
SwiftUI.NSViewRepresentableContext.coordinator:2:39: note: mutation of this property is only permitted within the actor
1 | generic struct NSViewRepresentableContext {
2 | @MainActor @preconcurrency public let coordinator: View.Coordinator}
  |                                       `- note: mutation of this property is only permitted within the actor
3 |
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:387:25: warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
385 |                 }
386 |                 context.coordinator.didEnsureLayoutForCurrentDocument = false
387 |                 context.coordinator.updateCodeBlockSelection(textView: textView)
    |                         `- warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
388 |             }
389 |             // Only react with overscroll recalc when the viewport itself resizes
SwiftUI.NSViewRepresentableContext.coordinator:2:39: note: property declared here
1 | generic struct NSViewRepresentableContext {
2 | @MainActor @preconcurrency public let coordinator: View.Coordinator}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:394:46: warning: main actor-isolated property 'documentView' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
392 |             // oscillation after clicks. Compare the CONTAINER (the document view) height
393 |             // to the viewport — it tracks the viewport for short docs.
394 |             guard let container = scrollView.documentView as? NativeTextViewContainer else { return }
    |                                              `- warning: main actor-isolated property 'documentView' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
395 |             // Read heightBehavior from the live textView.configuration (a class,
396 |             // captured by reference) — not the struct `configuration` captured by
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSScrollView.h:48:47: note: property declared here
 46 | @property (readonly) NSRect documentVisibleRect;
 47 | @property (readonly) NSSize contentSize;
 48 | @property (nullable, strong) __kindof NSView *documentView;
    |                                               `- note: property declared here
 49 | @property (strong) NSClipView *contentView;
 50 | @property (nullable, strong) NSCursor *documentCursor;
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:400:25: warning: main actor-isolated property 'configuration' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
398 |             // switch leaves this closure permanently early-returning, so viewport-
399 |             // resize-driven recalcOverscroll is skipped → stale overscroll.
400 |             if textView.configuration.heightBehavior == .fitsContent {
    |                         `- warning: main actor-isolated property 'configuration' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
401 |                 // In .fitsContent the container is content-tall (not viewport-tall),
402 |                 // so the container-vs-viewport guard below is always true — which
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextView/NativeTextView.swift:38:9: note: property declared here
 36 |
 37 |     // MARK: Configuration
 38 |     var configuration: MarkdownEditorConfiguration = .default {
    |         `- note: property declared here
 39 |         didSet {
 40 |             overscrollPercent = configuration.overscroll.percent
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:408:33: warning: main actor-isolated property 'frame' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
406 |                 return
407 |             }
408 |             guard abs(container.frame.height - scrollView.contentView.bounds.height) > 1 else { return }
    |                                 `- warning: main actor-isolated property 'frame' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
409 |             textView.recalcOverscroll(for: scrollView)
410 |             scrollView.clampToInsets()
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSView.h:129:18: note: property declared here
127 | - (void)setFrameOrigin:(NSPoint)newOrigin;
128 | - (void)setFrameSize:(NSSize)newSize;
129 | @property NSRect frame;
    |                  `- note: property declared here
130 | @property CGFloat frameRotation;
131 | @property CGFloat frameCenterRotation API_AVAILABLE(macos(10.5));
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:408:71: warning: main actor-isolated property 'bounds' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
406 |                 return
407 |             }
408 |             guard abs(container.frame.height - scrollView.contentView.bounds.height) > 1 else { return }
    |                                                                       `- warning: main actor-isolated property 'bounds' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
409 |             textView.recalcOverscroll(for: scrollView)
410 |             scrollView.clampToInsets()
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSView.h:139:18: note: property declared here
137 | - (void)scaleUnitSquareToSize:(NSSize)newUnitSize;
138 | - (void)rotateByAngle:(CGFloat)angle;
139 | @property NSRect bounds;
    |                  `- note: property declared here
140 |
141 | @property (getter=isFlipped, readonly) BOOL flipped;
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:408:59: warning: main actor-isolated property 'contentView' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
406 |                 return
407 |             }
408 |             guard abs(container.frame.height - scrollView.contentView.bounds.height) > 1 else { return }
    |                                                           `- warning: main actor-isolated property 'contentView' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
409 |             textView.recalcOverscroll(for: scrollView)
410 |             scrollView.clampToInsets()
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSScrollView.h:49:32: note: property declared here
 47 | @property (readonly) NSSize contentSize;
 48 | @property (nullable, strong) __kindof NSView *documentView;
 49 | @property (strong) NSClipView *contentView;
    |                                `- note: property declared here
 50 | @property (nullable, strong) NSCursor *documentCursor;
 51 | @property NSBorderType borderType;
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:409:22: warning: call to main actor-isolated instance method 'recalcOverscroll(for:targetWidth:debugTag:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
407 |             }
408 |             guard abs(container.frame.height - scrollView.contentView.bounds.height) > 1 else { return }
409 |             textView.recalcOverscroll(for: scrollView)
    |                      `- warning: call to main actor-isolated instance method 'recalcOverscroll(for:targetWidth:debugTag:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
410 |             scrollView.clampToInsets()
411 |         }
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextView/NativeTextView+FrameAndOverscroll.swift:20:10: note: calls to instance method 'recalcOverscroll(for:targetWidth:debugTag:)' from outside of its actor context are implicitly asynchronous
 18 |     }
 19 |
 20 |     func recalcOverscroll(
    |          |- note: calls to instance method 'recalcOverscroll(for:targetWidth:debugTag:)' from outside of its actor context are implicitly asynchronous
    |          `- note: main actor isolation inferred from inheritance from class 'NSTextView'
 21 |         for scrollView: NSScrollView,
 22 |         targetWidth: CGFloat? = nil,
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:410:24: warning: call to main actor-isolated instance method 'clampToInsets()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
408 |             guard abs(container.frame.height - scrollView.contentView.bounds.height) > 1 else { return }
409 |             textView.recalcOverscroll(for: scrollView)
410 |             scrollView.clampToInsets()
    |                        `- warning: call to main actor-isolated instance method 'clampToInsets()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
411 |         }
412 |         NotificationCenter.default.addObserver(forName: NSView.boundsDidChangeNotification, object: scrollView.contentView, queue: nil) { _ in
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/ClampedScrollView.swift:171:10: note: calls to instance method 'clampToInsets()' from outside of its actor context are implicitly asynchronous
169 |     }
170 |
171 |     func clampToInsets() {
    |          |- note: calls to instance method 'clampToInsets()' from outside of its actor context are implicitly asynchronous
    |          `- note: main actor isolation inferred from inheritance from class 'NSScrollView'
172 |         guard !fitsContent else { return }
173 |         guard let doc = documentView else { return }
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:413:22: warning: call to main actor-isolated instance method 'ensureVisibleLayout()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
411 |         }
412 |         NotificationCenter.default.addObserver(forName: NSView.boundsDidChangeNotification, object: scrollView.contentView, queue: nil) { _ in
413 |             textView.ensureVisibleLayout()
    |                      `- warning: call to main actor-isolated instance method 'ensureVisibleLayout()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
414 |             if context.coordinator.isWritingToolsActive {
415 |                 context.coordinator.fixWritingToolsChildWindowIfNeeded(textView: textView)
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextView/NativeTextView+FrameAndOverscroll.swift:495:10: note: calls to instance method 'ensureVisibleLayout()' from outside of its actor context are implicitly asynchronous
493 |     /// a bistable frame height; steady-state cost here is an enumeration over
494 |     /// already-laid-out fragments.
495 |     func ensureVisibleLayout() {
    |          |- note: calls to instance method 'ensureVisibleLayout()' from outside of its actor context are implicitly asynchronous
    |          `- note: main actor isolation inferred from inheritance from class 'NSTextView'
496 |         guard let tlm = textLayoutManager else { return }
497 |         let visBot = visibleRect.maxY
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:414:24: warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
412 |         NotificationCenter.default.addObserver(forName: NSView.boundsDidChangeNotification, object: scrollView.contentView, queue: nil) { _ in
413 |             textView.ensureVisibleLayout()
414 |             if context.coordinator.isWritingToolsActive {
    |                        `- warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
415 |                 context.coordinator.fixWritingToolsChildWindowIfNeeded(textView: textView)
416 |             }
SwiftUI.NSViewRepresentableContext.coordinator:2:39: note: property declared here
1 | generic struct NSViewRepresentableContext {
2 | @MainActor @preconcurrency public let coordinator: View.Coordinator}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:415:25: warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
413 |             textView.ensureVisibleLayout()
414 |             if context.coordinator.isWritingToolsActive {
415 |                 context.coordinator.fixWritingToolsChildWindowIfNeeded(textView: textView)
    |                         `- warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
416 |             }
417 |             scrollView.clampToInsets()
SwiftUI.NSViewRepresentableContext.coordinator:2:39: note: property declared here
1 | generic struct NSViewRepresentableContext {
2 | @MainActor @preconcurrency public let coordinator: View.Coordinator}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:417:24: warning: call to main actor-isolated instance method 'clampToInsets()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
415 |                 context.coordinator.fixWritingToolsChildWindowIfNeeded(textView: textView)
416 |             }
417 |             scrollView.clampToInsets()
    |                        `- warning: call to main actor-isolated instance method 'clampToInsets()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
418 |             context.coordinator.refreshActiveLinkCaretRect()
419 |             context.coordinator.updateCodeBlockSelection(textView: textView)
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/ClampedScrollView.swift:171:10: note: calls to instance method 'clampToInsets()' from outside of its actor context are implicitly asynchronous
169 |     }
170 |
171 |     func clampToInsets() {
    |          |- note: calls to instance method 'clampToInsets()' from outside of its actor context are implicitly asynchronous
    |          `- note: main actor isolation inferred from inheritance from class 'NSScrollView'
172 |         guard !fitsContent else { return }
173 |         guard let doc = documentView else { return }
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:418:21: warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
416 |             }
417 |             scrollView.clampToInsets()
418 |             context.coordinator.refreshActiveLinkCaretRect()
    |                     `- warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
419 |             context.coordinator.updateCodeBlockSelection(textView: textView)
420 |         }
SwiftUI.NSViewRepresentableContext.coordinator:2:39: note: property declared here
1 | generic struct NSViewRepresentableContext {
2 | @MainActor @preconcurrency public let coordinator: View.Coordinator}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:419:21: warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
417 |             scrollView.clampToInsets()
418 |             context.coordinator.refreshActiveLinkCaretRect()
419 |             context.coordinator.updateCodeBlockSelection(textView: textView)
    |                     `- warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
420 |         }
421 |         reconcileHeader(textView: textView, context: context)
SwiftUI.NSViewRepresentableContext.coordinator:2:39: note: property declared here
1 | generic struct NSViewRepresentableContext {
2 | @MainActor @preconcurrency public let coordinator: View.Coordinator}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/ScrollingHeaderController.swift:77:9: warning: cannot access property 'clipFrameObserver' with a non-sendable type '(any NSObjectProtocol)?' from nonisolated deinit; this is an error in the Swift 6 language mode
 75 |
 76 |     deinit {
 77 |         if let clipFrameObserver {
    |         `- warning: cannot access property 'clipFrameObserver' with a non-sendable type '(any NSObjectProtocol)?' from nonisolated deinit; this is an error in the Swift 6 language mode
 78 |             NotificationCenter.default.removeObserver(clipFrameObserver)
 79 |         }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include/objc/NSObject.h:15:11: note: protocol 'NSObjectProtocol' does not conform to the 'Sendable' protocol
 13 | @class NSString, NSMethodSignature, NSInvocation;
 14 |
 15 | @protocol NSObject
    |           `- note: protocol 'NSObjectProtocol' does not conform to the 'Sendable' protocol
 16 |
 17 | - (BOOL)isEqual:(id)object;
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/ScrollingHeaderController.swift:13:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'ObjectiveC'
 11 | //
 12 |
 13 | import AppKit
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'ObjectiveC'
 14 | import SwiftUI
 15 |
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/ScrollingHeaderController.swift:80:9: warning: cannot access property 'hostFrameObserver' with a non-sendable type '(any NSObjectProtocol)?' from nonisolated deinit; this is an error in the Swift 6 language mode
 78 |             NotificationCenter.default.removeObserver(clipFrameObserver)
 79 |         }
 80 |         if let hostFrameObserver {
    |         `- warning: cannot access property 'hostFrameObserver' with a non-sendable type '(any NSObjectProtocol)?' from nonisolated deinit; this is an error in the Swift 6 language mode
 81 |             NotificationCenter.default.removeObserver(hostFrameObserver)
 82 |         }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include/objc/NSObject.h:15:11: note: protocol 'NSObjectProtocol' does not conform to the 'Sendable' protocol
 13 | @class NSString, NSMethodSignature, NSInvocation;
 14 |
 15 | @protocol NSObject
    |           `- note: protocol 'NSObjectProtocol' does not conform to the 'Sendable' protocol
 16 |
 17 | - (BOOL)isEqual:(id)object;
[371/373] Compiling MarkdownEngine NativeTextViewWrapper.swift
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:376:51: warning: main actor-isolated property 'bounds' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
374 |         NotificationCenter.default.addObserver(forName: NSView.frameDidChangeNotification, object: scrollView.contentView, queue: nil) { _ in
375 |             // Refresh code-block overlays only on real viewport width changes, not on TextKit height-only echoes during typing.
376 |             let newWidth = scrollView.contentView.bounds.width
    |                                                   `- warning: main actor-isolated property 'bounds' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
377 |             if abs(newWidth - lastObservedViewportWidth) > 0.5 {
378 |                 lastObservedViewportWidth = newWidth
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSView.h:139:18: note: property declared here
137 | - (void)scaleUnitSquareToSize:(NSSize)newUnitSize;
138 | - (void)rotateByAngle:(CGFloat)angle;
139 | @property NSRect bounds;
    |                  `- note: property declared here
140 |
141 | @property (getter=isFlipped, readonly) BOOL flipped;
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:376:39: warning: main actor-isolated property 'contentView' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
374 |         NotificationCenter.default.addObserver(forName: NSView.frameDidChangeNotification, object: scrollView.contentView, queue: nil) { _ in
375 |             // Refresh code-block overlays only on real viewport width changes, not on TextKit height-only echoes during typing.
376 |             let newWidth = scrollView.contentView.bounds.width
    |                                       `- warning: main actor-isolated property 'contentView' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
377 |             if abs(newWidth - lastObservedViewportWidth) > 0.5 {
378 |                 lastObservedViewportWidth = newWidth
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSScrollView.h:49:32: note: property declared here
 47 | @property (readonly) NSSize contentSize;
 48 | @property (nullable, strong) __kindof NSView *documentView;
 49 | @property (strong) NSClipView *contentView;
    |                                `- note: property declared here
 50 | @property (nullable, strong) NSCursor *documentCursor;
 51 | @property NSBorderType borderType;
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:377:31: warning: reference to captured var 'lastObservedViewportWidth' in concurrently-executing code
375 |             // Refresh code-block overlays only on real viewport width changes, not on TextKit height-only echoes during typing.
376 |             let newWidth = scrollView.contentView.bounds.width
377 |             if abs(newWidth - lastObservedViewportWidth) > 0.5 {
    |                               `- warning: reference to captured var 'lastObservedViewportWidth' in concurrently-executing code
378 |                 lastObservedViewportWidth = newWidth
379 |                 // Re-center the column by position (no redraw) so it stays smooth during live resize.
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:378:17: warning: mutation of captured var 'lastObservedViewportWidth' in concurrently-executing code
376 |             let newWidth = scrollView.contentView.bounds.width
377 |             if abs(newWidth - lastObservedViewportWidth) > 0.5 {
378 |                 lastObservedViewportWidth = newWidth
    |                 `- warning: mutation of captured var 'lastObservedViewportWidth' in concurrently-executing code
379 |                 // Re-center the column by position (no redraw) so it stays smooth during live resize.
380 |                 // Read readingWidth from the live textView.configuration (a class, captured by
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:383:29: warning: main actor-isolated property 'configuration' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
381 |                 // reference) instead of the struct `configuration` captured by value at
382 |                 // makeNSView time — the embedder may change readingWidth between updates.
383 |                 if textView.configuration.readingWidth != nil {
    |                             `- warning: main actor-isolated property 'configuration' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
384 |                     textView.centerReadingColumn(forClipWidth: newWidth)
385 |                 }
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextView/NativeTextView.swift:38:9: note: property declared here
 36 |
 37 |     // MARK: Configuration
 38 |     var configuration: MarkdownEditorConfiguration = .default {
    |         `- note: property declared here
 39 |         didSet {
 40 |             overscrollPercent = configuration.overscroll.percent
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:384:30: warning: call to main actor-isolated instance method 'centerReadingColumn(forClipWidth:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
382 |                 // makeNSView time — the embedder may change readingWidth between updates.
383 |                 if textView.configuration.readingWidth != nil {
384 |                     textView.centerReadingColumn(forClipWidth: newWidth)
    |                              `- warning: call to main actor-isolated instance method 'centerReadingColumn(forClipWidth:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
385 |                 }
386 |                 context.coordinator.didEnsureLayoutForCurrentDocument = false
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextView/NativeTextView+FrameAndOverscroll.swift:232:10: note: calls to instance method 'centerReadingColumn(forClipWidth:)' from outside of its actor context are implicitly asynchronous
230 |
231 |     /// Re-center the column by moving its X (not resizing it) so it stays smooth during live resize.
232 |     func centerReadingColumn(forClipWidth clipWidth: CGFloat) {
    |          |- note: calls to instance method 'centerReadingColumn(forClipWidth:)' from outside of its actor context are implicitly asynchronous
    |          `- note: main actor isolation inferred from inheritance from class 'NSTextView'
233 |         guard configuration.readingWidth != nil,
234 |               let container = superview as? NativeTextViewContainer else { return }
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:386:25: warning: main actor-isolated property 'coordinator' can not be mutated from a Sendable closure; this is an error in the Swift 6 language mode
384 |                     textView.centerReadingColumn(forClipWidth: newWidth)
385 |                 }
386 |                 context.coordinator.didEnsureLayoutForCurrentDocument = false
    |                         `- warning: main actor-isolated property 'coordinator' can not be mutated from a Sendable closure; this is an error in the Swift 6 language mode
387 |                 context.coordinator.updateCodeBlockSelection(textView: textView)
388 |             }
SwiftUI.NSViewRepresentableContext.coordinator:2:39: note: mutation of this property is only permitted within the actor
1 | generic struct NSViewRepresentableContext {
2 | @MainActor @preconcurrency public let coordinator: View.Coordinator}
  |                                       `- note: mutation of this property is only permitted within the actor
3 |
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:387:25: warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
385 |                 }
386 |                 context.coordinator.didEnsureLayoutForCurrentDocument = false
387 |                 context.coordinator.updateCodeBlockSelection(textView: textView)
    |                         `- warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
388 |             }
389 |             // Only react with overscroll recalc when the viewport itself resizes
SwiftUI.NSViewRepresentableContext.coordinator:2:39: note: property declared here
1 | generic struct NSViewRepresentableContext {
2 | @MainActor @preconcurrency public let coordinator: View.Coordinator}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:394:46: warning: main actor-isolated property 'documentView' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
392 |             // oscillation after clicks. Compare the CONTAINER (the document view) height
393 |             // to the viewport — it tracks the viewport for short docs.
394 |             guard let container = scrollView.documentView as? NativeTextViewContainer else { return }
    |                                              `- warning: main actor-isolated property 'documentView' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
395 |             // Read heightBehavior from the live textView.configuration (a class,
396 |             // captured by reference) — not the struct `configuration` captured by
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSScrollView.h:48:47: note: property declared here
 46 | @property (readonly) NSRect documentVisibleRect;
 47 | @property (readonly) NSSize contentSize;
 48 | @property (nullable, strong) __kindof NSView *documentView;
    |                                               `- note: property declared here
 49 | @property (strong) NSClipView *contentView;
 50 | @property (nullable, strong) NSCursor *documentCursor;
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:400:25: warning: main actor-isolated property 'configuration' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
398 |             // switch leaves this closure permanently early-returning, so viewport-
399 |             // resize-driven recalcOverscroll is skipped → stale overscroll.
400 |             if textView.configuration.heightBehavior == .fitsContent {
    |                         `- warning: main actor-isolated property 'configuration' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
401 |                 // In .fitsContent the container is content-tall (not viewport-tall),
402 |                 // so the container-vs-viewport guard below is always true — which
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextView/NativeTextView.swift:38:9: note: property declared here
 36 |
 37 |     // MARK: Configuration
 38 |     var configuration: MarkdownEditorConfiguration = .default {
    |         `- note: property declared here
 39 |         didSet {
 40 |             overscrollPercent = configuration.overscroll.percent
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:408:33: warning: main actor-isolated property 'frame' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
406 |                 return
407 |             }
408 |             guard abs(container.frame.height - scrollView.contentView.bounds.height) > 1 else { return }
    |                                 `- warning: main actor-isolated property 'frame' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
409 |             textView.recalcOverscroll(for: scrollView)
410 |             scrollView.clampToInsets()
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSView.h:129:18: note: property declared here
127 | - (void)setFrameOrigin:(NSPoint)newOrigin;
128 | - (void)setFrameSize:(NSSize)newSize;
129 | @property NSRect frame;
    |                  `- note: property declared here
130 | @property CGFloat frameRotation;
131 | @property CGFloat frameCenterRotation API_AVAILABLE(macos(10.5));
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:408:71: warning: main actor-isolated property 'bounds' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
406 |                 return
407 |             }
408 |             guard abs(container.frame.height - scrollView.contentView.bounds.height) > 1 else { return }
    |                                                                       `- warning: main actor-isolated property 'bounds' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
409 |             textView.recalcOverscroll(for: scrollView)
410 |             scrollView.clampToInsets()
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSView.h:139:18: note: property declared here
137 | - (void)scaleUnitSquareToSize:(NSSize)newUnitSize;
138 | - (void)rotateByAngle:(CGFloat)angle;
139 | @property NSRect bounds;
    |                  `- note: property declared here
140 |
141 | @property (getter=isFlipped, readonly) BOOL flipped;
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:408:59: warning: main actor-isolated property 'contentView' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
406 |                 return
407 |             }
408 |             guard abs(container.frame.height - scrollView.contentView.bounds.height) > 1 else { return }
    |                                                           `- warning: main actor-isolated property 'contentView' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
409 |             textView.recalcOverscroll(for: scrollView)
410 |             scrollView.clampToInsets()
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSScrollView.h:49:32: note: property declared here
 47 | @property (readonly) NSSize contentSize;
 48 | @property (nullable, strong) __kindof NSView *documentView;
 49 | @property (strong) NSClipView *contentView;
    |                                `- note: property declared here
 50 | @property (nullable, strong) NSCursor *documentCursor;
 51 | @property NSBorderType borderType;
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:409:22: warning: call to main actor-isolated instance method 'recalcOverscroll(for:targetWidth:debugTag:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
407 |             }
408 |             guard abs(container.frame.height - scrollView.contentView.bounds.height) > 1 else { return }
409 |             textView.recalcOverscroll(for: scrollView)
    |                      `- warning: call to main actor-isolated instance method 'recalcOverscroll(for:targetWidth:debugTag:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
410 |             scrollView.clampToInsets()
411 |         }
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextView/NativeTextView+FrameAndOverscroll.swift:20:10: note: calls to instance method 'recalcOverscroll(for:targetWidth:debugTag:)' from outside of its actor context are implicitly asynchronous
 18 |     }
 19 |
 20 |     func recalcOverscroll(
    |          |- note: calls to instance method 'recalcOverscroll(for:targetWidth:debugTag:)' from outside of its actor context are implicitly asynchronous
    |          `- note: main actor isolation inferred from inheritance from class 'NSTextView'
 21 |         for scrollView: NSScrollView,
 22 |         targetWidth: CGFloat? = nil,
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:410:24: warning: call to main actor-isolated instance method 'clampToInsets()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
408 |             guard abs(container.frame.height - scrollView.contentView.bounds.height) > 1 else { return }
409 |             textView.recalcOverscroll(for: scrollView)
410 |             scrollView.clampToInsets()
    |                        `- warning: call to main actor-isolated instance method 'clampToInsets()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
411 |         }
412 |         NotificationCenter.default.addObserver(forName: NSView.boundsDidChangeNotification, object: scrollView.contentView, queue: nil) { _ in
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/ClampedScrollView.swift:171:10: note: calls to instance method 'clampToInsets()' from outside of its actor context are implicitly asynchronous
169 |     }
170 |
171 |     func clampToInsets() {
    |          |- note: calls to instance method 'clampToInsets()' from outside of its actor context are implicitly asynchronous
    |          `- note: main actor isolation inferred from inheritance from class 'NSScrollView'
172 |         guard !fitsContent else { return }
173 |         guard let doc = documentView else { return }
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:413:22: warning: call to main actor-isolated instance method 'ensureVisibleLayout()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
411 |         }
412 |         NotificationCenter.default.addObserver(forName: NSView.boundsDidChangeNotification, object: scrollView.contentView, queue: nil) { _ in
413 |             textView.ensureVisibleLayout()
    |                      `- warning: call to main actor-isolated instance method 'ensureVisibleLayout()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
414 |             if context.coordinator.isWritingToolsActive {
415 |                 context.coordinator.fixWritingToolsChildWindowIfNeeded(textView: textView)
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextView/NativeTextView+FrameAndOverscroll.swift:495:10: note: calls to instance method 'ensureVisibleLayout()' from outside of its actor context are implicitly asynchronous
493 |     /// a bistable frame height; steady-state cost here is an enumeration over
494 |     /// already-laid-out fragments.
495 |     func ensureVisibleLayout() {
    |          |- note: calls to instance method 'ensureVisibleLayout()' from outside of its actor context are implicitly asynchronous
    |          `- note: main actor isolation inferred from inheritance from class 'NSTextView'
496 |         guard let tlm = textLayoutManager else { return }
497 |         let visBot = visibleRect.maxY
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:414:24: warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
412 |         NotificationCenter.default.addObserver(forName: NSView.boundsDidChangeNotification, object: scrollView.contentView, queue: nil) { _ in
413 |             textView.ensureVisibleLayout()
414 |             if context.coordinator.isWritingToolsActive {
    |                        `- warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
415 |                 context.coordinator.fixWritingToolsChildWindowIfNeeded(textView: textView)
416 |             }
SwiftUI.NSViewRepresentableContext.coordinator:2:39: note: property declared here
1 | generic struct NSViewRepresentableContext {
2 | @MainActor @preconcurrency public let coordinator: View.Coordinator}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:415:25: warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
413 |             textView.ensureVisibleLayout()
414 |             if context.coordinator.isWritingToolsActive {
415 |                 context.coordinator.fixWritingToolsChildWindowIfNeeded(textView: textView)
    |                         `- warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
416 |             }
417 |             scrollView.clampToInsets()
SwiftUI.NSViewRepresentableContext.coordinator:2:39: note: property declared here
1 | generic struct NSViewRepresentableContext {
2 | @MainActor @preconcurrency public let coordinator: View.Coordinator}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:417:24: warning: call to main actor-isolated instance method 'clampToInsets()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
415 |                 context.coordinator.fixWritingToolsChildWindowIfNeeded(textView: textView)
416 |             }
417 |             scrollView.clampToInsets()
    |                        `- warning: call to main actor-isolated instance method 'clampToInsets()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
418 |             context.coordinator.refreshActiveLinkCaretRect()
419 |             context.coordinator.updateCodeBlockSelection(textView: textView)
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/ClampedScrollView.swift:171:10: note: calls to instance method 'clampToInsets()' from outside of its actor context are implicitly asynchronous
169 |     }
170 |
171 |     func clampToInsets() {
    |          |- note: calls to instance method 'clampToInsets()' from outside of its actor context are implicitly asynchronous
    |          `- note: main actor isolation inferred from inheritance from class 'NSScrollView'
172 |         guard !fitsContent else { return }
173 |         guard let doc = documentView else { return }
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:418:21: warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
416 |             }
417 |             scrollView.clampToInsets()
418 |             context.coordinator.refreshActiveLinkCaretRect()
    |                     `- warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
419 |             context.coordinator.updateCodeBlockSelection(textView: textView)
420 |         }
SwiftUI.NSViewRepresentableContext.coordinator:2:39: note: property declared here
1 | generic struct NSViewRepresentableContext {
2 | @MainActor @preconcurrency public let coordinator: View.Coordinator}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:419:21: warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
417 |             scrollView.clampToInsets()
418 |             context.coordinator.refreshActiveLinkCaretRect()
419 |             context.coordinator.updateCodeBlockSelection(textView: textView)
    |                     `- warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
420 |         }
421 |         reconcileHeader(textView: textView, context: context)
SwiftUI.NSViewRepresentableContext.coordinator:2:39: note: property declared here
1 | generic struct NSViewRepresentableContext {
2 | @MainActor @preconcurrency public let coordinator: View.Coordinator}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/ScrollingHeaderController.swift:77:9: warning: cannot access property 'clipFrameObserver' with a non-sendable type '(any NSObjectProtocol)?' from nonisolated deinit; this is an error in the Swift 6 language mode
 75 |
 76 |     deinit {
 77 |         if let clipFrameObserver {
    |         `- warning: cannot access property 'clipFrameObserver' with a non-sendable type '(any NSObjectProtocol)?' from nonisolated deinit; this is an error in the Swift 6 language mode
 78 |             NotificationCenter.default.removeObserver(clipFrameObserver)
 79 |         }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include/objc/NSObject.h:15:11: note: protocol 'NSObjectProtocol' does not conform to the 'Sendable' protocol
 13 | @class NSString, NSMethodSignature, NSInvocation;
 14 |
 15 | @protocol NSObject
    |           `- note: protocol 'NSObjectProtocol' does not conform to the 'Sendable' protocol
 16 |
 17 | - (BOOL)isEqual:(id)object;
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/ScrollingHeaderController.swift:13:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'ObjectiveC'
 11 | //
 12 |
 13 | import AppKit
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'ObjectiveC'
 14 | import SwiftUI
 15 |
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/ScrollingHeaderController.swift:80:9: warning: cannot access property 'hostFrameObserver' with a non-sendable type '(any NSObjectProtocol)?' from nonisolated deinit; this is an error in the Swift 6 language mode
 78 |             NotificationCenter.default.removeObserver(clipFrameObserver)
 79 |         }
 80 |         if let hostFrameObserver {
    |         `- warning: cannot access property 'hostFrameObserver' with a non-sendable type '(any NSObjectProtocol)?' from nonisolated deinit; this is an error in the Swift 6 language mode
 81 |             NotificationCenter.default.removeObserver(hostFrameObserver)
 82 |         }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include/objc/NSObject.h:15:11: note: protocol 'NSObjectProtocol' does not conform to the 'Sendable' protocol
 13 | @class NSString, NSMethodSignature, NSInvocation;
 14 |
 15 | @protocol NSObject
    |           `- note: protocol 'NSObjectProtocol' does not conform to the 'Sendable' protocol
 16 |
 17 | - (BOOL)isEqual:(id)object;
[372/373] Compiling MarkdownEngine PasteboardImageReader.swift
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:376:51: warning: main actor-isolated property 'bounds' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
374 |         NotificationCenter.default.addObserver(forName: NSView.frameDidChangeNotification, object: scrollView.contentView, queue: nil) { _ in
375 |             // Refresh code-block overlays only on real viewport width changes, not on TextKit height-only echoes during typing.
376 |             let newWidth = scrollView.contentView.bounds.width
    |                                                   `- warning: main actor-isolated property 'bounds' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
377 |             if abs(newWidth - lastObservedViewportWidth) > 0.5 {
378 |                 lastObservedViewportWidth = newWidth
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSView.h:139:18: note: property declared here
137 | - (void)scaleUnitSquareToSize:(NSSize)newUnitSize;
138 | - (void)rotateByAngle:(CGFloat)angle;
139 | @property NSRect bounds;
    |                  `- note: property declared here
140 |
141 | @property (getter=isFlipped, readonly) BOOL flipped;
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:376:39: warning: main actor-isolated property 'contentView' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
374 |         NotificationCenter.default.addObserver(forName: NSView.frameDidChangeNotification, object: scrollView.contentView, queue: nil) { _ in
375 |             // Refresh code-block overlays only on real viewport width changes, not on TextKit height-only echoes during typing.
376 |             let newWidth = scrollView.contentView.bounds.width
    |                                       `- warning: main actor-isolated property 'contentView' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
377 |             if abs(newWidth - lastObservedViewportWidth) > 0.5 {
378 |                 lastObservedViewportWidth = newWidth
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSScrollView.h:49:32: note: property declared here
 47 | @property (readonly) NSSize contentSize;
 48 | @property (nullable, strong) __kindof NSView *documentView;
 49 | @property (strong) NSClipView *contentView;
    |                                `- note: property declared here
 50 | @property (nullable, strong) NSCursor *documentCursor;
 51 | @property NSBorderType borderType;
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:377:31: warning: reference to captured var 'lastObservedViewportWidth' in concurrently-executing code
375 |             // Refresh code-block overlays only on real viewport width changes, not on TextKit height-only echoes during typing.
376 |             let newWidth = scrollView.contentView.bounds.width
377 |             if abs(newWidth - lastObservedViewportWidth) > 0.5 {
    |                               `- warning: reference to captured var 'lastObservedViewportWidth' in concurrently-executing code
378 |                 lastObservedViewportWidth = newWidth
379 |                 // Re-center the column by position (no redraw) so it stays smooth during live resize.
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:378:17: warning: mutation of captured var 'lastObservedViewportWidth' in concurrently-executing code
376 |             let newWidth = scrollView.contentView.bounds.width
377 |             if abs(newWidth - lastObservedViewportWidth) > 0.5 {
378 |                 lastObservedViewportWidth = newWidth
    |                 `- warning: mutation of captured var 'lastObservedViewportWidth' in concurrently-executing code
379 |                 // Re-center the column by position (no redraw) so it stays smooth during live resize.
380 |                 // Read readingWidth from the live textView.configuration (a class, captured by
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:383:29: warning: main actor-isolated property 'configuration' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
381 |                 // reference) instead of the struct `configuration` captured by value at
382 |                 // makeNSView time — the embedder may change readingWidth between updates.
383 |                 if textView.configuration.readingWidth != nil {
    |                             `- warning: main actor-isolated property 'configuration' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
384 |                     textView.centerReadingColumn(forClipWidth: newWidth)
385 |                 }
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextView/NativeTextView.swift:38:9: note: property declared here
 36 |
 37 |     // MARK: Configuration
 38 |     var configuration: MarkdownEditorConfiguration = .default {
    |         `- note: property declared here
 39 |         didSet {
 40 |             overscrollPercent = configuration.overscroll.percent
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:384:30: warning: call to main actor-isolated instance method 'centerReadingColumn(forClipWidth:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
382 |                 // makeNSView time — the embedder may change readingWidth between updates.
383 |                 if textView.configuration.readingWidth != nil {
384 |                     textView.centerReadingColumn(forClipWidth: newWidth)
    |                              `- warning: call to main actor-isolated instance method 'centerReadingColumn(forClipWidth:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
385 |                 }
386 |                 context.coordinator.didEnsureLayoutForCurrentDocument = false
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextView/NativeTextView+FrameAndOverscroll.swift:232:10: note: calls to instance method 'centerReadingColumn(forClipWidth:)' from outside of its actor context are implicitly asynchronous
230 |
231 |     /// Re-center the column by moving its X (not resizing it) so it stays smooth during live resize.
232 |     func centerReadingColumn(forClipWidth clipWidth: CGFloat) {
    |          |- note: calls to instance method 'centerReadingColumn(forClipWidth:)' from outside of its actor context are implicitly asynchronous
    |          `- note: main actor isolation inferred from inheritance from class 'NSTextView'
233 |         guard configuration.readingWidth != nil,
234 |               let container = superview as? NativeTextViewContainer else { return }
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:386:25: warning: main actor-isolated property 'coordinator' can not be mutated from a Sendable closure; this is an error in the Swift 6 language mode
384 |                     textView.centerReadingColumn(forClipWidth: newWidth)
385 |                 }
386 |                 context.coordinator.didEnsureLayoutForCurrentDocument = false
    |                         `- warning: main actor-isolated property 'coordinator' can not be mutated from a Sendable closure; this is an error in the Swift 6 language mode
387 |                 context.coordinator.updateCodeBlockSelection(textView: textView)
388 |             }
SwiftUI.NSViewRepresentableContext.coordinator:2:39: note: mutation of this property is only permitted within the actor
1 | generic struct NSViewRepresentableContext {
2 | @MainActor @preconcurrency public let coordinator: View.Coordinator}
  |                                       `- note: mutation of this property is only permitted within the actor
3 |
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:387:25: warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
385 |                 }
386 |                 context.coordinator.didEnsureLayoutForCurrentDocument = false
387 |                 context.coordinator.updateCodeBlockSelection(textView: textView)
    |                         `- warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
388 |             }
389 |             // Only react with overscroll recalc when the viewport itself resizes
SwiftUI.NSViewRepresentableContext.coordinator:2:39: note: property declared here
1 | generic struct NSViewRepresentableContext {
2 | @MainActor @preconcurrency public let coordinator: View.Coordinator}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:394:46: warning: main actor-isolated property 'documentView' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
392 |             // oscillation after clicks. Compare the CONTAINER (the document view) height
393 |             // to the viewport — it tracks the viewport for short docs.
394 |             guard let container = scrollView.documentView as? NativeTextViewContainer else { return }
    |                                              `- warning: main actor-isolated property 'documentView' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
395 |             // Read heightBehavior from the live textView.configuration (a class,
396 |             // captured by reference) — not the struct `configuration` captured by
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSScrollView.h:48:47: note: property declared here
 46 | @property (readonly) NSRect documentVisibleRect;
 47 | @property (readonly) NSSize contentSize;
 48 | @property (nullable, strong) __kindof NSView *documentView;
    |                                               `- note: property declared here
 49 | @property (strong) NSClipView *contentView;
 50 | @property (nullable, strong) NSCursor *documentCursor;
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:400:25: warning: main actor-isolated property 'configuration' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
398 |             // switch leaves this closure permanently early-returning, so viewport-
399 |             // resize-driven recalcOverscroll is skipped → stale overscroll.
400 |             if textView.configuration.heightBehavior == .fitsContent {
    |                         `- warning: main actor-isolated property 'configuration' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
401 |                 // In .fitsContent the container is content-tall (not viewport-tall),
402 |                 // so the container-vs-viewport guard below is always true — which
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextView/NativeTextView.swift:38:9: note: property declared here
 36 |
 37 |     // MARK: Configuration
 38 |     var configuration: MarkdownEditorConfiguration = .default {
    |         `- note: property declared here
 39 |         didSet {
 40 |             overscrollPercent = configuration.overscroll.percent
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:408:33: warning: main actor-isolated property 'frame' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
406 |                 return
407 |             }
408 |             guard abs(container.frame.height - scrollView.contentView.bounds.height) > 1 else { return }
    |                                 `- warning: main actor-isolated property 'frame' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
409 |             textView.recalcOverscroll(for: scrollView)
410 |             scrollView.clampToInsets()
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSView.h:129:18: note: property declared here
127 | - (void)setFrameOrigin:(NSPoint)newOrigin;
128 | - (void)setFrameSize:(NSSize)newSize;
129 | @property NSRect frame;
    |                  `- note: property declared here
130 | @property CGFloat frameRotation;
131 | @property CGFloat frameCenterRotation API_AVAILABLE(macos(10.5));
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:408:71: warning: main actor-isolated property 'bounds' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
406 |                 return
407 |             }
408 |             guard abs(container.frame.height - scrollView.contentView.bounds.height) > 1 else { return }
    |                                                                       `- warning: main actor-isolated property 'bounds' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
409 |             textView.recalcOverscroll(for: scrollView)
410 |             scrollView.clampToInsets()
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSView.h:139:18: note: property declared here
137 | - (void)scaleUnitSquareToSize:(NSSize)newUnitSize;
138 | - (void)rotateByAngle:(CGFloat)angle;
139 | @property NSRect bounds;
    |                  `- note: property declared here
140 |
141 | @property (getter=isFlipped, readonly) BOOL flipped;
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:408:59: warning: main actor-isolated property 'contentView' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
406 |                 return
407 |             }
408 |             guard abs(container.frame.height - scrollView.contentView.bounds.height) > 1 else { return }
    |                                                           `- warning: main actor-isolated property 'contentView' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
409 |             textView.recalcOverscroll(for: scrollView)
410 |             scrollView.clampToInsets()
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSScrollView.h:49:32: note: property declared here
 47 | @property (readonly) NSSize contentSize;
 48 | @property (nullable, strong) __kindof NSView *documentView;
 49 | @property (strong) NSClipView *contentView;
    |                                `- note: property declared here
 50 | @property (nullable, strong) NSCursor *documentCursor;
 51 | @property NSBorderType borderType;
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:409:22: warning: call to main actor-isolated instance method 'recalcOverscroll(for:targetWidth:debugTag:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
407 |             }
408 |             guard abs(container.frame.height - scrollView.contentView.bounds.height) > 1 else { return }
409 |             textView.recalcOverscroll(for: scrollView)
    |                      `- warning: call to main actor-isolated instance method 'recalcOverscroll(for:targetWidth:debugTag:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
410 |             scrollView.clampToInsets()
411 |         }
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextView/NativeTextView+FrameAndOverscroll.swift:20:10: note: calls to instance method 'recalcOverscroll(for:targetWidth:debugTag:)' from outside of its actor context are implicitly asynchronous
 18 |     }
 19 |
 20 |     func recalcOverscroll(
    |          |- note: calls to instance method 'recalcOverscroll(for:targetWidth:debugTag:)' from outside of its actor context are implicitly asynchronous
    |          `- note: main actor isolation inferred from inheritance from class 'NSTextView'
 21 |         for scrollView: NSScrollView,
 22 |         targetWidth: CGFloat? = nil,
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:410:24: warning: call to main actor-isolated instance method 'clampToInsets()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
408 |             guard abs(container.frame.height - scrollView.contentView.bounds.height) > 1 else { return }
409 |             textView.recalcOverscroll(for: scrollView)
410 |             scrollView.clampToInsets()
    |                        `- warning: call to main actor-isolated instance method 'clampToInsets()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
411 |         }
412 |         NotificationCenter.default.addObserver(forName: NSView.boundsDidChangeNotification, object: scrollView.contentView, queue: nil) { _ in
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/ClampedScrollView.swift:171:10: note: calls to instance method 'clampToInsets()' from outside of its actor context are implicitly asynchronous
169 |     }
170 |
171 |     func clampToInsets() {
    |          |- note: calls to instance method 'clampToInsets()' from outside of its actor context are implicitly asynchronous
    |          `- note: main actor isolation inferred from inheritance from class 'NSScrollView'
172 |         guard !fitsContent else { return }
173 |         guard let doc = documentView else { return }
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:413:22: warning: call to main actor-isolated instance method 'ensureVisibleLayout()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
411 |         }
412 |         NotificationCenter.default.addObserver(forName: NSView.boundsDidChangeNotification, object: scrollView.contentView, queue: nil) { _ in
413 |             textView.ensureVisibleLayout()
    |                      `- warning: call to main actor-isolated instance method 'ensureVisibleLayout()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
414 |             if context.coordinator.isWritingToolsActive {
415 |                 context.coordinator.fixWritingToolsChildWindowIfNeeded(textView: textView)
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextView/NativeTextView+FrameAndOverscroll.swift:495:10: note: calls to instance method 'ensureVisibleLayout()' from outside of its actor context are implicitly asynchronous
493 |     /// a bistable frame height; steady-state cost here is an enumeration over
494 |     /// already-laid-out fragments.
495 |     func ensureVisibleLayout() {
    |          |- note: calls to instance method 'ensureVisibleLayout()' from outside of its actor context are implicitly asynchronous
    |          `- note: main actor isolation inferred from inheritance from class 'NSTextView'
496 |         guard let tlm = textLayoutManager else { return }
497 |         let visBot = visibleRect.maxY
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:414:24: warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
412 |         NotificationCenter.default.addObserver(forName: NSView.boundsDidChangeNotification, object: scrollView.contentView, queue: nil) { _ in
413 |             textView.ensureVisibleLayout()
414 |             if context.coordinator.isWritingToolsActive {
    |                        `- warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
415 |                 context.coordinator.fixWritingToolsChildWindowIfNeeded(textView: textView)
416 |             }
SwiftUI.NSViewRepresentableContext.coordinator:2:39: note: property declared here
1 | generic struct NSViewRepresentableContext {
2 | @MainActor @preconcurrency public let coordinator: View.Coordinator}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:415:25: warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
413 |             textView.ensureVisibleLayout()
414 |             if context.coordinator.isWritingToolsActive {
415 |                 context.coordinator.fixWritingToolsChildWindowIfNeeded(textView: textView)
    |                         `- warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
416 |             }
417 |             scrollView.clampToInsets()
SwiftUI.NSViewRepresentableContext.coordinator:2:39: note: property declared here
1 | generic struct NSViewRepresentableContext {
2 | @MainActor @preconcurrency public let coordinator: View.Coordinator}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:417:24: warning: call to main actor-isolated instance method 'clampToInsets()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
415 |                 context.coordinator.fixWritingToolsChildWindowIfNeeded(textView: textView)
416 |             }
417 |             scrollView.clampToInsets()
    |                        `- warning: call to main actor-isolated instance method 'clampToInsets()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
418 |             context.coordinator.refreshActiveLinkCaretRect()
419 |             context.coordinator.updateCodeBlockSelection(textView: textView)
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/ClampedScrollView.swift:171:10: note: calls to instance method 'clampToInsets()' from outside of its actor context are implicitly asynchronous
169 |     }
170 |
171 |     func clampToInsets() {
    |          |- note: calls to instance method 'clampToInsets()' from outside of its actor context are implicitly asynchronous
    |          `- note: main actor isolation inferred from inheritance from class 'NSScrollView'
172 |         guard !fitsContent else { return }
173 |         guard let doc = documentView else { return }
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:418:21: warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
416 |             }
417 |             scrollView.clampToInsets()
418 |             context.coordinator.refreshActiveLinkCaretRect()
    |                     `- warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
419 |             context.coordinator.updateCodeBlockSelection(textView: textView)
420 |         }
SwiftUI.NSViewRepresentableContext.coordinator:2:39: note: property declared here
1 | generic struct NSViewRepresentableContext {
2 | @MainActor @preconcurrency public let coordinator: View.Coordinator}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:419:21: warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
417 |             scrollView.clampToInsets()
418 |             context.coordinator.refreshActiveLinkCaretRect()
419 |             context.coordinator.updateCodeBlockSelection(textView: textView)
    |                     `- warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
420 |         }
421 |         reconcileHeader(textView: textView, context: context)
SwiftUI.NSViewRepresentableContext.coordinator:2:39: note: property declared here
1 | generic struct NSViewRepresentableContext {
2 | @MainActor @preconcurrency public let coordinator: View.Coordinator}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/ScrollingHeaderController.swift:77:9: warning: cannot access property 'clipFrameObserver' with a non-sendable type '(any NSObjectProtocol)?' from nonisolated deinit; this is an error in the Swift 6 language mode
 75 |
 76 |     deinit {
 77 |         if let clipFrameObserver {
    |         `- warning: cannot access property 'clipFrameObserver' with a non-sendable type '(any NSObjectProtocol)?' from nonisolated deinit; this is an error in the Swift 6 language mode
 78 |             NotificationCenter.default.removeObserver(clipFrameObserver)
 79 |         }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include/objc/NSObject.h:15:11: note: protocol 'NSObjectProtocol' does not conform to the 'Sendable' protocol
 13 | @class NSString, NSMethodSignature, NSInvocation;
 14 |
 15 | @protocol NSObject
    |           `- note: protocol 'NSObjectProtocol' does not conform to the 'Sendable' protocol
 16 |
 17 | - (BOOL)isEqual:(id)object;
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/ScrollingHeaderController.swift:13:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'ObjectiveC'
 11 | //
 12 |
 13 | import AppKit
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'ObjectiveC'
 14 | import SwiftUI
 15 |
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/ScrollingHeaderController.swift:80:9: warning: cannot access property 'hostFrameObserver' with a non-sendable type '(any NSObjectProtocol)?' from nonisolated deinit; this is an error in the Swift 6 language mode
 78 |             NotificationCenter.default.removeObserver(clipFrameObserver)
 79 |         }
 80 |         if let hostFrameObserver {
    |         `- warning: cannot access property 'hostFrameObserver' with a non-sendable type '(any NSObjectProtocol)?' from nonisolated deinit; this is an error in the Swift 6 language mode
 81 |             NotificationCenter.default.removeObserver(hostFrameObserver)
 82 |         }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include/objc/NSObject.h:15:11: note: protocol 'NSObjectProtocol' does not conform to the 'Sendable' protocol
 13 | @class NSString, NSMethodSignature, NSInvocation;
 14 |
 15 | @protocol NSObject
    |           `- note: protocol 'NSObjectProtocol' does not conform to the 'Sendable' protocol
 16 |
 17 | - (BOOL)isEqual:(id)object;
[373/373] Compiling MarkdownEngine ScrollingHeaderController.swift
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:376:51: warning: main actor-isolated property 'bounds' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
374 |         NotificationCenter.default.addObserver(forName: NSView.frameDidChangeNotification, object: scrollView.contentView, queue: nil) { _ in
375 |             // Refresh code-block overlays only on real viewport width changes, not on TextKit height-only echoes during typing.
376 |             let newWidth = scrollView.contentView.bounds.width
    |                                                   `- warning: main actor-isolated property 'bounds' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
377 |             if abs(newWidth - lastObservedViewportWidth) > 0.5 {
378 |                 lastObservedViewportWidth = newWidth
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSView.h:139:18: note: property declared here
137 | - (void)scaleUnitSquareToSize:(NSSize)newUnitSize;
138 | - (void)rotateByAngle:(CGFloat)angle;
139 | @property NSRect bounds;
    |                  `- note: property declared here
140 |
141 | @property (getter=isFlipped, readonly) BOOL flipped;
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:376:39: warning: main actor-isolated property 'contentView' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
374 |         NotificationCenter.default.addObserver(forName: NSView.frameDidChangeNotification, object: scrollView.contentView, queue: nil) { _ in
375 |             // Refresh code-block overlays only on real viewport width changes, not on TextKit height-only echoes during typing.
376 |             let newWidth = scrollView.contentView.bounds.width
    |                                       `- warning: main actor-isolated property 'contentView' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
377 |             if abs(newWidth - lastObservedViewportWidth) > 0.5 {
378 |                 lastObservedViewportWidth = newWidth
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSScrollView.h:49:32: note: property declared here
 47 | @property (readonly) NSSize contentSize;
 48 | @property (nullable, strong) __kindof NSView *documentView;
 49 | @property (strong) NSClipView *contentView;
    |                                `- note: property declared here
 50 | @property (nullable, strong) NSCursor *documentCursor;
 51 | @property NSBorderType borderType;
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:377:31: warning: reference to captured var 'lastObservedViewportWidth' in concurrently-executing code
375 |             // Refresh code-block overlays only on real viewport width changes, not on TextKit height-only echoes during typing.
376 |             let newWidth = scrollView.contentView.bounds.width
377 |             if abs(newWidth - lastObservedViewportWidth) > 0.5 {
    |                               `- warning: reference to captured var 'lastObservedViewportWidth' in concurrently-executing code
378 |                 lastObservedViewportWidth = newWidth
379 |                 // Re-center the column by position (no redraw) so it stays smooth during live resize.
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:378:17: warning: mutation of captured var 'lastObservedViewportWidth' in concurrently-executing code
376 |             let newWidth = scrollView.contentView.bounds.width
377 |             if abs(newWidth - lastObservedViewportWidth) > 0.5 {
378 |                 lastObservedViewportWidth = newWidth
    |                 `- warning: mutation of captured var 'lastObservedViewportWidth' in concurrently-executing code
379 |                 // Re-center the column by position (no redraw) so it stays smooth during live resize.
380 |                 // Read readingWidth from the live textView.configuration (a class, captured by
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:383:29: warning: main actor-isolated property 'configuration' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
381 |                 // reference) instead of the struct `configuration` captured by value at
382 |                 // makeNSView time — the embedder may change readingWidth between updates.
383 |                 if textView.configuration.readingWidth != nil {
    |                             `- warning: main actor-isolated property 'configuration' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
384 |                     textView.centerReadingColumn(forClipWidth: newWidth)
385 |                 }
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextView/NativeTextView.swift:38:9: note: property declared here
 36 |
 37 |     // MARK: Configuration
 38 |     var configuration: MarkdownEditorConfiguration = .default {
    |         `- note: property declared here
 39 |         didSet {
 40 |             overscrollPercent = configuration.overscroll.percent
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:384:30: warning: call to main actor-isolated instance method 'centerReadingColumn(forClipWidth:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
382 |                 // makeNSView time — the embedder may change readingWidth between updates.
383 |                 if textView.configuration.readingWidth != nil {
384 |                     textView.centerReadingColumn(forClipWidth: newWidth)
    |                              `- warning: call to main actor-isolated instance method 'centerReadingColumn(forClipWidth:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
385 |                 }
386 |                 context.coordinator.didEnsureLayoutForCurrentDocument = false
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextView/NativeTextView+FrameAndOverscroll.swift:232:10: note: calls to instance method 'centerReadingColumn(forClipWidth:)' from outside of its actor context are implicitly asynchronous
230 |
231 |     /// Re-center the column by moving its X (not resizing it) so it stays smooth during live resize.
232 |     func centerReadingColumn(forClipWidth clipWidth: CGFloat) {
    |          |- note: calls to instance method 'centerReadingColumn(forClipWidth:)' from outside of its actor context are implicitly asynchronous
    |          `- note: main actor isolation inferred from inheritance from class 'NSTextView'
233 |         guard configuration.readingWidth != nil,
234 |               let container = superview as? NativeTextViewContainer else { return }
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:386:25: warning: main actor-isolated property 'coordinator' can not be mutated from a Sendable closure; this is an error in the Swift 6 language mode
384 |                     textView.centerReadingColumn(forClipWidth: newWidth)
385 |                 }
386 |                 context.coordinator.didEnsureLayoutForCurrentDocument = false
    |                         `- warning: main actor-isolated property 'coordinator' can not be mutated from a Sendable closure; this is an error in the Swift 6 language mode
387 |                 context.coordinator.updateCodeBlockSelection(textView: textView)
388 |             }
SwiftUI.NSViewRepresentableContext.coordinator:2:39: note: mutation of this property is only permitted within the actor
1 | generic struct NSViewRepresentableContext {
2 | @MainActor @preconcurrency public let coordinator: View.Coordinator}
  |                                       `- note: mutation of this property is only permitted within the actor
3 |
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:387:25: warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
385 |                 }
386 |                 context.coordinator.didEnsureLayoutForCurrentDocument = false
387 |                 context.coordinator.updateCodeBlockSelection(textView: textView)
    |                         `- warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
388 |             }
389 |             // Only react with overscroll recalc when the viewport itself resizes
SwiftUI.NSViewRepresentableContext.coordinator:2:39: note: property declared here
1 | generic struct NSViewRepresentableContext {
2 | @MainActor @preconcurrency public let coordinator: View.Coordinator}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:394:46: warning: main actor-isolated property 'documentView' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
392 |             // oscillation after clicks. Compare the CONTAINER (the document view) height
393 |             // to the viewport — it tracks the viewport for short docs.
394 |             guard let container = scrollView.documentView as? NativeTextViewContainer else { return }
    |                                              `- warning: main actor-isolated property 'documentView' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
395 |             // Read heightBehavior from the live textView.configuration (a class,
396 |             // captured by reference) — not the struct `configuration` captured by
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSScrollView.h:48:47: note: property declared here
 46 | @property (readonly) NSRect documentVisibleRect;
 47 | @property (readonly) NSSize contentSize;
 48 | @property (nullable, strong) __kindof NSView *documentView;
    |                                               `- note: property declared here
 49 | @property (strong) NSClipView *contentView;
 50 | @property (nullable, strong) NSCursor *documentCursor;
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:400:25: warning: main actor-isolated property 'configuration' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
398 |             // switch leaves this closure permanently early-returning, so viewport-
399 |             // resize-driven recalcOverscroll is skipped → stale overscroll.
400 |             if textView.configuration.heightBehavior == .fitsContent {
    |                         `- warning: main actor-isolated property 'configuration' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
401 |                 // In .fitsContent the container is content-tall (not viewport-tall),
402 |                 // so the container-vs-viewport guard below is always true — which
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextView/NativeTextView.swift:38:9: note: property declared here
 36 |
 37 |     // MARK: Configuration
 38 |     var configuration: MarkdownEditorConfiguration = .default {
    |         `- note: property declared here
 39 |         didSet {
 40 |             overscrollPercent = configuration.overscroll.percent
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:408:33: warning: main actor-isolated property 'frame' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
406 |                 return
407 |             }
408 |             guard abs(container.frame.height - scrollView.contentView.bounds.height) > 1 else { return }
    |                                 `- warning: main actor-isolated property 'frame' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
409 |             textView.recalcOverscroll(for: scrollView)
410 |             scrollView.clampToInsets()
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSView.h:129:18: note: property declared here
127 | - (void)setFrameOrigin:(NSPoint)newOrigin;
128 | - (void)setFrameSize:(NSSize)newSize;
129 | @property NSRect frame;
    |                  `- note: property declared here
130 | @property CGFloat frameRotation;
131 | @property CGFloat frameCenterRotation API_AVAILABLE(macos(10.5));
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:408:71: warning: main actor-isolated property 'bounds' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
406 |                 return
407 |             }
408 |             guard abs(container.frame.height - scrollView.contentView.bounds.height) > 1 else { return }
    |                                                                       `- warning: main actor-isolated property 'bounds' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
409 |             textView.recalcOverscroll(for: scrollView)
410 |             scrollView.clampToInsets()
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSView.h:139:18: note: property declared here
137 | - (void)scaleUnitSquareToSize:(NSSize)newUnitSize;
138 | - (void)rotateByAngle:(CGFloat)angle;
139 | @property NSRect bounds;
    |                  `- note: property declared here
140 |
141 | @property (getter=isFlipped, readonly) BOOL flipped;
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:408:59: warning: main actor-isolated property 'contentView' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
406 |                 return
407 |             }
408 |             guard abs(container.frame.height - scrollView.contentView.bounds.height) > 1 else { return }
    |                                                           `- warning: main actor-isolated property 'contentView' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
409 |             textView.recalcOverscroll(for: scrollView)
410 |             scrollView.clampToInsets()
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSScrollView.h:49:32: note: property declared here
 47 | @property (readonly) NSSize contentSize;
 48 | @property (nullable, strong) __kindof NSView *documentView;
 49 | @property (strong) NSClipView *contentView;
    |                                `- note: property declared here
 50 | @property (nullable, strong) NSCursor *documentCursor;
 51 | @property NSBorderType borderType;
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:409:22: warning: call to main actor-isolated instance method 'recalcOverscroll(for:targetWidth:debugTag:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
407 |             }
408 |             guard abs(container.frame.height - scrollView.contentView.bounds.height) > 1 else { return }
409 |             textView.recalcOverscroll(for: scrollView)
    |                      `- warning: call to main actor-isolated instance method 'recalcOverscroll(for:targetWidth:debugTag:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
410 |             scrollView.clampToInsets()
411 |         }
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextView/NativeTextView+FrameAndOverscroll.swift:20:10: note: calls to instance method 'recalcOverscroll(for:targetWidth:debugTag:)' from outside of its actor context are implicitly asynchronous
 18 |     }
 19 |
 20 |     func recalcOverscroll(
    |          |- note: calls to instance method 'recalcOverscroll(for:targetWidth:debugTag:)' from outside of its actor context are implicitly asynchronous
    |          `- note: main actor isolation inferred from inheritance from class 'NSTextView'
 21 |         for scrollView: NSScrollView,
 22 |         targetWidth: CGFloat? = nil,
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:410:24: warning: call to main actor-isolated instance method 'clampToInsets()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
408 |             guard abs(container.frame.height - scrollView.contentView.bounds.height) > 1 else { return }
409 |             textView.recalcOverscroll(for: scrollView)
410 |             scrollView.clampToInsets()
    |                        `- warning: call to main actor-isolated instance method 'clampToInsets()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
411 |         }
412 |         NotificationCenter.default.addObserver(forName: NSView.boundsDidChangeNotification, object: scrollView.contentView, queue: nil) { _ in
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/ClampedScrollView.swift:171:10: note: calls to instance method 'clampToInsets()' from outside of its actor context are implicitly asynchronous
169 |     }
170 |
171 |     func clampToInsets() {
    |          |- note: calls to instance method 'clampToInsets()' from outside of its actor context are implicitly asynchronous
    |          `- note: main actor isolation inferred from inheritance from class 'NSScrollView'
172 |         guard !fitsContent else { return }
173 |         guard let doc = documentView else { return }
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:413:22: warning: call to main actor-isolated instance method 'ensureVisibleLayout()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
411 |         }
412 |         NotificationCenter.default.addObserver(forName: NSView.boundsDidChangeNotification, object: scrollView.contentView, queue: nil) { _ in
413 |             textView.ensureVisibleLayout()
    |                      `- warning: call to main actor-isolated instance method 'ensureVisibleLayout()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
414 |             if context.coordinator.isWritingToolsActive {
415 |                 context.coordinator.fixWritingToolsChildWindowIfNeeded(textView: textView)
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextView/NativeTextView+FrameAndOverscroll.swift:495:10: note: calls to instance method 'ensureVisibleLayout()' from outside of its actor context are implicitly asynchronous
493 |     /// a bistable frame height; steady-state cost here is an enumeration over
494 |     /// already-laid-out fragments.
495 |     func ensureVisibleLayout() {
    |          |- note: calls to instance method 'ensureVisibleLayout()' from outside of its actor context are implicitly asynchronous
    |          `- note: main actor isolation inferred from inheritance from class 'NSTextView'
496 |         guard let tlm = textLayoutManager else { return }
497 |         let visBot = visibleRect.maxY
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:414:24: warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
412 |         NotificationCenter.default.addObserver(forName: NSView.boundsDidChangeNotification, object: scrollView.contentView, queue: nil) { _ in
413 |             textView.ensureVisibleLayout()
414 |             if context.coordinator.isWritingToolsActive {
    |                        `- warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
415 |                 context.coordinator.fixWritingToolsChildWindowIfNeeded(textView: textView)
416 |             }
SwiftUI.NSViewRepresentableContext.coordinator:2:39: note: property declared here
1 | generic struct NSViewRepresentableContext {
2 | @MainActor @preconcurrency public let coordinator: View.Coordinator}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:415:25: warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
413 |             textView.ensureVisibleLayout()
414 |             if context.coordinator.isWritingToolsActive {
415 |                 context.coordinator.fixWritingToolsChildWindowIfNeeded(textView: textView)
    |                         `- warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
416 |             }
417 |             scrollView.clampToInsets()
SwiftUI.NSViewRepresentableContext.coordinator:2:39: note: property declared here
1 | generic struct NSViewRepresentableContext {
2 | @MainActor @preconcurrency public let coordinator: View.Coordinator}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:417:24: warning: call to main actor-isolated instance method 'clampToInsets()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
415 |                 context.coordinator.fixWritingToolsChildWindowIfNeeded(textView: textView)
416 |             }
417 |             scrollView.clampToInsets()
    |                        `- warning: call to main actor-isolated instance method 'clampToInsets()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
418 |             context.coordinator.refreshActiveLinkCaretRect()
419 |             context.coordinator.updateCodeBlockSelection(textView: textView)
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/ClampedScrollView.swift:171:10: note: calls to instance method 'clampToInsets()' from outside of its actor context are implicitly asynchronous
169 |     }
170 |
171 |     func clampToInsets() {
    |          |- note: calls to instance method 'clampToInsets()' from outside of its actor context are implicitly asynchronous
    |          `- note: main actor isolation inferred from inheritance from class 'NSScrollView'
172 |         guard !fitsContent else { return }
173 |         guard let doc = documentView else { return }
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:418:21: warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
416 |             }
417 |             scrollView.clampToInsets()
418 |             context.coordinator.refreshActiveLinkCaretRect()
    |                     `- warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
419 |             context.coordinator.updateCodeBlockSelection(textView: textView)
420 |         }
SwiftUI.NSViewRepresentableContext.coordinator:2:39: note: property declared here
1 | generic struct NSViewRepresentableContext {
2 | @MainActor @preconcurrency public let coordinator: View.Coordinator}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/NativeTextViewWrapper.swift:419:21: warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
417 |             scrollView.clampToInsets()
418 |             context.coordinator.refreshActiveLinkCaretRect()
419 |             context.coordinator.updateCodeBlockSelection(textView: textView)
    |                     `- warning: main actor-isolated property 'coordinator' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
420 |         }
421 |         reconcileHeader(textView: textView, context: context)
SwiftUI.NSViewRepresentableContext.coordinator:2:39: note: property declared here
1 | generic struct NSViewRepresentableContext {
2 | @MainActor @preconcurrency public let coordinator: View.Coordinator}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/ScrollingHeaderController.swift:77:9: warning: cannot access property 'clipFrameObserver' with a non-sendable type '(any NSObjectProtocol)?' from nonisolated deinit; this is an error in the Swift 6 language mode
 75 |
 76 |     deinit {
 77 |         if let clipFrameObserver {
    |         `- warning: cannot access property 'clipFrameObserver' with a non-sendable type '(any NSObjectProtocol)?' from nonisolated deinit; this is an error in the Swift 6 language mode
 78 |             NotificationCenter.default.removeObserver(clipFrameObserver)
 79 |         }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include/objc/NSObject.h:15:11: note: protocol 'NSObjectProtocol' does not conform to the 'Sendable' protocol
 13 | @class NSString, NSMethodSignature, NSInvocation;
 14 |
 15 | @protocol NSObject
    |           `- note: protocol 'NSObjectProtocol' does not conform to the 'Sendable' protocol
 16 |
 17 | - (BOOL)isEqual:(id)object;
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/ScrollingHeaderController.swift:13:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'ObjectiveC'
 11 | //
 12 |
 13 | import AppKit
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'ObjectiveC'
 14 | import SwiftUI
 15 |
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/ScrollingHeaderController.swift:80:9: warning: cannot access property 'hostFrameObserver' with a non-sendable type '(any NSObjectProtocol)?' from nonisolated deinit; this is an error in the Swift 6 language mode
 78 |             NotificationCenter.default.removeObserver(clipFrameObserver)
 79 |         }
 80 |         if let hostFrameObserver {
    |         `- warning: cannot access property 'hostFrameObserver' with a non-sendable type '(any NSObjectProtocol)?' from nonisolated deinit; this is an error in the Swift 6 language mode
 81 |             NotificationCenter.default.removeObserver(hostFrameObserver)
 82 |         }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include/objc/NSObject.h:15:11: note: protocol 'NSObjectProtocol' does not conform to the 'Sendable' protocol
 13 | @class NSString, NSMethodSignature, NSInvocation;
 14 |
 15 | @protocol NSObject
    |           `- note: protocol 'NSObjectProtocol' does not conform to the 'Sendable' protocol
 16 |
 17 | - (BOOL)isEqual:(id)object;
[374/377] Compiling MarkdownEngineCodeBlocks HighlighterSwiftBridge.swift
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngineCodeBlocks/HighlighterSwiftBridge.swift:113:43: warning: main actor-isolated property 'effectiveAppearance' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
109 |     }
110 |
111 |     private func isDarkAppearance() -> Bool {
    |                  `- note: add '@MainActor' to make instance method 'isDarkAppearance()' part of global actor 'MainActor'
112 |         guard autoSwitchAppearance else { return false }
113 |         let appearance = NSApp.keyWindow?.effectiveAppearance ?? NSApp.effectiveAppearance
    |                                           `- warning: main actor-isolated property 'effectiveAppearance' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
114 |         return appearance.bestMatch(from: [.darkAqua, .aqua]) == .darkAqua
115 |     }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSAppearance.h:90:44: note: property declared here
88 | /* This returns the appearance that would be used when drawing the receiver, taking inherited appearances into account.
89 |  */
90 | @property (readonly, strong) NSAppearance *effectiveAppearance API_AVAILABLE(macos(10.9));
   |                                            `- note: property declared here
91 |
92 | @end
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngineCodeBlocks/HighlighterSwiftBridge.swift:113:32: warning: main actor-isolated property 'keyWindow' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
109 |     }
110 |
111 |     private func isDarkAppearance() -> Bool {
    |                  `- note: add '@MainActor' to make instance method 'isDarkAppearance()' part of global actor 'MainActor'
112 |         guard autoSwitchAppearance else { return false }
113 |         let appearance = NSApp.keyWindow?.effectiveAppearance ?? NSApp.effectiveAppearance
    |                                `- warning: main actor-isolated property 'keyWindow' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
114 |         return appearance.bestMatch(from: [.darkAqua, .aqua]) == .darkAqua
115 |     }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSApplication.h:202:48: note: property declared here
200 |
201 | @property (nullable, readonly, weak) NSWindow *mainWindow;
202 | @property (nullable, readonly, weak) NSWindow *keyWindow;
    |                                                `- note: property declared here
203 | @property (getter=isActive, readonly) BOOL active;
204 | @property (getter=isHidden, readonly) BOOL hidden;
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngineCodeBlocks/HighlighterSwiftBridge.swift:113:26: warning: main actor-isolated var 'NSApp' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
109 |     }
110 |
111 |     private func isDarkAppearance() -> Bool {
    |                  `- note: add '@MainActor' to make instance method 'isDarkAppearance()' part of global actor 'MainActor'
112 |         guard autoSwitchAppearance else { return false }
113 |         let appearance = NSApp.keyWindow?.effectiveAppearance ?? NSApp.effectiveAppearance
    |                          `- warning: main actor-isolated var 'NSApp' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
114 |         return appearance.bestMatch(from: [.darkAqua, .aqua]) == .darkAqua
115 |     }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSApplication.h:191:58: note: var declared here
189 | @interface NSApplication : NSResponder <NSUserInterfaceValidations, NSMenuItemValidation, NSAccessibilityElement, NSAccessibility>
190 |
191 | APPKIT_EXTERN __kindof NSApplication * _Null_unspecified NSApp NS_SWIFT_UI_ACTOR;
    |                                                          `- note: var declared here
192 |
193 | @property (class, readonly, strong) __kindof NSApplication *sharedApplication;
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngineCodeBlocks/HighlighterSwiftBridge.swift:113:72: warning: main actor-isolated property 'effectiveAppearance' can not be referenced from a nonisolated autoclosure; this is an error in the Swift 6 language mode
111 |     private func isDarkAppearance() -> Bool {
112 |         guard autoSwitchAppearance else { return false }
113 |         let appearance = NSApp.keyWindow?.effectiveAppearance ?? NSApp.effectiveAppearance
    |                                                                        `- warning: main actor-isolated property 'effectiveAppearance' can not be referenced from a nonisolated autoclosure; this is an error in the Swift 6 language mode
114 |         return appearance.bestMatch(from: [.darkAqua, .aqua]) == .darkAqua
115 |     }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSApplication.h:342:44: note: property declared here
340 | #pragma clang diagnostic ignored "-Wavailability"
341 | @property (nullable, strong) NSAppearance *appearance API_AVAILABLE(macos(10.14));
342 | @property (readonly, strong) NSAppearance *effectiveAppearance API_AVAILABLE(macos(10.14));
    |                                            `- note: property declared here
343 | #pragma clang diagnostic pop
344 | @end
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngineCodeBlocks/HighlighterSwiftBridge.swift:113:66: warning: main actor-isolated var 'NSApp' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
111 |     private func isDarkAppearance() -> Bool {
112 |         guard autoSwitchAppearance else { return false }
113 |         let appearance = NSApp.keyWindow?.effectiveAppearance ?? NSApp.effectiveAppearance
    |                                                                  `- warning: main actor-isolated var 'NSApp' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
114 |         return appearance.bestMatch(from: [.darkAqua, .aqua]) == .darkAqua
115 |     }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSApplication.h:191:58: note: var declared here
189 | @interface NSApplication : NSResponder <NSUserInterfaceValidations, NSMenuItemValidation, NSAccessibilityElement, NSAccessibility>
190 |
191 | APPKIT_EXTERN __kindof NSApplication * _Null_unspecified NSApp NS_SWIFT_UI_ACTOR;
    |                                                          `- note: var declared here
192 |
193 | @property (class, readonly, strong) __kindof NSApplication *sharedApplication;
[375/377] Emitting module MarkdownEngineCodeBlocks
[376/377] Compiling MarkdownEngineLatex SwiftMathBridge.swift
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngineLatex/SwiftMathBridge.swift:64:22: warning: main actor-isolated default value in a nonisolated context; this is an error in the Swift 6 language mode
 62 |     /// init, so a fresh label per formula doubles the per-formula label overhead.
 63 |     /// render() is main-thread-only (it reads NSApp), so a single shared label is safe.
 64 |     private lazy var reusableLabel = MTMathUILabel()
    |                      `- warning: main actor-isolated default value in a nonisolated context; this is an error in the Swift 6 language mode
 65 |
 66 |     /// - Parameter singleLetterPaddingBottom: Extra bottom padding (in
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngineLatex/SwiftMathBridge.swift:110:43: warning: main actor-isolated property 'effectiveAppearance' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 99 |     }
100 |
101 |     public func render(
    |                 `- note: add '@MainActor' to make instance method 'render(latex:mode:fontSize:theme:)' part of global actor 'MainActor'
102 |         latex: String,
103 |         mode: LatexRenderMode,
    :
108 |         guard !normalizedLatex.isEmpty else { return nil }
109 |
110 |         let appearance = NSApp.keyWindow?.effectiveAppearance ?? NSApp.effectiveAppearance
    |                                           `- warning: main actor-isolated property 'effectiveAppearance' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
111 |         let isDarkMode = appearance.bestMatch(from: [.darkAqua, .aqua]) == .darkAqua
112 |         let textColor = isDarkMode ? theme.latexDarkModeText : theme.latexLightModeText
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSAppearance.h:90:44: note: property declared here
88 | /* This returns the appearance that would be used when drawing the receiver, taking inherited appearances into account.
89 |  */
90 | @property (readonly, strong) NSAppearance *effectiveAppearance API_AVAILABLE(macos(10.9));
   |                                            `- note: property declared here
91 |
92 | @end
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngineLatex/SwiftMathBridge.swift:110:32: warning: main actor-isolated property 'keyWindow' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 99 |     }
100 |
101 |     public func render(
    |                 `- note: add '@MainActor' to make instance method 'render(latex:mode:fontSize:theme:)' part of global actor 'MainActor'
102 |         latex: String,
103 |         mode: LatexRenderMode,
    :
108 |         guard !normalizedLatex.isEmpty else { return nil }
109 |
110 |         let appearance = NSApp.keyWindow?.effectiveAppearance ?? NSApp.effectiveAppearance
    |                                `- warning: main actor-isolated property 'keyWindow' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
111 |         let isDarkMode = appearance.bestMatch(from: [.darkAqua, .aqua]) == .darkAqua
112 |         let textColor = isDarkMode ? theme.latexDarkModeText : theme.latexLightModeText
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSApplication.h:202:48: note: property declared here
200 |
201 | @property (nullable, readonly, weak) NSWindow *mainWindow;
202 | @property (nullable, readonly, weak) NSWindow *keyWindow;
    |                                                `- note: property declared here
203 | @property (getter=isActive, readonly) BOOL active;
204 | @property (getter=isHidden, readonly) BOOL hidden;
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngineLatex/SwiftMathBridge.swift:110:26: warning: main actor-isolated var 'NSApp' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 99 |     }
100 |
101 |     public func render(
    |                 `- note: add '@MainActor' to make instance method 'render(latex:mode:fontSize:theme:)' part of global actor 'MainActor'
102 |         latex: String,
103 |         mode: LatexRenderMode,
    :
108 |         guard !normalizedLatex.isEmpty else { return nil }
109 |
110 |         let appearance = NSApp.keyWindow?.effectiveAppearance ?? NSApp.effectiveAppearance
    |                          `- warning: main actor-isolated var 'NSApp' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
111 |         let isDarkMode = appearance.bestMatch(from: [.darkAqua, .aqua]) == .darkAqua
112 |         let textColor = isDarkMode ? theme.latexDarkModeText : theme.latexLightModeText
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSApplication.h:191:58: note: var declared here
189 | @interface NSApplication : NSResponder <NSUserInterfaceValidations, NSMenuItemValidation, NSAccessibilityElement, NSAccessibility>
190 |
191 | APPKIT_EXTERN __kindof NSApplication * _Null_unspecified NSApp NS_SWIFT_UI_ACTOR;
    |                                                          `- note: var declared here
192 |
193 | @property (class, readonly, strong) __kindof NSApplication *sharedApplication;
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngineLatex/SwiftMathBridge.swift:110:72: warning: main actor-isolated property 'effectiveAppearance' can not be referenced from a nonisolated autoclosure; this is an error in the Swift 6 language mode
108 |         guard !normalizedLatex.isEmpty else { return nil }
109 |
110 |         let appearance = NSApp.keyWindow?.effectiveAppearance ?? NSApp.effectiveAppearance
    |                                                                        `- warning: main actor-isolated property 'effectiveAppearance' can not be referenced from a nonisolated autoclosure; this is an error in the Swift 6 language mode
111 |         let isDarkMode = appearance.bestMatch(from: [.darkAqua, .aqua]) == .darkAqua
112 |         let textColor = isDarkMode ? theme.latexDarkModeText : theme.latexLightModeText
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSApplication.h:342:44: note: property declared here
340 | #pragma clang diagnostic ignored "-Wavailability"
341 | @property (nullable, strong) NSAppearance *appearance API_AVAILABLE(macos(10.14));
342 | @property (readonly, strong) NSAppearance *effectiveAppearance API_AVAILABLE(macos(10.14));
    |                                            `- note: property declared here
343 | #pragma clang diagnostic pop
344 | @end
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngineLatex/SwiftMathBridge.swift:110:66: warning: main actor-isolated var 'NSApp' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
108 |         guard !normalizedLatex.isEmpty else { return nil }
109 |
110 |         let appearance = NSApp.keyWindow?.effectiveAppearance ?? NSApp.effectiveAppearance
    |                                                                  `- warning: main actor-isolated var 'NSApp' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
111 |         let isDarkMode = appearance.bestMatch(from: [.darkAqua, .aqua]) == .darkAqua
112 |         let textColor = isDarkMode ? theme.latexDarkModeText : theme.latexLightModeText
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSApplication.h:191:58: note: var declared here
189 | @interface NSApplication : NSResponder <NSUserInterfaceValidations, NSMenuItemValidation, NSAccessibilityElement, NSAccessibility>
190 |
191 | APPKIT_EXTERN __kindof NSApplication * _Null_unspecified NSApp NS_SWIFT_UI_ACTOR;
    |                                                          `- note: var declared here
192 |
193 | @property (class, readonly, strong) __kindof NSApplication *sharedApplication;
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngineLatex/SwiftMathBridge.swift:228:19: warning: main actor-isolated property 'latex' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
217 |     }
218 |
219 |     private func renderLatex(
    |                  `- note: add '@MainActor' to make instance method 'renderLatex(_:mode:fontSize:textColor:)' part of global actor 'MainActor'
220 |         _ latex: String,
221 |         mode: LatexRenderMode,
    :
226 |         // stale state carries between formulas.
227 |         let mathLabel = reusableLabel
228 |         mathLabel.latex = latex
    |                   `- warning: main actor-isolated property 'latex' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
229 |         mathLabel.fontSize = fontSize
230 |         mathLabel.textColor = textColor
/Users/admin/builder/spi-builder-workspace/.build/checkouts/SwiftMath/Sources/SwiftMath/MathRender/MTMathUILabel.swift:76:16: note: mutation of this property is only permitted within the actor
 74 |      @see error */
 75 |     @IBInspectable
 76 |     public var latex:String {
    |                `- note: mutation of this property is only permitted within the actor
 77 |         set {
 78 |             _latex = newValue
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngineLatex/SwiftMathBridge.swift:229:19: warning: main actor-isolated property 'fontSize' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
217 |     }
218 |
219 |     private func renderLatex(
    |                  `- note: add '@MainActor' to make instance method 'renderLatex(_:mode:fontSize:textColor:)' part of global actor 'MainActor'
220 |         _ latex: String,
221 |         mode: LatexRenderMode,
    :
227 |         let mathLabel = reusableLabel
228 |         mathLabel.latex = latex
229 |         mathLabel.fontSize = fontSize
    |                   `- warning: main actor-isolated property 'fontSize' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
230 |         mathLabel.textColor = textColor
231 |         mathLabel.textAlignment = .left
/Users/admin/builder/spi-builder-workspace/.build/checkouts/SwiftMath/Sources/SwiftMath/MathRender/MTMathUILabel.swift:119:16: note: mutation of this property is only permitted within the actor
117 |     /** Convenience method to just set the size of the font without changing the fontface. */
118 |     @IBInspectable
119 |     public var fontSize:CGFloat {
    |                `- note: mutation of this property is only permitted within the actor
120 |         set {
121 |             _fontSize = newValue
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngineLatex/SwiftMathBridge.swift:230:19: warning: main actor-isolated property 'textColor' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
217 |     }
218 |
219 |     private func renderLatex(
    |                  `- note: add '@MainActor' to make instance method 'renderLatex(_:mode:fontSize:textColor:)' part of global actor 'MainActor'
220 |         _ latex: String,
221 |         mode: LatexRenderMode,
    :
228 |         mathLabel.latex = latex
229 |         mathLabel.fontSize = fontSize
230 |         mathLabel.textColor = textColor
    |                   `- warning: main actor-isolated property 'textColor' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
231 |         mathLabel.textAlignment = .left
232 |         mathLabel.labelMode = mode == .display ? .display : .text
/Users/admin/builder/spi-builder-workspace/.build/checkouts/SwiftMath/Sources/SwiftMath/MathRender/MTMathUILabel.swift:131:16: note: mutation of this property is only permitted within the actor
129 |     /** This sets the text color of the rendered math formula. The default color is black. */
130 |     @IBInspectable
131 |     public var textColor:MTColor? {
    |                `- note: mutation of this property is only permitted within the actor
132 |         set {
133 |             guard newValue != nil else { return }
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngineLatex/SwiftMathBridge.swift:231:19: warning: main actor-isolated property 'textAlignment' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
217 |     }
218 |
219 |     private func renderLatex(
    |                  `- note: add '@MainActor' to make instance method 'renderLatex(_:mode:fontSize:textColor:)' part of global actor 'MainActor'
220 |         _ latex: String,
221 |         mode: LatexRenderMode,
    :
229 |         mathLabel.fontSize = fontSize
230 |         mathLabel.textColor = textColor
231 |         mathLabel.textAlignment = .left
    |                   `- warning: main actor-isolated property 'textAlignment' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
232 |         mathLabel.labelMode = mode == .display ? .display : .text
233 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/SwiftMath/Sources/SwiftMath/MathRender/MTMathUILabel.swift:169:16: note: mutation of this property is only permitted within the actor
167 |
168 |     /** Horizontal alignment for the text. The default is align left. */
169 |     public var textAlignment:MTTextAlignment {
    |                `- note: mutation of this property is only permitted within the actor
170 |         set {
171 |             _textAlignment = newValue
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngineLatex/SwiftMathBridge.swift:232:19: warning: main actor-isolated property 'labelMode' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
217 |     }
218 |
219 |     private func renderLatex(
    |                  `- note: add '@MainActor' to make instance method 'renderLatex(_:mode:fontSize:textColor:)' part of global actor 'MainActor'
220 |         _ latex: String,
221 |         mode: LatexRenderMode,
    :
230 |         mathLabel.textColor = textColor
231 |         mathLabel.textAlignment = .left
232 |         mathLabel.labelMode = mode == .display ? .display : .text
    |                   `- warning: main actor-isolated property 'labelMode' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
233 |
234 |         // Latin Modern Math gives the cleanest LaTeX glyphs at typical sizes.
/Users/admin/builder/spi-builder-workspace/.build/checkouts/SwiftMath/Sources/SwiftMath/MathRender/MTMathUILabel.swift:158:16: note: mutation of this property is only permitted within the actor
156 |
157 |     /** The Label mode for the label. The default mode is Display */
158 |     public var labelMode:MTMathUILabelMode {
    |                `- note: mutation of this property is only permitted within the actor
159 |         set {
160 |             _labelMode = newValue
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngineLatex/SwiftMathBridge.swift:236:23: warning: main actor-isolated property 'font' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
217 |     }
218 |
219 |     private func renderLatex(
    |                  `- note: add '@MainActor' to make instance method 'renderLatex(_:mode:fontSize:textColor:)' part of global actor 'MainActor'
220 |         _ latex: String,
221 |         mode: LatexRenderMode,
    :
234 |         // Latin Modern Math gives the cleanest LaTeX glyphs at typical sizes.
235 |         if let mathFont = MTFontManager().font(withName: "latinmodern-math", size: fontSize) {
236 |             mathLabel.font = mathFont
    |                       `- warning: main actor-isolated property 'font' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
237 |         }
238 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/SwiftMath/Sources/SwiftMath/MathRender/MTMathUILabel.swift:106:16: note: mutation of this property is only permitted within the actor
104 |
105 |     /** The MTFont to use for rendering. */
106 |     public var font:MTFont? {
    |                `- note: mutation of this property is only permitted within the actor
107 |         set {
108 |             guard newValue != nil else { return }
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngineLatex/SwiftMathBridge.swift:239:19: warning: call to main actor-isolated instance method 'layoutSubtreeIfNeeded()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
217 |     }
218 |
219 |     private func renderLatex(
    |                  `- note: add '@MainActor' to make instance method 'renderLatex(_:mode:fontSize:textColor:)' part of global actor 'MainActor'
220 |         _ latex: String,
221 |         mode: LatexRenderMode,
    :
237 |         }
238 |
239 |         mathLabel.layoutSubtreeIfNeeded()
    |                   `- warning: call to main actor-isolated instance method 'layoutSubtreeIfNeeded()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
240 |
241 |         guard let displayList = mathLabel.displayList else { return nil }
AppKit.NSView.layoutSubtreeIfNeeded:3:24: note: calls to instance method 'layoutSubtreeIfNeeded()' from outside of its actor context are implicitly asynchronous
1 | class NSView {
2 | @available(macOS 10.7, *)
3 |   @MainActor open func layoutSubtreeIfNeeded()}
  |                        |- note: calls to instance method 'layoutSubtreeIfNeeded()' from outside of its actor context are implicitly asynchronous
  |                        `- note: main actor isolation inferred from inheritance from class 'NSResponder'
4 |
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngineLatex/SwiftMathBridge.swift:241:43: warning: main actor-isolated property 'displayList' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
217 |     }
218 |
219 |     private func renderLatex(
    |                  `- note: add '@MainActor' to make instance method 'renderLatex(_:mode:fontSize:textColor:)' part of global actor 'MainActor'
220 |         _ latex: String,
221 |         mode: LatexRenderMode,
    :
239 |         mathLabel.layoutSubtreeIfNeeded()
240 |
241 |         guard let displayList = mathLabel.displayList else { return nil }
    |                                           `- warning: main actor-isolated property 'displayList' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
242 |
243 |         // SwiftMath skips unsupported glyphs (e.g. emoji/raw Greek), which can yield
/Users/admin/builder/spi-builder-workspace/.build/checkouts/SwiftMath/Sources/SwiftMath/MathRender/MTMathUILabel.swift:180:16: note: property declared here
178 |
179 |     /** The internal display of the MTMathUILabel. This is for advanced use only. */
180 |     public var displayList: MTMathListDisplay? { _displayList }
    |                `- note: property declared here
181 |     private var _displayList:MTMathListDisplay?
182 |
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngineLatex/SwiftMathBridge.swift:295:15: warning: main actor-isolated property 'frame' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
288 |     }
289 |
290 |     private func renderLabelToRep(_ label: MTMathUILabel, size: CGSize) -> NSBitmapImageRep? {
    |                  `- note: add '@MainActor' to make instance method 'renderLabelToRep(_:size:)' part of global actor 'MainActor'
291 |         // `bitmapImageRepForCachingDisplay` + `cacheDisplay(in:to:)` is the
292 |         // documented way to snapshot an NSView that isn't in a window. Setting
293 |         // `wantsLayer = true` and `layer.render(in:)` snapshots the (empty)
294 |         // backing layer instead of triggering MTMathUILabel's `draw(_:)`.
295 |         label.frame = CGRect(origin: .zero, size: size)
    |               `- warning: main actor-isolated property 'frame' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
296 |         label.layoutSubtreeIfNeeded()
297 |
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSView.h:129:18: note: mutation of this property is only permitted within the actor
127 | - (void)setFrameOrigin:(NSPoint)newOrigin;
128 | - (void)setFrameSize:(NSSize)newSize;
129 | @property NSRect frame;
    |                  `- note: mutation of this property is only permitted within the actor
130 | @property CGFloat frameRotation;
131 | @property CGFloat frameCenterRotation API_AVAILABLE(macos(10.5));
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngineLatex/SwiftMathBridge.swift:296:15: warning: call to main actor-isolated instance method 'layoutSubtreeIfNeeded()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
288 |     }
289 |
290 |     private func renderLabelToRep(_ label: MTMathUILabel, size: CGSize) -> NSBitmapImageRep? {
    |                  `- note: add '@MainActor' to make instance method 'renderLabelToRep(_:size:)' part of global actor 'MainActor'
291 |         // `bitmapImageRepForCachingDisplay` + `cacheDisplay(in:to:)` is the
292 |         // documented way to snapshot an NSView that isn't in a window. Setting
    :
294 |         // backing layer instead of triggering MTMathUILabel's `draw(_:)`.
295 |         label.frame = CGRect(origin: .zero, size: size)
296 |         label.layoutSubtreeIfNeeded()
    |               `- warning: call to main actor-isolated instance method 'layoutSubtreeIfNeeded()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
297 |
298 |         guard let rep = label.bitmapImageRepForCachingDisplay(in: label.bounds) else { return nil }
AppKit.NSView.layoutSubtreeIfNeeded:3:24: note: calls to instance method 'layoutSubtreeIfNeeded()' from outside of its actor context are implicitly asynchronous
1 | class NSView {
2 | @available(macOS 10.7, *)
3 |   @MainActor open func layoutSubtreeIfNeeded()}
  |                        |- note: calls to instance method 'layoutSubtreeIfNeeded()' from outside of its actor context are implicitly asynchronous
  |                        `- note: main actor isolation inferred from inheritance from class 'NSResponder'
4 |
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngineLatex/SwiftMathBridge.swift:298:31: warning: call to main actor-isolated instance method 'bitmapImageRepForCachingDisplay(in:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
288 |     }
289 |
290 |     private func renderLabelToRep(_ label: MTMathUILabel, size: CGSize) -> NSBitmapImageRep? {
    |                  `- note: add '@MainActor' to make instance method 'renderLabelToRep(_:size:)' part of global actor 'MainActor'
291 |         // `bitmapImageRepForCachingDisplay` + `cacheDisplay(in:to:)` is the
292 |         // documented way to snapshot an NSView that isn't in a window. Setting
    :
296 |         label.layoutSubtreeIfNeeded()
297 |
298 |         guard let rep = label.bitmapImageRepForCachingDisplay(in: label.bounds) else { return nil }
    |                               `- warning: call to main actor-isolated instance method 'bitmapImageRepForCachingDisplay(in:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
299 |         label.cacheDisplay(in: label.bounds, to: rep)
300 |         return rep
AppKit.NSView.bitmapImageRepForCachingDisplay:2:22: note: calls to instance method 'bitmapImageRepForCachingDisplay(in:)' from outside of its actor context are implicitly asynchronous
1 | class NSView {
2 | @MainActor open func bitmapImageRepForCachingDisplay(in rect: NSRect) -> NSBitmapImageRep?}
  |                      |- note: calls to instance method 'bitmapImageRepForCachingDisplay(in:)' from outside of its actor context are implicitly asynchronous
  |                      `- note: main actor isolation inferred from inheritance from class 'NSResponder'
3 |
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngineLatex/SwiftMathBridge.swift:298:73: warning: main actor-isolated property 'bounds' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
288 |     }
289 |
290 |     private func renderLabelToRep(_ label: MTMathUILabel, size: CGSize) -> NSBitmapImageRep? {
    |                  `- note: add '@MainActor' to make instance method 'renderLabelToRep(_:size:)' part of global actor 'MainActor'
291 |         // `bitmapImageRepForCachingDisplay` + `cacheDisplay(in:to:)` is the
292 |         // documented way to snapshot an NSView that isn't in a window. Setting
    :
296 |         label.layoutSubtreeIfNeeded()
297 |
298 |         guard let rep = label.bitmapImageRepForCachingDisplay(in: label.bounds) else { return nil }
    |                                                                         `- warning: main actor-isolated property 'bounds' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
299 |         label.cacheDisplay(in: label.bounds, to: rep)
300 |         return rep
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSView.h:139:18: note: property declared here
137 | - (void)scaleUnitSquareToSize:(NSSize)newUnitSize;
138 | - (void)rotateByAngle:(CGFloat)angle;
139 | @property NSRect bounds;
    |                  `- note: property declared here
140 |
141 | @property (getter=isFlipped, readonly) BOOL flipped;
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngineLatex/SwiftMathBridge.swift:299:15: warning: call to main actor-isolated instance method 'cacheDisplay(in:to:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
288 |     }
289 |
290 |     private func renderLabelToRep(_ label: MTMathUILabel, size: CGSize) -> NSBitmapImageRep? {
    |                  `- note: add '@MainActor' to make instance method 'renderLabelToRep(_:size:)' part of global actor 'MainActor'
291 |         // `bitmapImageRepForCachingDisplay` + `cacheDisplay(in:to:)` is the
292 |         // documented way to snapshot an NSView that isn't in a window. Setting
    :
297 |
298 |         guard let rep = label.bitmapImageRepForCachingDisplay(in: label.bounds) else { return nil }
299 |         label.cacheDisplay(in: label.bounds, to: rep)
    |               `- warning: call to main actor-isolated instance method 'cacheDisplay(in:to:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
300 |         return rep
301 |     }
AppKit.NSView.cacheDisplay:2:22: note: calls to instance method 'cacheDisplay(in:to:)' from outside of its actor context are implicitly asynchronous
1 | class NSView {
2 | @MainActor open func cacheDisplay(in rect: NSRect, to bitmapImageRep: NSBitmapImageRep)}
  |                      |- note: calls to instance method 'cacheDisplay(in:to:)' from outside of its actor context are implicitly asynchronous
  |                      `- note: main actor isolation inferred from inheritance from class 'NSResponder'
3 |
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngineLatex/SwiftMathBridge.swift:299:38: warning: main actor-isolated property 'bounds' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
288 |     }
289 |
290 |     private func renderLabelToRep(_ label: MTMathUILabel, size: CGSize) -> NSBitmapImageRep? {
    |                  `- note: add '@MainActor' to make instance method 'renderLabelToRep(_:size:)' part of global actor 'MainActor'
291 |         // `bitmapImageRepForCachingDisplay` + `cacheDisplay(in:to:)` is the
292 |         // documented way to snapshot an NSView that isn't in a window. Setting
    :
297 |
298 |         guard let rep = label.bitmapImageRepForCachingDisplay(in: label.bounds) else { return nil }
299 |         label.cacheDisplay(in: label.bounds, to: rep)
    |                                      `- warning: main actor-isolated property 'bounds' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
300 |         return rep
301 |     }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSView.h:139:18: note: property declared here
137 | - (void)scaleUnitSquareToSize:(NSSize)newUnitSize;
138 | - (void)rotateByAngle:(CGFloat)angle;
139 | @property NSRect bounds;
    |                  `- note: property declared here
140 |
141 | @property (getter=isFlipped, readonly) BOOL flipped;
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngineLatex/SwiftMathBridge.swift:299:15: warning: sending 'rep' risks causing data races; this is an error in the Swift 6 language mode
297 |
298 |         guard let rep = label.bitmapImageRepForCachingDisplay(in: label.bounds) else { return nil }
299 |         label.cacheDisplay(in: label.bounds, to: rep)
    |               |- warning: sending 'rep' risks causing data races; this is an error in the Swift 6 language mode
    |               `- note: sending 'rep' to main actor-isolated instance method 'cacheDisplay(in:to:)' risks causing data races between main actor-isolated and local nonisolated uses
300 |         return rep
    |                `- note: access can happen concurrently
301 |     }
302 |
[377/377] Emitting module MarkdownEngineLatex
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngineLatex/SwiftMathBridge.swift:64:22: warning: main actor-isolated default value in a nonisolated context; this is an error in the Swift 6 language mode
 62 |     /// init, so a fresh label per formula doubles the per-formula label overhead.
 63 |     /// render() is main-thread-only (it reads NSApp), so a single shared label is safe.
 64 |     private lazy var reusableLabel = MTMathUILabel()
    |                      `- warning: main actor-isolated default value in a nonisolated context; this is an error in the Swift 6 language mode
 65 |
 66 |     /// - Parameter singleLetterPaddingBottom: Extra bottom padding (in
Build complete! (22.13s)
Fetching https://github.com/mgriebling/SwiftMath
Fetching https://github.com/smittytone/HighlighterSwift
[1/1377] Fetching highlighterswift
[15/3746] Fetching highlighterswift, swiftmath
Fetched https://github.com/smittytone/HighlighterSwift from cache (2.12s)
Fetched https://github.com/mgriebling/SwiftMath from cache (2.13s)
Computing version for https://github.com/mgriebling/SwiftMath
Computed https://github.com/mgriebling/SwiftMath at 1.7.3 (5.48s)
Computing version for https://github.com/smittytone/HighlighterSwift
Computed https://github.com/smittytone/HighlighterSwift at 3.1.0 (0.53s)
Creating working copy for https://github.com/mgriebling/SwiftMath
Working copy of https://github.com/mgriebling/SwiftMath resolved at 1.7.3
Creating working copy for https://github.com/smittytone/HighlighterSwift
Working copy of https://github.com/smittytone/HighlighterSwift resolved at 3.1.0
Build complete.
{
  "dependencies" : [
    {
      "identity" : "highlighterswift",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "3.0.0",
            "upper_bound" : "4.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/smittytone/HighlighterSwift"
    },
    {
      "identity" : "swiftmath",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.7.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/mgriebling/SwiftMath"
    }
  ],
  "manifest_display_name" : "MarkdownEngine",
  "name" : "MarkdownEngine",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "14.0"
    }
  ],
  "products" : [
    {
      "name" : "MarkdownEngine",
      "targets" : [
        "MarkdownEngine"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "MarkdownEngineCodeBlocks",
      "targets" : [
        "MarkdownEngineCodeBlocks"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "MarkdownEngineLatex",
      "targets" : [
        "MarkdownEngineLatex"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "MarkdownEngineTests",
      "module_type" : "SwiftTarget",
      "name" : "MarkdownEngineTests",
      "path" : "Tests/MarkdownEngineTests",
      "sources" : [
        "ASTPipelineTests.swift",
        "BacktickCensusTests.swift",
        "BlockBackgroundFillTests.swift",
        "BlockExtensionTests.swift",
        "BlockParserTests.swift",
        "BlockquotePasteTests.swift",
        "BottomOverscrollPolicyTests.swift",
        "CaretColorTests.swift",
        "ClampedScrollViewElasticityTests.swift",
        "CodeBlockSelectionStaleCacheTests.swift",
        "ContextMenuBindingTests.swift",
        "CorrectionUnderlineTests.swift",
        "DirectiveArgumentTests.swift",
        "DirectiveCompletionCoordinatorTests.swift",
        "DirectiveCompletionTests.swift",
        "DirectiveCompositionTests.swift",
        "DirectiveGlyphTests.swift",
        "DirectiveHTMLTests.swift",
        "DirectiveParserTests.swift",
        "DirectivePerformanceTests.swift",
        "DirectiveStylingTests.swift",
        "DirectiveTestFixtures.swift",
        "FenceInteriorIncrementalTests.swift",
        "FindHighlightRestoreTests.swift",
        "FlattenedRunsTests.swift",
        "FocusBindingTests.swift",
        "FormattingActionTests.swift",
        "GoldenCorpusTests.swift",
        "HTMLToMarkdownConverterTests.swift",
        "HeightBehaviorTests.swift",
        "InlineParserTests.swift",
        "InlineSpanDensityTests.swift",
        "InterceptorStorageSyncTests.swift",
        "InterceptorTrustTests.swift",
        "InvertedIBeamCursorTests.swift",
        "LatexRenderModeTests.swift",
        "ListHandlerCodeContextTests.swift",
        "ListParsingTests.swift",
        "MarkdownASTStylerTests.swift",
        "MarkdownHTMLRendererTests.swift",
        "MarkdownPasteboardWriterTests.swift",
        "MarkdownTextMutationTests.swift",
        "NativeTextViewContainerTests.swift",
        "OrderedListDisplayNumberingTests.swift",
        "ParseIncrementalEquivalenceTests.swift",
        "PasteStructureGuardTests.swift",
        "PerDocumentUndoTests.swift",
        "PrecomputedBlocksTests.swift",
        "QuoteSubstitutionPolicyTests.swift",
        "RawSourceModeTests.swift",
        "RebuildSelectionReplayTests.swift",
        "RestyleApplyEquivalenceTests.swift",
        "ScopedListRestyleEquivalenceTests.swift",
        "ScrollMemoryTests.swift",
        "ScrollingHeaderControllerTests.swift",
        "TableCellSourceTests.swift",
        "TableCellTests.swift",
        "TableHiddenSourceGeometryTests.swift",
        "TableImageCacheTests.swift",
        "TableScopeSkipTests.swift",
        "TableWidthChangeRestyleTests.swift",
        "TableWrappingTests.swift",
        "ThematicBreakMarkTests.swift",
        "WikiLinkIncrementalTests.swift"
      ],
      "target_dependencies" : [
        "MarkdownEngine"
      ],
      "type" : "test"
    },
    {
      "c99name" : "MarkdownEngineLatexTests",
      "module_type" : "SwiftTarget",
      "name" : "MarkdownEngineLatexTests",
      "path" : "Tests/MarkdownEngineLatexTests",
      "sources" : [
        "SwiftMathBridgeModeTests.swift"
      ],
      "target_dependencies" : [
        "MarkdownEngine",
        "MarkdownEngineLatex"
      ],
      "type" : "test"
    },
    {
      "c99name" : "MarkdownEngineLatex",
      "module_type" : "SwiftTarget",
      "name" : "MarkdownEngineLatex",
      "path" : "Sources/MarkdownEngineLatex",
      "product_dependencies" : [
        "SwiftMath"
      ],
      "product_memberships" : [
        "MarkdownEngineLatex"
      ],
      "sources" : [
        "SwiftMathBridge.swift"
      ],
      "target_dependencies" : [
        "MarkdownEngine"
      ],
      "type" : "library"
    },
    {
      "c99name" : "MarkdownEngineCodeBlocks",
      "module_type" : "SwiftTarget",
      "name" : "MarkdownEngineCodeBlocks",
      "path" : "Sources/MarkdownEngineCodeBlocks",
      "product_dependencies" : [
        "Highlighter"
      ],
      "product_memberships" : [
        "MarkdownEngineCodeBlocks"
      ],
      "sources" : [
        "HighlighterSwiftBridge.swift"
      ],
      "target_dependencies" : [
        "MarkdownEngine"
      ],
      "type" : "library"
    },
    {
      "c99name" : "MarkdownEngine",
      "module_type" : "SwiftTarget",
      "name" : "MarkdownEngine",
      "path" : "Sources/MarkdownEngine",
      "product_memberships" : [
        "MarkdownEngine",
        "MarkdownEngineCodeBlocks",
        "MarkdownEngineLatex"
      ],
      "sources" : [
        "Configuration/MarkdownEditorConfiguration.swift",
        "Configuration/MarkdownEditorTheme.swift",
        "Diagnostics/PerfTrace.swift",
        "Directives/BuiltinDirectives.swift",
        "Directives/DirectiveArguments.swift",
        "Directives/DirectiveCompletionScanner.swift",
        "Directives/DirectiveRegistry.swift",
        "Directives/DirectiveScanner.swift",
        "Directives/MarkdownDirective.swift",
        "Extensions/ContainerExtension.swift",
        "Extensions/HighlightExtension.swift",
        "Extensions/MarkdownExtension.swift",
        "Extensions/StrikethroughExtension.swift",
        "Input/MarkdownInputHandler.swift",
        "Input/MarkdownListHandler.swift",
        "Parser/BlockLevelTokenizer.swift",
        "Parser/BlockParser.swift",
        "Parser/BlockScopedTokenizer.swift",
        "Parser/DocumentParseState.swift",
        "Parser/InlineASTAdapter.swift",
        "Parser/InlineParser.swift",
        "Parser/MarkdownAST.swift",
        "Parser/MarkdownDetection.swift",
        "Parser/MarkdownToken.swift",
        "Parser/MarkdownTokenizer.swift",
        "Renderer/EmbeddedImageCache.swift",
        "Renderer/LayoutBridge.swift",
        "Renderer/MarkdownHTMLRenderer.swift",
        "Renderer/MarkdownTextLayoutFragment.swift",
        "Renderer/TaskCheckboxGeometry.swift",
        "Renderer/WideTableOverlay.swift",
        "Services/MarkdownEditorServices.swift",
        "Services/WikiLinkService.swift",
        "Styling/HeadingHelpers.swift",
        "Styling/MarkdownASTStyler+Directives.swift",
        "Styling/MarkdownASTStyler.swift",
        "Styling/MarkdownStyler+BulletMarkers.swift",
        "Styling/MarkdownStyler+Images.swift",
        "Styling/MarkdownStyler+Latex.swift",
        "Styling/MarkdownStyler+OrderedMarkers.swift",
        "Styling/MarkdownStyler+Tables.swift",
        "Styling/MarkdownStyler+TaskCheckboxes.swift",
        "Styling/MarkdownStyler.swift",
        "Styling/TextStylingService.swift",
        "TextView/BottomOverscrollPolicy.swift",
        "TextView/ClampedScrollView.swift",
        "TextView/CodeBlockButton.swift",
        "TextView/ContextMenu.swift",
        "TextView/Coordinator/NativeTextViewCoordinator+Autocorrect.swift",
        "TextView/Coordinator/NativeTextViewCoordinator+CaretColor.swift",
        "TextView/Coordinator/NativeTextViewCoordinator+CodeBlocks.swift",
        "TextView/Coordinator/NativeTextViewCoordinator+Directives.swift",
        "TextView/Coordinator/NativeTextViewCoordinator+Find.swift",
        "TextView/Coordinator/NativeTextViewCoordinator+InlineSelection.swift",
        "TextView/Coordinator/NativeTextViewCoordinator+Notifications.swift",
        "TextView/Coordinator/NativeTextViewCoordinator+Restyling.swift",
        "TextView/Coordinator/NativeTextViewCoordinator+TextDelegate.swift",
        "TextView/Coordinator/NativeTextViewCoordinator+WikiLinkSnapback.swift",
        "TextView/Coordinator/NativeTextViewCoordinator+WritingTools.swift",
        "TextView/Coordinator/NativeTextViewCoordinator.swift",
        "TextView/HTMLToMarkdownConverter.swift",
        "TextView/MarkdownPasteboardWriter.swift",
        "TextView/MarkdownTextMutation.swift",
        "TextView/NativeTextView/InvertedIBeamCursor.swift",
        "TextView/NativeTextView/NativeTextView+CaretWorkarounds.swift",
        "TextView/NativeTextView/NativeTextView+ClickRemap.swift",
        "TextView/NativeTextView/NativeTextView+CmdReturn.swift",
        "TextView/NativeTextView/NativeTextView+Copy.swift",
        "TextView/NativeTextView/NativeTextView+CorrectionUnderlines.swift",
        "TextView/NativeTextView/NativeTextView+CursorRects.swift",
        "TextView/NativeTextView/NativeTextView+DragSelectBoost.swift",
        "TextView/NativeTextView/NativeTextView+FrameAndOverscroll.swift",
        "TextView/NativeTextView/NativeTextView+PasteHandling.swift",
        "TextView/NativeTextView/NativeTextView+Placeholder.swift",
        "TextView/NativeTextView/NativeTextView+SpellingPolicy.swift",
        "TextView/NativeTextView/NativeTextView+SpellingToggles.swift",
        "TextView/NativeTextView/NativeTextView+TaskCheckbox.swift",
        "TextView/NativeTextView/NativeTextView.swift",
        "TextView/NativeTextViewContainer.swift",
        "TextView/NativeTextViewSelectionTypes.swift",
        "TextView/NativeTextViewWrapper.swift",
        "TextView/PasteboardImageReader.swift",
        "TextView/ScrollingHeaderController.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.9"
}
Done.