Build Information
Failed to build Runestone, reference 0.5.2 (592434), with Swift 6.4 for watchOS using Xcode 27.0 on 24 Sep 2026 13:02:46 UTC.
Build Command
env DEVELOPER_DIR=/Applications/Xcode-27.0.0-Release.Candidate.app xcrun xcodebuild -IDEClonedSourcePackagesDirPathOverride=$PWD/.dependencies -skipMacroValidation -skipPackagePluginValidation -derivedDataPath $PWD/.derivedData build -scheme Runestone -destination generic/platform=watchOSBuild Log
| `- note: 'UITextPosition' has been explicitly marked unavailable here
303 |
304 | @end
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextInputView.swift:1517:89: error: 'UITextRange' is unavailable in watchOS
1515 | }
1516 |
1517 | func textRange(from fromPosition: UITextPosition, to toPosition: UITextPosition) -> UITextRange? {
| `- error: 'UITextRange' is unavailable in watchOS
1518 | guard let fromIndexedPosition = fromPosition as? IndexedPosition, let toIndexedPosition = toPosition as? IndexedPosition else {
1519 | return nil
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:307:12: note: 'UITextRange' has been explicitly marked unavailable here
305 |
306 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
307 | @interface UITextRange : NSObject
| `- note: 'UITextRange' has been explicitly marked unavailable here
308 |
309 | @property (nonatomic, readonly, getter=isEmpty) BOOL empty; // Whether the range is zero-length.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextInputView.swift:1525:34: error: 'UITextPosition' is unavailable in watchOS
1523 | }
1524 |
1525 | func position(from position: UITextPosition, offset: Int) -> UITextPosition? {
| `- error: 'UITextPosition' is unavailable in watchOS
1526 | guard let indexedPosition = position as? IndexedPosition else {
1527 | return nil
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:302:12: note: 'UITextPosition' has been explicitly marked unavailable here
300 | * classes provided to be subclassed when adopting UITextInput */
301 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
302 | @interface UITextPosition : NSObject
| `- note: 'UITextPosition' has been explicitly marked unavailable here
303 |
304 | @end
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextInputView.swift:1525:66: error: 'UITextPosition' is unavailable in watchOS
1523 | }
1524 |
1525 | func position(from position: UITextPosition, offset: Int) -> UITextPosition? {
| `- error: 'UITextPosition' is unavailable in watchOS
1526 | guard let indexedPosition = position as? IndexedPosition else {
1527 | return nil
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:302:12: note: 'UITextPosition' has been explicitly marked unavailable here
300 | * classes provided to be subclassed when adopting UITextInput */
301 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
302 | @interface UITextPosition : NSObject
| `- note: 'UITextPosition' has been explicitly marked unavailable here
303 |
304 | @end
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextInputView.swift:1536:30: error: 'UITextPosition' is unavailable in watchOS
1534 | }
1535 |
1536 | func compare(_ position: UITextPosition, to other: UITextPosition) -> ComparisonResult {
| `- error: 'UITextPosition' is unavailable in watchOS
1537 | guard let indexedPosition = position as? IndexedPosition, let otherIndexedPosition = other as? IndexedPosition else {
1538 | #if targetEnvironment(macCatalyst)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:302:12: note: 'UITextPosition' has been explicitly marked unavailable here
300 | * classes provided to be subclassed when adopting UITextInput */
301 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
302 | @interface UITextPosition : NSObject
| `- note: 'UITextPosition' has been explicitly marked unavailable here
303 |
304 | @end
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextInputView.swift:1536:56: error: 'UITextPosition' is unavailable in watchOS
1534 | }
1535 |
1536 | func compare(_ position: UITextPosition, to other: UITextPosition) -> ComparisonResult {
| `- error: 'UITextPosition' is unavailable in watchOS
1537 | guard let indexedPosition = position as? IndexedPosition, let otherIndexedPosition = other as? IndexedPosition else {
1538 | #if targetEnvironment(macCatalyst)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:302:12: note: 'UITextPosition' has been explicitly marked unavailable here
300 | * classes provided to be subclassed when adopting UITextInput */
301 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
302 | @interface UITextPosition : NSObject
| `- note: 'UITextPosition' has been explicitly marked unavailable here
303 |
304 | @end
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextInputView.swift:1554:23: error: 'UITextPosition' is unavailable in watchOS
1552 | }
1553 |
1554 | func offset(from: UITextPosition, to toPosition: UITextPosition) -> Int {
| `- error: 'UITextPosition' is unavailable in watchOS
1555 | if let fromPosition = from as? IndexedPosition, let toPosition = toPosition as? IndexedPosition {
1556 | return toPosition.index - fromPosition.index
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:302:12: note: 'UITextPosition' has been explicitly marked unavailable here
300 | * classes provided to be subclassed when adopting UITextInput */
301 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
302 | @interface UITextPosition : NSObject
| `- note: 'UITextPosition' has been explicitly marked unavailable here
303 |
304 | @end
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextInputView.swift:1554:54: error: 'UITextPosition' is unavailable in watchOS
1552 | }
1553 |
1554 | func offset(from: UITextPosition, to toPosition: UITextPosition) -> Int {
| `- error: 'UITextPosition' is unavailable in watchOS
1555 | if let fromPosition = from as? IndexedPosition, let toPosition = toPosition as? IndexedPosition {
1556 | return toPosition.index - fromPosition.index
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:302:12: note: 'UITextPosition' has been explicitly marked unavailable here
300 | * classes provided to be subclassed when adopting UITextInput */
301 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
302 | @interface UITextPosition : NSObject
| `- note: 'UITextPosition' has been explicitly marked unavailable here
303 |
304 | @end
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextInputView.swift:1565:45: error: 'UITextPosition' is unavailable in watchOS
1563 | // MARK: - Writing Direction
1564 | extension TextInputView {
1565 | func baseWritingDirection(for position: UITextPosition, in direction: UITextStorageDirection) -> NSWritingDirection {
| `- error: 'UITextPosition' is unavailable in watchOS
1566 | .natural
1567 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:302:12: note: 'UITextPosition' has been explicitly marked unavailable here
300 | * classes provided to be subclassed when adopting UITextInput */
301 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
302 | @interface UITextPosition : NSObject
| `- note: 'UITextPosition' has been explicitly marked unavailable here
303 |
304 | @end
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextInputView.swift:1565:75: error: 'UITextStorageDirection' is unavailable in watchOS
1563 | // MARK: - Writing Direction
1564 | extension TextInputView {
1565 | func baseWritingDirection(for position: UITextPosition, in direction: UITextStorageDirection) -> NSWritingDirection {
| `- error: 'UITextStorageDirection' is unavailable in watchOS
1566 | .natural
1567 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:55:28: note: 'UITextStorageDirection' has been explicitly marked unavailable here
53 | @protocol UIEditMenuInteractionAnimating;
54 |
55 | typedef NS_ENUM(NSInteger, UITextStorageDirection) {
| `- note: 'UITextStorageDirection' has been explicitly marked unavailable here
56 | UITextStorageDirectionForward = 0,
57 | UITextStorageDirectionBackward
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextInputView.swift:1569:85: error: 'UITextRange' is unavailable in watchOS
1567 | }
1568 |
1569 | func setBaseWritingDirection(_ writingDirection: NSWritingDirection, for range: UITextRange) {}
| `- error: 'UITextRange' is unavailable in watchOS
1570 | }
1571 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:307:12: note: 'UITextRange' has been explicitly marked unavailable here
305 |
306 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
307 | @interface UITextRange : NSObject
| `- note: 'UITextRange' has been explicitly marked unavailable here
308 |
309 | @property (nonatomic, readonly, getter=isEmpty) BOOL empty; // Whether the range is zero-length.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextInputView.swift:1574:34: error: 'UITextRange' is unavailable in watchOS
1572 | // MARK: - UIEditMenuInteraction
1573 | extension TextInputView {
1574 | func editMenu(for textRange: UITextRange, suggestedActions: [UIMenuElement]) -> UIMenu? {
| `- error: 'UITextRange' is unavailable in watchOS
1575 | editMenuController.editMenu(for: textRange, suggestedActions: suggestedActions)
1576 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:307:12: note: 'UITextRange' has been explicitly marked unavailable here
305 |
306 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
307 | @interface UITextRange : NSObject
| `- note: 'UITextRange' has been explicitly marked unavailable here
308 |
309 | @property (nonatomic, readonly, getter=isEmpty) BOOL empty; // Whether the range is zero-length.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextInputView.swift:1574:66: error: 'UIMenuElement' is unavailable in watchOS
1572 | // MARK: - UIEditMenuInteraction
1573 | extension TextInputView {
1574 | func editMenu(for textRange: UITextRange, suggestedActions: [UIMenuElement]) -> UIMenu? {
| `- error: 'UIMenuElement' is unavailable in watchOS
1575 | editMenuController.editMenu(for: textRange, suggestedActions: suggestedActions)
1576 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIMenuElement.h:56:12: note: 'UIMenuElement' has been explicitly marked unavailable here
54 |
55 | UIKIT_EXTERN API_AVAILABLE(ios(13.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
56 | @interface UIMenuElement : NSObject <NSCopying, NSSecureCoding>
| `- note: 'UIMenuElement' has been explicitly marked unavailable here
57 |
58 | /// The element's title.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextInputView.swift:1574:85: error: 'UIMenu' is unavailable in watchOS
1572 | // MARK: - UIEditMenuInteraction
1573 | extension TextInputView {
1574 | func editMenu(for textRange: UITextRange, suggestedActions: [UIMenuElement]) -> UIMenu? {
| `- error: 'UIMenu' is unavailable in watchOS
1575 | editMenuController.editMenu(for: textRange, suggestedActions: suggestedActions)
1576 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIMenu.h:43:12: note: 'UIMenu' has been explicitly marked unavailable here
41 |
42 | UIKIT_EXTERN API_AVAILABLE(ios(13.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
43 | @interface UIMenu : UIMenuElement
| `- note: 'UIMenu' has been explicitly marked unavailable here
44 |
45 | /// Unique identifier.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:66:36: error: 'UITextAutocorrectionType' is unavailable in watchOS
64 | }
65 | /// The autocorrection style for the text view.
66 | public var autocorrectionType: UITextAutocorrectionType {
| `- error: 'UITextAutocorrectionType' is unavailable in watchOS
67 | get {
68 | textInputView.autocorrectionType
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInputTraits.h:37:28: note: 'UITextAutocorrectionType' has been explicitly marked unavailable here
35 | // cases, these values are ignored by the keyboard/input method implementation.
36 | //
37 | typedef NS_ENUM(NSInteger, UITextAutocorrectionType) {
| `- note: 'UITextAutocorrectionType' has been explicitly marked unavailable here
38 | UITextAutocorrectionTypeDefault,
39 | UITextAutocorrectionTypeNo,
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:75:40: error: 'UITextAutocapitalizationType' is unavailable in watchOS
73 | }
74 | /// The autocapitalization style for the text view.
75 | public var autocapitalizationType: UITextAutocapitalizationType {
| `- error: 'UITextAutocapitalizationType' is unavailable in watchOS
76 | get {
77 | textInputView.autocapitalizationType
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInputTraits.h:22:28: note: 'UITextAutocapitalizationType' has been explicitly marked unavailable here
20 | // cases, these values are ignored by the keyboard/input method implementation.
21 | //
22 | typedef NS_ENUM(NSInteger, UITextAutocapitalizationType) {
| `- note: 'UITextAutocapitalizationType' has been explicitly marked unavailable here
23 | UITextAutocapitalizationTypeNone,
24 | UITextAutocapitalizationTypeWords,
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:84:33: error: 'UITextSmartQuotesType' is unavailable in watchOS
82 | }
83 | /// The spell-checking style for the text view.
84 | public var smartQuotesType: UITextSmartQuotesType {
| `- error: 'UITextSmartQuotesType' is unavailable in watchOS
85 | get {
86 | textInputView.smartQuotesType
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInputTraits.h:58:28: note: 'UITextSmartQuotesType' has been explicitly marked unavailable here
56 | //
57 | // Controls the automatic conversion of typographic quote characters for a text widget.
58 | typedef NS_ENUM(NSInteger, UITextSmartQuotesType) {
| `- note: 'UITextSmartQuotesType' has been explicitly marked unavailable here
59 | UITextSmartQuotesTypeDefault,
60 | UITextSmartQuotesTypeNo,
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:93:33: error: 'UITextSmartDashesType' is unavailable in watchOS
91 | }
92 | /// The configuration state for smart dashes.
93 | public var smartDashesType: UITextSmartDashesType {
| `- error: 'UITextSmartDashesType' is unavailable in watchOS
94 | get {
95 | textInputView.smartDashesType
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInputTraits.h:68:28: note: 'UITextSmartDashesType' has been explicitly marked unavailable here
66 | //
67 | // Controls the automatic conversion of hyphens into en/em-dashes for a text widget.
68 | typedef NS_ENUM(NSInteger, UITextSmartDashesType) {
| `- note: 'UITextSmartDashesType' has been explicitly marked unavailable here
69 | UITextSmartDashesTypeDefault,
70 | UITextSmartDashesTypeNo,
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:102:39: error: 'UITextSmartInsertDeleteType' is unavailable in watchOS
100 | }
101 | /// The configuration state for the smart insertion and deletion of space characters.
102 | public var smartInsertDeleteType: UITextSmartInsertDeleteType {
| `- error: 'UITextSmartInsertDeleteType' is unavailable in watchOS
103 | get {
104 | textInputView.smartInsertDeleteType
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInputTraits.h:78:28: note: 'UITextSmartInsertDeleteType' has been explicitly marked unavailable here
76 | //
77 | // Controls the automatic insertion/removal of spaces for a text widget.
78 | typedef NS_ENUM(NSInteger, UITextSmartInsertDeleteType) {
| `- note: 'UITextSmartInsertDeleteType' has been explicitly marked unavailable here
79 | UITextSmartInsertDeleteTypeDefault,
80 | UITextSmartInsertDeleteTypeNo,
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:111:35: error: 'UITextSpellCheckingType' is unavailable in watchOS
109 | }
110 | /// The spell-checking style for the text object.
111 | public var spellCheckingType: UITextSpellCheckingType {
| `- error: 'UITextSpellCheckingType' is unavailable in watchOS
112 | get {
113 | textInputView.spellCheckingType
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInputTraits.h:48:28: note: 'UITextSpellCheckingType' has been explicitly marked unavailable here
46 | // Controls the annotation of misspelled words for a text widget.
47 | // Note: Some input methods do not support spell checking.
48 | typedef NS_ENUM(NSInteger, UITextSpellCheckingType) {
| `- note: 'UITextSpellCheckingType' has been explicitly marked unavailable here
49 | UITextSpellCheckingTypeDefault,
50 | UITextSpellCheckingTypeNo,
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:120:30: error: 'UIKeyboardType' is unavailable in watchOS
118 | }
119 | /// The keyboard type for the text view.
120 | public var keyboardType: UIKeyboardType {
| `- error: 'UIKeyboardType' is unavailable in watchOS
121 | get {
122 | textInputView.keyboardType
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInputTraits.h:127:28: note: 'UIKeyboardType' has been explicitly marked unavailable here
125 | // type if UIKeyboardTypeNumberPad is not supported).
126 | //
127 | typedef NS_ENUM(NSInteger, UIKeyboardType) {
| `- note: 'UIKeyboardType' has been explicitly marked unavailable here
128 | UIKeyboardTypeDefault, // Default type for the current input method.
129 | UIKeyboardTypeASCIICapable, // Displays a keyboard which can enter ASCII characters
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:129:36: error: 'UIKeyboardAppearance' is unavailable in watchOS
127 | }
128 | /// The appearance style of the keyboard for the text view.
129 | public var keyboardAppearance: UIKeyboardAppearance {
| `- error: 'UIKeyboardAppearance' is unavailable in watchOS
130 | get {
131 | textInputView.keyboardAppearance
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInputTraits.h:154:28: note: 'UIKeyboardAppearance' has been explicitly marked unavailable here
152 | // match to the requested type.
153 | //
154 | typedef NS_ENUM(NSInteger, UIKeyboardAppearance) {
| `- note: 'UIKeyboardAppearance' has been explicitly marked unavailable here
155 | UIKeyboardAppearanceDefault, // Default appearance for the current input method.
156 | UIKeyboardAppearanceDark API_AVAILABLE(ios(7.0)),
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:138:31: error: 'UIReturnKeyType' is unavailable in watchOS
136 | }
137 | /// The display of the return key.
138 | public var returnKeyType: UIReturnKeyType {
| `- error: 'UIReturnKeyType' is unavailable in watchOS
139 | get {
140 | textInputView.returnKeyType
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInputTraits.h:169:28: note: 'UIReturnKeyType' has been explicitly marked unavailable here
167 | // different implementation.
168 | //
169 | typedef NS_ENUM(NSInteger, UIReturnKeyType) {
| `- note: 'UIReturnKeyType' has been explicitly marked unavailable here
170 | UIReturnKeyDefault,
171 | UIReturnKeyGo,
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:192:35: error: 'UITextRange' is unavailable in watchOS
190 | }
191 | /// The current selection range of the text view as a UITextRange.
192 | public var selectedTextRange: UITextRange? {
| `- error: 'UITextRange' is unavailable in watchOS
193 | get {
194 | textInputView.selectedTextRange
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:307:12: note: 'UITextRange' has been explicitly marked unavailable here
305 |
306 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
307 | @interface UITextRange : NSObject
| `- note: 'UITextRange' has been explicitly marked unavailable here
308 |
309 | @property (nonatomic, readonly, getter=isEmpty) BOOL empty; // Whether the range is zero-length.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:202:45: error: 'UIView' is unavailable in watchOS
200 | #if compiler(<5.9) || !os(visionOS)
201 | /// The custom input accessory view to display when the receiver becomes the first responder.
202 | override public var inputAccessoryView: UIView? {
| `- error: 'UIView' is unavailable in watchOS
203 | get {
204 | if isInputAccessoryViewEnabled {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
| `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass; // default is [CALayer class]. Used when creating the underlying layer for the view.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:217:25: error: cannot override 'inputAssistantItem' which has been marked unavailable
215 | #if compiler(<5.9) || !os(visionOS)
216 | /// The input assistant to use when configuring the keyboard's shortcuts bar.
217 | override public var inputAssistantItem: UITextInputAssistantItem {
| |- error: cannot override 'inputAssistantItem' which has been marked unavailable
| `- note: remove 'override' modifier to declare a new 'inputAssistantItem'
218 | textInputView.inputAssistantItem
219 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIResponder.h:162:76: note: 'inputAssistantItem' has been explicitly marked unavailable here
160 | /// Modifications made to the returned UITextInputAssistantItem are reflected automatically.
161 | /// This method should not be overridden. Goes up the responder chain.
162 | @property (nonnull, nonatomic, readonly, strong) UITextInputAssistantItem *inputAssistantItem API_AVAILABLE(ios(9.0), visionos(2.0)) API_UNAVAILABLE(tvos) API_UNAVAILABLE(watchos);
| `- note: 'inputAssistantItem' has been explicitly marked unavailable here
163 |
164 | // For viewController equivalents of -inputView and -inputAccessoryView
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:217:45: error: 'UITextInputAssistantItem' is unavailable in watchOS
215 | #if compiler(<5.9) || !os(visionOS)
216 | /// The input assistant to use when configuring the keyboard's shortcuts bar.
217 | override public var inputAssistantItem: UITextInputAssistantItem {
| `- error: 'UITextInputAssistantItem' is unavailable in watchOS
218 | textInputView.inputAssistantItem
219 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:94:12: note: 'UITextInputAssistantItem' has been explicitly marked unavailable here
92 |
93 | UIKIT_EXTERN API_AVAILABLE(ios(9.0), visionos(2.0)) API_UNAVAILABLE(tvos) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
94 | @interface UITextInputAssistantItem : NSObject
| `- note: 'UITextInputAssistantItem' has been explicitly marked unavailable here
95 |
96 | /// Default is YES, controls if the user is allowed to hide the shortcuts bar. Does not influence the built in auto-hiding logic.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:589:33: error: 'UIFindInteraction' is unavailable in watchOS
587 | /// Call [`presentFindNavigator(showingReplace:)`](https://developer.apple.com/documentation/uikit/uifindinteraction/3975832-presentfindnavigator) on the UIFindInteraction object to invoke the find interaction and display the find panel.
588 | @available(iOS 16, *)
589 | public var findInteraction: UIFindInteraction? {
| `- error: 'UIFindInteraction' is unavailable in watchOS
590 | textSearchingHelper.findInteraction
591 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIFindInteraction.h:39:12: note: 'UIFindInteraction' has been explicitly marked unavailable here
37 |
38 | UIKIT_EXTERN API_AVAILABLE(ios(16.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
39 | @interface UIFindInteraction : NSObject <UIInteraction>
| `- note: 'UIFindInteraction' has been explicitly marked unavailable here
40 |
41 | /// Returns YES if the find navigator panel is currently visible.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:594:43: error: 'UITextInteraction' is unavailable in watchOS
592 |
593 | private let textInputView: TextInputView
594 | private let editableTextInteraction = UITextInteraction(for: .editable)
| `- error: 'UITextInteraction' is unavailable in watchOS
595 | private let nonEditableTextInteraction = UITextInteraction(for: .nonEditable)
596 | @available(iOS 16.0, *)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInteraction.h:31:12: note: 'UITextInteraction' has been explicitly marked unavailable here
29 |
30 | UIKIT_EXTERN API_AVAILABLE(ios(13.0)) API_UNAVAILABLE(tvos, watchos) NS_SWIFT_UI_ACTOR
31 | @interface UITextInteraction : NSObject <UIInteraction>
| `- note: 'UITextInteraction' has been explicitly marked unavailable here
32 |
33 | @property (nonatomic, weak) id <UITextInteractionDelegate> delegate;
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:595:46: error: 'UITextInteraction' is unavailable in watchOS
593 | private let textInputView: TextInputView
594 | private let editableTextInteraction = UITextInteraction(for: .editable)
595 | private let nonEditableTextInteraction = UITextInteraction(for: .nonEditable)
| `- error: 'UITextInteraction' is unavailable in watchOS
596 | @available(iOS 16.0, *)
597 | private var editMenuInteraction: UIEditMenuInteraction? {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInteraction.h:31:12: note: 'UITextInteraction' has been explicitly marked unavailable here
29 |
30 | UIKIT_EXTERN API_AVAILABLE(ios(13.0)) API_UNAVAILABLE(tvos, watchos) NS_SWIFT_UI_ACTOR
31 | @interface UITextInteraction : NSObject <UIInteraction>
| `- note: 'UITextInteraction' has been explicitly marked unavailable here
32 |
33 | @property (nonatomic, weak) id <UITextInteractionDelegate> delegate;
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:597:38: error: 'UIEditMenuInteraction' is unavailable in watchOS
595 | private let nonEditableTextInteraction = UITextInteraction(for: .nonEditable)
596 | @available(iOS 16.0, *)
597 | private var editMenuInteraction: UIEditMenuInteraction? {
| `- error: 'UIEditMenuInteraction' is unavailable in watchOS
598 | _editMenuInteraction as? UIEditMenuInteraction
599 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIEditMenuInteraction.h:51:12: note: 'UIEditMenuInteraction' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(16.0)) API_UNAVAILABLE(tvos) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UIEditMenuInteraction : NSObject <UIInteraction>
| `- note: 'UIEditMenuInteraction' has been explicitly marked unavailable here
52 |
53 | /// The object that defines the delegate of the interaction.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:602:38: error: 'UIView' is unavailable in watchOS
600 | private var _editMenuInteraction: Any?
601 | private let tapGestureRecognizer = QuickTapGestureRecognizer()
602 | private var _inputAccessoryView: UIView?
| `- error: 'UIView' is unavailable in watchOS
603 | private var isPerformingNonEditableTextInteraction = false
604 | private var delegateAllowsEditingToBegin: Bool {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
| `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass; // default is [CALayer class]. Used when creating the underlying layer for the view.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:630:60: error: 'UIGestureRecognizer' is unavailable in watchOS
628 | // The approach is based on the one described in Steve Shephard's blog post "Adventures with UITextInteraction".
629 | // https://steveshepard.com/blog/adventures-with-uitextinteraction/
630 | private var textRangeAdjustmentGestureRecognizers: Set<UIGestureRecognizer> = []
| `- error: 'UIGestureRecognizer' is unavailable in watchOS
631 | private var previousSelectedRangeDuringGestureHandling: NSRange?
632 | private var preferredContentSize: CGSize {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGestureRecognizer.h:35:12: note: 'UIGestureRecognizer' has been explicitly marked unavailable here
33 |
34 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
35 | @interface UIGestureRecognizer : NSObject
| `- note: 'UIGestureRecognizer' has been explicitly marked unavailable here
36 |
37 | // Valid action method signatures:
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:641:35: error: 'UIView' is unavailable in watchOS
639 | }
640 | @available(iOS 26.0, *)
641 | private var scrollPocketView: UIView? {
| `- error: 'UIView' is unavailable in watchOS
642 | if let _scrollPocketView = _scrollPocketView {
643 | return _scrollPocketView
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
| `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass; // default is [CALayer class]. Used when creating the underlying layer for the view.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:653:36: error: 'UIView' is unavailable in watchOS
651 | }
652 | }
653 | private var _scrollPocketView: UIView?
| `- error: 'UIView' is unavailable in watchOS
654 |
655 | /// Create a new text view.
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
| `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass; // default is [CALayer class]. Used when creating the underlying layer for the view.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:697:24: error: cannot override 'safeAreaInsetsDidChange' which has been marked unavailable
695 |
696 | /// Called when the safe area of the view changes.
697 | override open func safeAreaInsetsDidChange() {
| |- error: cannot override 'safeAreaInsetsDidChange' which has been marked unavailable
| `- note: remove 'override' modifier to declare a new 'safeAreaInsetsDidChange'
698 | super.safeAreaInsetsDidChange()
699 | textInputView.scrollViewSafeAreaInsets = safeAreaInsets
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:294:1: note: 'safeAreaInsetsDidChange()' has been explicitly marked unavailable here
292 |
293 | @property (nonatomic,readonly) UIEdgeInsets safeAreaInsets API_AVAILABLE(ios(11.0), tvos(11.0)) API_UNAVAILABLE(watchos);
294 | - (void)safeAreaInsetsDidChange API_AVAILABLE(ios(11.0), tvos(11.0)) API_UNAVAILABLE(watchos);
| `- note: 'safeAreaInsetsDidChange()' has been explicitly marked unavailable here
295 |
296 | /* The edges of this guide are constrained to equal the edges of the view inset by the layoutMargins
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:794:32: error: 'UITextRange' is unavailable in watchOS
792 | /// - range: A range of text in the document.
793 | /// - text: A string to replace the text in range.
794 | open func replace(_ range: UITextRange, withText text: String) {
| `- error: 'UITextRange' is unavailable in watchOS
795 | textInputView.inputDelegate?.selectionWillChange(textInputView)
796 | textInputView.replace(range, withText: text)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:307:12: note: 'UITextRange' has been explicitly marked unavailable here
305 |
306 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
307 | @interface UITextRange : NSObject
| `- note: 'UITextRange' has been explicitly marked unavailable here
308 |
309 | @property (nonatomic, readonly, getter=isEmpty) BOOL empty; // Whether the range is zero-length.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:13:22: error: 'UIScrollView' is unavailable in watchOS
11 | /// When initially configuring the `TextView` with a theme, a language and the text to be shown, it is recommended to use the ``setState(_:addUndoAction:)`` function.
12 | /// The function takes an instance of ``TextViewState`` as input which can be created on a background queue to avoid blocking the main queue while doing the initial parse of a text.
13 | open class TextView: UIScrollView {
| `- error: 'UIScrollView' is unavailable in watchOS
14 | /// Delegate to receive callbacks for events triggered by the editor.
15 | public weak var editorDelegate: TextViewDelegate?
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIScrollView.h:87:12: note: 'UIScrollView' has been explicitly marked unavailable here
85 |
86 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
87 | @interface UIScrollView : UIView <NSCoding, UIFocusItemScrollableContainer>
| `- note: 'UIScrollView' has been explicitly marked unavailable here
88 |
89 | @property(nonatomic) CGPoint contentOffset; // default CGPointZero
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:984:33: error: 'UITextRange' is unavailable in watchOS
982 | extension TextView {
983 | /// The range of currently marked text in a document.
984 | public var markedTextRange: UITextRange? {
| `- error: 'UITextRange' is unavailable in watchOS
985 | textInputView.markedTextRange
986 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:307:12: note: 'UITextRange' has been explicitly marked unavailable here
305 |
306 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
307 | @interface UITextRange : NSObject
| `- note: 'UITextRange' has been explicitly marked unavailable here
308 |
309 | @property (nonatomic, readonly, getter=isEmpty) BOOL empty; // Whether the range is zero-length.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:989:37: error: 'UITextPosition' is unavailable in watchOS
987 |
988 | /// The text position for the beginning of a document.
989 | public var beginningOfDocument: UITextPosition {
| `- error: 'UITextPosition' is unavailable in watchOS
990 | textInputView.beginningOfDocument
991 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:302:12: note: 'UITextPosition' has been explicitly marked unavailable here
300 | * classes provided to be subclassed when adopting UITextInput */
301 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
302 | @interface UITextPosition : NSObject
| `- note: 'UITextPosition' has been explicitly marked unavailable here
303 |
304 | @end
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:994:31: error: 'UITextPosition' is unavailable in watchOS
992 |
993 | /// The text position for the end of a document.
994 | public var endOfDocument: UITextPosition {
| `- error: 'UITextPosition' is unavailable in watchOS
995 | textInputView.endOfDocument
996 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:302:12: note: 'UITextPosition' has been explicitly marked unavailable here
300 | * classes provided to be subclassed when adopting UITextInput */
301 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
302 | @interface UITextPosition : NSObject
| `- note: 'UITextPosition' has been explicitly marked unavailable here
303 |
304 | @end
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:1003:46: error: 'UITextPosition' is unavailable in watchOS
1001 | /// - toPosition: An object that represents another location in a document.
1002 | /// - Returns: An object that represents the range between fromPosition and toPosition.
1003 | public func textRange(from fromPosition: UITextPosition, to toPosition: UITextPosition) -> UITextRange? {
| `- error: 'UITextPosition' is unavailable in watchOS
1004 | textInputView.textRange(from: fromPosition, to: toPosition)
1005 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:302:12: note: 'UITextPosition' has been explicitly marked unavailable here
300 | * classes provided to be subclassed when adopting UITextInput */
301 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
302 | @interface UITextPosition : NSObject
| `- note: 'UITextPosition' has been explicitly marked unavailable here
303 |
304 | @end
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:1003:77: error: 'UITextPosition' is unavailable in watchOS
1001 | /// - toPosition: An object that represents another location in a document.
1002 | /// - Returns: An object that represents the range between fromPosition and toPosition.
1003 | public func textRange(from fromPosition: UITextPosition, to toPosition: UITextPosition) -> UITextRange? {
| `- error: 'UITextPosition' is unavailable in watchOS
1004 | textInputView.textRange(from: fromPosition, to: toPosition)
1005 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:302:12: note: 'UITextPosition' has been explicitly marked unavailable here
300 | * classes provided to be subclassed when adopting UITextInput */
301 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
302 | @interface UITextPosition : NSObject
| `- note: 'UITextPosition' has been explicitly marked unavailable here
303 |
304 | @end
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:1003:96: error: 'UITextRange' is unavailable in watchOS
1001 | /// - toPosition: An object that represents another location in a document.
1002 | /// - Returns: An object that represents the range between fromPosition and toPosition.
1003 | public func textRange(from fromPosition: UITextPosition, to toPosition: UITextPosition) -> UITextRange? {
| `- error: 'UITextRange' is unavailable in watchOS
1004 | textInputView.textRange(from: fromPosition, to: toPosition)
1005 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:307:12: note: 'UITextRange' has been explicitly marked unavailable here
305 |
306 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
307 | @interface UITextRange : NSObject
| `- note: 'UITextRange' has been explicitly marked unavailable here
308 |
309 | @property (nonatomic, readonly, getter=isEmpty) BOOL empty; // Whether the range is zero-length.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:1012:41: error: 'UITextPosition' is unavailable in watchOS
1010 | /// - offset: A character offset from position. It can be a positive or negative value.
1011 | /// - Returns: A custom UITextPosition object that represents the location in a document that is at the specified offset from position. Returns nil if the computed text position is less than 0 or greater than the length of the backing string.
1012 | public func position(from position: UITextPosition, offset: Int) -> UITextPosition? {
| `- error: 'UITextPosition' is unavailable in watchOS
1013 | textInputView.position(from: position, offset: offset)
1014 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:302:12: note: 'UITextPosition' has been explicitly marked unavailable here
300 | * classes provided to be subclassed when adopting UITextInput */
301 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
302 | @interface UITextPosition : NSObject
| `- note: 'UITextPosition' has been explicitly marked unavailable here
303 |
304 | @end
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:1012:73: error: 'UITextPosition' is unavailable in watchOS
1010 | /// - offset: A character offset from position. It can be a positive or negative value.
1011 | /// - Returns: A custom UITextPosition object that represents the location in a document that is at the specified offset from position. Returns nil if the computed text position is less than 0 or greater than the length of the backing string.
1012 | public func position(from position: UITextPosition, offset: Int) -> UITextPosition? {
| `- error: 'UITextPosition' is unavailable in watchOS
1013 | textInputView.position(from: position, offset: offset)
1014 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:302:12: note: 'UITextPosition' has been explicitly marked unavailable here
300 | * classes provided to be subclassed when adopting UITextInput */
301 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
302 | @interface UITextPosition : NSObject
| `- note: 'UITextPosition' has been explicitly marked unavailable here
303 |
304 | @end
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:1022:41: error: 'UITextPosition' is unavailable in watchOS
1020 | /// - offset: A character offset from position.
1021 | /// - Returns: Returns the text position at a specified offset in a specified direction from another text position. Returns nil if the computed text position is less than 0 or greater than the length of the backing string.
1022 | public func position(from position: UITextPosition, in direction: UITextLayoutDirection, offset: Int) -> UITextPosition? {
| `- error: 'UITextPosition' is unavailable in watchOS
1023 | textInputView.position(from: position, in: direction, offset: offset)
1024 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:302:12: note: 'UITextPosition' has been explicitly marked unavailable here
300 | * classes provided to be subclassed when adopting UITextInput */
301 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
302 | @interface UITextPosition : NSObject
| `- note: 'UITextPosition' has been explicitly marked unavailable here
303 |
304 | @end
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:1022:71: error: 'UITextLayoutDirection' is unavailable in watchOS
1020 | /// - offset: A character offset from position.
1021 | /// - Returns: Returns the text position at a specified offset in a specified direction from another text position. Returns nil if the computed text position is less than 0 or greater than the length of the backing string.
1022 | public func position(from position: UITextPosition, in direction: UITextLayoutDirection, offset: Int) -> UITextPosition? {
| `- error: 'UITextLayoutDirection' is unavailable in watchOS
1023 | textInputView.position(from: position, in: direction, offset: offset)
1024 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:60:28: note: 'UITextLayoutDirection' has been explicitly marked unavailable here
58 | } API_UNAVAILABLE(watchos);
59 |
60 | typedef NS_ENUM(NSInteger, UITextLayoutDirection) {
| `- note: 'UITextLayoutDirection' has been explicitly marked unavailable here
61 | UITextLayoutDirectionRight = 2,
62 | UITextLayoutDirectionLeft,
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:1022:110: error: 'UITextPosition' is unavailable in watchOS
1020 | /// - offset: A character offset from position.
1021 | /// - Returns: Returns the text position at a specified offset in a specified direction from another text position. Returns nil if the computed text position is less than 0 or greater than the length of the backing string.
1022 | public func position(from position: UITextPosition, in direction: UITextLayoutDirection, offset: Int) -> UITextPosition? {
| `- error: 'UITextPosition' is unavailable in watchOS
1023 | textInputView.position(from: position, in: direction, offset: offset)
1024 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:302:12: note: 'UITextPosition' has been explicitly marked unavailable here
300 | * classes provided to be subclassed when adopting UITextInput */
301 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
302 | @interface UITextPosition : NSObject
| `- note: 'UITextPosition' has been explicitly marked unavailable here
303 |
304 | @end
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:1031:37: error: 'UITextPosition' is unavailable in watchOS
1029 | /// - other: A custom object that represents another location within a document.
1030 | /// - Returns: A value that indicates whether the two text positions are identical or whether one is before the other.
1031 | public func compare(_ position: UITextPosition, to other: UITextPosition) -> ComparisonResult {
| `- error: 'UITextPosition' is unavailable in watchOS
1032 | textInputView.compare(position, to: other)
1033 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:302:12: note: 'UITextPosition' has been explicitly marked unavailable here
300 | * classes provided to be subclassed when adopting UITextInput */
301 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
302 | @interface UITextPosition : NSObject
| `- note: 'UITextPosition' has been explicitly marked unavailable here
303 |
304 | @end
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:1031:63: error: 'UITextPosition' is unavailable in watchOS
1029 | /// - other: A custom object that represents another location within a document.
1030 | /// - Returns: A value that indicates whether the two text positions are identical or whether one is before the other.
1031 | public func compare(_ position: UITextPosition, to other: UITextPosition) -> ComparisonResult {
| `- error: 'UITextPosition' is unavailable in watchOS
1032 | textInputView.compare(position, to: other)
1033 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:302:12: note: 'UITextPosition' has been explicitly marked unavailable here
300 | * classes provided to be subclassed when adopting UITextInput */
301 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
302 | @interface UITextPosition : NSObject
| `- note: 'UITextPosition' has been explicitly marked unavailable here
303 |
304 | @end
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:1040:30: error: 'UITextPosition' is unavailable in watchOS
1038 | /// - toPosition: A custom object that represents another location within document.
1039 | /// - Returns: The number of UTF-16 characters between fromPosition and toPosition.
1040 | public func offset(from: UITextPosition, to toPosition: UITextPosition) -> Int {
| `- error: 'UITextPosition' is unavailable in watchOS
1041 | textInputView.offset(from: from, to: toPosition)
1042 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:302:12: note: 'UITextPosition' has been explicitly marked unavailable here
300 | * classes provided to be subclassed when adopting UITextInput */
301 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
302 | @interface UITextPosition : NSObject
| `- note: 'UITextPosition' has been explicitly marked unavailable here
303 |
304 | @end
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:1040:61: error: 'UITextPosition' is unavailable in watchOS
1038 | /// - toPosition: A custom object that represents another location within document.
1039 | /// - Returns: The number of UTF-16 characters between fromPosition and toPosition.
1040 | public func offset(from: UITextPosition, to toPosition: UITextPosition) -> Int {
| `- error: 'UITextPosition' is unavailable in watchOS
1041 | textInputView.offset(from: from, to: toPosition)
1042 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:302:12: note: 'UITextPosition' has been explicitly marked unavailable here
300 | * classes provided to be subclassed when adopting UITextInput */
301 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
302 | @interface UITextPosition : NSObject
| `- note: 'UITextPosition' has been explicitly marked unavailable here
303 |
304 | @end
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:1045:27: error: 'UITextInputTokenizer' is unavailable in watchOS
1043 |
1044 | /// An input tokenizer that provides information about the granularity of text units.
1045 | public var tokenizer: UITextInputTokenizer {
| `- error: 'UITextInputTokenizer' is unavailable in watchOS
1046 | textInputView.tokenizer
1047 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:350:11: note: 'UITextInputTokenizer' has been explicitly marked unavailable here
348 | /* A tokenizer allows the text input system to evaluate text units of varying granularity. */
349 | API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
350 | @protocol UITextInputTokenizer <NSObject>
| `- note: 'UITextInputTokenizer' has been explicitly marked unavailable here
351 |
352 | @required
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:1054:40: error: 'UITextRange' is unavailable in watchOS
1052 | /// - direction: A constant that indicates a direction of layout (right, left, up, down).
1053 | /// - Returns: A text-position object that identifies a location in the visible text.
1054 | public func position(within range: UITextRange, farthestIn direction: UITextLayoutDirection) -> UITextPosition? {
| `- error: 'UITextRange' is unavailable in watchOS
1055 | textInputView.position(within: range, farthestIn: direction)
1056 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:307:12: note: 'UITextRange' has been explicitly marked unavailable here
305 |
306 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
307 | @interface UITextRange : NSObject
| `- note: 'UITextRange' has been explicitly marked unavailable here
308 |
309 | @property (nonatomic, readonly, getter=isEmpty) BOOL empty; // Whether the range is zero-length.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:1054:75: error: 'UITextLayoutDirection' is unavailable in watchOS
1052 | /// - direction: A constant that indicates a direction of layout (right, left, up, down).
1053 | /// - Returns: A text-position object that identifies a location in the visible text.
1054 | public func position(within range: UITextRange, farthestIn direction: UITextLayoutDirection) -> UITextPosition? {
| `- error: 'UITextLayoutDirection' is unavailable in watchOS
1055 | textInputView.position(within: range, farthestIn: direction)
1056 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:60:28: note: 'UITextLayoutDirection' has been explicitly marked unavailable here
58 | } API_UNAVAILABLE(watchos);
59 |
60 | typedef NS_ENUM(NSInteger, UITextLayoutDirection) {
| `- note: 'UITextLayoutDirection' has been explicitly marked unavailable here
61 | UITextLayoutDirectionRight = 2,
62 | UITextLayoutDirectionLeft,
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:1054:101: error: 'UITextPosition' is unavailable in watchOS
1052 | /// - direction: A constant that indicates a direction of layout (right, left, up, down).
1053 | /// - Returns: A text-position object that identifies a location in the visible text.
1054 | public func position(within range: UITextRange, farthestIn direction: UITextLayoutDirection) -> UITextPosition? {
| `- error: 'UITextPosition' is unavailable in watchOS
1055 | textInputView.position(within: range, farthestIn: direction)
1056 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:302:12: note: 'UITextPosition' has been explicitly marked unavailable here
300 | * classes provided to be subclassed when adopting UITextInput */
301 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
302 | @interface UITextPosition : NSObject
| `- note: 'UITextPosition' has been explicitly marked unavailable here
303 |
304 | @end
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:1063:54: error: 'UITextPosition' is unavailable in watchOS
1061 | /// - direction: A constant that indicates a direction of layout (right, left, up, down).
1062 | /// - Returns: A text-range object that represents the distance from position to the farthest extent in direction.
1063 | public func characterRange(byExtending position: UITextPosition, in direction: UITextLayoutDirection) -> UITextRange? {
| `- error: 'UITextPosition' is unavailable in watchOS
1064 | textInputView.characterRange(byExtending: position, in: direction)
1065 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:302:12: note: 'UITextPosition' has been explicitly marked unavailable here
300 | * classes provided to be subclassed when adopting UITextInput */
301 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
302 | @interface UITextPosition : NSObject
| `- note: 'UITextPosition' has been explicitly marked unavailable here
303 |
304 | @end
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:1063:84: error: 'UITextLayoutDirection' is unavailable in watchOS
1061 | /// - direction: A constant that indicates a direction of layout (right, left, up, down).
1062 | /// - Returns: A text-range object that represents the distance from position to the farthest extent in direction.
1063 | public func characterRange(byExtending position: UITextPosition, in direction: UITextLayoutDirection) -> UITextRange? {
| `- error: 'UITextLayoutDirection' is unavailable in watchOS
1064 | textInputView.characterRange(byExtending: position, in: direction)
1065 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:60:28: note: 'UITextLayoutDirection' has been explicitly marked unavailable here
58 | } API_UNAVAILABLE(watchos);
59 |
60 | typedef NS_ENUM(NSInteger, UITextLayoutDirection) {
| `- note: 'UITextLayoutDirection' has been explicitly marked unavailable here
61 | UITextLayoutDirectionRight = 2,
62 | UITextLayoutDirectionLeft,
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:1063:110: error: 'UITextRange' is unavailable in watchOS
1061 | /// - direction: A constant that indicates a direction of layout (right, left, up, down).
1062 | /// - Returns: A text-range object that represents the distance from position to the farthest extent in direction.
1063 | public func characterRange(byExtending position: UITextPosition, in direction: UITextLayoutDirection) -> UITextRange? {
| `- error: 'UITextRange' is unavailable in watchOS
1064 | textInputView.characterRange(byExtending: position, in: direction)
1065 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:307:12: note: 'UITextRange' has been explicitly marked unavailable here
305 |
306 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
307 | @interface UITextRange : NSObject
| `- note: 'UITextRange' has been explicitly marked unavailable here
308 |
309 | @property (nonatomic, readonly, getter=isEmpty) BOOL empty; // Whether the range is zero-length.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:1070:38: error: 'UITextRange' is unavailable in watchOS
1068 | /// - Parameter range: An object that represents a range of text in a document.
1069 | /// - Returns: The first rectangle in a range of text. You might use this rectangle to draw a correction rectangle. The “first” in the name refers the rectangle enclosing the first line when the range encompasses multiple lines of text.
1070 | public func firstRect(for range: UITextRange) -> CGRect {
| `- error: 'UITextRange' is unavailable in watchOS
1071 | textInputView.firstRect(for: range)
1072 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:307:12: note: 'UITextRange' has been explicitly marked unavailable here
305 |
306 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
307 | @interface UITextRange : NSObject
| `- note: 'UITextRange' has been explicitly marked unavailable here
308 |
309 | @property (nonatomic, readonly, getter=isEmpty) BOOL empty; // Whether the range is zero-length.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:1077:41: error: 'UITextPosition' is unavailable in watchOS
1075 | /// - Parameter position: An object that identifies a location in a text input area.
1076 | /// - Returns: A rectangle that defines the area for drawing the caret.
1077 | public func caretRect(for position: UITextPosition) -> CGRect {
| `- error: 'UITextPosition' is unavailable in watchOS
1078 | textInputView.caretRect(for: position)
1079 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:302:12: note: 'UITextPosition' has been explicitly marked unavailable here
300 | * classes provided to be subclassed when adopting UITextInput */
301 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
302 | @interface UITextPosition : NSObject
| `- note: 'UITextPosition' has been explicitly marked unavailable here
303 |
304 | @end
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:1084:43: error: 'UITextRange' is unavailable in watchOS
1082 | /// - Parameter range: An object representing a range in a document’s text.
1083 | /// - Returns: An array of UITextSelectionRect objects that encompass the selection.
1084 | public func selectionRects(for range: UITextRange) -> [UITextSelectionRect] {
| `- error: 'UITextRange' is unavailable in watchOS
1085 | textInputView.selectionRects(for: range)
1086 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:307:12: note: 'UITextRange' has been explicitly marked unavailable here
305 |
306 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
307 | @interface UITextRange : NSObject
| `- note: 'UITextRange' has been explicitly marked unavailable here
308 |
309 | @property (nonatomic, readonly, getter=isEmpty) BOOL empty; // Whether the range is zero-length.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:1084:60: error: 'UITextSelectionRect' is unavailable in watchOS
1082 | /// - Parameter range: An object representing a range in a document’s text.
1083 | /// - Returns: An array of UITextSelectionRect objects that encompass the selection.
1084 | public func selectionRects(for range: UITextRange) -> [UITextSelectionRect] {
| `- error: 'UITextSelectionRect' is unavailable in watchOS
1085 | textInputView.selectionRects(for: range)
1086 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:319:12: note: 'UITextSelectionRect' has been explicitly marked unavailable here
317 | * provided to be subclassed when adopting UITextInput */
318 | UIKIT_EXTERN API_AVAILABLE(ios(6.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
319 | @interface UITextSelectionRect : NSObject
| `- note: 'UITextSelectionRect' has been explicitly marked unavailable here
320 |
321 | @property (nonatomic, readonly) CGRect rect;
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:1091:55: error: 'UITextPosition' is unavailable in watchOS
1089 | /// - Parameter point: A point in the view that is drawing a document’s text.
1090 | /// - Returns: An object locating a position in a document that is closest to point.
1091 | public func closestPosition(to point: CGPoint) -> UITextPosition? {
| `- error: 'UITextPosition' is unavailable in watchOS
1092 | textInputView.closestPosition(to: point)
1093 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:302:12: note: 'UITextPosition' has been explicitly marked unavailable here
300 | * classes provided to be subclassed when adopting UITextInput */
301 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
302 | @interface UITextPosition : NSObject
| `- note: 'UITextPosition' has been explicitly marked unavailable here
303 |
304 | @end
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:1100:66: error: 'UITextRange' is unavailable in watchOS
1098 | /// - range: An object representing a range in a document’s text.
1099 | /// - Returns: An object representing the character position in range that is closest to point.
1100 | public func closestPosition(to point: CGPoint, within range: UITextRange) -> UITextPosition? {
| `- error: 'UITextRange' is unavailable in watchOS
1101 | textInputView.closestPosition(to: point, within: range)
1102 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:307:12: note: 'UITextRange' has been explicitly marked unavailable here
305 |
306 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
307 | @interface UITextRange : NSObject
| `- note: 'UITextRange' has been explicitly marked unavailable here
308 |
309 | @property (nonatomic, readonly, getter=isEmpty) BOOL empty; // Whether the range is zero-length.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:1100:82: error: 'UITextPosition' is unavailable in watchOS
1098 | /// - range: An object representing a range in a document’s text.
1099 | /// - Returns: An object representing the character position in range that is closest to point.
1100 | public func closestPosition(to point: CGPoint, within range: UITextRange) -> UITextPosition? {
| `- error: 'UITextPosition' is unavailable in watchOS
1101 | textInputView.closestPosition(to: point, within: range)
1102 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:302:12: note: 'UITextPosition' has been explicitly marked unavailable here
300 | * classes provided to be subclassed when adopting UITextInput */
301 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
302 | @interface UITextPosition : NSObject
| `- note: 'UITextPosition' has been explicitly marked unavailable here
303 |
304 | @end
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:1107:54: error: 'UITextRange' is unavailable in watchOS
1105 | /// - Parameter point: A point in the view that is drawing a document’s text.
1106 | /// - Returns: An object representing a range that encloses a character (or characters) at point.
1107 | public func characterRange(at point: CGPoint) -> UITextRange? {
| `- error: 'UITextRange' is unavailable in watchOS
1108 | textInputView.characterRange(at: point)
1109 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:307:12: note: 'UITextRange' has been explicitly marked unavailable here
305 |
306 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
307 | @interface UITextRange : NSObject
| `- note: 'UITextRange' has been explicitly marked unavailable here
308 |
309 | @property (nonatomic, readonly, getter=isEmpty) BOOL empty; // Whether the range is zero-length.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:1114:32: error: 'UITextRange' is unavailable in watchOS
1112 | /// - Parameter range: A range of text in a document.
1113 | /// - Returns: A substring of a document that falls within the specified range.
1114 | public func text(in range: UITextRange) -> String? {
| `- error: 'UITextRange' is unavailable in watchOS
1115 | textInputView.text(in: range)
1116 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:307:12: note: 'UITextRange' has been explicitly marked unavailable here
305 |
306 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
307 | @interface UITextRange : NSObject
| `- note: 'UITextRange' has been explicitly marked unavailable here
308 |
309 | @property (nonatomic, readonly, getter=isEmpty) BOOL empty; // Whether the range is zero-length.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:1136:55: error: 'UITapGestureRecognizer' is unavailable in watchOS
1134 |
1135 | private extension TextView {
1136 | @objc private func handleTap(_ gestureRecognizer: UITapGestureRecognizer) {
| `- error: 'UITapGestureRecognizer' is unavailable in watchOS
1137 | guard isSelectable else {
1138 | return
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITapGestureRecognizer.h:23:12: note: 'UITapGestureRecognizer' has been explicitly marked unavailable here
21 |
22 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
23 | @interface UITapGestureRecognizer : UIGestureRecognizer
| `- note: 'UITapGestureRecognizer' has been explicitly marked unavailable here
24 |
25 | @property (nonatomic) NSUInteger numberOfTapsRequired; // Default is 1. The number of taps required to match
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:1152:74: error: 'UIPanGestureRecognizer' is unavailable in watchOS
1150 | }
1151 |
1152 | @objc private func handleTextRangeAdjustmentPan(_ gestureRecognizer: UIPanGestureRecognizer) {
| `- error: 'UIPanGestureRecognizer' is unavailable in watchOS
1153 | // This function scroll the text view when the selected range is adjusted.
1154 | if gestureRecognizer.state == .began {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIPanGestureRecognizer.h:31:12: note: 'UIPanGestureRecognizer' has been explicitly marked unavailable here
29 |
30 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
31 | @interface UIPanGestureRecognizer : UIGestureRecognizer
| `- note: 'UIPanGestureRecognizer' has been explicitly marked unavailable here
32 |
33 | @property (nonatomic) NSUInteger minimumNumberOfTouches API_UNAVAILABLE(tvos); // default is 1. the minimum number of touches required to match
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:1465:76: error: 'UIGestureRecognizer' is unavailable in watchOS
1463 | // MARK: - UIGestureRecognizerDelegate
1464 | extension TextView: UIGestureRecognizerDelegate {
1465 | override public func gestureRecognizerShouldBegin(_ gestureRecognizer: UIGestureRecognizer) -> Bool {
| `- error: 'UIGestureRecognizer' is unavailable in watchOS
1466 | if gestureRecognizer === tapGestureRecognizer {
1467 | return !isEditing && !isDragging && !isDecelerating && delegateAllowsEditingToBegin
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGestureRecognizer.h:35:12: note: 'UIGestureRecognizer' has been explicitly marked unavailable here
33 |
34 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
35 | @interface UIGestureRecognizer : NSObject
| `- note: 'UIGestureRecognizer' has been explicitly marked unavailable here
36 |
37 | // Valid action method signatures:
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:1473:56: error: 'UIGestureRecognizer' is unavailable in watchOS
1471 | }
1472 |
1473 | public func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer,
| `- error: 'UIGestureRecognizer' is unavailable in watchOS
1474 | shouldRecognizeSimultaneouslyWith otherGestureRecognizer: UIGestureRecognizer) -> Bool {
1475 | if let klass = NSClassFromString("UITextRangeAdjustmentGestureRecognizer") {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGestureRecognizer.h:35:12: note: 'UIGestureRecognizer' has been explicitly marked unavailable here
33 |
34 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
35 | @interface UIGestureRecognizer : NSObject
| `- note: 'UIGestureRecognizer' has been explicitly marked unavailable here
36 |
37 | // Valid action method signatures:
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:1474:93: error: 'UIGestureRecognizer' is unavailable in watchOS
1472 |
1473 | public func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer,
1474 | shouldRecognizeSimultaneouslyWith otherGestureRecognizer: UIGestureRecognizer) -> Bool {
| `- error: 'UIGestureRecognizer' is unavailable in watchOS
1475 | if let klass = NSClassFromString("UITextRangeAdjustmentGestureRecognizer") {
1476 | if !textRangeAdjustmentGestureRecognizers.contains(otherGestureRecognizer) && otherGestureRecognizer.isKind(of: klass) {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGestureRecognizer.h:35:12: note: 'UIGestureRecognizer' has been explicitly marked unavailable here
33 |
34 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
35 | @interface UIGestureRecognizer : NSObject
| `- note: 'UIGestureRecognizer' has been explicitly marked unavailable here
36 |
37 | // Valid action method signatures:
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:1464:21: error: 'UIGestureRecognizerDelegate' is unavailable in watchOS
1462 |
1463 | // MARK: - UIGestureRecognizerDelegate
1464 | extension TextView: UIGestureRecognizerDelegate {
| `- error: 'UIGestureRecognizerDelegate' is unavailable in watchOS
1465 | override public func gestureRecognizerShouldBegin(_ gestureRecognizer: UIGestureRecognizer) -> Bool {
1466 | if gestureRecognizer === tapGestureRecognizer {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGestureRecognizer.h:91:11: note: 'UIGestureRecognizerDelegate' has been explicitly marked unavailable here
89 |
90 | API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
91 | @protocol UIGestureRecognizerDelegate <NSObject>
| `- note: 'UIGestureRecognizerDelegate' has been explicitly marked unavailable here
92 | @optional
93 | // called when a gesture recognizer attempts to transition out of UIGestureRecognizerStatePossible. returning NO causes it to transition to UIGestureRecognizerStateFailed
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:1498:55: error: 'UITextInteraction' is unavailable in watchOS
1496 | // MARK: - UITextInteractionDelegate
1497 | extension TextView: UITextInteractionDelegate {
1498 | public func interactionShouldBegin(_ interaction: UITextInteraction, at point: CGPoint) -> Bool {
| `- error: 'UITextInteraction' is unavailable in watchOS
1499 | if interaction.textInteractionMode == .editable {
1500 | return isEditable
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInteraction.h:31:12: note: 'UITextInteraction' has been explicitly marked unavailable here
29 |
30 | UIKIT_EXTERN API_AVAILABLE(ios(13.0)) API_UNAVAILABLE(tvos, watchos) NS_SWIFT_UI_ACTOR
31 | @interface UITextInteraction : NSObject <UIInteraction>
| `- note: 'UITextInteraction' has been explicitly marked unavailable here
32 |
33 | @property (nonatomic, weak) id <UITextInteractionDelegate> delegate;
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:1509:53: error: 'UITextInteraction' is unavailable in watchOS
1507 | }
1508 |
1509 | public func interactionWillBegin(_ interaction: UITextInteraction) {
| `- error: 'UITextInteraction' is unavailable in watchOS
1510 | if interaction.textInteractionMode == .nonEditable {
1511 | // When long-pressing our instance of UITextInput, the UITextInteraction will make the text input first responder.
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInteraction.h:31:12: note: 'UITextInteraction' has been explicitly marked unavailable here
29 |
30 | UIKIT_EXTERN API_AVAILABLE(ios(13.0)) API_UNAVAILABLE(tvos, watchos) NS_SWIFT_UI_ACTOR
31 | @interface UITextInteraction : NSObject <UIInteraction>
| `- note: 'UITextInteraction' has been explicitly marked unavailable here
32 |
33 | @property (nonatomic, weak) id <UITextInteractionDelegate> delegate;
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:1518:50: error: 'UITextInteraction' is unavailable in watchOS
1516 | }
1517 |
1518 | public func interactionDidEnd(_ interaction: UITextInteraction) {
| `- error: 'UITextInteraction' is unavailable in watchOS
1519 | if interaction.textInteractionMode == .nonEditable {
1520 | isPerformingNonEditableTextInteraction = false
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInteraction.h:31:12: note: 'UITextInteraction' has been explicitly marked unavailable here
29 |
30 | UIKIT_EXTERN API_AVAILABLE(ios(13.0)) API_UNAVAILABLE(tvos, watchos) NS_SWIFT_UI_ACTOR
31 | @interface UITextInteraction : NSObject <UIInteraction>
| `- note: 'UITextInteraction' has been explicitly marked unavailable here
32 |
33 | @property (nonatomic, weak) id <UITextInteractionDelegate> delegate;
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift:1497:21: error: 'UITextInteractionDelegate' is unavailable in watchOS
1495 |
1496 | // MARK: - UITextInteractionDelegate
1497 | extension TextView: UITextInteractionDelegate {
| `- error: 'UITextInteractionDelegate' is unavailable in watchOS
1498 | public func interactionShouldBegin(_ interaction: UITextInteraction, at point: CGPoint) -> Bool {
1499 | if interaction.textInteractionMode == .editable {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInteraction.h:23:11: note: 'UITextInteractionDelegate' has been explicitly marked unavailable here
21 |
22 | UIKIT_EXTERN API_AVAILABLE(ios(13.0)) API_UNAVAILABLE(tvos, watchos) NS_SWIFT_UI_ACTOR
23 | @protocol UITextInteractionDelegate <NSObject>
| `- note: 'UITextInteractionDelegate' has been explicitly marked unavailable here
24 | @optional
25 | - (BOOL)interactionShouldBegin:(UITextInteraction *)interaction atPoint:(CGPoint)point;
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Gutter/GutterBackgroundView.swift:20:32: error: 'UIView' is unavailable in watchOS
18 | }
19 |
20 | private let hairlineView = UIView()
| `- error: 'UIView' is unavailable in watchOS
21 |
22 | override init(frame: CGRect = .zero) {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
| `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass; // default is [CALayer class]. Used when creating the underlying layer for the view.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Gutter/GutterBackgroundView.swift:20:32: error: 'init()' is unavailable in watchOS
18 | }
19 |
20 | private let hairlineView = UIView()
| `- error: 'init()' is unavailable in watchOS
21 |
22 | override init(frame: CGRect = .zero) {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:158:1: note: 'init()' has been explicitly marked unavailable here
156 | - (instancetype)initWithFrame:(CGRect)frame NS_DESIGNATED_INITIALIZER;
157 | - (nullable instancetype)initWithCoder:(NSCoder *)coder NS_DESIGNATED_INITIALIZER;
158 | - (instancetype)init API_AVAILABLE(ios(2.0), tvos(9.0), visionos(1.0)) API_UNAVAILABLE(watchos);
| `- note: 'init()' has been explicitly marked unavailable here
159 |
160 | @property(nonatomic,getter=isUserInteractionEnabled) BOOL userInteractionEnabled; // default is YES. if set to NO, user events (touch, keys) are ignored and removed from the event queue.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Gutter/GutterBackgroundView.swift:3:35: error: 'UIView' is unavailable in watchOS
1 | import UIKit
2 |
3 | final class GutterBackgroundView: UIView {
| `- error: 'UIView' is unavailable in watchOS
4 | var hairlineWidth: CGFloat = 1 {
5 | didSet {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
| `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass; // default is [CALayer class]. Used when creating the underlying layer for the view.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Gutter/LineNumberView.swift:29:29: error: 'UILabel' is unavailable in watchOS
27 | }
28 |
29 | private let titleLabel: UILabel = {
| `- error: 'UILabel' is unavailable in watchOS
30 | let this = UILabel()
31 | this.textAlignment = .right
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UILabel.h:33:12: note: 'UILabel' has been explicitly marked unavailable here
31 |
32 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
33 | @interface UILabel : UIView <NSCoding, UIContentSizeCategoryAdjusting, UILetterformAwareAdjusting>
| `- note: 'UILabel' has been explicitly marked unavailable here
34 |
35 | @property(nullable, nonatomic,copy) NSString *text; // default is nil
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Gutter/LineNumberView.swift:30:20: error: 'UILabel' is unavailable in watchOS
28 |
29 | private let titleLabel: UILabel = {
30 | let this = UILabel()
| `- error: 'UILabel' is unavailable in watchOS
31 | this.textAlignment = .right
32 | return this
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UILabel.h:33:12: note: 'UILabel' has been explicitly marked unavailable here
31 |
32 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
33 | @interface UILabel : UIView <NSCoding, UIContentSizeCategoryAdjusting, UILetterformAwareAdjusting>
| `- note: 'UILabel' has been explicitly marked unavailable here
34 |
35 | @property(nullable, nonatomic,copy) NSString *text; // default is nil
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Gutter/LineNumberView.swift:30:20: error: 'init()' is unavailable in watchOS
28 |
29 | private let titleLabel: UILabel = {
30 | let this = UILabel()
| `- error: 'init()' is unavailable in watchOS
31 | this.textAlignment = .right
32 | return this
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:158:1: note: 'init()' has been explicitly marked unavailable here
156 | - (instancetype)initWithFrame:(CGRect)frame NS_DESIGNATED_INITIALIZER;
157 | - (nullable instancetype)initWithCoder:(NSCoder *)coder NS_DESIGNATED_INITIALIZER;
158 | - (instancetype)init API_AVAILABLE(ios(2.0), tvos(9.0), visionos(1.0)) API_UNAVAILABLE(watchos);
| `- note: 'init()' has been explicitly marked unavailable here
159 |
160 | @property(nonatomic,getter=isUserInteractionEnabled) BOOL userInteractionEnabled; // default is YES. if set to NO, user events (touch, keys) are ignored and removed from the event queue.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Gutter/LineNumberView.swift:3:29: error: 'UIView' is unavailable in watchOS
1 | import UIKit
2 |
3 | final class LineNumberView: UIView, ReusableView {
| `- error: 'UIView' is unavailable in watchOS
4 | var textColor: UIColor {
5 | get {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
| `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass; // default is [CALayer class]. Used when creating the underlying layer for the view.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/InvisibleCharacters/InvisibleCharacterConfiguration.swift:12:31: error: 'label' is unavailable in watchOS
10 | }
11 | }
12 | var textColor: UIColor = .label
| `- error: 'label' is unavailable in watchOS
13 | var showTabs = false
14 | var showSpaces = false
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIInterface.h:171:49: note: 'label' has been explicitly marked unavailable here
169 | /* Foreground colors for static text and related elements.
170 | */
171 | @property (class, nonatomic, readonly) UIColor *labelColor API_AVAILABLE(ios(13.0), tvos(13.0)) API_UNAVAILABLE(watchos);
| `- note: 'label' has been explicitly marked unavailable here
172 | @property (class, nonatomic, readonly) UIColor *secondaryLabelColor API_AVAILABLE(ios(13.0), tvos(13.0)) API_UNAVAILABLE(watchos);
173 | @property (class, nonatomic, readonly) UIColor *tertiaryLabelColor API_AVAILABLE(ios(13.0), tvos(13.0)) API_UNAVAILABLE(watchos);
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/LineController/LineFragmentRenderer.swift:18:47: error: 'systemFill' is unavailable in watchOS
16 | let invisibleCharacterConfiguration: InvisibleCharacterConfiguration
17 | var markedRange: NSRange?
18 | var markedTextBackgroundColor: UIColor = .systemFill
| `- error: 'systemFill' is unavailable in watchOS
19 | var markedTextBackgroundCornerRadius: CGFloat = 0
20 | var highlightedRangeFragments: [HighlightedRangeFragment] = []
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIInterface.h:229:49: note: 'systemFill' has been explicitly marked unavailable here
227 | * Example: The track of a slider.
228 | */
229 | @property (class, nonatomic, readonly) UIColor *systemFillColor API_AVAILABLE(ios(13.0)) API_UNAVAILABLE(tvos, watchos);
| `- note: 'systemFill' has been explicitly marked unavailable here
230 |
231 | /* secondarySystemFillColor is appropriate for filling medium-size shapes.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/PageGuide/PageGuideView.swift:20:32: error: 'UIView' is unavailable in watchOS
18 | }
19 |
20 | private let hairlineView = UIView()
| `- error: 'UIView' is unavailable in watchOS
21 |
22 | override init(frame: CGRect) {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
| `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass; // default is [CALayer class]. Used when creating the underlying layer for the view.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/PageGuide/PageGuideView.swift:20:32: error: 'init()' is unavailable in watchOS
18 | }
19 |
20 | private let hairlineView = UIView()
| `- error: 'init()' is unavailable in watchOS
21 |
22 | override init(frame: CGRect) {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:158:1: note: 'init()' has been explicitly marked unavailable here
156 | - (instancetype)initWithFrame:(CGRect)frame NS_DESIGNATED_INITIALIZER;
157 | - (nullable instancetype)initWithCoder:(NSCoder *)coder NS_DESIGNATED_INITIALIZER;
158 | - (instancetype)init API_AVAILABLE(ios(2.0), tvos(9.0), visionos(1.0)) API_UNAVAILABLE(watchos);
| `- note: 'init()' has been explicitly marked unavailable here
159 |
160 | @property(nonatomic,getter=isUserInteractionEnabled) BOOL userInteractionEnabled; // default is YES. if set to NO, user events (touch, keys) are ignored and removed from the event queue.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/PageGuide/PageGuideView.swift:3:28: error: 'UIView' is unavailable in watchOS
1 | import UIKit
2 |
3 | final class PageGuideView: UIView {
| `- error: 'UIView' is unavailable in watchOS
4 | var hairlineWidth: CGFloat {
5 | didSet {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
| `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass; // default is [CALayer class]. Used when creating the underlying layer for the view.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:17:26: error: 'UIFindInteraction' is unavailable in watchOS
15 | }
16 | @available(iOS 16, *)
17 | var findInteraction: UIFindInteraction? {
| `- error: 'UIFindInteraction' is unavailable in watchOS
18 | get {
19 | guard let _findInteraction = _findInteraction else {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIFindInteraction.h:39:12: note: 'UIFindInteraction' has been explicitly marked unavailable here
37 |
38 | UIKIT_EXTERN API_AVAILABLE(ios(16.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
39 | @interface UIFindInteraction : NSObject <UIInteraction>
| `- note: 'UIFindInteraction' has been explicitly marked unavailable here
40 |
41 | /// Returns YES if the find navigator panel is currently visible.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:54:34: error: cannot find type 'UITextSearching' in scope
52 |
53 | @available(iOS 16, *)
54 | extension UITextSearchingHelper: UITextSearching {
| `- error: cannot find type 'UITextSearching' in scope
55 | var supportsTextReplacement: Bool {
56 | true
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:59:28: error: 'UITextRange' is unavailable in watchOS
57 | }
58 |
59 | var selectedTextRange: UITextRange? {
| `- error: 'UITextRange' is unavailable in watchOS
60 | _textView.selectedTextRange
61 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:307:12: note: 'UITextRange' has been explicitly marked unavailable here
305 |
306 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
307 | @interface UITextRange : NSObject
| `- note: 'UITextRange' has been explicitly marked unavailable here
308 |
309 | @property (nonatomic, readonly, getter=isEmpty) BOOL empty; // Whether the range is zero-length.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:63:32: error: 'UITextRange' is unavailable in watchOS
61 | }
62 |
63 | func compare(_ foundRange: UITextRange, toRange: UITextRange, document: AnyHashable??) -> ComparisonResult {
| `- error: 'UITextRange' is unavailable in watchOS
64 | guard let foundRange = foundRange as? IndexedRange, let toRange = toRange as? IndexedRange else {
65 | fatalError("Expected indexed ranges.")
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:307:12: note: 'UITextRange' has been explicitly marked unavailable here
305 |
306 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
307 | @interface UITextRange : NSObject
| `- note: 'UITextRange' has been explicitly marked unavailable here
308 |
309 | @property (nonatomic, readonly, getter=isEmpty) BOOL empty; // Whether the range is zero-length.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:63:54: error: 'UITextRange' is unavailable in watchOS
61 | }
62 |
63 | func compare(_ foundRange: UITextRange, toRange: UITextRange, document: AnyHashable??) -> ComparisonResult {
| `- error: 'UITextRange' is unavailable in watchOS
64 | guard let foundRange = foundRange as? IndexedRange, let toRange = toRange as? IndexedRange else {
65 | fatalError("Expected indexed ranges.")
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:307:12: note: 'UITextRange' has been explicitly marked unavailable here
305 |
306 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
307 | @interface UITextRange : NSObject
| `- note: 'UITextRange' has been explicitly marked unavailable here
308 |
309 | @property (nonatomic, readonly, getter=isEmpty) BOOL empty; // Whether the range is zero-length.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:80:97: error: cannot find type 'UITextSearchAggregator' in scope
78 | }
79 |
80 | func performTextSearch(queryString: String, options: UITextSearchOptions, resultAggregator: UITextSearchAggregator<AnyHashable?>) {
| `- error: cannot find type 'UITextSearchAggregator' in scope
81 | performTextSearch(for: queryString, options: options) { searchResults in
82 | for searchResult in searchResults {
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:80:58: error: 'UITextSearchOptions' is unavailable in watchOS
78 | }
79 |
80 | func performTextSearch(queryString: String, options: UITextSearchOptions, resultAggregator: UITextSearchAggregator<AnyHashable?>) {
| `- error: 'UITextSearchOptions' is unavailable in watchOS
81 | performTextSearch(for: queryString, options: options) { searchResults in
82 | for searchResult in searchResults {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIFindSession.h:40:12: note: 'UITextSearchOptions' has been explicitly marked unavailable here
38 |
39 | UIKIT_EXTERN API_AVAILABLE(ios(16.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
40 | @interface UITextSearchOptions : NSObject
| `- note: 'UITextSearchOptions' has been explicitly marked unavailable here
41 | /// See UITextSearchMatchMethod above.
42 | @property (nonatomic, readonly) UITextSearchMatchMethod wordMatchMethod;
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:90:35: error: 'UITextRange' is unavailable in watchOS
88 | }
89 |
90 | func decorate(foundTextRange: UITextRange, document: AnyHashable??, usingStyle style: UITextSearchFoundTextStyle) {
| `- error: 'UITextRange' is unavailable in watchOS
91 | guard let foundTextRange = foundTextRange as? IndexedRange else {
92 | return
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:307:12: note: 'UITextRange' has been explicitly marked unavailable here
305 |
306 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
307 | @interface UITextRange : NSObject
| `- note: 'UITextRange' has been explicitly marked unavailable here
308 |
309 | @property (nonatomic, readonly, getter=isEmpty) BOOL empty; // Whether the range is zero-length.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:90:91: error: 'UITextSearchFoundTextStyle' is unavailable in watchOS
88 | }
89 |
90 | func decorate(foundTextRange: UITextRange, document: AnyHashable??, usingStyle style: UITextSearchFoundTextStyle) {
| `- error: 'UITextSearchFoundTextStyle' is unavailable in watchOS
91 | guard let foundTextRange = foundTextRange as? IndexedRange else {
92 | return
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextSearching.h:18:28: note: 'UITextSearchFoundTextStyle' has been explicitly marked unavailable here
16 | typedef id<NSObject, NSCopying> UITextSearchDocumentIdentifier API_UNAVAILABLE(watchos);
17 |
18 | typedef NS_ENUM(NSInteger, UITextSearchFoundTextStyle) {
| `- note: 'UITextSearchFoundTextStyle' has been explicitly marked unavailable here
19 | /// No style.
20 | UITextSearchFoundTextStyleNormal,
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:104:51: error: 'UITextSearchOptions' is unavailable in watchOS
102 | }
103 |
104 | func replaceAll(queryString: String, options: UITextSearchOptions, withText replacementText: String) {
| `- error: 'UITextSearchOptions' is unavailable in watchOS
105 | performTextSearch(for: queryString, options: options) { searchResults in
106 | let replacements = searchResults.map { BatchReplaceSet.Replacement(range: $0.range, text: replacementText) }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIFindSession.h:40:12: note: 'UITextSearchOptions' has been explicitly marked unavailable here
38 |
39 | UIKIT_EXTERN API_AVAILABLE(ios(16.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
40 | @interface UITextSearchOptions : NSObject
| `- note: 'UITextSearchOptions' has been explicitly marked unavailable here
41 | /// See UITextSearchMatchMethod above.
42 | @property (nonatomic, readonly) UITextSearchMatchMethod wordMatchMethod;
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:114:34: error: 'UITextRange' is unavailable in watchOS
112 | }
113 |
114 | func replace(foundTextRange: UITextRange, document: AnyHashable??, withText replacementText: String) {
| `- error: 'UITextRange' is unavailable in watchOS
115 | _textView.replace(foundTextRange, withText: replacementText)
116 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:307:12: note: 'UITextRange' has been explicitly marked unavailable here
305 |
306 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
307 | @interface UITextRange : NSObject
| `- note: 'UITextRange' has been explicitly marked unavailable here
308 |
309 | @property (nonatomic, readonly, getter=isEmpty) BOOL empty; // Whether the range is zero-length.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:118:40: error: 'UITextRange' is unavailable in watchOS
116 | }
117 |
118 | func shouldReplace(foundTextRange: UITextRange, document: AnyHashable??, withText replacementText: String) -> Bool {
| `- error: 'UITextRange' is unavailable in watchOS
119 | guard let foundTextRange = foundTextRange as? IndexedRange else {
120 | // iOS 16 beta 2 will call this function when presenting the find/replace navigator and pass <uninitialized> to foundTextRange. If we return false in this case, the find/replace UI will not be shown, so we need to return true when we can't convert the UITextRange to an IndexedRange.
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:307:12: note: 'UITextRange' has been explicitly marked unavailable here
305 |
306 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
307 | @interface UITextRange : NSObject
| `- note: 'UITextRange' has been explicitly marked unavailable here
308 |
309 | @property (nonatomic, readonly, getter=isEmpty) BOOL empty; // Whether the range is zero-length.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:129:40: error: 'UITextRange' is unavailable in watchOS
127 | }
128 |
129 | func scrollRangeToVisible(_ range: UITextRange, inDocument: AnyHashable??) {
| `- error: 'UITextRange' is unavailable in watchOS
130 | if let indexedRange = range as? IndexedRange {
131 | _textView.scrollRangeToVisible(indexedRange.range)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:307:12: note: 'UITextRange' has been explicitly marked unavailable here
305 |
306 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
307 | @interface UITextRange : NSObject
| `- note: 'UITextRange' has been explicitly marked unavailable here
308 |
309 | @property (nonatomic, readonly, getter=isEmpty) BOOL empty; // Whether the range is zero-length.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:153:70: error: 'UITextSearchOptions' is unavailable in watchOS
151 |
152 | @available(iOS 16.0, *)
153 | private func performTextSearch(for queryString: String, options: UITextSearchOptions, completion: @escaping ([SearchResult]) -> Void) {
| `- error: 'UITextSearchOptions' is unavailable in watchOS
154 | queue.cancelAllOperations()
155 | let operation = BlockOperation()
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIFindSession.h:40:12: note: 'UITextSearchOptions' has been explicitly marked unavailable here
38 |
39 | UIKIT_EXTERN API_AVAILABLE(ios(16.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
40 | @interface UITextSearchOptions : NSObject
| `- note: 'UITextSearchOptions' has been explicitly marked unavailable here
41 | /// See UITextSearchMatchMethod above.
42 | @property (nonatomic, readonly) UITextSearchMatchMethod wordMatchMethod;
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:170:41: error: 'UIFindInteraction' is unavailable in watchOS
168 | @available(iOS 16, *)
169 | extension UITextSearchingHelper: UIFindInteractionDelegate {
170 | func findInteraction(_ interaction: UIFindInteraction, sessionFor view: UIView) -> UIFindSession? {
| `- error: 'UIFindInteraction' is unavailable in watchOS
171 | UITextSearchingFindSession(searchableObject: self)
172 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIFindInteraction.h:39:12: note: 'UIFindInteraction' has been explicitly marked unavailable here
37 |
38 | UIKIT_EXTERN API_AVAILABLE(ios(16.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
39 | @interface UIFindInteraction : NSObject <UIInteraction>
| `- note: 'UIFindInteraction' has been explicitly marked unavailable here
40 |
41 | /// Returns YES if the find navigator panel is currently visible.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:170:77: error: 'UIView' is unavailable in watchOS
168 | @available(iOS 16, *)
169 | extension UITextSearchingHelper: UIFindInteractionDelegate {
170 | func findInteraction(_ interaction: UIFindInteraction, sessionFor view: UIView) -> UIFindSession? {
| `- error: 'UIView' is unavailable in watchOS
171 | UITextSearchingFindSession(searchableObject: self)
172 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
| `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass; // default is [CALayer class]. Used when creating the underlying layer for the view.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:170:88: error: 'UIFindSession' is unavailable in watchOS
168 | @available(iOS 16, *)
169 | extension UITextSearchingHelper: UIFindInteractionDelegate {
170 | func findInteraction(_ interaction: UIFindInteraction, sessionFor view: UIView) -> UIFindSession? {
| `- error: 'UIFindSession' is unavailable in watchOS
171 | UITextSearchingFindSession(searchableObject: self)
172 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIFindSession.h:57:12: note: 'UIFindSession' has been explicitly marked unavailable here
55 | /// state of a find session automatically using behavior consistent with the rest of the system.
56 | UIKIT_EXTERN API_AVAILABLE(ios(16.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
57 | @interface UIFindSession : NSObject
| `- note: 'UIFindSession' has been explicitly marked unavailable here
58 |
59 | /// Returns the total number of results.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:169:34: error: 'UIFindInteractionDelegate' is unavailable in watchOS
167 |
168 | @available(iOS 16, *)
169 | extension UITextSearchingHelper: UIFindInteractionDelegate {
| `- error: 'UIFindInteractionDelegate' is unavailable in watchOS
170 | func findInteraction(_ interaction: UIFindInteraction, sessionFor view: UIView) -> UIFindSession? {
171 | UITextSearchingFindSession(searchableObject: self)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIFindInteraction.h:18:11: note: 'UIFindInteractionDelegate' has been explicitly marked unavailable here
16 |
17 | UIKIT_EXTERN API_AVAILABLE(ios(16.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
18 | @protocol UIFindInteractionDelegate <NSObject>
| `- note: 'UIFindInteractionDelegate' has been explicitly marked unavailable here
19 |
20 | /// Called when a find session is requested to begin by the user. Return an instance of a UIFindSession implementation to allow the
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:177:40: error: 'UITextSearchOptions' is unavailable in watchOS
175 | private extension SearchQuery {
176 | @available(iOS 16, *)
177 | init(queryString: String, options: UITextSearchOptions) {
| `- error: 'UITextSearchOptions' is unavailable in watchOS
178 | let matchMethod = SearchQuery.MatchMethod(options.wordMatchMethod)
179 | let isCaseSensitive = !options.stringCompareOptions.contains(.caseInsensitive)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIFindSession.h:40:12: note: 'UITextSearchOptions' has been explicitly marked unavailable here
38 |
39 | UIKIT_EXTERN API_AVAILABLE(ios(16.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
40 | @interface UITextSearchOptions : NSObject
| `- note: 'UITextSearchOptions' has been explicitly marked unavailable here
41 | /// See UITextSearchMatchMethod above.
42 | @property (nonatomic, readonly) UITextSearchMatchMethod wordMatchMethod;
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:186:25: error: 'UITextSearchOptions' is unavailable in watchOS
184 | @available(iOS 16, *)
185 | private extension SearchQuery.MatchMethod {
186 | init(_ matchMethod: UITextSearchOptions.WordMatchMethod) {
| `- error: 'UITextSearchOptions' is unavailable in watchOS
187 | switch matchMethod {
188 | case .contains:
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIFindSession.h:40:12: note: 'UITextSearchOptions' has been explicitly marked unavailable here
38 |
39 | UIKIT_EXTERN API_AVAILABLE(ios(16.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
40 | @interface UITextSearchOptions : NSObject
| `- note: 'UITextSearchOptions' has been explicitly marked unavailable here
41 | /// See UITextSearchMatchMethod above.
42 | @property (nonatomic, readonly) UITextSearchMatchMethod wordMatchMethod;
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/TextSelection/TextSelectionRect.swift:3:32: error: 'UITextSelectionRect' is unavailable in watchOS
1 | import UIKit
2 |
3 | final class TextSelectionRect: UITextSelectionRect {
| `- error: 'UITextSelectionRect' is unavailable in watchOS
4 | override var rect: CGRect {
5 | _rect
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:319:12: note: 'UITextSelectionRect' has been explicitly marked unavailable here
317 | * provided to be subclassed when adopting UITextInput */
318 | UIKIT_EXTERN API_AVAILABLE(ios(6.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
319 | @interface UITextSelectionRect : NSObject
| `- note: 'UITextSelectionRect' has been explicitly marked unavailable here
320 |
321 | @property (nonatomic, readonly) CGRect rect;
Failed frontend command:
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift-frontend -frontend -emit-module -experimental-skip-non-inlinable-function-bodies-without-types /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Runestone.build/Debug-watchos/Runestone-t.build/DerivedSources/resource_bundle_accessor.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/Library/ByteCount.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/Library/ByteRange.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/Library/Caret.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/Library/CharacterSet+Helpers.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/Library/DefaultStringAttributes.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/Library/HairlineLength.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/Library/KeyboardObserver.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/Library/L10n.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/Library/LineEndingDetector.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/Library/NSAttributedString+Helpers.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/Library/NSRange+Helpers.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/Library/NSString+Helpers.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/Library/QuickTapGestureRecognizer.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/Library/String+Helpers.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/Library/Symbol.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/Library/TabWidthMeasurer.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/Library/TextChange.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/Library/TextEditHelper.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/Library/TreeSitterTextPoint+Helpers.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/Library/UIFont+Helpers.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/Library/UIScrollView+Helpers.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/Library/UITextInput+Helpers.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/Library/UITextSelectionDisplayInteraction+Helpers.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/Library/ViewReuseQueue.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/LineManager/DocumentLineChildrenUpdater.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/LineManager/DocumentLineNodeData.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/LineManager/LineChangeSet.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/LineManager/LineManager.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/LineManager/LinePosition.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/LineManager/NewLineFinder.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/RedBlackTree/ClosedRangeValueDescriptor.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/RedBlackTree/RedBlackTree.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/RedBlackTree/RedBlackTreeChildrenUpdater.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/RedBlackTree/RedBlackTreeIterator.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/RedBlackTree/RedBlackTreeNode.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/RedBlackTree/RedBlackTreeNodeColor.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/RedBlackTree/RedBlackTreeNodePosition.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/RedBlackTree/RedBlackTreeSearchMatch.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/RedBlackTree/RedBlackTreeSearchQuery.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/StringSyntaxHighlighter.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Appearance/DefaultTheme.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Appearance/FontTraits.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Appearance/HighlightName.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Appearance/LineBreakMode.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Appearance/LineSelectionDisplayType.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Appearance/Theme.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/CharacterPairs/CharacterPair.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/CharacterPairs/CharacterPairTrailingComponentDeletionMode.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/ContentSizeService.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/EditMenuController.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/FloatingCaretView.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/IndexedPosition.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/IndexedRange.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/LayoutManager.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/LineEnding.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/LineFragmentView.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/LineMovementController.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/MoveLinesService.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/StringView.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextInputStringTokenizer.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextInputView.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextView.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextViewDelegate.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TextViewState.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Core/TimedUndoManager.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Gutter/GutterBackgroundView.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Gutter/GutterWidthService.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Gutter/LineNumberView.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Highlight/HighlightNavigationController.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Highlight/HighlightService.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Highlight/HighlightedRange.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Highlight/HighlightedRangeFragment.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Highlight/HighlightedRangeLoopingMode.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Indent/DetectedIndentStrategy.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Indent/IndentController.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Indent/IndentLevelMeasurer.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Indent/IndentStrategy.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/InvisibleCharacters/InvisibleCharacterConfiguration.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/LineController/LineBreak/CharacterLineBreakSuggester.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/LineController/LineBreak/LineBreakSuggester.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/LineController/LineBreak/WordWrappingLineBreakSuggester.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/LineController/LineController.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/LineController/LineControllerFactory.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/LineController/LineControllerStorage.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/LineController/LineFragment.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/LineController/LineFragmentCharacterLocationQuery.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/LineController/LineFragmentController.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/LineController/LineFragmentFrameQuery.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/LineController/LineFragmentNode.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/LineController/LineFragmentRenderer.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/LineController/LineFragmentSelectionRect.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/LineController/LineSyntaxHighlighter.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/LineController/LineTypesetter.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Navigation/GoToLineSelection.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/Navigation/TextLocation.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/PageGuide/PageGuideController.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/PageGuide/PageGuideView.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/BatchReplaceSet.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/ParsedReplacementString.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/ReplacementStringParser.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/SearchController.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/SearchQuery.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/SearchReplaceResult.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/SearchResult.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/StringModifier.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/TextPreview.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/Internal/InternalLanguageMode.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/Internal/InternalLanguageModeFactory.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/Internal/PlainText/PlainTextInternalLanguageMode.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/Internal/PlainText/PlainTextSyntaxHighlighter.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/Internal/TreeSitter/TreeSitterIndentController.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/Internal/TreeSitter/TreeSitterIndentStrategyDetector.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/Internal/TreeSitter/TreeSitterInjectedLanguage.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/Internal/TreeSitter/TreeSitterInjectedLanguageMapper.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/Internal/TreeSitter/TreeSitterInternalLanguage.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/Internal/TreeSitter/TreeSitterInternalLanguageMode.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/Internal/TreeSitter/TreeSitterLanguageLayer.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/Internal/TreeSitter/TreeSitterLanguageLayerStore.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/Internal/TreeSitter/TreeSitterSyntaxHighlightToken.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/Internal/TreeSitter/TreeSitterSyntaxHighlighter.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/Internal/TreeSitter/TreeSitterTextPredicatesEvaluator.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/LanguageMode.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/PlainText/PlainTextLanguageMode.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/SyntaxNode.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/TreeSitter/TreeSitterIndentationScopes.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/TreeSitter/TreeSitterLanguage.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/TreeSitter/TreeSitterLanguageMode.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/TreeSitter/TreeSitterLanguageProvider.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/TextSelection/CaretRectService.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/TextSelection/SelectionRectService.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/TextSelection/TextSelectionRect.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TreeSitter/TreeSitterCapture.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TreeSitter/TreeSitterInputEdit.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TreeSitter/TreeSitterNode.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TreeSitter/TreeSitterParser.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TreeSitter/TreeSitterPredicate.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TreeSitter/TreeSitterPredicateMapper.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TreeSitter/TreeSitterQuery.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TreeSitter/TreeSitterQueryCursor.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TreeSitter/TreeSitterQueryMatch.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TreeSitter/TreeSitterTextInput.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TreeSitter/TreeSitterTextPoint.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TreeSitter/TreeSitterTextPredicate.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TreeSitter/TreeSitterTextRange.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TreeSitter/TreeSitterTree.swift /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Runestone.build/Debug-watchos/Runestone-t.build/DerivedSources/GeneratedAssetSymbols.swift -target arm64_32-apple-watchos9.0 -module-can-import-version DeveloperToolsSupport 24.0.24 24.0.24 -module-can-import-version SwiftUI 8.0.84.1 8.0.84 -module-can-import-version UIKit 9127.0.84.1 9127.0.84 -disable-cross-import-overlay-search -load-resolved-plugin /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/lib/swift/host/plugins/libFoundationMacros.dylib\#/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/bin/swift-plugin-server\#FoundationMacros -load-resolved-plugin /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/lib/swift/host/plugins/libObservationMacros.dylib\#/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/bin/swift-plugin-server\#ObservationMacros -load-resolved-plugin /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/lib/swift/host/plugins/libPreviewsMacros.dylib\#/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/bin/swift-plugin-server\#PreviewsMacros -load-resolved-plugin /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/lib/swift/host/plugins/libSwiftMacros.dylib\#/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/bin/swift-plugin-server\#SwiftMacros -load-resolved-plugin /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/lib/swift/host/plugins/libSwiftUIMacros.dylib\#/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/bin/swift-plugin-server\#SwiftUIMacros -disable-implicit-swift-modules -Xcc -fno-implicit-modules -Xcc -fno-implicit-module-maps -explicit-swift-module-map-file /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Runestone.build/Debug-watchos/Runestone-t.build/Objects-normal/arm64_32/Runestone-dependencies-2.json -enable-objc-interop -sdk /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk -I /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-watchos -Isystem /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/lib -F /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-watchos/PackageFrameworks -F /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-watchos -F /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/Library/Frameworks -F /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/Developer/Library/Frameworks -module-cache-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SwiftExplicitPrecompiledModules -no-color-diagnostics -Xcc -fno-color-diagnostics -enable-testing -g -debug-info-format\=dwarf -dwarf-version\=4 -profile-generate -profile-coverage-mapping -swift-version 5 -Onone -D SWIFT_PACKAGE -D DEBUG -D SWIFT_MODULE_RESOURCE_BUNDLE_AVAILABLE -D Xcode -serialize-debugging-options -enable-experimental-feature DebugDescriptionMacro -empty-abi-descriptor -validate-clang-modules-once -clang-build-session-file /Users/admin/builder/spi-builder-workspace/.derivedData/ModuleCache.noindex/Session.modulevalidation -Xcc -working-directory -Xcc /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode -enable-anonymous-context-mangled-names -file-compilation-dir /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode -Xcc -fmodule-map-file\=/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/GeneratedModuleMaps-watchos/TreeSitter.modulemap -Xcc -D_LIBCPP_HARDENING_MODE\=_LIBCPP_HARDENING_MODE_DEBUG -Xcc -ivfsstatcache -Xcc /Users/admin/builder/spi-builder-workspace/.derivedData/SDKStatCaches.noindex/watchos27.0-24R360-e829b21a6f8c9b70876ba0858053c04477534ef55a1706bf4c1112bbb242f0a2.sdkstatcache -Xcc -fmodules-prune-interval\=86400 -Xcc -fmodules-prune-after\=345600 -Xcc -I/Users/admin/builder/spi-builder-workspace/.dependencies/checkouts/tree-sitter/lib/include -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-watchos/include -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Runestone.build/Debug-watchos/Runestone-t.build/DerivedSources-normal/arm64_32 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Runestone.build/Debug-watchos/Runestone-t.build/DerivedSources/arm64_32 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Runestone.build/Debug-watchos/Runestone-t.build/DerivedSources -Xcc -DSWIFT_PACKAGE -Xcc -DDEBUG\=1 -no-auto-bridging-header-chaining -module-name Runestone -const-gather-protocols-file /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Runestone.build/Debug-watchos/Runestone-t.build/Objects-normal/arm64_32/Runestone_const_extract_protocols.json -disable-clang-spi -clang-target arm64_32-apple-watchos27.0 -target-sdk-version 27.0 -target-sdk-name watchos27.0 -in-process-plugin-server-path /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/host/libSwiftInProcPluginServer.dylib -emit-module-doc-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Runestone.build/Debug-watchos/Runestone-t.build/Objects-normal/arm64_32/Runestone.swiftdoc -emit-module-source-info-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Runestone.build/Debug-watchos/Runestone-t.build/Objects-normal/arm64_32/Runestone.swiftsourceinfo -emit-objc-header-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Runestone.build/Debug-watchos/Runestone-t.build/Objects-normal/arm64_32/Runestone-Swift.h -serialize-diagnostics-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Runestone.build/Debug-watchos/Runestone-t.build/Objects-normal/arm64_32/Runestone-primary-emit-module.dia -emit-dependencies-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Runestone.build/Debug-watchos/Runestone-t.build/Objects-normal/arm64_32/Runestone-primary-emit-module.d -parse-as-library -o /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Runestone.build/Debug-watchos/Runestone-t.build/Objects-normal/arm64_32/Runestone.swiftmodule -emit-abi-descriptor-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Runestone.build/Debug-watchos/Runestone-t.build/Objects-normal/arm64_32/Runestone.abi.json
SwiftCompile normal arm64_32 (in target 'Runestone' from project 'Runestone')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
SwiftCompile normal arm64 Compiling\ StringModifier.swift,\ TextPreview.swift,\ UITextSearchingHelper.swift,\ InternalLanguageMode.swift,\ InternalLanguageModeFactory.swift,\ PlainTextInternalLanguageMode.swift,\ PlainTextSyntaxHighlighter.swift,\ TreeSitterIndentController.swift,\ TreeSitterIndentStrategyDetector.swift,\ TreeSitterInjectedLanguage.swift,\ TreeSitterInjectedLanguageMapper.swift,\ TreeSitterInternalLanguage.swift,\ TreeSitterInternalLanguageMode.swift,\ TreeSitterLanguageLayer.swift,\ TreeSitterLanguageLayerStore.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/StringModifier.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/TextPreview.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/Internal/InternalLanguageMode.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/Internal/InternalLanguageModeFactory.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/Internal/PlainText/PlainTextInternalLanguageMode.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/Internal/PlainText/PlainTextSyntaxHighlighter.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/Internal/TreeSitter/TreeSitterIndentController.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/Internal/TreeSitter/TreeSitterIndentStrategyDetector.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/Internal/TreeSitter/TreeSitterInjectedLanguage.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/Internal/TreeSitter/TreeSitterInjectedLanguageMapper.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/Internal/TreeSitter/TreeSitterInternalLanguage.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/Internal/TreeSitter/TreeSitterInternalLanguageMode.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/Internal/TreeSitter/TreeSitterLanguageLayer.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/Internal/TreeSitter/TreeSitterLanguageLayerStore.swift (in target 'Runestone' from project 'Runestone')
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:17:26: error: 'UIFindInteraction' is unavailable in watchOS
15 | }
16 | @available(iOS 16, *)
17 | var findInteraction: UIFindInteraction? {
| `- error: 'UIFindInteraction' is unavailable in watchOS
18 | get {
19 | guard let _findInteraction = _findInteraction else {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIFindInteraction.h:39:12: note: 'UIFindInteraction' has been explicitly marked unavailable here
37 |
38 | UIKIT_EXTERN API_AVAILABLE(ios(16.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
39 | @interface UIFindInteraction : NSObject <UIInteraction>
| `- note: 'UIFindInteraction' has been explicitly marked unavailable here
40 |
41 | /// Returns YES if the find navigator panel is currently visible.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:54:34: error: cannot find type 'UITextSearching' in scope
52 |
53 | @available(iOS 16, *)
54 | extension UITextSearchingHelper: UITextSearching {
| `- error: cannot find type 'UITextSearching' in scope
55 | var supportsTextReplacement: Bool {
56 | true
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:59:28: error: 'UITextRange' is unavailable in watchOS
57 | }
58 |
59 | var selectedTextRange: UITextRange? {
| `- error: 'UITextRange' is unavailable in watchOS
60 | _textView.selectedTextRange
61 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:307:12: note: 'UITextRange' has been explicitly marked unavailable here
305 |
306 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
307 | @interface UITextRange : NSObject
| `- note: 'UITextRange' has been explicitly marked unavailable here
308 |
309 | @property (nonatomic, readonly, getter=isEmpty) BOOL empty; // Whether the range is zero-length.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:63:32: error: 'UITextRange' is unavailable in watchOS
61 | }
62 |
63 | func compare(_ foundRange: UITextRange, toRange: UITextRange, document: AnyHashable??) -> ComparisonResult {
| `- error: 'UITextRange' is unavailable in watchOS
64 | guard let foundRange = foundRange as? IndexedRange, let toRange = toRange as? IndexedRange else {
65 | fatalError("Expected indexed ranges.")
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:307:12: note: 'UITextRange' has been explicitly marked unavailable here
305 |
306 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
307 | @interface UITextRange : NSObject
| `- note: 'UITextRange' has been explicitly marked unavailable here
308 |
309 | @property (nonatomic, readonly, getter=isEmpty) BOOL empty; // Whether the range is zero-length.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:63:54: error: 'UITextRange' is unavailable in watchOS
61 | }
62 |
63 | func compare(_ foundRange: UITextRange, toRange: UITextRange, document: AnyHashable??) -> ComparisonResult {
| `- error: 'UITextRange' is unavailable in watchOS
64 | guard let foundRange = foundRange as? IndexedRange, let toRange = toRange as? IndexedRange else {
65 | fatalError("Expected indexed ranges.")
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:307:12: note: 'UITextRange' has been explicitly marked unavailable here
305 |
306 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
307 | @interface UITextRange : NSObject
| `- note: 'UITextRange' has been explicitly marked unavailable here
308 |
309 | @property (nonatomic, readonly, getter=isEmpty) BOOL empty; // Whether the range is zero-length.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:80:97: error: cannot find type 'UITextSearchAggregator' in scope
78 | }
79 |
80 | func performTextSearch(queryString: String, options: UITextSearchOptions, resultAggregator: UITextSearchAggregator<AnyHashable?>) {
| `- error: cannot find type 'UITextSearchAggregator' in scope
81 | performTextSearch(for: queryString, options: options) { searchResults in
82 | for searchResult in searchResults {
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:80:58: error: 'UITextSearchOptions' is unavailable in watchOS
78 | }
79 |
80 | func performTextSearch(queryString: String, options: UITextSearchOptions, resultAggregator: UITextSearchAggregator<AnyHashable?>) {
| `- error: 'UITextSearchOptions' is unavailable in watchOS
81 | performTextSearch(for: queryString, options: options) { searchResults in
82 | for searchResult in searchResults {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIFindSession.h:40:12: note: 'UITextSearchOptions' has been explicitly marked unavailable here
38 |
39 | UIKIT_EXTERN API_AVAILABLE(ios(16.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
40 | @interface UITextSearchOptions : NSObject
| `- note: 'UITextSearchOptions' has been explicitly marked unavailable here
41 | /// See UITextSearchMatchMethod above.
42 | @property (nonatomic, readonly) UITextSearchMatchMethod wordMatchMethod;
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:90:35: error: 'UITextRange' is unavailable in watchOS
88 | }
89 |
90 | func decorate(foundTextRange: UITextRange, document: AnyHashable??, usingStyle style: UITextSearchFoundTextStyle) {
| `- error: 'UITextRange' is unavailable in watchOS
91 | guard let foundTextRange = foundTextRange as? IndexedRange else {
92 | return
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:307:12: note: 'UITextRange' has been explicitly marked unavailable here
305 |
306 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
307 | @interface UITextRange : NSObject
| `- note: 'UITextRange' has been explicitly marked unavailable here
308 |
309 | @property (nonatomic, readonly, getter=isEmpty) BOOL empty; // Whether the range is zero-length.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:90:91: error: 'UITextSearchFoundTextStyle' is unavailable in watchOS
88 | }
89 |
90 | func decorate(foundTextRange: UITextRange, document: AnyHashable??, usingStyle style: UITextSearchFoundTextStyle) {
| `- error: 'UITextSearchFoundTextStyle' is unavailable in watchOS
91 | guard let foundTextRange = foundTextRange as? IndexedRange else {
92 | return
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextSearching.h:18:28: note: 'UITextSearchFoundTextStyle' has been explicitly marked unavailable here
16 | typedef id<NSObject, NSCopying> UITextSearchDocumentIdentifier API_UNAVAILABLE(watchos);
17 |
18 | typedef NS_ENUM(NSInteger, UITextSearchFoundTextStyle) {
| `- note: 'UITextSearchFoundTextStyle' has been explicitly marked unavailable here
19 | /// No style.
20 | UITextSearchFoundTextStyleNormal,
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:104:51: error: 'UITextSearchOptions' is unavailable in watchOS
102 | }
103 |
104 | func replaceAll(queryString: String, options: UITextSearchOptions, withText replacementText: String) {
| `- error: 'UITextSearchOptions' is unavailable in watchOS
105 | performTextSearch(for: queryString, options: options) { searchResults in
106 | let replacements = searchResults.map { BatchReplaceSet.Replacement(range: $0.range, text: replacementText) }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIFindSession.h:40:12: note: 'UITextSearchOptions' has been explicitly marked unavailable here
38 |
39 | UIKIT_EXTERN API_AVAILABLE(ios(16.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
40 | @interface UITextSearchOptions : NSObject
| `- note: 'UITextSearchOptions' has been explicitly marked unavailable here
41 | /// See UITextSearchMatchMethod above.
42 | @property (nonatomic, readonly) UITextSearchMatchMethod wordMatchMethod;
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:114:34: error: 'UITextRange' is unavailable in watchOS
112 | }
113 |
114 | func replace(foundTextRange: UITextRange, document: AnyHashable??, withText replacementText: String) {
| `- error: 'UITextRange' is unavailable in watchOS
115 | _textView.replace(foundTextRange, withText: replacementText)
116 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:307:12: note: 'UITextRange' has been explicitly marked unavailable here
305 |
306 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
307 | @interface UITextRange : NSObject
| `- note: 'UITextRange' has been explicitly marked unavailable here
308 |
309 | @property (nonatomic, readonly, getter=isEmpty) BOOL empty; // Whether the range is zero-length.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:118:40: error: 'UITextRange' is unavailable in watchOS
116 | }
117 |
118 | func shouldReplace(foundTextRange: UITextRange, document: AnyHashable??, withText replacementText: String) -> Bool {
| `- error: 'UITextRange' is unavailable in watchOS
119 | guard let foundTextRange = foundTextRange as? IndexedRange else {
120 | // iOS 16 beta 2 will call this function when presenting the find/replace navigator and pass <uninitialized> to foundTextRange. If we return false in this case, the find/replace UI will not be shown, so we need to return true when we can't convert the UITextRange to an IndexedRange.
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:307:12: note: 'UITextRange' has been explicitly marked unavailable here
305 |
306 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
307 | @interface UITextRange : NSObject
| `- note: 'UITextRange' has been explicitly marked unavailable here
308 |
309 | @property (nonatomic, readonly, getter=isEmpty) BOOL empty; // Whether the range is zero-length.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:129:40: error: 'UITextRange' is unavailable in watchOS
127 | }
128 |
129 | func scrollRangeToVisible(_ range: UITextRange, inDocument: AnyHashable??) {
| `- error: 'UITextRange' is unavailable in watchOS
130 | if let indexedRange = range as? IndexedRange {
131 | _textView.scrollRangeToVisible(indexedRange.range)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h:307:12: note: 'UITextRange' has been explicitly marked unavailable here
305 |
306 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
307 | @interface UITextRange : NSObject
| `- note: 'UITextRange' has been explicitly marked unavailable here
308 |
309 | @property (nonatomic, readonly, getter=isEmpty) BOOL empty; // Whether the range is zero-length.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:153:70: error: 'UITextSearchOptions' is unavailable in watchOS
151 |
152 | @available(iOS 16.0, *)
153 | private func performTextSearch(for queryString: String, options: UITextSearchOptions, completion: @escaping ([SearchResult]) -> Void) {
| `- error: 'UITextSearchOptions' is unavailable in watchOS
154 | queue.cancelAllOperations()
155 | let operation = BlockOperation()
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIFindSession.h:40:12: note: 'UITextSearchOptions' has been explicitly marked unavailable here
38 |
39 | UIKIT_EXTERN API_AVAILABLE(ios(16.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
40 | @interface UITextSearchOptions : NSObject
| `- note: 'UITextSearchOptions' has been explicitly marked unavailable here
41 | /// See UITextSearchMatchMethod above.
42 | @property (nonatomic, readonly) UITextSearchMatchMethod wordMatchMethod;
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:170:41: error: 'UIFindInteraction' is unavailable in watchOS
168 | @available(iOS 16, *)
169 | extension UITextSearchingHelper: UIFindInteractionDelegate {
170 | func findInteraction(_ interaction: UIFindInteraction, sessionFor view: UIView) -> UIFindSession? {
| `- error: 'UIFindInteraction' is unavailable in watchOS
171 | UITextSearchingFindSession(searchableObject: self)
172 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIFindInteraction.h:39:12: note: 'UIFindInteraction' has been explicitly marked unavailable here
37 |
38 | UIKIT_EXTERN API_AVAILABLE(ios(16.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
39 | @interface UIFindInteraction : NSObject <UIInteraction>
| `- note: 'UIFindInteraction' has been explicitly marked unavailable here
40 |
41 | /// Returns YES if the find navigator panel is currently visible.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:170:77: error: 'UIView' is unavailable in watchOS
168 | @available(iOS 16, *)
169 | extension UITextSearchingHelper: UIFindInteractionDelegate {
170 | func findInteraction(_ interaction: UIFindInteraction, sessionFor view: UIView) -> UIFindSession? {
| `- error: 'UIView' is unavailable in watchOS
171 | UITextSearchingFindSession(searchableObject: self)
172 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
| `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass; // default is [CALayer class]. Used when creating the underlying layer for the view.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:170:88: error: 'UIFindSession' is unavailable in watchOS
168 | @available(iOS 16, *)
169 | extension UITextSearchingHelper: UIFindInteractionDelegate {
170 | func findInteraction(_ interaction: UIFindInteraction, sessionFor view: UIView) -> UIFindSession? {
| `- error: 'UIFindSession' is unavailable in watchOS
171 | UITextSearchingFindSession(searchableObject: self)
172 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIFindSession.h:57:12: note: 'UIFindSession' has been explicitly marked unavailable here
55 | /// state of a find session automatically using behavior consistent with the rest of the system.
56 | UIKIT_EXTERN API_AVAILABLE(ios(16.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
57 | @interface UIFindSession : NSObject
| `- note: 'UIFindSession' has been explicitly marked unavailable here
58 |
59 | /// Returns the total number of results.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:169:34: error: 'UIFindInteractionDelegate' is unavailable in watchOS
167 |
168 | @available(iOS 16, *)
169 | extension UITextSearchingHelper: UIFindInteractionDelegate {
| `- error: 'UIFindInteractionDelegate' is unavailable in watchOS
170 | func findInteraction(_ interaction: UIFindInteraction, sessionFor view: UIView) -> UIFindSession? {
171 | UITextSearchingFindSession(searchableObject: self)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIFindInteraction.h:18:11: note: 'UIFindInteractionDelegate' has been explicitly marked unavailable here
16 |
17 | UIKIT_EXTERN API_AVAILABLE(ios(16.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
18 | @protocol UIFindInteractionDelegate <NSObject>
| `- note: 'UIFindInteractionDelegate' has been explicitly marked unavailable here
19 |
20 | /// Called when a find session is requested to begin by the user. Return an instance of a UIFindSession implementation to allow the
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:177:40: error: 'UITextSearchOptions' is unavailable in watchOS
175 | private extension SearchQuery {
176 | @available(iOS 16, *)
177 | init(queryString: String, options: UITextSearchOptions) {
| `- error: 'UITextSearchOptions' is unavailable in watchOS
178 | let matchMethod = SearchQuery.MatchMethod(options.wordMatchMethod)
179 | let isCaseSensitive = !options.stringCompareOptions.contains(.caseInsensitive)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIFindSession.h:40:12: note: 'UITextSearchOptions' has been explicitly marked unavailable here
38 |
39 | UIKIT_EXTERN API_AVAILABLE(ios(16.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
40 | @interface UITextSearchOptions : NSObject
| `- note: 'UITextSearchOptions' has been explicitly marked unavailable here
41 | /// See UITextSearchMatchMethod above.
42 | @property (nonatomic, readonly) UITextSearchMatchMethod wordMatchMethod;
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:186:25: error: 'UITextSearchOptions' is unavailable in watchOS
184 | @available(iOS 16, *)
185 | private extension SearchQuery.MatchMethod {
186 | init(_ matchMethod: UITextSearchOptions.WordMatchMethod) {
| `- error: 'UITextSearchOptions' is unavailable in watchOS
187 | switch matchMethod {
188 | case .contains:
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIFindSession.h:40:12: note: 'UITextSearchOptions' has been explicitly marked unavailable here
38 |
39 | UIKIT_EXTERN API_AVAILABLE(ios(16.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
40 | @interface UITextSearchOptions : NSObject
| `- note: 'UITextSearchOptions' has been explicitly marked unavailable here
41 | /// See UITextSearchMatchMethod above.
42 | @property (nonatomic, readonly) UITextSearchMatchMethod wordMatchMethod;
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:22:62: error: 'UIFindInteraction' is unavailable in watchOS
20 | return nil
21 | }
22 | guard let findInteraction = _findInteraction as? UIFindInteraction else {
| `- error: 'UIFindInteraction' is unavailable in watchOS
23 | fatalError("Expected _findInteraction to be of type \(UIFindInteraction.self)")
24 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIFindInteraction.h:39:12: note: 'UIFindInteraction' has been explicitly marked unavailable here
37 |
38 | UIKIT_EXTERN API_AVAILABLE(ios(16.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
39 | @interface UIFindInteraction : NSObject <UIInteraction>
| `- note: 'UIFindInteraction' has been explicitly marked unavailable here
40 |
41 | /// Returns YES if the find navigator panel is currently visible.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:23:71: error: 'UIFindInteraction' is unavailable in watchOS
21 | }
22 | guard let findInteraction = _findInteraction as? UIFindInteraction else {
23 | fatalError("Expected _findInteraction to be of type \(UIFindInteraction.self)")
| `- error: 'UIFindInteraction' is unavailable in watchOS
24 | }
25 | return findInteraction
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIFindInteraction.h:39:12: note: 'UIFindInteraction' has been explicitly marked unavailable here
37 |
38 | UIKIT_EXTERN API_AVAILABLE(ios(16.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
39 | @interface UIFindInteraction : NSObject <UIInteraction>
| `- note: 'UIFindInteraction' has been explicitly marked unavailable here
40 |
41 | /// Returns YES if the find navigator panel is currently visible.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:139:35: error: 'UIFindInteraction' is unavailable in watchOS
137 | private func addFindInteraction() {
138 | if #available(iOS 16, *), findInteraction == nil {
139 | let findInteraction = UIFindInteraction(sessionDelegate: self)
| `- error: 'UIFindInteraction' is unavailable in watchOS
140 | self.findInteraction = findInteraction
141 | _textView.addInteraction(findInteraction)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIFindInteraction.h:39:12: note: 'UIFindInteraction' has been explicitly marked unavailable here
37 |
38 | UIKIT_EXTERN API_AVAILABLE(ios(16.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
39 | @interface UIFindInteraction : NSObject <UIInteraction>
| `- note: 'UIFindInteraction' has been explicitly marked unavailable here
40 |
41 | /// Returns YES if the find navigator panel is currently visible.
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:141:23: error: 'addInteraction' is unavailable in watchOS
139 | let findInteraction = UIFindInteraction(sessionDelegate: self)
140 | self.findInteraction = findInteraction
141 | _textView.addInteraction(findInteraction)
| `- error: 'addInteraction' is unavailable in watchOS
142 | }
143 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIInteraction.h:26:1: note: 'addInteraction' has been explicitly marked unavailable here
24 | @interface UIView (Interactions)
25 |
26 | - (void)addInteraction:(id<UIInteraction>)interaction API_AVAILABLE(ios(11.0), tvos(13.0)) API_UNAVAILABLE(watchos);
| `- note: 'addInteraction' has been explicitly marked unavailable here
27 | - (void)removeInteraction:(id<UIInteraction>)interaction API_AVAILABLE(ios(11.0), tvos(13.0)) API_UNAVAILABLE(watchos);
28 |
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:148:23: error: 'removeInteraction' is unavailable in watchOS
146 | if #available(iOS 16, *), let findInteraction = findInteraction {
147 | self.findInteraction = nil
148 | _textView.removeInteraction(findInteraction)
| `- error: 'removeInteraction' is unavailable in watchOS
149 | }
150 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIInteraction.h:27:1: note: 'removeInteraction' has been explicitly marked unavailable here
25 |
26 | - (void)addInteraction:(id<UIInteraction>)interaction API_AVAILABLE(ios(11.0), tvos(13.0)) API_UNAVAILABLE(watchos);
27 | - (void)removeInteraction:(id<UIInteraction>)interaction API_AVAILABLE(ios(11.0), tvos(13.0)) API_UNAVAILABLE(watchos);
| `- note: 'removeInteraction' has been explicitly marked unavailable here
28 |
29 | @property (nonatomic, copy) NSArray<id<UIInteraction>> *interactions API_AVAILABLE(ios(11.0), tvos(13.0)) API_UNAVAILABLE(watchos);
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:171:54: error: argument type 'UITextSearchingHelper' does not conform to expected type '__UITextSearching'
169 | extension UITextSearchingHelper: UIFindInteractionDelegate {
170 | func findInteraction(_ interaction: UIFindInteraction, sessionFor view: UIView) -> UIFindSession? {
171 | UITextSearchingFindSession(searchableObject: self)
| |- error: argument type 'UITextSearchingHelper' does not conform to expected type '__UITextSearching'
| `- note: add missing conformance to '__UITextSearching' to class 'UITextSearchingHelper'
172 | }
173 | }
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:3:13: error: non-'@objc' property 'selectedTextRange' does not satisfy requirement of '@objc' protocol '__UITextSearching'
1 | import UIKit
2 |
3 | final class UITextSearchingHelper: NSObject {
| `- error: non-'@objc' property 'selectedTextRange' does not satisfy requirement of '@objc' protocol '__UITextSearching'
4 | weak var textView: TextView?
5 | var isFindInteractionEnabled = false {
:
57 | }
58 |
59 | var selectedTextRange: UITextRange? {
| `- note: add '@objc' to expose this property to Objective-C
60 | _textView.selectedTextRange
61 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextSearching.h:66:45: note: requirement 'selectedTextRange' declared here
64 |
65 | /// Overlap from UITextInput: Returns the currently selected text range, if applicable. Nil otherwise.
66 | @property (nullable, readonly) UITextRange *selectedTextRange;
| `- note: requirement 'selectedTextRange' declared here
67 |
68 | /// Provide a comparison result comparing developer-provided @c fromRange to @c toRange . This is used by
/Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift:3:13: error: non-'@objc' method 'clearAllDecoratedFoundText()' does not satisfy requirement of '@objc' protocol '__UITextSearching'
1 | import UIKit
2 |
3 | final class UITextSearchingHelper: NSObject {
| `- error: non-'@objc' method 'clearAllDecoratedFoundText()' does not satisfy requirement of '@objc' protocol '__UITextSearching'
4 | weak var textView: TextView?
5 | var isFindInteractionEnabled = false {
:
98 | }
99 |
100 | func clearAllDecoratedFoundText() {
| `- note: add '@objc' to expose this instance method to Objective-C
101 | _textView.highlightedRanges = []
102 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextSearching.h:104:1: note: requirement 'clearAllDecoratedFoundText()' declared here
102 | /// Called when the current search session has changed or ended, with the expectation that all decorations
103 | /// applied via @c decorateFoundTextRange:usingStyle: are cleared.
104 | - (void)clearAllDecoratedFoundText;
| `- note: requirement 'clearAllDecoratedFoundText()' declared here
105 |
106 | @optional
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/StringModifier.swift (in target 'Runestone' from project 'Runestone')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile StringModifier.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/TextPreview.swift (in target 'Runestone' from project 'Runestone')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile TextPreview.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SearchAndReplace/UITextSearchingHelper.swift (in target 'Runestone' from project 'Runestone')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile UITextSearchingHelper.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/Internal/InternalLanguageMode.swift (in target 'Runestone' from project 'Runestone')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile InternalLanguageMode.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/Internal/InternalLanguageModeFactory.swift (in target 'Runestone' from project 'Runestone')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile InternalLanguageModeFactory.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/Internal/PlainText/PlainTextInternalLanguageMode.swift (in target 'Runestone' from project 'Runestone')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile PlainTextInternalLanguageMode.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/Internal/PlainText/PlainTextSyntaxHighlighter.swift (in target 'Runestone' from project 'Runestone')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile PlainTextSyntaxHighlighter.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/Internal/TreeSitter/TreeSitterIndentController.swift (in target 'Runestone' from project 'Runestone')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile TreeSitterIndentController.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/Internal/TreeSitter/TreeSitterIndentStrategyDetector.swift (in target 'Runestone' from project 'Runestone')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile TreeSitterIndentStrategyDetector.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/Internal/TreeSitter/TreeSitterInjectedLanguage.swift (in target 'Runestone' from project 'Runestone')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile TreeSitterInjectedLanguage.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/Internal/TreeSitter/TreeSitterInjectedLanguageMapper.swift (in target 'Runestone' from project 'Runestone')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile TreeSitterInjectedLanguageMapper.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/Internal/TreeSitter/TreeSitterInternalLanguage.swift (in target 'Runestone' from project 'Runestone')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile TreeSitterInternalLanguage.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/Internal/TreeSitter/TreeSitterInternalLanguageMode.swift (in target 'Runestone' from project 'Runestone')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile TreeSitterInternalLanguageMode.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/Internal/TreeSitter/TreeSitterLanguageLayer.swift (in target 'Runestone' from project 'Runestone')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile TreeSitterLanguageLayer.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TextView/SyntaxHighlighting/Internal/TreeSitter/TreeSitterLanguageLayerStore.swift (in target 'Runestone' from project 'Runestone')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile TreeSitterLanguageLayerStore.swift
SwiftCompile normal arm64_32 Compiling\ TreeSitterInputEdit.swift,\ TreeSitterNode.swift,\ TreeSitterParser.swift,\ TreeSitterPredicate.swift,\ TreeSitterPredicateMapper.swift,\ TreeSitterQuery.swift,\ TreeSitterQueryCursor.swift,\ TreeSitterQueryMatch.swift,\ TreeSitterTextInput.swift,\ TreeSitterTextPoint.swift,\ TreeSitterTextPredicate.swift,\ TreeSitterTextRange.swift,\ TreeSitterTree.swift,\ GeneratedAssetSymbols.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TreeSitter/TreeSitterInputEdit.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TreeSitter/TreeSitterNode.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TreeSitter/TreeSitterParser.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TreeSitter/TreeSitterPredicate.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TreeSitter/TreeSitterPredicateMapper.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TreeSitter/TreeSitterQuery.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TreeSitter/TreeSitterQueryCursor.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TreeSitter/TreeSitterQueryMatch.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TreeSitter/TreeSitterTextInput.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TreeSitter/TreeSitterTextPoint.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TreeSitter/TreeSitterTextPredicate.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TreeSitter/TreeSitterTextRange.swift /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TreeSitter/TreeSitterTree.swift /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Runestone.build/Debug-watchos/Runestone-t.build/DerivedSources/GeneratedAssetSymbols.swift (in target 'Runestone' from project 'Runestone')
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TreeSitter/TreeSitterInputEdit.swift (in target 'Runestone' from project 'Runestone')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile TreeSitterInputEdit.swift
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TreeSitter/TreeSitterNode.swift (in target 'Runestone' from project 'Runestone')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile TreeSitterNode.swift
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TreeSitter/TreeSitterParser.swift (in target 'Runestone' from project 'Runestone')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile TreeSitterParser.swift
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TreeSitter/TreeSitterPredicate.swift (in target 'Runestone' from project 'Runestone')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile TreeSitterPredicate.swift
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TreeSitter/TreeSitterPredicateMapper.swift (in target 'Runestone' from project 'Runestone')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile TreeSitterPredicateMapper.swift
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TreeSitter/TreeSitterQuery.swift (in target 'Runestone' from project 'Runestone')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile TreeSitterQuery.swift
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TreeSitter/TreeSitterQueryCursor.swift (in target 'Runestone' from project 'Runestone')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile TreeSitterQueryCursor.swift
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TreeSitter/TreeSitterQueryMatch.swift (in target 'Runestone' from project 'Runestone')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile TreeSitterQueryMatch.swift
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TreeSitter/TreeSitterTextInput.swift (in target 'Runestone' from project 'Runestone')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile TreeSitterTextInput.swift
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TreeSitter/TreeSitterTextPoint.swift (in target 'Runestone' from project 'Runestone')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile TreeSitterTextPoint.swift
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TreeSitter/TreeSitterTextPredicate.swift (in target 'Runestone' from project 'Runestone')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile TreeSitterTextPredicate.swift
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TreeSitter/TreeSitterTextRange.swift (in target 'Runestone' from project 'Runestone')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile TreeSitterTextRange.swift
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/Runestone/TreeSitter/TreeSitterTree.swift (in target 'Runestone' from project 'Runestone')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile TreeSitterTree.swift
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Runestone.build/Debug-watchos/Runestone-t.build/DerivedSources/GeneratedAssetSymbols.swift (in target 'Runestone' from project 'Runestone')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile GeneratedAssetSymbols.swift
PruneExplicitPrecompiledModules /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SwiftExplicitPrecompiledModules
PruneExplicitPrecompiledModules /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules
PruneExplicitPrecompiledModules /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/ExplicitPrecompiledModules
2026-09-24 09:02:44.053 xcodebuild[974:5726] [MT] IDERunDestination: Supported platforms for the buildables in the current scheme is empty.
** BUILD FAILED **
The following build commands failed:
SwiftEmitModule normal arm64_32 Emitting\ module\ for\ Runestone (in target 'Runestone' from project 'Runestone')
SwiftCompile normal arm64_32 (in target 'Runestone' from project 'Runestone')
Building workspace Runestone with scheme Runestone
(3 failures)
BUILD FAILURE 6.4 watchOS