The Swift Package Index logo.Swift Package Index

Build Information

Failed to build IBeam, reference main (3eb822), with Swift 6.1 for macOS (SPM) on 28 Apr 2026 18:26:32 UTC.

Build Command

env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64

Build Log

========================================
RunAll
========================================
Builder version: 4.70.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/ChimeHQ/IBeam.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/ChimeHQ/IBeam
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at 3eb8229 move to beginning/end of document with cursor count fixes
Cloned https://github.com/ChimeHQ/IBeam.git
Revision (git rev-parse @):
3eb8229c68a260cf3c353e8c9e23ca25eca5e18b
SUCCESS checkout https://github.com/ChimeHQ/IBeam.git at main
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.1
Building package at path:  $PWD
https://github.com/ChimeHQ/IBeam.git
https://github.com/ChimeHQ/IBeam.git
{
  "dependencies" : [
    {
      "identity" : "rearrange",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "2.1.1",
            "upper_bound" : "3.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/ChimeHQ/Rearrange"
    },
    {
      "identity" : "ligature",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "0.1.1",
            "upper_bound" : "1.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/ChimeHQ/Ligature"
    }
  ],
  "manifest_display_name" : "IBeam",
  "name" : "IBeam",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "12.0"
    },
    {
      "name" : "maccatalyst",
      "version" : "15.0"
    },
    {
      "name" : "ios",
      "version" : "15.0"
    },
    {
      "name" : "visionos",
      "version" : "1.0"
    }
  ],
  "products" : [
    {
      "name" : "IBeam",
      "targets" : [
        "IBeam"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "IBeamTests",
      "module_type" : "SwiftTarget",
      "name" : "IBeamTests",
      "path" : "Tests/IBeamTests",
      "sources" : [
        "MultiCursorStatePerformanceTests.swift",
        "MultiCursorStateTests.swift",
        "PasteboardTests.swift",
        "UndoManagerActionTests.swift"
      ],
      "target_dependencies" : [
        "IBeam"
      ],
      "type" : "test"
    },
    {
      "c99name" : "IBeam",
      "module_type" : "SwiftTarget",
      "name" : "IBeam",
      "path" : "Sources/IBeam",
      "product_dependencies" : [
        "Rearrange",
        "Ligature"
      ],
      "product_memberships" : [
        "IBeam"
      ],
      "sources" : [
        "Cursor.swift",
        "CursorOperation.swift",
        "IBeamTextViewSystem.swift",
        "InputOperation.swift",
        "InputOperationProcessor.swift",
        "MockTextSystem.swift",
        "MultiCursorState.swift",
        "MultiIndicatorView.swift",
        "MutableStringPartialSystem.swift",
        "MutationDelegatingTextSystem.swift",
        "NSAttributedString+layoutDirection.swift",
        "NSResponder+CursorSelectors.swift",
        "Pasteboard+MultipleTextSelection.swift",
        "SelectionSet.swift",
        "TextSystemCursorCoordinator.swift",
        "TextSystemInterface.swift",
        "TextViewIndicatorState.swift",
        "UndoManager+GroupActions.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "6.1"
}
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures
Building for debugging...
[0/5] Write sources
[4/5] Write swift-version-2F0A5646E1D333AE.txt
[6/24] Compiling Rearrange String+NSRange.swift
[7/24] Compiling Rearrange TextRangeCalculating.swift
[8/25] Compiling Rearrange UITextRange+Convenience.swift
[9/25] Compiling Glyph NSTextView+Additions.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
[10/25] Compiling Glyph NSTextRange+NSRange.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
[11/25] Emitting module Rearrange
[12/25] Compiling Rearrange NSTextRange+Bounded.swift
[13/25] Compiling Rearrange RangeMutation.swift
[14/25] Compiling Rearrange Bounded.swift
[15/25] Compiling Rearrange IndexSet+ApplyMutation.swift
[16/25] Compiling Rearrange NSRange+Shift.swift
[17/25] Compiling Rearrange NSRange+Convenience.swift
[18/25] Compiling Glyph NSTextLayoutManager+Additions.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
[19/25] Compiling Glyph NSLayoutManager+Additions.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
[20/25] Compiling Rearrange IndexSet+NSRange.swift
[21/25] Compiling Rearrange NSRange+ApplyMutation.swift
[22/25] Compiling Rearrange NSTextRange+NSRange.swift
[23/25] Compiling Glyph NSTextContainer+Additions.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
[24/25] Emitting module Glyph
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
[25/25] Compiling Glyph NSTextLayoutFragment+Additions.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
[26/35] Compiling Ligature TextInputStringTokenizer.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
[27/36] Compiling Ligature MockTextTokenizer.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
[28/36] Compiling Ligature NSTextSelection+Extensions.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
[29/36] Compiling Ligature TextTokenizer.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
[30/36] Compiling Ligature TextRange+Bounded.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
[31/36] Compiling Ligature SourceTokenizer.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
[32/36] Compiling Ligature Platform.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
[33/36] Emitting module Ligature
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
[34/36] Compiling Ligature TextView+TextRangeCalculating.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
[35/36] Compiling Ligature TextDirection+Extensions.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
[36/36] Compiling Ligature UTF16CodePointTextViewTextTokenizer.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
[37/54] Compiling IBeam TextSystemCursorCoordinator.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
[38/54] Compiling IBeam TextSystemInterface.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
error: emit-module command failed with exit code 1 (use -v to see invocation)
[39/54] Compiling IBeam Pasteboard+MultipleTextSelection.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
[40/54] Compiling IBeam SelectionSet.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
[41/54] Compiling IBeam NSAttributedString+layoutDirection.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
[42/54] Compiling IBeam NSResponder+CursorSelectors.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
[43/54] Compiling IBeam TextViewIndicatorState.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
[44/54] Compiling IBeam Cursor.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
[45/54] Compiling IBeam CursorOperation.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
[46/54] Emitting module IBeam
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:67:32: error: unknown attribute 'MainActor'
 65 | }
 66 |
 67 | extension IBeamTextViewSystem: @MainActor IBeam.TextSystemInterface {
    |                                `- error: unknown attribute 'MainActor'
 68 | 	public typealias TextRange = NSRange
 69 | 	public typealias TextPosition = Int
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:71:14: error: main actor-isolated instance method 'boundingRect(for:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 65 | }
 66 |
 67 | extension IBeamTextViewSystem: @MainActor IBeam.TextSystemInterface {
    |                                                 `- note: add '@preconcurrency' to the 'TextSystemInterface' conformance to defer isolation checking to run time
 68 | 	public typealias TextRange = NSRange
 69 | 	public typealias TextPosition = Int
 70 |
 71 | 	public func boundingRect(for range: NSRange) -> CGRect? {
    |              |- error: main actor-isolated instance method 'boundingRect(for:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'boundingRect(for:)' to make this instance method not isolated to the actor
 72 | 		tokenizer?.boundingRect(for: range)
 73 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:62:7: note: mark the protocol requirement 'boundingRect(for:)' 'async' to allow actor-isolated conformances
 60 | public protocol TextSystemInterface: TextRangeCalculating, AnyObject {
 61 | 	// geometry
 62 | 	func boundingRect(for range: TextRange) -> CGRect?
    |       `- note: mark the protocol requirement 'boundingRect(for:)' 'async' to allow actor-isolated conformances
 63 |
 64 | 	// movement calculation
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:76:14: error: main actor-isolated instance method 'position(from:moving:by:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 74 |
 75 | 	// movement calculation
 76 | 	public func position(from position: TextPosition, moving direction: IBeam.TextDirection, by granularity: IBeam.TextGranularity) -> TextPosition? {
    |              |- error: main actor-isolated instance method 'position(from:moving:by:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'position(from:moving:by:)' to make this instance method not isolated to the actor
 77 | 		let ligGranularity =  Ligature.TextGranularity(granularity)
 78 |
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:65:7: note: mark the protocol requirement 'position(from:moving:by:)' 'async' to allow actor-isolated conformances
 63 |
 64 | 	// movement calculation
 65 | 	func position(from position: Position, moving direction: TextDirection, by granularity: TextGranularity) -> Position?
    |       `- note: mark the protocol requirement 'position(from:moving:by:)' 'async' to allow actor-isolated conformances
 66 | 	func layoutDirection(at position: Position) -> TextLayoutDirection?
 67 |
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:95:14: error: main actor-isolated instance method 'layoutDirection(at:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 93 | 	}
 94 |
 95 | 	public func layoutDirection(at position: TextPosition) -> IBeam.TextLayoutDirection? {
    |              |- error: main actor-isolated instance method 'layoutDirection(at:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'layoutDirection(at:)' to make this instance method not isolated to the actor
 96 | 		partialSystem.layoutDirection(at: position)
 97 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:66:7: note: mark the protocol requirement 'layoutDirection(at:)' 'async' to allow actor-isolated conformances
 64 | 	// movement calculation
 65 | 	func position(from position: Position, moving direction: TextDirection, by granularity: TextGranularity) -> Position?
 66 | 	func layoutDirection(at position: Position) -> TextLayoutDirection?
    |       `- note: mark the protocol requirement 'layoutDirection(at:)' 'async' to allow actor-isolated conformances
 67 |
 68 | 	// content mutation
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:103:14: error: main actor-isolated instance method 'beginEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
101 |
102 | 	// content mutation
103 | 	public func beginEditing() { partialSystem.beginEditing() }
    |              |- error: main actor-isolated instance method 'beginEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'beginEditing()' to make this instance method not isolated to the actor
104 | 	public func endEditing() { partialSystem.endEditing() }
105 |
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:69:7: note: mark the protocol requirement 'beginEditing()' 'async' to allow actor-isolated conformances
 67 |
 68 | 	// content mutation
 69 | 	func beginEditing()
    |       `- note: mark the protocol requirement 'beginEditing()' 'async' to allow actor-isolated conformances
 70 | 	func endEditing()
 71 | 	func applyMutation(_ mutation: TextMutation<TextRange>) throws -> MutationOutput<TextRange>
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:104:14: error: main actor-isolated instance method 'endEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
102 | 	// content mutation
103 | 	public func beginEditing() { partialSystem.beginEditing() }
104 | 	public func endEditing() { partialSystem.endEditing() }
    |              |- error: main actor-isolated instance method 'endEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'endEditing()' to make this instance method not isolated to the actor
105 |
106 | 	public func applyMutation(_ mutation: IBeam.TextMutation<NSRange>) throws -> MutationOutput<NSRange> {
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:70:7: note: mark the protocol requirement 'endEditing()' 'async' to allow actor-isolated conformances
 68 | 	// content mutation
 69 | 	func beginEditing()
 70 | 	func endEditing()
    |       `- note: mark the protocol requirement 'endEditing()' 'async' to allow actor-isolated conformances
 71 | 	func applyMutation(_ mutation: TextMutation<TextRange>) throws -> MutationOutput<TextRange>
 72 | }
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:106:14: error: main actor-isolated instance method 'applyMutation' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
104 | 	public func endEditing() { partialSystem.endEditing() }
105 |
106 | 	public func applyMutation(_ mutation: IBeam.TextMutation<NSRange>) throws -> MutationOutput<NSRange> {
    |              |- error: main actor-isolated instance method 'applyMutation' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'applyMutation' to make this instance method not isolated to the actor
107 | 		partialSystem.applyMutation(mutation, undoManager: undoManager)
108 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:71:7: note: mark the protocol requirement 'applyMutation' 'async' to allow actor-isolated conformances
 69 | 	func beginEditing()
 70 | 	func endEditing()
 71 | 	func applyMutation(_ mutation: TextMutation<TextRange>) throws -> MutationOutput<TextRange>
    |       `- note: mark the protocol requirement 'applyMutation' 'async' to allow actor-isolated conformances
 72 | }
 73 |
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:100:13: error: main actor-isolated property 'endOfDocument' cannot be used to satisfy nonisolated requirement from protocol 'TextRangeCalculating'
 98 |
 99 | 	// range calculation
100 | 	public var endOfDocument: TextPosition { partialSystem.endOfDocument }
    |             `- error: main actor-isolated property 'endOfDocument' cannot be used to satisfy nonisolated requirement from protocol 'TextRangeCalculating'
101 |
102 | 	// content mutation
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Rearrange/Sources/Rearrange/TextRangeCalculating.swift:9:6: note: requirement 'endOfDocument' declared here
  7 |
  8 | 	var beginningOfDocument: Position { get }
  9 | 	var endOfDocument: Position { get }
    |      `- note: requirement 'endOfDocument' declared here
 10 |
 11 | 	func textRange(from start: Position, to end: Position) -> TextRange?
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:13:36: error: unknown attribute 'MainActor'
 11 | /// Useful for testing components that rely on the `TextSystem` protocol.
 12 | @preconcurrency @MainActor
 13 | public final class MockTextSystem: @MainActor TextSystemInterface {
    |                                    `- error: unknown attribute 'MainActor'
 14 | 	public typealias TextRange = NSRange
 15 | 	public typealias TextPosition = Int
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:57:14: error: main actor-isolated instance method 'boundingRect(for:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 11 | /// Useful for testing components that rely on the `TextSystem` protocol.
 12 | @preconcurrency @MainActor
 13 | public final class MockTextSystem: @MainActor TextSystemInterface {
    |                                               `- note: add '@preconcurrency' to the 'TextSystemInterface' conformance to defer isolation checking to run time
 14 | 	public typealias TextRange = NSRange
 15 | 	public typealias TextPosition = Int
    :
 55 | 	}
 56 |
 57 | 	public func boundingRect(for range: NSRange) -> CGRect? {
    |              |- error: main actor-isolated instance method 'boundingRect(for:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'boundingRect(for:)' to make this instance method not isolated to the actor
 58 | 		if case let .boundingRect(value) = responses.first {
 59 | 			responses.removeFirst()
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:62:7: note: mark the protocol requirement 'boundingRect(for:)' 'async' to allow actor-isolated conformances
 60 | public protocol TextSystemInterface: TextRangeCalculating, AnyObject {
 61 | 	// geometry
 62 | 	func boundingRect(for range: TextRange) -> CGRect?
    |       `- note: mark the protocol requirement 'boundingRect(for:)' 'async' to allow actor-isolated conformances
 63 |
 64 | 	// movement calculation
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:68:14: error: main actor-isolated instance method 'position(from:moving:by:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 66 |
 67 | 	// movement calculation
 68 | 	public func position(from position: TextPosition, moving direction: TextDirection, by granularity: TextGranularity) -> TextPosition? {
    |              |- error: main actor-isolated instance method 'position(from:moving:by:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'position(from:moving:by:)' to make this instance method not isolated to the actor
 69 | 		switch responses.removeFirst() {
 70 | 		case let .position(value):
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:65:7: note: mark the protocol requirement 'position(from:moving:by:)' 'async' to allow actor-isolated conformances
 63 |
 64 | 	// movement calculation
 65 | 	func position(from position: Position, moving direction: TextDirection, by granularity: TextGranularity) -> Position?
    |       `- note: mark the protocol requirement 'position(from:moving:by:)' 'async' to allow actor-isolated conformances
 66 | 	func layoutDirection(at position: Position) -> TextLayoutDirection?
 67 |
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:78:14: error: main actor-isolated instance method 'layoutDirection(at:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 76 | 	}
 77 |
 78 | 	public func layoutDirection(at position: TextPosition) -> TextLayoutDirection? {
    |              |- error: main actor-isolated instance method 'layoutDirection(at:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'layoutDirection(at:)' to make this instance method not isolated to the actor
 79 | 		partialSystem.layoutDirection(at: position)
 80 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:66:7: note: mark the protocol requirement 'layoutDirection(at:)' 'async' to allow actor-isolated conformances
 64 | 	// movement calculation
 65 | 	func position(from position: Position, moving direction: TextDirection, by granularity: TextGranularity) -> Position?
 66 | 	func layoutDirection(at position: Position) -> TextLayoutDirection?
    |       `- note: mark the protocol requirement 'layoutDirection(at:)' 'async' to allow actor-isolated conformances
 67 |
 68 | 	// content mutation
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:88:14: error: main actor-isolated instance method 'beginEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 86 |
 87 | 	// content mutation
 88 | 	public func beginEditing() {
    |              |- error: main actor-isolated instance method 'beginEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'beginEditing()' to make this instance method not isolated to the actor
 89 | 		partialSystem.beginEditing()
 90 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:69:7: note: mark the protocol requirement 'beginEditing()' 'async' to allow actor-isolated conformances
 67 |
 68 | 	// content mutation
 69 | 	func beginEditing()
    |       `- note: mark the protocol requirement 'beginEditing()' 'async' to allow actor-isolated conformances
 70 | 	func endEditing()
 71 | 	func applyMutation(_ mutation: TextMutation<TextRange>) throws -> MutationOutput<TextRange>
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:92:14: error: main actor-isolated instance method 'endEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 90 | 	}
 91 |
 92 | 	public func endEditing() {
    |              |- error: main actor-isolated instance method 'endEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'endEditing()' to make this instance method not isolated to the actor
 93 | 		partialSystem.endEditing()
 94 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:70:7: note: mark the protocol requirement 'endEditing()' 'async' to allow actor-isolated conformances
 68 | 	// content mutation
 69 | 	func beginEditing()
 70 | 	func endEditing()
    |       `- note: mark the protocol requirement 'endEditing()' 'async' to allow actor-isolated conformances
 71 | 	func applyMutation(_ mutation: TextMutation<TextRange>) throws -> MutationOutput<TextRange>
 72 | }
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:96:14: error: main actor-isolated instance method 'applyMutation' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 94 | 	}
 95 |
 96 | 	public func applyMutation(_ mutation: TextMutation<TextRange>) -> MutationOutput<TextRange> {
    |              |- error: main actor-isolated instance method 'applyMutation' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'applyMutation' to make this instance method not isolated to the actor
 97 | 		let undoManager = undoManagerProvider?()
 98 |
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:71:7: note: mark the protocol requirement 'applyMutation' 'async' to allow actor-isolated conformances
 69 | 	func beginEditing()
 70 | 	func endEditing()
 71 | 	func applyMutation(_ mutation: TextMutation<TextRange>) throws -> MutationOutput<TextRange>
    |       `- note: mark the protocol requirement 'applyMutation' 'async' to allow actor-isolated conformances
 72 | }
 73 |
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:83:13: error: main actor-isolated property 'endOfDocument' cannot be used to satisfy nonisolated requirement from protocol 'TextRangeCalculating'
 81 |
 82 | 	// range calculation
 83 | 	public var endOfDocument: TextPosition {
    |             `- error: main actor-isolated property 'endOfDocument' cannot be used to satisfy nonisolated requirement from protocol 'TextRangeCalculating'
 84 | 		partialSystem.endOfDocument
 85 | 	}
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Rearrange/Sources/Rearrange/TextRangeCalculating.swift:9:6: note: requirement 'endOfDocument' declared here
  7 |
  8 | 	var beginningOfDocument: Position { get }
  9 | 	var endOfDocument: Position { get }
    |      `- note: requirement 'endOfDocument' declared here
 10 |
 11 | 	func textRange(from start: Position, to end: Position) -> TextRange?
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:103:27: error: unknown attribute 'MainActor'
101 | }
102 |
103 | extension MockTextSystem: @MainActor Equatable {
    |                           `- error: unknown attribute 'MainActor'
104 | 	public static func == (lhs: MockTextSystem, rhs: MockTextSystem) -> Bool {
105 | 		lhs === rhs
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:104:21: error: main actor-isolated operator function '==' cannot be used to satisfy nonisolated requirement from protocol 'Equatable'
101 | }
102 |
103 | extension MockTextSystem: @MainActor Equatable {
    |                                      `- note: add '@preconcurrency' to the 'Equatable' conformance to defer isolation checking to run time
104 | 	public static func == (lhs: MockTextSystem, rhs: MockTextSystem) -> Bool {
    |                     |- error: main actor-isolated operator function '==' cannot be used to satisfy nonisolated requirement from protocol 'Equatable'
    |                     `- note: add 'nonisolated' to '==' to make this operator function not isolated to the actor
105 | 		lhs === rhs
106 | 	}
[47/54] Compiling IBeam MultiCursorState.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MultiCursorState.swift:120:22: warning: no calls to throwing functions occur within 'try' expression
118 | 		let perCursorOp = operation.indexedOperation(for: index)
119 |
120 | 		guard let output = try? processor.apply(perCursorOp, to: cursor, delta: delta) else {
    |                      `- warning: no calls to throwing functions occur within 'try' expression
121 | 			return nil
122 | 		}
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MultiCursorState.swift:143:12: error: call to main actor-isolated instance method 'commitCursorChange(_:affectsContent:)' in a synchronous nonisolated context
136 | 	}
137 |
138 | 	private func commitCursorChange(_ newCursors: [Cursor<System.TextRange>], affectsContent: Bool) {
    |               `- note: calls to instance method 'commitCursorChange(_:affectsContent:)' from outside of its actor context are implicitly asynchronous
139 | 		if let undoManager, affectsContent {
140 | 			nonisolated(unsafe) let cursorSnapshot = cursors
141 |
142 | 			undoManager.registerUndo(withTarget: self) { target in
143 | 				target.commitCursorChange(cursorSnapshot, affectsContent: true)
    |            `- error: call to main actor-isolated instance method 'commitCursorChange(_:affectsContent:)' in a synchronous nonisolated context
144 | 			}
145 | 		}
[48/54] Compiling IBeam MultiIndicatorView.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MultiCursorState.swift:120:22: warning: no calls to throwing functions occur within 'try' expression
118 | 		let perCursorOp = operation.indexedOperation(for: index)
119 |
120 | 		guard let output = try? processor.apply(perCursorOp, to: cursor, delta: delta) else {
    |                      `- warning: no calls to throwing functions occur within 'try' expression
121 | 			return nil
122 | 		}
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MultiCursorState.swift:143:12: error: call to main actor-isolated instance method 'commitCursorChange(_:affectsContent:)' in a synchronous nonisolated context
136 | 	}
137 |
138 | 	private func commitCursorChange(_ newCursors: [Cursor<System.TextRange>], affectsContent: Bool) {
    |               `- note: calls to instance method 'commitCursorChange(_:affectsContent:)' from outside of its actor context are implicitly asynchronous
139 | 		if let undoManager, affectsContent {
140 | 			nonisolated(unsafe) let cursorSnapshot = cursors
141 |
142 | 			undoManager.registerUndo(withTarget: self) { target in
143 | 				target.commitCursorChange(cursorSnapshot, affectsContent: true)
    |            `- error: call to main actor-isolated instance method 'commitCursorChange(_:affectsContent:)' in a synchronous nonisolated context
144 | 			}
145 | 		}
[49/54] Compiling IBeam IBeamTextViewSystem.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:67:32: error: unknown attribute 'MainActor'
 65 | }
 66 |
 67 | extension IBeamTextViewSystem: @MainActor IBeam.TextSystemInterface {
    |                                `- error: unknown attribute 'MainActor'
 68 | 	public typealias TextRange = NSRange
 69 | 	public typealias TextPosition = Int
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:71:14: error: main actor-isolated instance method 'boundingRect(for:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 65 | }
 66 |
 67 | extension IBeamTextViewSystem: @MainActor IBeam.TextSystemInterface {
    |                                                 `- note: add '@preconcurrency' to the 'TextSystemInterface' conformance to defer isolation checking to run time
 68 | 	public typealias TextRange = NSRange
 69 | 	public typealias TextPosition = Int
 70 |
 71 | 	public func boundingRect(for range: NSRange) -> CGRect? {
    |              |- error: main actor-isolated instance method 'boundingRect(for:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'boundingRect(for:)' to make this instance method not isolated to the actor
 72 | 		tokenizer?.boundingRect(for: range)
 73 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:62:7: note: mark the protocol requirement 'boundingRect(for:)' 'async' to allow actor-isolated conformances
 60 | public protocol TextSystemInterface: TextRangeCalculating, AnyObject {
 61 | 	// geometry
 62 | 	func boundingRect(for range: TextRange) -> CGRect?
    |       `- note: mark the protocol requirement 'boundingRect(for:)' 'async' to allow actor-isolated conformances
 63 |
 64 | 	// movement calculation
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:76:14: error: main actor-isolated instance method 'position(from:moving:by:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 74 |
 75 | 	// movement calculation
 76 | 	public func position(from position: TextPosition, moving direction: IBeam.TextDirection, by granularity: IBeam.TextGranularity) -> TextPosition? {
    |              |- error: main actor-isolated instance method 'position(from:moving:by:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'position(from:moving:by:)' to make this instance method not isolated to the actor
 77 | 		let ligGranularity =  Ligature.TextGranularity(granularity)
 78 |
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:65:7: note: mark the protocol requirement 'position(from:moving:by:)' 'async' to allow actor-isolated conformances
 63 |
 64 | 	// movement calculation
 65 | 	func position(from position: Position, moving direction: TextDirection, by granularity: TextGranularity) -> Position?
    |       `- note: mark the protocol requirement 'position(from:moving:by:)' 'async' to allow actor-isolated conformances
 66 | 	func layoutDirection(at position: Position) -> TextLayoutDirection?
 67 |
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:95:14: error: main actor-isolated instance method 'layoutDirection(at:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 93 | 	}
 94 |
 95 | 	public func layoutDirection(at position: TextPosition) -> IBeam.TextLayoutDirection? {
    |              |- error: main actor-isolated instance method 'layoutDirection(at:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'layoutDirection(at:)' to make this instance method not isolated to the actor
 96 | 		partialSystem.layoutDirection(at: position)
 97 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:66:7: note: mark the protocol requirement 'layoutDirection(at:)' 'async' to allow actor-isolated conformances
 64 | 	// movement calculation
 65 | 	func position(from position: Position, moving direction: TextDirection, by granularity: TextGranularity) -> Position?
 66 | 	func layoutDirection(at position: Position) -> TextLayoutDirection?
    |       `- note: mark the protocol requirement 'layoutDirection(at:)' 'async' to allow actor-isolated conformances
 67 |
 68 | 	// content mutation
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:103:14: error: main actor-isolated instance method 'beginEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
101 |
102 | 	// content mutation
103 | 	public func beginEditing() { partialSystem.beginEditing() }
    |              |- error: main actor-isolated instance method 'beginEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'beginEditing()' to make this instance method not isolated to the actor
104 | 	public func endEditing() { partialSystem.endEditing() }
105 |
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:69:7: note: mark the protocol requirement 'beginEditing()' 'async' to allow actor-isolated conformances
 67 |
 68 | 	// content mutation
 69 | 	func beginEditing()
    |       `- note: mark the protocol requirement 'beginEditing()' 'async' to allow actor-isolated conformances
 70 | 	func endEditing()
 71 | 	func applyMutation(_ mutation: TextMutation<TextRange>) throws -> MutationOutput<TextRange>
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:104:14: error: main actor-isolated instance method 'endEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
102 | 	// content mutation
103 | 	public func beginEditing() { partialSystem.beginEditing() }
104 | 	public func endEditing() { partialSystem.endEditing() }
    |              |- error: main actor-isolated instance method 'endEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'endEditing()' to make this instance method not isolated to the actor
105 |
106 | 	public func applyMutation(_ mutation: IBeam.TextMutation<NSRange>) throws -> MutationOutput<NSRange> {
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:70:7: note: mark the protocol requirement 'endEditing()' 'async' to allow actor-isolated conformances
 68 | 	// content mutation
 69 | 	func beginEditing()
 70 | 	func endEditing()
    |       `- note: mark the protocol requirement 'endEditing()' 'async' to allow actor-isolated conformances
 71 | 	func applyMutation(_ mutation: TextMutation<TextRange>) throws -> MutationOutput<TextRange>
 72 | }
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:106:14: error: main actor-isolated instance method 'applyMutation' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
104 | 	public func endEditing() { partialSystem.endEditing() }
105 |
106 | 	public func applyMutation(_ mutation: IBeam.TextMutation<NSRange>) throws -> MutationOutput<NSRange> {
    |              |- error: main actor-isolated instance method 'applyMutation' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'applyMutation' to make this instance method not isolated to the actor
107 | 		partialSystem.applyMutation(mutation, undoManager: undoManager)
108 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:71:7: note: mark the protocol requirement 'applyMutation' 'async' to allow actor-isolated conformances
 69 | 	func beginEditing()
 70 | 	func endEditing()
 71 | 	func applyMutation(_ mutation: TextMutation<TextRange>) throws -> MutationOutput<TextRange>
    |       `- note: mark the protocol requirement 'applyMutation' 'async' to allow actor-isolated conformances
 72 | }
 73 |
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:100:13: error: main actor-isolated property 'endOfDocument' cannot be used to satisfy nonisolated requirement from protocol 'TextRangeCalculating'
 98 |
 99 | 	// range calculation
100 | 	public var endOfDocument: TextPosition { partialSystem.endOfDocument }
    |             `- error: main actor-isolated property 'endOfDocument' cannot be used to satisfy nonisolated requirement from protocol 'TextRangeCalculating'
101 |
102 | 	// content mutation
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Rearrange/Sources/Rearrange/TextRangeCalculating.swift:9:6: note: requirement 'endOfDocument' declared here
  7 |
  8 | 	var beginningOfDocument: Position { get }
  9 | 	var endOfDocument: Position { get }
    |      `- note: requirement 'endOfDocument' declared here
 10 |
 11 | 	func textRange(from start: Position, to end: Position) -> TextRange?
[50/54] Compiling IBeam InputOperation.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:67:32: error: unknown attribute 'MainActor'
 65 | }
 66 |
 67 | extension IBeamTextViewSystem: @MainActor IBeam.TextSystemInterface {
    |                                `- error: unknown attribute 'MainActor'
 68 | 	public typealias TextRange = NSRange
 69 | 	public typealias TextPosition = Int
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:71:14: error: main actor-isolated instance method 'boundingRect(for:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 65 | }
 66 |
 67 | extension IBeamTextViewSystem: @MainActor IBeam.TextSystemInterface {
    |                                                 `- note: add '@preconcurrency' to the 'TextSystemInterface' conformance to defer isolation checking to run time
 68 | 	public typealias TextRange = NSRange
 69 | 	public typealias TextPosition = Int
 70 |
 71 | 	public func boundingRect(for range: NSRange) -> CGRect? {
    |              |- error: main actor-isolated instance method 'boundingRect(for:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'boundingRect(for:)' to make this instance method not isolated to the actor
 72 | 		tokenizer?.boundingRect(for: range)
 73 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:62:7: note: mark the protocol requirement 'boundingRect(for:)' 'async' to allow actor-isolated conformances
 60 | public protocol TextSystemInterface: TextRangeCalculating, AnyObject {
 61 | 	// geometry
 62 | 	func boundingRect(for range: TextRange) -> CGRect?
    |       `- note: mark the protocol requirement 'boundingRect(for:)' 'async' to allow actor-isolated conformances
 63 |
 64 | 	// movement calculation
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:76:14: error: main actor-isolated instance method 'position(from:moving:by:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 74 |
 75 | 	// movement calculation
 76 | 	public func position(from position: TextPosition, moving direction: IBeam.TextDirection, by granularity: IBeam.TextGranularity) -> TextPosition? {
    |              |- error: main actor-isolated instance method 'position(from:moving:by:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'position(from:moving:by:)' to make this instance method not isolated to the actor
 77 | 		let ligGranularity =  Ligature.TextGranularity(granularity)
 78 |
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:65:7: note: mark the protocol requirement 'position(from:moving:by:)' 'async' to allow actor-isolated conformances
 63 |
 64 | 	// movement calculation
 65 | 	func position(from position: Position, moving direction: TextDirection, by granularity: TextGranularity) -> Position?
    |       `- note: mark the protocol requirement 'position(from:moving:by:)' 'async' to allow actor-isolated conformances
 66 | 	func layoutDirection(at position: Position) -> TextLayoutDirection?
 67 |
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:95:14: error: main actor-isolated instance method 'layoutDirection(at:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 93 | 	}
 94 |
 95 | 	public func layoutDirection(at position: TextPosition) -> IBeam.TextLayoutDirection? {
    |              |- error: main actor-isolated instance method 'layoutDirection(at:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'layoutDirection(at:)' to make this instance method not isolated to the actor
 96 | 		partialSystem.layoutDirection(at: position)
 97 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:66:7: note: mark the protocol requirement 'layoutDirection(at:)' 'async' to allow actor-isolated conformances
 64 | 	// movement calculation
 65 | 	func position(from position: Position, moving direction: TextDirection, by granularity: TextGranularity) -> Position?
 66 | 	func layoutDirection(at position: Position) -> TextLayoutDirection?
    |       `- note: mark the protocol requirement 'layoutDirection(at:)' 'async' to allow actor-isolated conformances
 67 |
 68 | 	// content mutation
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:103:14: error: main actor-isolated instance method 'beginEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
101 |
102 | 	// content mutation
103 | 	public func beginEditing() { partialSystem.beginEditing() }
    |              |- error: main actor-isolated instance method 'beginEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'beginEditing()' to make this instance method not isolated to the actor
104 | 	public func endEditing() { partialSystem.endEditing() }
105 |
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:69:7: note: mark the protocol requirement 'beginEditing()' 'async' to allow actor-isolated conformances
 67 |
 68 | 	// content mutation
 69 | 	func beginEditing()
    |       `- note: mark the protocol requirement 'beginEditing()' 'async' to allow actor-isolated conformances
 70 | 	func endEditing()
 71 | 	func applyMutation(_ mutation: TextMutation<TextRange>) throws -> MutationOutput<TextRange>
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:104:14: error: main actor-isolated instance method 'endEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
102 | 	// content mutation
103 | 	public func beginEditing() { partialSystem.beginEditing() }
104 | 	public func endEditing() { partialSystem.endEditing() }
    |              |- error: main actor-isolated instance method 'endEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'endEditing()' to make this instance method not isolated to the actor
105 |
106 | 	public func applyMutation(_ mutation: IBeam.TextMutation<NSRange>) throws -> MutationOutput<NSRange> {
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:70:7: note: mark the protocol requirement 'endEditing()' 'async' to allow actor-isolated conformances
 68 | 	// content mutation
 69 | 	func beginEditing()
 70 | 	func endEditing()
    |       `- note: mark the protocol requirement 'endEditing()' 'async' to allow actor-isolated conformances
 71 | 	func applyMutation(_ mutation: TextMutation<TextRange>) throws -> MutationOutput<TextRange>
 72 | }
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:106:14: error: main actor-isolated instance method 'applyMutation' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
104 | 	public func endEditing() { partialSystem.endEditing() }
105 |
106 | 	public func applyMutation(_ mutation: IBeam.TextMutation<NSRange>) throws -> MutationOutput<NSRange> {
    |              |- error: main actor-isolated instance method 'applyMutation' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'applyMutation' to make this instance method not isolated to the actor
107 | 		partialSystem.applyMutation(mutation, undoManager: undoManager)
108 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:71:7: note: mark the protocol requirement 'applyMutation' 'async' to allow actor-isolated conformances
 69 | 	func beginEditing()
 70 | 	func endEditing()
 71 | 	func applyMutation(_ mutation: TextMutation<TextRange>) throws -> MutationOutput<TextRange>
    |       `- note: mark the protocol requirement 'applyMutation' 'async' to allow actor-isolated conformances
 72 | }
 73 |
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:100:13: error: main actor-isolated property 'endOfDocument' cannot be used to satisfy nonisolated requirement from protocol 'TextRangeCalculating'
 98 |
 99 | 	// range calculation
100 | 	public var endOfDocument: TextPosition { partialSystem.endOfDocument }
    |             `- error: main actor-isolated property 'endOfDocument' cannot be used to satisfy nonisolated requirement from protocol 'TextRangeCalculating'
101 |
102 | 	// content mutation
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Rearrange/Sources/Rearrange/TextRangeCalculating.swift:9:6: note: requirement 'endOfDocument' declared here
  7 |
  8 | 	var beginningOfDocument: Position { get }
  9 | 	var endOfDocument: Position { get }
    |      `- note: requirement 'endOfDocument' declared here
 10 |
 11 | 	func textRange(from start: Position, to end: Position) -> TextRange?
[51/54] Compiling IBeam InputOperationProcessor.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:13:36: error: unknown attribute 'MainActor'
 11 | /// Useful for testing components that rely on the `TextSystem` protocol.
 12 | @preconcurrency @MainActor
 13 | public final class MockTextSystem: @MainActor TextSystemInterface {
    |                                    `- error: unknown attribute 'MainActor'
 14 | 	public typealias TextRange = NSRange
 15 | 	public typealias TextPosition = Int
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:57:14: error: main actor-isolated instance method 'boundingRect(for:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 11 | /// Useful for testing components that rely on the `TextSystem` protocol.
 12 | @preconcurrency @MainActor
 13 | public final class MockTextSystem: @MainActor TextSystemInterface {
    |                                               `- note: add '@preconcurrency' to the 'TextSystemInterface' conformance to defer isolation checking to run time
 14 | 	public typealias TextRange = NSRange
 15 | 	public typealias TextPosition = Int
    :
 55 | 	}
 56 |
 57 | 	public func boundingRect(for range: NSRange) -> CGRect? {
    |              |- error: main actor-isolated instance method 'boundingRect(for:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'boundingRect(for:)' to make this instance method not isolated to the actor
 58 | 		if case let .boundingRect(value) = responses.first {
 59 | 			responses.removeFirst()
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:62:7: note: mark the protocol requirement 'boundingRect(for:)' 'async' to allow actor-isolated conformances
 60 | public protocol TextSystemInterface: TextRangeCalculating, AnyObject {
 61 | 	// geometry
 62 | 	func boundingRect(for range: TextRange) -> CGRect?
    |       `- note: mark the protocol requirement 'boundingRect(for:)' 'async' to allow actor-isolated conformances
 63 |
 64 | 	// movement calculation
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:68:14: error: main actor-isolated instance method 'position(from:moving:by:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 66 |
 67 | 	// movement calculation
 68 | 	public func position(from position: TextPosition, moving direction: TextDirection, by granularity: TextGranularity) -> TextPosition? {
    |              |- error: main actor-isolated instance method 'position(from:moving:by:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'position(from:moving:by:)' to make this instance method not isolated to the actor
 69 | 		switch responses.removeFirst() {
 70 | 		case let .position(value):
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:65:7: note: mark the protocol requirement 'position(from:moving:by:)' 'async' to allow actor-isolated conformances
 63 |
 64 | 	// movement calculation
 65 | 	func position(from position: Position, moving direction: TextDirection, by granularity: TextGranularity) -> Position?
    |       `- note: mark the protocol requirement 'position(from:moving:by:)' 'async' to allow actor-isolated conformances
 66 | 	func layoutDirection(at position: Position) -> TextLayoutDirection?
 67 |
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:78:14: error: main actor-isolated instance method 'layoutDirection(at:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 76 | 	}
 77 |
 78 | 	public func layoutDirection(at position: TextPosition) -> TextLayoutDirection? {
    |              |- error: main actor-isolated instance method 'layoutDirection(at:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'layoutDirection(at:)' to make this instance method not isolated to the actor
 79 | 		partialSystem.layoutDirection(at: position)
 80 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:66:7: note: mark the protocol requirement 'layoutDirection(at:)' 'async' to allow actor-isolated conformances
 64 | 	// movement calculation
 65 | 	func position(from position: Position, moving direction: TextDirection, by granularity: TextGranularity) -> Position?
 66 | 	func layoutDirection(at position: Position) -> TextLayoutDirection?
    |       `- note: mark the protocol requirement 'layoutDirection(at:)' 'async' to allow actor-isolated conformances
 67 |
 68 | 	// content mutation
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:88:14: error: main actor-isolated instance method 'beginEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 86 |
 87 | 	// content mutation
 88 | 	public func beginEditing() {
    |              |- error: main actor-isolated instance method 'beginEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'beginEditing()' to make this instance method not isolated to the actor
 89 | 		partialSystem.beginEditing()
 90 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:69:7: note: mark the protocol requirement 'beginEditing()' 'async' to allow actor-isolated conformances
 67 |
 68 | 	// content mutation
 69 | 	func beginEditing()
    |       `- note: mark the protocol requirement 'beginEditing()' 'async' to allow actor-isolated conformances
 70 | 	func endEditing()
 71 | 	func applyMutation(_ mutation: TextMutation<TextRange>) throws -> MutationOutput<TextRange>
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:92:14: error: main actor-isolated instance method 'endEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 90 | 	}
 91 |
 92 | 	public func endEditing() {
    |              |- error: main actor-isolated instance method 'endEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'endEditing()' to make this instance method not isolated to the actor
 93 | 		partialSystem.endEditing()
 94 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:70:7: note: mark the protocol requirement 'endEditing()' 'async' to allow actor-isolated conformances
 68 | 	// content mutation
 69 | 	func beginEditing()
 70 | 	func endEditing()
    |       `- note: mark the protocol requirement 'endEditing()' 'async' to allow actor-isolated conformances
 71 | 	func applyMutation(_ mutation: TextMutation<TextRange>) throws -> MutationOutput<TextRange>
 72 | }
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:96:14: error: main actor-isolated instance method 'applyMutation' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 94 | 	}
 95 |
 96 | 	public func applyMutation(_ mutation: TextMutation<TextRange>) -> MutationOutput<TextRange> {
    |              |- error: main actor-isolated instance method 'applyMutation' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'applyMutation' to make this instance method not isolated to the actor
 97 | 		let undoManager = undoManagerProvider?()
 98 |
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:71:7: note: mark the protocol requirement 'applyMutation' 'async' to allow actor-isolated conformances
 69 | 	func beginEditing()
 70 | 	func endEditing()
 71 | 	func applyMutation(_ mutation: TextMutation<TextRange>) throws -> MutationOutput<TextRange>
    |       `- note: mark the protocol requirement 'applyMutation' 'async' to allow actor-isolated conformances
 72 | }
 73 |
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:83:13: error: main actor-isolated property 'endOfDocument' cannot be used to satisfy nonisolated requirement from protocol 'TextRangeCalculating'
 81 |
 82 | 	// range calculation
 83 | 	public var endOfDocument: TextPosition {
    |             `- error: main actor-isolated property 'endOfDocument' cannot be used to satisfy nonisolated requirement from protocol 'TextRangeCalculating'
 84 | 		partialSystem.endOfDocument
 85 | 	}
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Rearrange/Sources/Rearrange/TextRangeCalculating.swift:9:6: note: requirement 'endOfDocument' declared here
  7 |
  8 | 	var beginningOfDocument: Position { get }
  9 | 	var endOfDocument: Position { get }
    |      `- note: requirement 'endOfDocument' declared here
 10 |
 11 | 	func textRange(from start: Position, to end: Position) -> TextRange?
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:103:27: error: unknown attribute 'MainActor'
101 | }
102 |
103 | extension MockTextSystem: @MainActor Equatable {
    |                           `- error: unknown attribute 'MainActor'
104 | 	public static func == (lhs: MockTextSystem, rhs: MockTextSystem) -> Bool {
105 | 		lhs === rhs
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:104:21: error: main actor-isolated operator function '==' cannot be used to satisfy nonisolated requirement from protocol 'Equatable'
101 | }
102 |
103 | extension MockTextSystem: @MainActor Equatable {
    |                                      `- note: add '@preconcurrency' to the 'Equatable' conformance to defer isolation checking to run time
104 | 	public static func == (lhs: MockTextSystem, rhs: MockTextSystem) -> Bool {
    |                     |- error: main actor-isolated operator function '==' cannot be used to satisfy nonisolated requirement from protocol 'Equatable'
    |                     `- note: add 'nonisolated' to '==' to make this operator function not isolated to the actor
105 | 		lhs === rhs
106 | 	}
[52/54] Compiling IBeam MockTextSystem.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:13:36: error: unknown attribute 'MainActor'
 11 | /// Useful for testing components that rely on the `TextSystem` protocol.
 12 | @preconcurrency @MainActor
 13 | public final class MockTextSystem: @MainActor TextSystemInterface {
    |                                    `- error: unknown attribute 'MainActor'
 14 | 	public typealias TextRange = NSRange
 15 | 	public typealias TextPosition = Int
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:57:14: error: main actor-isolated instance method 'boundingRect(for:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 11 | /// Useful for testing components that rely on the `TextSystem` protocol.
 12 | @preconcurrency @MainActor
 13 | public final class MockTextSystem: @MainActor TextSystemInterface {
    |                                               `- note: add '@preconcurrency' to the 'TextSystemInterface' conformance to defer isolation checking to run time
 14 | 	public typealias TextRange = NSRange
 15 | 	public typealias TextPosition = Int
    :
 55 | 	}
 56 |
 57 | 	public func boundingRect(for range: NSRange) -> CGRect? {
    |              |- error: main actor-isolated instance method 'boundingRect(for:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'boundingRect(for:)' to make this instance method not isolated to the actor
 58 | 		if case let .boundingRect(value) = responses.first {
 59 | 			responses.removeFirst()
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:62:7: note: mark the protocol requirement 'boundingRect(for:)' 'async' to allow actor-isolated conformances
 60 | public protocol TextSystemInterface: TextRangeCalculating, AnyObject {
 61 | 	// geometry
 62 | 	func boundingRect(for range: TextRange) -> CGRect?
    |       `- note: mark the protocol requirement 'boundingRect(for:)' 'async' to allow actor-isolated conformances
 63 |
 64 | 	// movement calculation
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:68:14: error: main actor-isolated instance method 'position(from:moving:by:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 66 |
 67 | 	// movement calculation
 68 | 	public func position(from position: TextPosition, moving direction: TextDirection, by granularity: TextGranularity) -> TextPosition? {
    |              |- error: main actor-isolated instance method 'position(from:moving:by:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'position(from:moving:by:)' to make this instance method not isolated to the actor
 69 | 		switch responses.removeFirst() {
 70 | 		case let .position(value):
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:65:7: note: mark the protocol requirement 'position(from:moving:by:)' 'async' to allow actor-isolated conformances
 63 |
 64 | 	// movement calculation
 65 | 	func position(from position: Position, moving direction: TextDirection, by granularity: TextGranularity) -> Position?
    |       `- note: mark the protocol requirement 'position(from:moving:by:)' 'async' to allow actor-isolated conformances
 66 | 	func layoutDirection(at position: Position) -> TextLayoutDirection?
 67 |
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:78:14: error: main actor-isolated instance method 'layoutDirection(at:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 76 | 	}
 77 |
 78 | 	public func layoutDirection(at position: TextPosition) -> TextLayoutDirection? {
    |              |- error: main actor-isolated instance method 'layoutDirection(at:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'layoutDirection(at:)' to make this instance method not isolated to the actor
 79 | 		partialSystem.layoutDirection(at: position)
 80 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:66:7: note: mark the protocol requirement 'layoutDirection(at:)' 'async' to allow actor-isolated conformances
 64 | 	// movement calculation
 65 | 	func position(from position: Position, moving direction: TextDirection, by granularity: TextGranularity) -> Position?
 66 | 	func layoutDirection(at position: Position) -> TextLayoutDirection?
    |       `- note: mark the protocol requirement 'layoutDirection(at:)' 'async' to allow actor-isolated conformances
 67 |
 68 | 	// content mutation
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:88:14: error: main actor-isolated instance method 'beginEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 86 |
 87 | 	// content mutation
 88 | 	public func beginEditing() {
    |              |- error: main actor-isolated instance method 'beginEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'beginEditing()' to make this instance method not isolated to the actor
 89 | 		partialSystem.beginEditing()
 90 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:69:7: note: mark the protocol requirement 'beginEditing()' 'async' to allow actor-isolated conformances
 67 |
 68 | 	// content mutation
 69 | 	func beginEditing()
    |       `- note: mark the protocol requirement 'beginEditing()' 'async' to allow actor-isolated conformances
 70 | 	func endEditing()
 71 | 	func applyMutation(_ mutation: TextMutation<TextRange>) throws -> MutationOutput<TextRange>
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:92:14: error: main actor-isolated instance method 'endEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 90 | 	}
 91 |
 92 | 	public func endEditing() {
    |              |- error: main actor-isolated instance method 'endEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'endEditing()' to make this instance method not isolated to the actor
 93 | 		partialSystem.endEditing()
 94 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:70:7: note: mark the protocol requirement 'endEditing()' 'async' to allow actor-isolated conformances
 68 | 	// content mutation
 69 | 	func beginEditing()
 70 | 	func endEditing()
    |       `- note: mark the protocol requirement 'endEditing()' 'async' to allow actor-isolated conformances
 71 | 	func applyMutation(_ mutation: TextMutation<TextRange>) throws -> MutationOutput<TextRange>
 72 | }
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:96:14: error: main actor-isolated instance method 'applyMutation' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 94 | 	}
 95 |
 96 | 	public func applyMutation(_ mutation: TextMutation<TextRange>) -> MutationOutput<TextRange> {
    |              |- error: main actor-isolated instance method 'applyMutation' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'applyMutation' to make this instance method not isolated to the actor
 97 | 		let undoManager = undoManagerProvider?()
 98 |
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:71:7: note: mark the protocol requirement 'applyMutation' 'async' to allow actor-isolated conformances
 69 | 	func beginEditing()
 70 | 	func endEditing()
 71 | 	func applyMutation(_ mutation: TextMutation<TextRange>) throws -> MutationOutput<TextRange>
    |       `- note: mark the protocol requirement 'applyMutation' 'async' to allow actor-isolated conformances
 72 | }
 73 |
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:83:13: error: main actor-isolated property 'endOfDocument' cannot be used to satisfy nonisolated requirement from protocol 'TextRangeCalculating'
 81 |
 82 | 	// range calculation
 83 | 	public var endOfDocument: TextPosition {
    |             `- error: main actor-isolated property 'endOfDocument' cannot be used to satisfy nonisolated requirement from protocol 'TextRangeCalculating'
 84 | 		partialSystem.endOfDocument
 85 | 	}
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Rearrange/Sources/Rearrange/TextRangeCalculating.swift:9:6: note: requirement 'endOfDocument' declared here
  7 |
  8 | 	var beginningOfDocument: Position { get }
  9 | 	var endOfDocument: Position { get }
    |      `- note: requirement 'endOfDocument' declared here
 10 |
 11 | 	func textRange(from start: Position, to end: Position) -> TextRange?
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:103:27: error: unknown attribute 'MainActor'
101 | }
102 |
103 | extension MockTextSystem: @MainActor Equatable {
    |                           `- error: unknown attribute 'MainActor'
104 | 	public static func == (lhs: MockTextSystem, rhs: MockTextSystem) -> Bool {
105 | 		lhs === rhs
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:104:21: error: main actor-isolated operator function '==' cannot be used to satisfy nonisolated requirement from protocol 'Equatable'
101 | }
102 |
103 | extension MockTextSystem: @MainActor Equatable {
    |                                      `- note: add '@preconcurrency' to the 'Equatable' conformance to defer isolation checking to run time
104 | 	public static func == (lhs: MockTextSystem, rhs: MockTextSystem) -> Bool {
    |                     |- error: main actor-isolated operator function '==' cannot be used to satisfy nonisolated requirement from protocol 'Equatable'
    |                     `- note: add 'nonisolated' to '==' to make this operator function not isolated to the actor
105 | 		lhs === rhs
106 | 	}
[53/54] Compiling IBeam MutableStringPartialSystem.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MutableStringPartialSystem.swift:70:81: warning: capture of 'undoManager' with non-sendable type 'UndoManager?' in a '@Sendable' closure
68 |
69 | 			undoManager.registerUndo(withTarget: self) { [weak undoManager] target in
70 | 				_ = target.applyMutation(inverseRange, string: existingString, undoManager: undoManager)
   |                                                                                 `- warning: capture of 'undoManager' with non-sendable type 'UndoManager?' in a '@Sendable' closure
71 | 			}
72 | 		}
Swift.Optional:1:21: note: generic enum 'Optional' does not conform to the 'Sendable' protocol
1 | @frozen public enum Optional<Wrapped> : ~Copyable where Wrapped : ~Copyable {
  |                     `- note: generic enum 'Optional' does not conform to the 'Sendable' protocol
2 |     case none
3 |     case some(Wrapped)
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MutableStringPartialSystem.swift:70:16: error: call to main actor-isolated instance method 'applyMutation(_:string:undoManager:)' in a synchronous nonisolated context
52 |
53 | 	@MainActor
54 | 	public func applyMutation(_ range: NSRange, string: String, undoManager: UndoManager?) -> MutationOutput<NSRange> {
   |              `- note: calls to instance method 'applyMutation(_:string:undoManager:)' from outside of its actor context are implicitly asynchronous
55 | 		let input = string
56 | 		let length = input.utf16.count
   :
68 |
69 | 			undoManager.registerUndo(withTarget: self) { [weak undoManager] target in
70 | 				_ = target.applyMutation(inverseRange, string: existingString, undoManager: undoManager)
   |                `- error: call to main actor-isolated instance method 'applyMutation(_:string:undoManager:)' in a synchronous nonisolated context
71 | 			}
72 | 		}
[54/54] Compiling IBeam MutationDelegatingTextSystem.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MutableStringPartialSystem.swift:70:81: warning: capture of 'undoManager' with non-sendable type 'UndoManager?' in a '@Sendable' closure
68 |
69 | 			undoManager.registerUndo(withTarget: self) { [weak undoManager] target in
70 | 				_ = target.applyMutation(inverseRange, string: existingString, undoManager: undoManager)
   |                                                                                 `- warning: capture of 'undoManager' with non-sendable type 'UndoManager?' in a '@Sendable' closure
71 | 			}
72 | 		}
Swift.Optional:1:21: note: generic enum 'Optional' does not conform to the 'Sendable' protocol
1 | @frozen public enum Optional<Wrapped> : ~Copyable where Wrapped : ~Copyable {
  |                     `- note: generic enum 'Optional' does not conform to the 'Sendable' protocol
2 |     case none
3 |     case some(Wrapped)
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MutableStringPartialSystem.swift:70:16: error: call to main actor-isolated instance method 'applyMutation(_:string:undoManager:)' in a synchronous nonisolated context
52 |
53 | 	@MainActor
54 | 	public func applyMutation(_ range: NSRange, string: String, undoManager: UndoManager?) -> MutationOutput<NSRange> {
   |              `- note: calls to instance method 'applyMutation(_:string:undoManager:)' from outside of its actor context are implicitly asynchronous
55 | 		let input = string
56 | 		let length = input.utf16.count
   :
68 |
69 | 			undoManager.registerUndo(withTarget: self) { [weak undoManager] target in
70 | 				_ = target.applyMutation(inverseRange, string: existingString, undoManager: undoManager)
   |                `- error: call to main actor-isolated instance method 'applyMutation(_:string:undoManager:)' in a synchronous nonisolated context
71 | 			}
72 | 		}
[55/55] Compiling IBeam UndoManager+GroupActions.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/UndoManager+GroupActions.swift:45:4: warning: capture of 'self' with non-sendable type 'UndoManager?' in a '@Sendable' closure
43 |
44 | 		registerUndo(withTarget: target) { [weak self] target in
45 | 			self?.invokeAction(for: target, action)
   |    `- warning: capture of 'self' with non-sendable type 'UndoManager?' in a '@Sendable' closure
46 | 		}
47 | 	}
Swift.Optional:1:21: note: generic enum 'Optional' does not conform to the 'Sendable' protocol
1 | @frozen public enum Optional<Wrapped> : ~Copyable where Wrapped : ~Copyable {
  |                     `- note: generic enum 'Optional' does not conform to the 'Sendable' protocol
2 |     case none
3 |     case some(Wrapped)
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/UndoManager+GroupActions.swift:45:36: warning: capture of 'action' with non-sendable type '(Bool, T) -> Void' in a '@Sendable' closure
43 |
44 | 		registerUndo(withTarget: target) { [weak self] target in
45 | 			self?.invokeAction(for: target, action)
   |                                    |- warning: capture of 'action' with non-sendable type '(Bool, T) -> Void' in a '@Sendable' closure
   |                                    `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
46 | 		}
47 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/UndoManager+GroupActions.swift:54:13: error: main actor-isolated property 'leave' can not be referenced from a nonisolated context
14 |
15 | 		public var enter: Action
16 | 		public var leave: Action
   |              `- note: property declared here
17 |
18 | 		public init(
   :
52 | 		invokeAction(for: target) { undoing, innerTarget in
53 | 			if undoing {
54 | 				actions.leave(innerTarget)
   |             `- error: main actor-isolated property 'leave' can not be referenced from a nonisolated context
55 | 			} else {
56 | 				actions.enter(innerTarget)
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/UndoManager+GroupActions.swift:56:13: error: main actor-isolated property 'enter' can not be referenced from a nonisolated context
13 | 		public typealias Action = (_ target: T) -> Void
14 |
15 | 		public var enter: Action
   |              `- note: property declared here
16 | 		public var leave: Action
17 |
   :
54 | 				actions.leave(innerTarget)
55 | 			} else {
56 | 				actions.enter(innerTarget)
   |             `- error: main actor-isolated property 'enter' can not be referenced from a nonisolated context
57 | 			}
58 | 		}
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/UndoManager+GroupActions.swift:64:13: error: main actor-isolated property 'enter' can not be referenced from a nonisolated context
13 | 		public typealias Action = (_ target: T) -> Void
14 |
15 | 		public var enter: Action
   |              `- note: property declared here
16 | 		public var leave: Action
17 |
   :
62 | 		invokeAction(for: target) { undoing, innerTarget in
63 | 			if undoing {
64 | 				actions.enter(innerTarget)
   |             `- error: main actor-isolated property 'enter' can not be referenced from a nonisolated context
65 | 			} else {
66 | 				actions.leave(innerTarget)
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/UndoManager+GroupActions.swift:66:13: error: main actor-isolated property 'leave' can not be referenced from a nonisolated context
14 |
15 | 		public var enter: Action
16 | 		public var leave: Action
   |              `- note: property declared here
17 |
18 | 		public init(
   :
64 | 				actions.enter(innerTarget)
65 | 			} else {
66 | 				actions.leave(innerTarget)
   |             `- error: main actor-isolated property 'leave' can not be referenced from a nonisolated context
67 | 			}
68 | 		}
Fetching https://github.com/ChimeHQ/Rearrange
Fetching https://github.com/ChimeHQ/Ligature
[1/280] Fetching ligature
[41/882] Fetching ligature, rearrange
Fetched https://github.com/ChimeHQ/Ligature from cache (0.89s)
Fetched https://github.com/ChimeHQ/Rearrange from cache (0.90s)
Computing version for https://github.com/ChimeHQ/Ligature
Computed https://github.com/ChimeHQ/Ligature at 0.1.1 (1.42s)
Fetching https://github.com/ChimeHQ/Glyph
[1/290] Fetching glyph
Fetched https://github.com/ChimeHQ/Glyph from cache (0.74s)
Computing version for https://github.com/ChimeHQ/Rearrange
Computed https://github.com/ChimeHQ/Rearrange at 2.1.1 (1.27s)
Computing version for https://github.com/ChimeHQ/Glyph
Computed https://github.com/ChimeHQ/Glyph at 0.1.1 (0.52s)
Creating working copy for https://github.com/ChimeHQ/Glyph
Working copy of https://github.com/ChimeHQ/Glyph resolved at 0.1.1
Creating working copy for https://github.com/ChimeHQ/Rearrange
Working copy of https://github.com/ChimeHQ/Rearrange resolved at 2.1.1
Creating working copy for https://github.com/ChimeHQ/Ligature
Working copy of https://github.com/ChimeHQ/Ligature resolved at 0.1.1
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64
[0/1] Planning build
Building for debugging...
[0/1] Write swift-version-2F0A5646E1D333AE.txt
[2/20] Emitting module Rearrange
[3/21] Compiling Glyph NSTextRange+NSRange.swift
[4/21] Compiling Glyph NSTextView+Additions.swift
[5/21] Compiling Rearrange NSRange+Convenience.swift
[6/21] Compiling Rearrange IndexSet+NSRange.swift
[7/21] Compiling Rearrange NSRange+ApplyMutation.swift
[8/21] Compiling Rearrange Bounded.swift
[9/21] Compiling Rearrange IndexSet+ApplyMutation.swift
[10/21] Compiling Glyph NSTextLayoutFragment+Additions.swift
[11/21] Compiling Glyph NSLayoutManager+Additions.swift
[12/21] Compiling Glyph NSTextContainer+Additions.swift
[13/21] Compiling Glyph NSTextLayoutManager+Additions.swift
[14/21] Emitting module Glyph
[15/21] Compiling Rearrange String+NSRange.swift
[16/21] Compiling Rearrange RangeMutation.swift
[17/21] Compiling Rearrange NSTextRange+NSRange.swift
[18/21] Compiling Rearrange NSTextRange+Bounded.swift
[19/21] Compiling Rearrange NSRange+Shift.swift
[20/21] Compiling Rearrange TextRangeCalculating.swift
[21/21] Compiling Rearrange UITextRange+Convenience.swift
[22/31] Compiling Ligature TextTokenizer.swift
[23/32] Compiling Ligature TextRange+Bounded.swift
[24/32] Compiling Ligature TextDirection+Extensions.swift
[25/32] Compiling Ligature NSTextSelection+Extensions.swift
[26/32] Compiling Ligature TextInputStringTokenizer.swift
[27/32] Compiling Ligature SourceTokenizer.swift
[28/32] Compiling Ligature Platform.swift
[29/32] Compiling Ligature TextView+TextRangeCalculating.swift
[30/32] Compiling Ligature MockTextTokenizer.swift
[31/32] Emitting module Ligature
[32/32] Compiling Ligature UTF16CodePointTextViewTextTokenizer.swift
[33/50] Compiling IBeam NSAttributedString+layoutDirection.swift
[34/50] Compiling IBeam NSResponder+CursorSelectors.swift
[35/50] Compiling IBeam Pasteboard+MultipleTextSelection.swift
[36/50] Compiling IBeam SelectionSet.swift
error: emit-module command failed with exit code 1 (use -v to see invocation)
[37/51] Compiling IBeam Cursor.swift
[38/51] Compiling IBeam CursorOperation.swift
[39/51] Emitting module IBeam
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:67:32: error: unknown attribute 'MainActor'
 65 | }
 66 |
 67 | extension IBeamTextViewSystem: @MainActor IBeam.TextSystemInterface {
    |                                `- error: unknown attribute 'MainActor'
 68 | 	public typealias TextRange = NSRange
 69 | 	public typealias TextPosition = Int
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:71:14: error: main actor-isolated instance method 'boundingRect(for:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 65 | }
 66 |
 67 | extension IBeamTextViewSystem: @MainActor IBeam.TextSystemInterface {
    |                                                 `- note: add '@preconcurrency' to the 'TextSystemInterface' conformance to defer isolation checking to run time
 68 | 	public typealias TextRange = NSRange
 69 | 	public typealias TextPosition = Int
 70 |
 71 | 	public func boundingRect(for range: NSRange) -> CGRect? {
    |              |- error: main actor-isolated instance method 'boundingRect(for:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'boundingRect(for:)' to make this instance method not isolated to the actor
 72 | 		tokenizer?.boundingRect(for: range)
 73 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:62:7: note: mark the protocol requirement 'boundingRect(for:)' 'async' to allow actor-isolated conformances
 60 | public protocol TextSystemInterface: TextRangeCalculating, AnyObject {
 61 | 	// geometry
 62 | 	func boundingRect(for range: TextRange) -> CGRect?
    |       `- note: mark the protocol requirement 'boundingRect(for:)' 'async' to allow actor-isolated conformances
 63 |
 64 | 	// movement calculation
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:76:14: error: main actor-isolated instance method 'position(from:moving:by:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 74 |
 75 | 	// movement calculation
 76 | 	public func position(from position: TextPosition, moving direction: IBeam.TextDirection, by granularity: IBeam.TextGranularity) -> TextPosition? {
    |              |- error: main actor-isolated instance method 'position(from:moving:by:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'position(from:moving:by:)' to make this instance method not isolated to the actor
 77 | 		let ligGranularity =  Ligature.TextGranularity(granularity)
 78 |
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:65:7: note: mark the protocol requirement 'position(from:moving:by:)' 'async' to allow actor-isolated conformances
 63 |
 64 | 	// movement calculation
 65 | 	func position(from position: Position, moving direction: TextDirection, by granularity: TextGranularity) -> Position?
    |       `- note: mark the protocol requirement 'position(from:moving:by:)' 'async' to allow actor-isolated conformances
 66 | 	func layoutDirection(at position: Position) -> TextLayoutDirection?
 67 |
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:95:14: error: main actor-isolated instance method 'layoutDirection(at:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 93 | 	}
 94 |
 95 | 	public func layoutDirection(at position: TextPosition) -> IBeam.TextLayoutDirection? {
    |              |- error: main actor-isolated instance method 'layoutDirection(at:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'layoutDirection(at:)' to make this instance method not isolated to the actor
 96 | 		partialSystem.layoutDirection(at: position)
 97 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:66:7: note: mark the protocol requirement 'layoutDirection(at:)' 'async' to allow actor-isolated conformances
 64 | 	// movement calculation
 65 | 	func position(from position: Position, moving direction: TextDirection, by granularity: TextGranularity) -> Position?
 66 | 	func layoutDirection(at position: Position) -> TextLayoutDirection?
    |       `- note: mark the protocol requirement 'layoutDirection(at:)' 'async' to allow actor-isolated conformances
 67 |
 68 | 	// content mutation
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:103:14: error: main actor-isolated instance method 'beginEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
101 |
102 | 	// content mutation
103 | 	public func beginEditing() { partialSystem.beginEditing() }
    |              |- error: main actor-isolated instance method 'beginEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'beginEditing()' to make this instance method not isolated to the actor
104 | 	public func endEditing() { partialSystem.endEditing() }
105 |
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:69:7: note: mark the protocol requirement 'beginEditing()' 'async' to allow actor-isolated conformances
 67 |
 68 | 	// content mutation
 69 | 	func beginEditing()
    |       `- note: mark the protocol requirement 'beginEditing()' 'async' to allow actor-isolated conformances
 70 | 	func endEditing()
 71 | 	func applyMutation(_ mutation: TextMutation<TextRange>) throws -> MutationOutput<TextRange>
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:104:14: error: main actor-isolated instance method 'endEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
102 | 	// content mutation
103 | 	public func beginEditing() { partialSystem.beginEditing() }
104 | 	public func endEditing() { partialSystem.endEditing() }
    |              |- error: main actor-isolated instance method 'endEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'endEditing()' to make this instance method not isolated to the actor
105 |
106 | 	public func applyMutation(_ mutation: IBeam.TextMutation<NSRange>) throws -> MutationOutput<NSRange> {
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:70:7: note: mark the protocol requirement 'endEditing()' 'async' to allow actor-isolated conformances
 68 | 	// content mutation
 69 | 	func beginEditing()
 70 | 	func endEditing()
    |       `- note: mark the protocol requirement 'endEditing()' 'async' to allow actor-isolated conformances
 71 | 	func applyMutation(_ mutation: TextMutation<TextRange>) throws -> MutationOutput<TextRange>
 72 | }
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:106:14: error: main actor-isolated instance method 'applyMutation' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
104 | 	public func endEditing() { partialSystem.endEditing() }
105 |
106 | 	public func applyMutation(_ mutation: IBeam.TextMutation<NSRange>) throws -> MutationOutput<NSRange> {
    |              |- error: main actor-isolated instance method 'applyMutation' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'applyMutation' to make this instance method not isolated to the actor
107 | 		partialSystem.applyMutation(mutation, undoManager: undoManager)
108 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:71:7: note: mark the protocol requirement 'applyMutation' 'async' to allow actor-isolated conformances
 69 | 	func beginEditing()
 70 | 	func endEditing()
 71 | 	func applyMutation(_ mutation: TextMutation<TextRange>) throws -> MutationOutput<TextRange>
    |       `- note: mark the protocol requirement 'applyMutation' 'async' to allow actor-isolated conformances
 72 | }
 73 |
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:100:13: error: main actor-isolated property 'endOfDocument' cannot be used to satisfy nonisolated requirement from protocol 'TextRangeCalculating'
 98 |
 99 | 	// range calculation
100 | 	public var endOfDocument: TextPosition { partialSystem.endOfDocument }
    |             `- error: main actor-isolated property 'endOfDocument' cannot be used to satisfy nonisolated requirement from protocol 'TextRangeCalculating'
101 |
102 | 	// content mutation
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Rearrange/Sources/Rearrange/TextRangeCalculating.swift:9:6: note: requirement 'endOfDocument' declared here
  7 |
  8 | 	var beginningOfDocument: Position { get }
  9 | 	var endOfDocument: Position { get }
    |      `- note: requirement 'endOfDocument' declared here
 10 |
 11 | 	func textRange(from start: Position, to end: Position) -> TextRange?
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:13:36: error: unknown attribute 'MainActor'
 11 | /// Useful for testing components that rely on the `TextSystem` protocol.
 12 | @preconcurrency @MainActor
 13 | public final class MockTextSystem: @MainActor TextSystemInterface {
    |                                    `- error: unknown attribute 'MainActor'
 14 | 	public typealias TextRange = NSRange
 15 | 	public typealias TextPosition = Int
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:57:14: error: main actor-isolated instance method 'boundingRect(for:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 11 | /// Useful for testing components that rely on the `TextSystem` protocol.
 12 | @preconcurrency @MainActor
 13 | public final class MockTextSystem: @MainActor TextSystemInterface {
    |                                               `- note: add '@preconcurrency' to the 'TextSystemInterface' conformance to defer isolation checking to run time
 14 | 	public typealias TextRange = NSRange
 15 | 	public typealias TextPosition = Int
    :
 55 | 	}
 56 |
 57 | 	public func boundingRect(for range: NSRange) -> CGRect? {
    |              |- error: main actor-isolated instance method 'boundingRect(for:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'boundingRect(for:)' to make this instance method not isolated to the actor
 58 | 		if case let .boundingRect(value) = responses.first {
 59 | 			responses.removeFirst()
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:62:7: note: mark the protocol requirement 'boundingRect(for:)' 'async' to allow actor-isolated conformances
 60 | public protocol TextSystemInterface: TextRangeCalculating, AnyObject {
 61 | 	// geometry
 62 | 	func boundingRect(for range: TextRange) -> CGRect?
    |       `- note: mark the protocol requirement 'boundingRect(for:)' 'async' to allow actor-isolated conformances
 63 |
 64 | 	// movement calculation
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:68:14: error: main actor-isolated instance method 'position(from:moving:by:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 66 |
 67 | 	// movement calculation
 68 | 	public func position(from position: TextPosition, moving direction: TextDirection, by granularity: TextGranularity) -> TextPosition? {
    |              |- error: main actor-isolated instance method 'position(from:moving:by:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'position(from:moving:by:)' to make this instance method not isolated to the actor
 69 | 		switch responses.removeFirst() {
 70 | 		case let .position(value):
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:65:7: note: mark the protocol requirement 'position(from:moving:by:)' 'async' to allow actor-isolated conformances
 63 |
 64 | 	// movement calculation
 65 | 	func position(from position: Position, moving direction: TextDirection, by granularity: TextGranularity) -> Position?
    |       `- note: mark the protocol requirement 'position(from:moving:by:)' 'async' to allow actor-isolated conformances
 66 | 	func layoutDirection(at position: Position) -> TextLayoutDirection?
 67 |
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:78:14: error: main actor-isolated instance method 'layoutDirection(at:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 76 | 	}
 77 |
 78 | 	public func layoutDirection(at position: TextPosition) -> TextLayoutDirection? {
    |              |- error: main actor-isolated instance method 'layoutDirection(at:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'layoutDirection(at:)' to make this instance method not isolated to the actor
 79 | 		partialSystem.layoutDirection(at: position)
 80 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:66:7: note: mark the protocol requirement 'layoutDirection(at:)' 'async' to allow actor-isolated conformances
 64 | 	// movement calculation
 65 | 	func position(from position: Position, moving direction: TextDirection, by granularity: TextGranularity) -> Position?
 66 | 	func layoutDirection(at position: Position) -> TextLayoutDirection?
    |       `- note: mark the protocol requirement 'layoutDirection(at:)' 'async' to allow actor-isolated conformances
 67 |
 68 | 	// content mutation
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:88:14: error: main actor-isolated instance method 'beginEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 86 |
 87 | 	// content mutation
 88 | 	public func beginEditing() {
    |              |- error: main actor-isolated instance method 'beginEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'beginEditing()' to make this instance method not isolated to the actor
 89 | 		partialSystem.beginEditing()
 90 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:69:7: note: mark the protocol requirement 'beginEditing()' 'async' to allow actor-isolated conformances
 67 |
 68 | 	// content mutation
 69 | 	func beginEditing()
    |       `- note: mark the protocol requirement 'beginEditing()' 'async' to allow actor-isolated conformances
 70 | 	func endEditing()
 71 | 	func applyMutation(_ mutation: TextMutation<TextRange>) throws -> MutationOutput<TextRange>
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:92:14: error: main actor-isolated instance method 'endEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 90 | 	}
 91 |
 92 | 	public func endEditing() {
    |              |- error: main actor-isolated instance method 'endEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'endEditing()' to make this instance method not isolated to the actor
 93 | 		partialSystem.endEditing()
 94 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:70:7: note: mark the protocol requirement 'endEditing()' 'async' to allow actor-isolated conformances
 68 | 	// content mutation
 69 | 	func beginEditing()
 70 | 	func endEditing()
    |       `- note: mark the protocol requirement 'endEditing()' 'async' to allow actor-isolated conformances
 71 | 	func applyMutation(_ mutation: TextMutation<TextRange>) throws -> MutationOutput<TextRange>
 72 | }
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:96:14: error: main actor-isolated instance method 'applyMutation' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 94 | 	}
 95 |
 96 | 	public func applyMutation(_ mutation: TextMutation<TextRange>) -> MutationOutput<TextRange> {
    |              |- error: main actor-isolated instance method 'applyMutation' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'applyMutation' to make this instance method not isolated to the actor
 97 | 		let undoManager = undoManagerProvider?()
 98 |
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:71:7: note: mark the protocol requirement 'applyMutation' 'async' to allow actor-isolated conformances
 69 | 	func beginEditing()
 70 | 	func endEditing()
 71 | 	func applyMutation(_ mutation: TextMutation<TextRange>) throws -> MutationOutput<TextRange>
    |       `- note: mark the protocol requirement 'applyMutation' 'async' to allow actor-isolated conformances
 72 | }
 73 |
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:83:13: error: main actor-isolated property 'endOfDocument' cannot be used to satisfy nonisolated requirement from protocol 'TextRangeCalculating'
 81 |
 82 | 	// range calculation
 83 | 	public var endOfDocument: TextPosition {
    |             `- error: main actor-isolated property 'endOfDocument' cannot be used to satisfy nonisolated requirement from protocol 'TextRangeCalculating'
 84 | 		partialSystem.endOfDocument
 85 | 	}
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Rearrange/Sources/Rearrange/TextRangeCalculating.swift:9:6: note: requirement 'endOfDocument' declared here
  7 |
  8 | 	var beginningOfDocument: Position { get }
  9 | 	var endOfDocument: Position { get }
    |      `- note: requirement 'endOfDocument' declared here
 10 |
 11 | 	func textRange(from start: Position, to end: Position) -> TextRange?
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:103:27: error: unknown attribute 'MainActor'
101 | }
102 |
103 | extension MockTextSystem: @MainActor Equatable {
    |                           `- error: unknown attribute 'MainActor'
104 | 	public static func == (lhs: MockTextSystem, rhs: MockTextSystem) -> Bool {
105 | 		lhs === rhs
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:104:21: error: main actor-isolated operator function '==' cannot be used to satisfy nonisolated requirement from protocol 'Equatable'
101 | }
102 |
103 | extension MockTextSystem: @MainActor Equatable {
    |                                      `- note: add '@preconcurrency' to the 'Equatable' conformance to defer isolation checking to run time
104 | 	public static func == (lhs: MockTextSystem, rhs: MockTextSystem) -> Bool {
    |                     |- error: main actor-isolated operator function '==' cannot be used to satisfy nonisolated requirement from protocol 'Equatable'
    |                     `- note: add 'nonisolated' to '==' to make this operator function not isolated to the actor
105 | 		lhs === rhs
106 | 	}
[40/51] Compiling IBeam IBeamTextViewSystem.swift
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:67:32: error: unknown attribute 'MainActor'
 65 | }
 66 |
 67 | extension IBeamTextViewSystem: @MainActor IBeam.TextSystemInterface {
    |                                `- error: unknown attribute 'MainActor'
 68 | 	public typealias TextRange = NSRange
 69 | 	public typealias TextPosition = Int
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:71:14: error: main actor-isolated instance method 'boundingRect(for:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 65 | }
 66 |
 67 | extension IBeamTextViewSystem: @MainActor IBeam.TextSystemInterface {
    |                                                 `- note: add '@preconcurrency' to the 'TextSystemInterface' conformance to defer isolation checking to run time
 68 | 	public typealias TextRange = NSRange
 69 | 	public typealias TextPosition = Int
 70 |
 71 | 	public func boundingRect(for range: NSRange) -> CGRect? {
    |              |- error: main actor-isolated instance method 'boundingRect(for:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'boundingRect(for:)' to make this instance method not isolated to the actor
 72 | 		tokenizer?.boundingRect(for: range)
 73 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:62:7: note: mark the protocol requirement 'boundingRect(for:)' 'async' to allow actor-isolated conformances
 60 | public protocol TextSystemInterface: TextRangeCalculating, AnyObject {
 61 | 	// geometry
 62 | 	func boundingRect(for range: TextRange) -> CGRect?
    |       `- note: mark the protocol requirement 'boundingRect(for:)' 'async' to allow actor-isolated conformances
 63 |
 64 | 	// movement calculation
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:76:14: error: main actor-isolated instance method 'position(from:moving:by:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 74 |
 75 | 	// movement calculation
 76 | 	public func position(from position: TextPosition, moving direction: IBeam.TextDirection, by granularity: IBeam.TextGranularity) -> TextPosition? {
    |              |- error: main actor-isolated instance method 'position(from:moving:by:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'position(from:moving:by:)' to make this instance method not isolated to the actor
 77 | 		let ligGranularity =  Ligature.TextGranularity(granularity)
 78 |
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:65:7: note: mark the protocol requirement 'position(from:moving:by:)' 'async' to allow actor-isolated conformances
 63 |
 64 | 	// movement calculation
 65 | 	func position(from position: Position, moving direction: TextDirection, by granularity: TextGranularity) -> Position?
    |       `- note: mark the protocol requirement 'position(from:moving:by:)' 'async' to allow actor-isolated conformances
 66 | 	func layoutDirection(at position: Position) -> TextLayoutDirection?
 67 |
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:95:14: error: main actor-isolated instance method 'layoutDirection(at:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 93 | 	}
 94 |
 95 | 	public func layoutDirection(at position: TextPosition) -> IBeam.TextLayoutDirection? {
    |              |- error: main actor-isolated instance method 'layoutDirection(at:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'layoutDirection(at:)' to make this instance method not isolated to the actor
 96 | 		partialSystem.layoutDirection(at: position)
 97 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:66:7: note: mark the protocol requirement 'layoutDirection(at:)' 'async' to allow actor-isolated conformances
 64 | 	// movement calculation
 65 | 	func position(from position: Position, moving direction: TextDirection, by granularity: TextGranularity) -> Position?
 66 | 	func layoutDirection(at position: Position) -> TextLayoutDirection?
    |       `- note: mark the protocol requirement 'layoutDirection(at:)' 'async' to allow actor-isolated conformances
 67 |
 68 | 	// content mutation
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:103:14: error: main actor-isolated instance method 'beginEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
101 |
102 | 	// content mutation
103 | 	public func beginEditing() { partialSystem.beginEditing() }
    |              |- error: main actor-isolated instance method 'beginEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'beginEditing()' to make this instance method not isolated to the actor
104 | 	public func endEditing() { partialSystem.endEditing() }
105 |
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:69:7: note: mark the protocol requirement 'beginEditing()' 'async' to allow actor-isolated conformances
 67 |
 68 | 	// content mutation
 69 | 	func beginEditing()
    |       `- note: mark the protocol requirement 'beginEditing()' 'async' to allow actor-isolated conformances
 70 | 	func endEditing()
 71 | 	func applyMutation(_ mutation: TextMutation<TextRange>) throws -> MutationOutput<TextRange>
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:104:14: error: main actor-isolated instance method 'endEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
102 | 	// content mutation
103 | 	public func beginEditing() { partialSystem.beginEditing() }
104 | 	public func endEditing() { partialSystem.endEditing() }
    |              |- error: main actor-isolated instance method 'endEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'endEditing()' to make this instance method not isolated to the actor
105 |
106 | 	public func applyMutation(_ mutation: IBeam.TextMutation<NSRange>) throws -> MutationOutput<NSRange> {
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:70:7: note: mark the protocol requirement 'endEditing()' 'async' to allow actor-isolated conformances
 68 | 	// content mutation
 69 | 	func beginEditing()
 70 | 	func endEditing()
    |       `- note: mark the protocol requirement 'endEditing()' 'async' to allow actor-isolated conformances
 71 | 	func applyMutation(_ mutation: TextMutation<TextRange>) throws -> MutationOutput<TextRange>
 72 | }
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:106:14: error: main actor-isolated instance method 'applyMutation' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
104 | 	public func endEditing() { partialSystem.endEditing() }
105 |
106 | 	public func applyMutation(_ mutation: IBeam.TextMutation<NSRange>) throws -> MutationOutput<NSRange> {
    |              |- error: main actor-isolated instance method 'applyMutation' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'applyMutation' to make this instance method not isolated to the actor
107 | 		partialSystem.applyMutation(mutation, undoManager: undoManager)
108 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:71:7: note: mark the protocol requirement 'applyMutation' 'async' to allow actor-isolated conformances
 69 | 	func beginEditing()
 70 | 	func endEditing()
 71 | 	func applyMutation(_ mutation: TextMutation<TextRange>) throws -> MutationOutput<TextRange>
    |       `- note: mark the protocol requirement 'applyMutation' 'async' to allow actor-isolated conformances
 72 | }
 73 |
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:100:13: error: main actor-isolated property 'endOfDocument' cannot be used to satisfy nonisolated requirement from protocol 'TextRangeCalculating'
 98 |
 99 | 	// range calculation
100 | 	public var endOfDocument: TextPosition { partialSystem.endOfDocument }
    |             `- error: main actor-isolated property 'endOfDocument' cannot be used to satisfy nonisolated requirement from protocol 'TextRangeCalculating'
101 |
102 | 	// content mutation
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Rearrange/Sources/Rearrange/TextRangeCalculating.swift:9:6: note: requirement 'endOfDocument' declared here
  7 |
  8 | 	var beginningOfDocument: Position { get }
  9 | 	var endOfDocument: Position { get }
    |      `- note: requirement 'endOfDocument' declared here
 10 |
 11 | 	func textRange(from start: Position, to end: Position) -> TextRange?
[41/51] Compiling IBeam InputOperation.swift
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:67:32: error: unknown attribute 'MainActor'
 65 | }
 66 |
 67 | extension IBeamTextViewSystem: @MainActor IBeam.TextSystemInterface {
    |                                `- error: unknown attribute 'MainActor'
 68 | 	public typealias TextRange = NSRange
 69 | 	public typealias TextPosition = Int
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:71:14: error: main actor-isolated instance method 'boundingRect(for:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 65 | }
 66 |
 67 | extension IBeamTextViewSystem: @MainActor IBeam.TextSystemInterface {
    |                                                 `- note: add '@preconcurrency' to the 'TextSystemInterface' conformance to defer isolation checking to run time
 68 | 	public typealias TextRange = NSRange
 69 | 	public typealias TextPosition = Int
 70 |
 71 | 	public func boundingRect(for range: NSRange) -> CGRect? {
    |              |- error: main actor-isolated instance method 'boundingRect(for:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'boundingRect(for:)' to make this instance method not isolated to the actor
 72 | 		tokenizer?.boundingRect(for: range)
 73 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:62:7: note: mark the protocol requirement 'boundingRect(for:)' 'async' to allow actor-isolated conformances
 60 | public protocol TextSystemInterface: TextRangeCalculating, AnyObject {
 61 | 	// geometry
 62 | 	func boundingRect(for range: TextRange) -> CGRect?
    |       `- note: mark the protocol requirement 'boundingRect(for:)' 'async' to allow actor-isolated conformances
 63 |
 64 | 	// movement calculation
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:76:14: error: main actor-isolated instance method 'position(from:moving:by:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 74 |
 75 | 	// movement calculation
 76 | 	public func position(from position: TextPosition, moving direction: IBeam.TextDirection, by granularity: IBeam.TextGranularity) -> TextPosition? {
    |              |- error: main actor-isolated instance method 'position(from:moving:by:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'position(from:moving:by:)' to make this instance method not isolated to the actor
 77 | 		let ligGranularity =  Ligature.TextGranularity(granularity)
 78 |
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:65:7: note: mark the protocol requirement 'position(from:moving:by:)' 'async' to allow actor-isolated conformances
 63 |
 64 | 	// movement calculation
 65 | 	func position(from position: Position, moving direction: TextDirection, by granularity: TextGranularity) -> Position?
    |       `- note: mark the protocol requirement 'position(from:moving:by:)' 'async' to allow actor-isolated conformances
 66 | 	func layoutDirection(at position: Position) -> TextLayoutDirection?
 67 |
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:95:14: error: main actor-isolated instance method 'layoutDirection(at:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 93 | 	}
 94 |
 95 | 	public func layoutDirection(at position: TextPosition) -> IBeam.TextLayoutDirection? {
    |              |- error: main actor-isolated instance method 'layoutDirection(at:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'layoutDirection(at:)' to make this instance method not isolated to the actor
 96 | 		partialSystem.layoutDirection(at: position)
 97 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:66:7: note: mark the protocol requirement 'layoutDirection(at:)' 'async' to allow actor-isolated conformances
 64 | 	// movement calculation
 65 | 	func position(from position: Position, moving direction: TextDirection, by granularity: TextGranularity) -> Position?
 66 | 	func layoutDirection(at position: Position) -> TextLayoutDirection?
    |       `- note: mark the protocol requirement 'layoutDirection(at:)' 'async' to allow actor-isolated conformances
 67 |
 68 | 	// content mutation
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:103:14: error: main actor-isolated instance method 'beginEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
101 |
102 | 	// content mutation
103 | 	public func beginEditing() { partialSystem.beginEditing() }
    |              |- error: main actor-isolated instance method 'beginEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'beginEditing()' to make this instance method not isolated to the actor
104 | 	public func endEditing() { partialSystem.endEditing() }
105 |
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:69:7: note: mark the protocol requirement 'beginEditing()' 'async' to allow actor-isolated conformances
 67 |
 68 | 	// content mutation
 69 | 	func beginEditing()
    |       `- note: mark the protocol requirement 'beginEditing()' 'async' to allow actor-isolated conformances
 70 | 	func endEditing()
 71 | 	func applyMutation(_ mutation: TextMutation<TextRange>) throws -> MutationOutput<TextRange>
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:104:14: error: main actor-isolated instance method 'endEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
102 | 	// content mutation
103 | 	public func beginEditing() { partialSystem.beginEditing() }
104 | 	public func endEditing() { partialSystem.endEditing() }
    |              |- error: main actor-isolated instance method 'endEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'endEditing()' to make this instance method not isolated to the actor
105 |
106 | 	public func applyMutation(_ mutation: IBeam.TextMutation<NSRange>) throws -> MutationOutput<NSRange> {
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:70:7: note: mark the protocol requirement 'endEditing()' 'async' to allow actor-isolated conformances
 68 | 	// content mutation
 69 | 	func beginEditing()
 70 | 	func endEditing()
    |       `- note: mark the protocol requirement 'endEditing()' 'async' to allow actor-isolated conformances
 71 | 	func applyMutation(_ mutation: TextMutation<TextRange>) throws -> MutationOutput<TextRange>
 72 | }
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:106:14: error: main actor-isolated instance method 'applyMutation' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
104 | 	public func endEditing() { partialSystem.endEditing() }
105 |
106 | 	public func applyMutation(_ mutation: IBeam.TextMutation<NSRange>) throws -> MutationOutput<NSRange> {
    |              |- error: main actor-isolated instance method 'applyMutation' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'applyMutation' to make this instance method not isolated to the actor
107 | 		partialSystem.applyMutation(mutation, undoManager: undoManager)
108 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:71:7: note: mark the protocol requirement 'applyMutation' 'async' to allow actor-isolated conformances
 69 | 	func beginEditing()
 70 | 	func endEditing()
 71 | 	func applyMutation(_ mutation: TextMutation<TextRange>) throws -> MutationOutput<TextRange>
    |       `- note: mark the protocol requirement 'applyMutation' 'async' to allow actor-isolated conformances
 72 | }
 73 |
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/IBeamTextViewSystem.swift:100:13: error: main actor-isolated property 'endOfDocument' cannot be used to satisfy nonisolated requirement from protocol 'TextRangeCalculating'
 98 |
 99 | 	// range calculation
100 | 	public var endOfDocument: TextPosition { partialSystem.endOfDocument }
    |             `- error: main actor-isolated property 'endOfDocument' cannot be used to satisfy nonisolated requirement from protocol 'TextRangeCalculating'
101 |
102 | 	// content mutation
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Rearrange/Sources/Rearrange/TextRangeCalculating.swift:9:6: note: requirement 'endOfDocument' declared here
  7 |
  8 | 	var beginningOfDocument: Position { get }
  9 | 	var endOfDocument: Position { get }
    |      `- note: requirement 'endOfDocument' declared here
 10 |
 11 | 	func textRange(from start: Position, to end: Position) -> TextRange?
[42/51] Compiling IBeam MultiCursorState.swift
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MultiCursorState.swift:120:22: warning: no calls to throwing functions occur within 'try' expression
118 | 		let perCursorOp = operation.indexedOperation(for: index)
119 |
120 | 		guard let output = try? processor.apply(perCursorOp, to: cursor, delta: delta) else {
    |                      `- warning: no calls to throwing functions occur within 'try' expression
121 | 			return nil
122 | 		}
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MultiCursorState.swift:143:12: error: call to main actor-isolated instance method 'commitCursorChange(_:affectsContent:)' in a synchronous nonisolated context
136 | 	}
137 |
138 | 	private func commitCursorChange(_ newCursors: [Cursor<System.TextRange>], affectsContent: Bool) {
    |               `- note: calls to instance method 'commitCursorChange(_:affectsContent:)' from outside of its actor context are implicitly asynchronous
139 | 		if let undoManager, affectsContent {
140 | 			nonisolated(unsafe) let cursorSnapshot = cursors
141 |
142 | 			undoManager.registerUndo(withTarget: self) { target in
143 | 				target.commitCursorChange(cursorSnapshot, affectsContent: true)
    |            `- error: call to main actor-isolated instance method 'commitCursorChange(_:affectsContent:)' in a synchronous nonisolated context
144 | 			}
145 | 		}
[43/51] Compiling IBeam MultiIndicatorView.swift
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MultiCursorState.swift:120:22: warning: no calls to throwing functions occur within 'try' expression
118 | 		let perCursorOp = operation.indexedOperation(for: index)
119 |
120 | 		guard let output = try? processor.apply(perCursorOp, to: cursor, delta: delta) else {
    |                      `- warning: no calls to throwing functions occur within 'try' expression
121 | 			return nil
122 | 		}
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MultiCursorState.swift:143:12: error: call to main actor-isolated instance method 'commitCursorChange(_:affectsContent:)' in a synchronous nonisolated context
136 | 	}
137 |
138 | 	private func commitCursorChange(_ newCursors: [Cursor<System.TextRange>], affectsContent: Bool) {
    |               `- note: calls to instance method 'commitCursorChange(_:affectsContent:)' from outside of its actor context are implicitly asynchronous
139 | 		if let undoManager, affectsContent {
140 | 			nonisolated(unsafe) let cursorSnapshot = cursors
141 |
142 | 			undoManager.registerUndo(withTarget: self) { target in
143 | 				target.commitCursorChange(cursorSnapshot, affectsContent: true)
    |            `- error: call to main actor-isolated instance method 'commitCursorChange(_:affectsContent:)' in a synchronous nonisolated context
144 | 			}
145 | 		}
[44/51] Compiling IBeam MutableStringPartialSystem.swift
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MutableStringPartialSystem.swift:70:81: warning: capture of 'undoManager' with non-sendable type 'UndoManager?' in a '@Sendable' closure
68 |
69 | 			undoManager.registerUndo(withTarget: self) { [weak undoManager] target in
70 | 				_ = target.applyMutation(inverseRange, string: existingString, undoManager: undoManager)
   |                                                                                 `- warning: capture of 'undoManager' with non-sendable type 'UndoManager?' in a '@Sendable' closure
71 | 			}
72 | 		}
Swift.Optional:1:21: note: generic enum 'Optional' does not conform to the 'Sendable' protocol
1 | @frozen public enum Optional<Wrapped> : ~Copyable where Wrapped : ~Copyable {
  |                     `- note: generic enum 'Optional' does not conform to the 'Sendable' protocol
2 |     case none
3 |     case some(Wrapped)
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MutableStringPartialSystem.swift:70:16: error: call to main actor-isolated instance method 'applyMutation(_:string:undoManager:)' in a synchronous nonisolated context
52 |
53 | 	@MainActor
54 | 	public func applyMutation(_ range: NSRange, string: String, undoManager: UndoManager?) -> MutationOutput<NSRange> {
   |              `- note: calls to instance method 'applyMutation(_:string:undoManager:)' from outside of its actor context are implicitly asynchronous
55 | 		let input = string
56 | 		let length = input.utf16.count
   :
68 |
69 | 			undoManager.registerUndo(withTarget: self) { [weak undoManager] target in
70 | 				_ = target.applyMutation(inverseRange, string: existingString, undoManager: undoManager)
   |                `- error: call to main actor-isolated instance method 'applyMutation(_:string:undoManager:)' in a synchronous nonisolated context
71 | 			}
72 | 		}
[45/51] Compiling IBeam MutationDelegatingTextSystem.swift
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MutableStringPartialSystem.swift:70:81: warning: capture of 'undoManager' with non-sendable type 'UndoManager?' in a '@Sendable' closure
68 |
69 | 			undoManager.registerUndo(withTarget: self) { [weak undoManager] target in
70 | 				_ = target.applyMutation(inverseRange, string: existingString, undoManager: undoManager)
   |                                                                                 `- warning: capture of 'undoManager' with non-sendable type 'UndoManager?' in a '@Sendable' closure
71 | 			}
72 | 		}
Swift.Optional:1:21: note: generic enum 'Optional' does not conform to the 'Sendable' protocol
1 | @frozen public enum Optional<Wrapped> : ~Copyable where Wrapped : ~Copyable {
  |                     `- note: generic enum 'Optional' does not conform to the 'Sendable' protocol
2 |     case none
3 |     case some(Wrapped)
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MutableStringPartialSystem.swift:70:16: error: call to main actor-isolated instance method 'applyMutation(_:string:undoManager:)' in a synchronous nonisolated context
52 |
53 | 	@MainActor
54 | 	public func applyMutation(_ range: NSRange, string: String, undoManager: UndoManager?) -> MutationOutput<NSRange> {
   |              `- note: calls to instance method 'applyMutation(_:string:undoManager:)' from outside of its actor context are implicitly asynchronous
55 | 		let input = string
56 | 		let length = input.utf16.count
   :
68 |
69 | 			undoManager.registerUndo(withTarget: self) { [weak undoManager] target in
70 | 				_ = target.applyMutation(inverseRange, string: existingString, undoManager: undoManager)
   |                `- error: call to main actor-isolated instance method 'applyMutation(_:string:undoManager:)' in a synchronous nonisolated context
71 | 			}
72 | 		}
[46/51] Compiling IBeam InputOperationProcessor.swift
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:13:36: error: unknown attribute 'MainActor'
 11 | /// Useful for testing components that rely on the `TextSystem` protocol.
 12 | @preconcurrency @MainActor
 13 | public final class MockTextSystem: @MainActor TextSystemInterface {
    |                                    `- error: unknown attribute 'MainActor'
 14 | 	public typealias TextRange = NSRange
 15 | 	public typealias TextPosition = Int
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:57:14: error: main actor-isolated instance method 'boundingRect(for:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 11 | /// Useful for testing components that rely on the `TextSystem` protocol.
 12 | @preconcurrency @MainActor
 13 | public final class MockTextSystem: @MainActor TextSystemInterface {
    |                                               `- note: add '@preconcurrency' to the 'TextSystemInterface' conformance to defer isolation checking to run time
 14 | 	public typealias TextRange = NSRange
 15 | 	public typealias TextPosition = Int
    :
 55 | 	}
 56 |
 57 | 	public func boundingRect(for range: NSRange) -> CGRect? {
    |              |- error: main actor-isolated instance method 'boundingRect(for:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'boundingRect(for:)' to make this instance method not isolated to the actor
 58 | 		if case let .boundingRect(value) = responses.first {
 59 | 			responses.removeFirst()
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:62:7: note: mark the protocol requirement 'boundingRect(for:)' 'async' to allow actor-isolated conformances
 60 | public protocol TextSystemInterface: TextRangeCalculating, AnyObject {
 61 | 	// geometry
 62 | 	func boundingRect(for range: TextRange) -> CGRect?
    |       `- note: mark the protocol requirement 'boundingRect(for:)' 'async' to allow actor-isolated conformances
 63 |
 64 | 	// movement calculation
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:68:14: error: main actor-isolated instance method 'position(from:moving:by:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 66 |
 67 | 	// movement calculation
 68 | 	public func position(from position: TextPosition, moving direction: TextDirection, by granularity: TextGranularity) -> TextPosition? {
    |              |- error: main actor-isolated instance method 'position(from:moving:by:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'position(from:moving:by:)' to make this instance method not isolated to the actor
 69 | 		switch responses.removeFirst() {
 70 | 		case let .position(value):
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:65:7: note: mark the protocol requirement 'position(from:moving:by:)' 'async' to allow actor-isolated conformances
 63 |
 64 | 	// movement calculation
 65 | 	func position(from position: Position, moving direction: TextDirection, by granularity: TextGranularity) -> Position?
    |       `- note: mark the protocol requirement 'position(from:moving:by:)' 'async' to allow actor-isolated conformances
 66 | 	func layoutDirection(at position: Position) -> TextLayoutDirection?
 67 |
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:78:14: error: main actor-isolated instance method 'layoutDirection(at:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 76 | 	}
 77 |
 78 | 	public func layoutDirection(at position: TextPosition) -> TextLayoutDirection? {
    |              |- error: main actor-isolated instance method 'layoutDirection(at:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'layoutDirection(at:)' to make this instance method not isolated to the actor
 79 | 		partialSystem.layoutDirection(at: position)
 80 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:66:7: note: mark the protocol requirement 'layoutDirection(at:)' 'async' to allow actor-isolated conformances
 64 | 	// movement calculation
 65 | 	func position(from position: Position, moving direction: TextDirection, by granularity: TextGranularity) -> Position?
 66 | 	func layoutDirection(at position: Position) -> TextLayoutDirection?
    |       `- note: mark the protocol requirement 'layoutDirection(at:)' 'async' to allow actor-isolated conformances
 67 |
 68 | 	// content mutation
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:88:14: error: main actor-isolated instance method 'beginEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 86 |
 87 | 	// content mutation
 88 | 	public func beginEditing() {
    |              |- error: main actor-isolated instance method 'beginEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'beginEditing()' to make this instance method not isolated to the actor
 89 | 		partialSystem.beginEditing()
 90 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:69:7: note: mark the protocol requirement 'beginEditing()' 'async' to allow actor-isolated conformances
 67 |
 68 | 	// content mutation
 69 | 	func beginEditing()
    |       `- note: mark the protocol requirement 'beginEditing()' 'async' to allow actor-isolated conformances
 70 | 	func endEditing()
 71 | 	func applyMutation(_ mutation: TextMutation<TextRange>) throws -> MutationOutput<TextRange>
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:92:14: error: main actor-isolated instance method 'endEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 90 | 	}
 91 |
 92 | 	public func endEditing() {
    |              |- error: main actor-isolated instance method 'endEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'endEditing()' to make this instance method not isolated to the actor
 93 | 		partialSystem.endEditing()
 94 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:70:7: note: mark the protocol requirement 'endEditing()' 'async' to allow actor-isolated conformances
 68 | 	// content mutation
 69 | 	func beginEditing()
 70 | 	func endEditing()
    |       `- note: mark the protocol requirement 'endEditing()' 'async' to allow actor-isolated conformances
 71 | 	func applyMutation(_ mutation: TextMutation<TextRange>) throws -> MutationOutput<TextRange>
 72 | }
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:96:14: error: main actor-isolated instance method 'applyMutation' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 94 | 	}
 95 |
 96 | 	public func applyMutation(_ mutation: TextMutation<TextRange>) -> MutationOutput<TextRange> {
    |              |- error: main actor-isolated instance method 'applyMutation' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'applyMutation' to make this instance method not isolated to the actor
 97 | 		let undoManager = undoManagerProvider?()
 98 |
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:71:7: note: mark the protocol requirement 'applyMutation' 'async' to allow actor-isolated conformances
 69 | 	func beginEditing()
 70 | 	func endEditing()
 71 | 	func applyMutation(_ mutation: TextMutation<TextRange>) throws -> MutationOutput<TextRange>
    |       `- note: mark the protocol requirement 'applyMutation' 'async' to allow actor-isolated conformances
 72 | }
 73 |
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:83:13: error: main actor-isolated property 'endOfDocument' cannot be used to satisfy nonisolated requirement from protocol 'TextRangeCalculating'
 81 |
 82 | 	// range calculation
 83 | 	public var endOfDocument: TextPosition {
    |             `- error: main actor-isolated property 'endOfDocument' cannot be used to satisfy nonisolated requirement from protocol 'TextRangeCalculating'
 84 | 		partialSystem.endOfDocument
 85 | 	}
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Rearrange/Sources/Rearrange/TextRangeCalculating.swift:9:6: note: requirement 'endOfDocument' declared here
  7 |
  8 | 	var beginningOfDocument: Position { get }
  9 | 	var endOfDocument: Position { get }
    |      `- note: requirement 'endOfDocument' declared here
 10 |
 11 | 	func textRange(from start: Position, to end: Position) -> TextRange?
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:103:27: error: unknown attribute 'MainActor'
101 | }
102 |
103 | extension MockTextSystem: @MainActor Equatable {
    |                           `- error: unknown attribute 'MainActor'
104 | 	public static func == (lhs: MockTextSystem, rhs: MockTextSystem) -> Bool {
105 | 		lhs === rhs
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:104:21: error: main actor-isolated operator function '==' cannot be used to satisfy nonisolated requirement from protocol 'Equatable'
101 | }
102 |
103 | extension MockTextSystem: @MainActor Equatable {
    |                                      `- note: add '@preconcurrency' to the 'Equatable' conformance to defer isolation checking to run time
104 | 	public static func == (lhs: MockTextSystem, rhs: MockTextSystem) -> Bool {
    |                     |- error: main actor-isolated operator function '==' cannot be used to satisfy nonisolated requirement from protocol 'Equatable'
    |                     `- note: add 'nonisolated' to '==' to make this operator function not isolated to the actor
105 | 		lhs === rhs
106 | 	}
[47/51] Compiling IBeam MockTextSystem.swift
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:13:36: error: unknown attribute 'MainActor'
 11 | /// Useful for testing components that rely on the `TextSystem` protocol.
 12 | @preconcurrency @MainActor
 13 | public final class MockTextSystem: @MainActor TextSystemInterface {
    |                                    `- error: unknown attribute 'MainActor'
 14 | 	public typealias TextRange = NSRange
 15 | 	public typealias TextPosition = Int
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:57:14: error: main actor-isolated instance method 'boundingRect(for:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 11 | /// Useful for testing components that rely on the `TextSystem` protocol.
 12 | @preconcurrency @MainActor
 13 | public final class MockTextSystem: @MainActor TextSystemInterface {
    |                                               `- note: add '@preconcurrency' to the 'TextSystemInterface' conformance to defer isolation checking to run time
 14 | 	public typealias TextRange = NSRange
 15 | 	public typealias TextPosition = Int
    :
 55 | 	}
 56 |
 57 | 	public func boundingRect(for range: NSRange) -> CGRect? {
    |              |- error: main actor-isolated instance method 'boundingRect(for:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'boundingRect(for:)' to make this instance method not isolated to the actor
 58 | 		if case let .boundingRect(value) = responses.first {
 59 | 			responses.removeFirst()
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:62:7: note: mark the protocol requirement 'boundingRect(for:)' 'async' to allow actor-isolated conformances
 60 | public protocol TextSystemInterface: TextRangeCalculating, AnyObject {
 61 | 	// geometry
 62 | 	func boundingRect(for range: TextRange) -> CGRect?
    |       `- note: mark the protocol requirement 'boundingRect(for:)' 'async' to allow actor-isolated conformances
 63 |
 64 | 	// movement calculation
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:68:14: error: main actor-isolated instance method 'position(from:moving:by:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 66 |
 67 | 	// movement calculation
 68 | 	public func position(from position: TextPosition, moving direction: TextDirection, by granularity: TextGranularity) -> TextPosition? {
    |              |- error: main actor-isolated instance method 'position(from:moving:by:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'position(from:moving:by:)' to make this instance method not isolated to the actor
 69 | 		switch responses.removeFirst() {
 70 | 		case let .position(value):
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:65:7: note: mark the protocol requirement 'position(from:moving:by:)' 'async' to allow actor-isolated conformances
 63 |
 64 | 	// movement calculation
 65 | 	func position(from position: Position, moving direction: TextDirection, by granularity: TextGranularity) -> Position?
    |       `- note: mark the protocol requirement 'position(from:moving:by:)' 'async' to allow actor-isolated conformances
 66 | 	func layoutDirection(at position: Position) -> TextLayoutDirection?
 67 |
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:78:14: error: main actor-isolated instance method 'layoutDirection(at:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 76 | 	}
 77 |
 78 | 	public func layoutDirection(at position: TextPosition) -> TextLayoutDirection? {
    |              |- error: main actor-isolated instance method 'layoutDirection(at:)' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'layoutDirection(at:)' to make this instance method not isolated to the actor
 79 | 		partialSystem.layoutDirection(at: position)
 80 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:66:7: note: mark the protocol requirement 'layoutDirection(at:)' 'async' to allow actor-isolated conformances
 64 | 	// movement calculation
 65 | 	func position(from position: Position, moving direction: TextDirection, by granularity: TextGranularity) -> Position?
 66 | 	func layoutDirection(at position: Position) -> TextLayoutDirection?
    |       `- note: mark the protocol requirement 'layoutDirection(at:)' 'async' to allow actor-isolated conformances
 67 |
 68 | 	// content mutation
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:88:14: error: main actor-isolated instance method 'beginEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 86 |
 87 | 	// content mutation
 88 | 	public func beginEditing() {
    |              |- error: main actor-isolated instance method 'beginEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'beginEditing()' to make this instance method not isolated to the actor
 89 | 		partialSystem.beginEditing()
 90 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:69:7: note: mark the protocol requirement 'beginEditing()' 'async' to allow actor-isolated conformances
 67 |
 68 | 	// content mutation
 69 | 	func beginEditing()
    |       `- note: mark the protocol requirement 'beginEditing()' 'async' to allow actor-isolated conformances
 70 | 	func endEditing()
 71 | 	func applyMutation(_ mutation: TextMutation<TextRange>) throws -> MutationOutput<TextRange>
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:92:14: error: main actor-isolated instance method 'endEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 90 | 	}
 91 |
 92 | 	public func endEditing() {
    |              |- error: main actor-isolated instance method 'endEditing()' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'endEditing()' to make this instance method not isolated to the actor
 93 | 		partialSystem.endEditing()
 94 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:70:7: note: mark the protocol requirement 'endEditing()' 'async' to allow actor-isolated conformances
 68 | 	// content mutation
 69 | 	func beginEditing()
 70 | 	func endEditing()
    |       `- note: mark the protocol requirement 'endEditing()' 'async' to allow actor-isolated conformances
 71 | 	func applyMutation(_ mutation: TextMutation<TextRange>) throws -> MutationOutput<TextRange>
 72 | }
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:96:14: error: main actor-isolated instance method 'applyMutation' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
 94 | 	}
 95 |
 96 | 	public func applyMutation(_ mutation: TextMutation<TextRange>) -> MutationOutput<TextRange> {
    |              |- error: main actor-isolated instance method 'applyMutation' cannot be used to satisfy nonisolated requirement from protocol 'TextSystemInterface'
    |              `- note: add 'nonisolated' to 'applyMutation' to make this instance method not isolated to the actor
 97 | 		let undoManager = undoManagerProvider?()
 98 |
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/TextSystemInterface.swift:71:7: note: mark the protocol requirement 'applyMutation' 'async' to allow actor-isolated conformances
 69 | 	func beginEditing()
 70 | 	func endEditing()
 71 | 	func applyMutation(_ mutation: TextMutation<TextRange>) throws -> MutationOutput<TextRange>
    |       `- note: mark the protocol requirement 'applyMutation' 'async' to allow actor-isolated conformances
 72 | }
 73 |
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:83:13: error: main actor-isolated property 'endOfDocument' cannot be used to satisfy nonisolated requirement from protocol 'TextRangeCalculating'
 81 |
 82 | 	// range calculation
 83 | 	public var endOfDocument: TextPosition {
    |             `- error: main actor-isolated property 'endOfDocument' cannot be used to satisfy nonisolated requirement from protocol 'TextRangeCalculating'
 84 | 		partialSystem.endOfDocument
 85 | 	}
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Rearrange/Sources/Rearrange/TextRangeCalculating.swift:9:6: note: requirement 'endOfDocument' declared here
  7 |
  8 | 	var beginningOfDocument: Position { get }
  9 | 	var endOfDocument: Position { get }
    |      `- note: requirement 'endOfDocument' declared here
 10 |
 11 | 	func textRange(from start: Position, to end: Position) -> TextRange?
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:103:27: error: unknown attribute 'MainActor'
101 | }
102 |
103 | extension MockTextSystem: @MainActor Equatable {
    |                           `- error: unknown attribute 'MainActor'
104 | 	public static func == (lhs: MockTextSystem, rhs: MockTextSystem) -> Bool {
105 | 		lhs === rhs
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/MockTextSystem.swift:104:21: error: main actor-isolated operator function '==' cannot be used to satisfy nonisolated requirement from protocol 'Equatable'
101 | }
102 |
103 | extension MockTextSystem: @MainActor Equatable {
    |                                      `- note: add '@preconcurrency' to the 'Equatable' conformance to defer isolation checking to run time
104 | 	public static func == (lhs: MockTextSystem, rhs: MockTextSystem) -> Bool {
    |                     |- error: main actor-isolated operator function '==' cannot be used to satisfy nonisolated requirement from protocol 'Equatable'
    |                     `- note: add 'nonisolated' to '==' to make this operator function not isolated to the actor
105 | 		lhs === rhs
106 | 	}
[48/51] Compiling IBeam TextSystemCursorCoordinator.swift
[49/51] Compiling IBeam TextSystemInterface.swift
[50/51] Compiling IBeam TextViewIndicatorState.swift
[51/51] Compiling IBeam UndoManager+GroupActions.swift
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/UndoManager+GroupActions.swift:45:4: warning: capture of 'self' with non-sendable type 'UndoManager?' in a '@Sendable' closure
43 |
44 | 		registerUndo(withTarget: target) { [weak self] target in
45 | 			self?.invokeAction(for: target, action)
   |    `- warning: capture of 'self' with non-sendable type 'UndoManager?' in a '@Sendable' closure
46 | 		}
47 | 	}
Swift.Optional:1:21: note: generic enum 'Optional' does not conform to the 'Sendable' protocol
1 | @frozen public enum Optional<Wrapped> : ~Copyable where Wrapped : ~Copyable {
  |                     `- note: generic enum 'Optional' does not conform to the 'Sendable' protocol
2 |     case none
3 |     case some(Wrapped)
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/UndoManager+GroupActions.swift:45:36: warning: capture of 'action' with non-sendable type '(Bool, T) -> Void' in a '@Sendable' closure
43 |
44 | 		registerUndo(withTarget: target) { [weak self] target in
45 | 			self?.invokeAction(for: target, action)
   |                                    |- warning: capture of 'action' with non-sendable type '(Bool, T) -> Void' in a '@Sendable' closure
   |                                    `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
46 | 		}
47 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/UndoManager+GroupActions.swift:54:13: error: main actor-isolated property 'leave' can not be referenced from a nonisolated context
14 |
15 | 		public var enter: Action
16 | 		public var leave: Action
   |              `- note: property declared here
17 |
18 | 		public init(
   :
52 | 		invokeAction(for: target) { undoing, innerTarget in
53 | 			if undoing {
54 | 				actions.leave(innerTarget)
   |             `- error: main actor-isolated property 'leave' can not be referenced from a nonisolated context
55 | 			} else {
56 | 				actions.enter(innerTarget)
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/UndoManager+GroupActions.swift:56:13: error: main actor-isolated property 'enter' can not be referenced from a nonisolated context
13 | 		public typealias Action = (_ target: T) -> Void
14 |
15 | 		public var enter: Action
   |              `- note: property declared here
16 | 		public var leave: Action
17 |
   :
54 | 				actions.leave(innerTarget)
55 | 			} else {
56 | 				actions.enter(innerTarget)
   |             `- error: main actor-isolated property 'enter' can not be referenced from a nonisolated context
57 | 			}
58 | 		}
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/UndoManager+GroupActions.swift:64:13: error: main actor-isolated property 'enter' can not be referenced from a nonisolated context
13 | 		public typealias Action = (_ target: T) -> Void
14 |
15 | 		public var enter: Action
   |              `- note: property declared here
16 | 		public var leave: Action
17 |
   :
62 | 		invokeAction(for: target) { undoing, innerTarget in
63 | 			if undoing {
64 | 				actions.enter(innerTarget)
   |             `- error: main actor-isolated property 'enter' can not be referenced from a nonisolated context
65 | 			} else {
66 | 				actions.leave(innerTarget)
/Users/admin/builder/spi-builder-workspace/Sources/IBeam/UndoManager+GroupActions.swift:66:13: error: main actor-isolated property 'leave' can not be referenced from a nonisolated context
14 |
15 | 		public var enter: Action
16 | 		public var leave: Action
   |              `- note: property declared here
17 |
18 | 		public init(
   :
64 | 				actions.enter(innerTarget)
65 | 			} else {
66 | 				actions.leave(innerTarget)
   |             `- error: main actor-isolated property 'leave' can not be referenced from a nonisolated context
67 | 			}
68 | 		}
BUILD FAILURE 6.1 macosSpm