Build Information
Failed to build STTextView, reference main (fabba8
), with Swift 6.0 for Linux on 5 May 2025 10:49:53 UTC.
Build Command
bash -c docker run --pull=always --rm -v "checkouts-4609320-0":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu 2>&1
Build Log
========================================
RunAll
========================================
Builder version: 4.61.3
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/krzyzanowskim/STTextView.git
Reference: main
Initialized empty Git repository in /host/spi-builder-workspace/.git/
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: git branch -m <name>
From https://github.com/krzyzanowskim/STTextView
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at fabba89 Implement UITextInput methods for position and range queries in STTextView
Cloned https://github.com/krzyzanowskim/STTextView.git
Revision (git rev-parse @):
fabba89f4301df142dc174729974eafa672e2eb7
SUCCESS checkout https://github.com/krzyzanowskim/STTextView.git at main
========================================
Build
========================================
Selected platform: linux
Swift version: 6.0
Building package at path: $PWD
https://github.com/krzyzanowskim/STTextView.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-0":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu 2>&1
basic-6.0-latest: Pulling from finestructure/spi-images
Digest: sha256:9029076bb687edc160a3d5201c89e92dd9fa7309f33f090c4234365c83366c31
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.0-latest
Fetching https://github.com/krzyzanowskim/STTextKitPlus
Fetching https://github.com/krzyzanowskim/CoreTextSwift
[1/98] Fetching coretextswift
[99/230] Fetching coretextswift, sttextkitplus
Fetched https://github.com/krzyzanowskim/CoreTextSwift from cache (0.23s)
Fetched https://github.com/krzyzanowskim/STTextKitPlus from cache (0.23s)
Computing version for https://github.com/krzyzanowskim/CoreTextSwift
Computed https://github.com/krzyzanowskim/CoreTextSwift at 0.2.0 (1.82s)
Computing version for https://github.com/krzyzanowskim/STTextKitPlus
Computed https://github.com/krzyzanowskim/STTextKitPlus at 0.1.8 (0.50s)
Creating working copy for https://github.com/krzyzanowskim/CoreTextSwift
Working copy of https://github.com/krzyzanowskim/CoreTextSwift resolved at 0.2.0
Creating working copy for https://github.com/krzyzanowskim/STTextKitPlus
Working copy of https://github.com/krzyzanowskim/STTextKitPlus resolved at 0.1.8
warning: 'spi-builder-workspace': found 1 file(s) which are unhandled; explicitly declare them as resources or exclude from the target
/host/spi-builder-workspace/Sources/STTextViewCommon/Utilities/Throttler/LICENSE
Building for debugging...
[0/5] Write sources
[4/5] Write swift-version-24593BA9C3E375BF.txt
[6/17] Emitting module STTextViewSwiftUI
[7/17] Compiling STTextKitPlus NSTextLocation+Equatable.swift
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLocation+Equatable.swift:37:18: error: cannot find type 'NSTextLocation' in scope
35 | #endif
36 |
37 | public extension NSTextLocation {
| `- error: cannot find type 'NSTextLocation' in scope
38 |
39 | static func == (lhs: Self, rhs: Self) -> Bool {
[8/17] Compiling STTextKitPlus NSTextRange.swift
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextRange.swift:37:11: error: cannot find type 'NSTextRange' in scope
35 | #endif
36 |
37 | extension NSTextRange {
| `- error: cannot find type 'NSTextRange' in scope
38 |
39 | public convenience init?(_ nsRange: NSRange, in textContentManager: NSTextContentManager) {
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextRange.swift:39:41: error: cannot find type 'NSRange' in scope
37 | extension NSTextRange {
38 |
39 | public convenience init?(_ nsRange: NSRange, in textContentManager: NSTextContentManager) {
| `- error: cannot find type 'NSRange' in scope
40 | guard let start = textContentManager.location(textContentManager.documentRange.location, offsetBy: nsRange.location) else {
41 | return nil
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextRange.swift:39:73: error: cannot find type 'NSTextContentManager' in scope
37 | extension NSTextRange {
38 |
39 | public convenience init?(_ nsRange: NSRange, in textContentManager: NSTextContentManager) {
| `- error: cannot find type 'NSTextContentManager' in scope
40 | guard let start = textContentManager.location(textContentManager.documentRange.location, offsetBy: nsRange.location) else {
41 | return nil
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextRange.swift:47:47: error: cannot find type 'NSTextContentManager' in scope
45 | }
46 |
47 | public func length(in textContentManager: NSTextContentManager) -> Int {
| `- error: cannot find type 'NSTextContentManager' in scope
48 | textContentManager.offset(from: location, to: endLocation)
49 | }
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextRange.swift:52:39: error: cannot find type 'NSTextRange' in scope
50 |
51 | /// Returns a copy of this range clamped to the given limiting range.
52 | public func clamped(to textRange: NSTextRange) -> Self? {
| `- error: cannot find type 'NSTextRange' in scope
53 | let beginLocation = {
54 | if self.location <= textRange.location {
[9/17] Compiling STTextKitPlus NSTextLineFragment.swift
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLineFragment.swift:37:11: error: cannot find type 'NSTextLineFragment' in scope
35 | #endif
36 |
37 | extension NSTextLineFragment {
| `- error: cannot find type 'NSTextLineFragment' in scope
38 |
39 | /// Whether the line fragment is for the extra line fragment at the end of a document.
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLineFragment.swift:52:75: error: cannot find type 'NSTextRange' in scope
50 | /// - Parameter textLayoutFragment: Text layout fragment
51 | /// - Returns: Text range or nil
52 | public func textRange(in textLayoutFragment: NSTextLayoutFragment) -> NSTextRange? {
| `- error: cannot find type 'NSTextRange' in scope
53 |
54 | guard let textContentManager = textLayoutFragment.textLayoutManager?.textContentManager else {
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLineFragment.swift:52:50: error: cannot find type 'NSTextLayoutFragment' in scope
50 | /// - Parameter textLayoutFragment: Text layout fragment
51 | /// - Returns: Text range or nil
52 | public func textRange(in textLayoutFragment: NSTextLayoutFragment) -> NSTextRange? {
| `- error: cannot find type 'NSTextLayoutFragment' in scope
53 |
54 | guard let textContentManager = textLayoutFragment.textLayoutManager?.textContentManager else {
[10/17] Compiling STTextKitPlus NSTextLayoutManager.swift
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutManager.swift:37:11: error: cannot find type 'NSTextLayoutManager' in scope
35 | #endif
36 |
37 | extension NSTextLayoutManager {
| `- error: cannot find type 'NSTextLayoutManager' in scope
38 |
39 | /// Extra line layout fragment.
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutManager.swift:73:11: error: cannot find type 'NSTextLayoutManager' in scope
71 |
72 |
73 | extension NSTextLayoutManager {
| `- error: cannot find type 'NSTextLayoutManager' in scope
74 |
75 | public func textLineFragment(at location: NSTextLocation) -> NSTextLineFragment? {
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutManager.swift:85:11: error: cannot find type 'NSTextLayoutManager' in scope
83 | }
84 |
85 | extension NSTextLayoutManager {
| `- error: cannot find type 'NSTextLayoutManager' in scope
86 |
87 | /// Returns a location of text produced by a tap or click at the point you specify.
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutManager.swift:115:11: error: cannot find type 'NSTextLayoutManager' in scope
113 | }
114 |
115 | extension NSTextLayoutManager {
| `- error: cannot find type 'NSTextLayoutManager' in scope
116 |
117 | /// Typographic bounds of the range.
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutManager.swift:150:11: error: cannot find type 'NSTextLayoutManager' in scope
148 | }
149 |
150 | extension NSTextLayoutManager {
| `- error: cannot find type 'NSTextLayoutManager' in scope
151 |
152 | /// Enumerates the text layout fragments in the specified range.
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutManager.swift:173:11: error: cannot find type 'NSTextLayoutManager' in scope
171 | }
172 |
173 | extension NSTextLayoutManager {
| `- error: cannot find type 'NSTextLayoutManager' in scope
174 |
175 | public var insertionPointLocations: [NSTextLocation] {
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutManager.swift:184:50: error: cannot find type 'NSTextSelection' in scope
182 | }
183 |
184 | private let _textSelectionInsertionPointFilter: (NSTextSelection) -> Bool = { textSelection in
| `- error: cannot find type 'NSTextSelection' in scope
185 | !textSelection.isLogical && textSelection.textRanges.contains(where: \.isEmpty)
186 | }
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutManager.swift:42:59: error: cannot find type 'NSTextLayoutFragment' in scope
40 | ///
41 | /// Only valid when ``state`` greater than NSTextLayoutFragment.State.estimatedUsageBounds
42 | @nonobjc public func extraLineTextLayoutFragment() -> NSTextLayoutFragment? {
| `- error: cannot find type 'NSTextLayoutFragment' in scope
43 | var extraTextLayoutFragment: NSTextLayoutFragment?
44 | enumerateTextLayoutFragments(from: nil, options: .reverse) { textLayoutFragment in
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutManager.swift:58:57: error: cannot find type 'NSTextLineFragment' in scope
56 | ///
57 | /// Only valid when ``state`` greater than NSTextLayoutFragment.State.estimatedUsageBounds
58 | @nonobjc public func extraLineTextLineFragment() -> NSTextLineFragment? {
| `- error: cannot find type 'NSTextLineFragment' in scope
59 | if let textLayoutFragment = extraLineTextLayoutFragment() {
60 | let textLineFragments = textLayoutFragment.textLineFragments
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutManager.swift:75:66: error: cannot find type 'NSTextLineFragment' in scope
73 | extension NSTextLayoutManager {
74 |
75 | public func textLineFragment(at location: NSTextLocation) -> NSTextLineFragment? {
| `- error: cannot find type 'NSTextLineFragment' in scope
76 | textLayoutFragment(for: location)?.textLineFragment(at: location)
77 | }
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutManager.swift:75:47: error: cannot find type 'NSTextLocation' in scope
73 | extension NSTextLayoutManager {
74 |
75 | public func textLineFragment(at location: NSTextLocation) -> NSTextLineFragment? {
| `- error: cannot find type 'NSTextLocation' in scope
76 | textLayoutFragment(for: location)?.textLineFragment(at: location)
77 | }
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutManager.swift:79:56: error: cannot find type 'NSTextLineFragment' in scope
77 | }
78 |
79 | public func textLineFragment(at point: CGPoint) -> NSTextLineFragment? {
| `- error: cannot find type 'NSTextLineFragment' in scope
80 | textLayoutFragment(for: point)?.textLineFragment(at: point)
81 | }
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutManager.swift:79:44: error: cannot find type 'CGPoint' in scope
77 | }
78 |
79 | public func textLineFragment(at point: CGPoint) -> NSTextLineFragment? {
| `- error: cannot find type 'CGPoint' in scope
80 | textLayoutFragment(for: point)?.textLineFragment(at: point)
81 | }
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutManager.swift:92:108: error: cannot find type 'NSTextLocation' in scope
90 | /// - containerLocation: A NSTextLocation that describes the contasiner location.
91 | /// - Returns: A location
92 | public func location(interactingAt point: CGPoint, inContainerAt containerLocation: NSTextLocation) -> NSTextLocation? {
| `- error: cannot find type 'NSTextLocation' in scope
93 | guard let lineFragmentRange = lineFragmentRange(for: point, inContainerAt: containerLocation) else {
94 | return nil
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutManager.swift:92:47: error: cannot find type 'CGPoint' in scope
90 | /// - containerLocation: A NSTextLocation that describes the contasiner location.
91 | /// - Returns: A location
92 | public func location(interactingAt point: CGPoint, inContainerAt containerLocation: NSTextLocation) -> NSTextLocation? {
| `- error: cannot find type 'CGPoint' in scope
93 | guard let lineFragmentRange = lineFragmentRange(for: point, inContainerAt: containerLocation) else {
94 | return nil
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutManager.swift:92:89: error: cannot find type 'NSTextLocation' in scope
90 | /// - containerLocation: A NSTextLocation that describes the contasiner location.
91 | /// - Returns: A location
92 | public func location(interactingAt point: CGPoint, inContainerAt containerLocation: NSTextLocation) -> NSTextLocation? {
| `- error: cannot find type 'NSTextLocation' in scope
93 | guard let lineFragmentRange = lineFragmentRange(for: point, inContainerAt: containerLocation) else {
94 | return nil
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutManager.swift:120:65: error: cannot find type 'CGRect' in scope
118 | /// - Parameter textRange: The range.
119 | /// - Returns: Typographic bounds of the range.
120 | public func typographicBounds(in textRange: NSTextRange) -> CGRect? {
| `- error: cannot find type 'CGRect' in scope
121 | textSegmentFrame(in: textRange, type: .standard, options: [.upstreamAffinity, .rangeNotRequired])
122 | }
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutManager.swift:120:49: error: cannot find type 'NSTextRange' in scope
118 | /// - Parameter textRange: The range.
119 | /// - Returns: Typographic bounds of the range.
120 | public func typographicBounds(in textRange: NSTextRange) -> CGRect? {
| `- error: cannot find type 'NSTextRange' in scope
121 | textSegmentFrame(in: textRange, type: .standard, options: [.upstreamAffinity, .rangeNotRequired])
122 | }
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutManager.swift:125:152: error: cannot find type 'CGRect' in scope
123 |
124 | /// A text segment is both logically and visually contiguous portion of the text content inside a line fragment.
125 | public func textSegmentFrame(at location: NSTextLocation, type: NSTextLayoutManager.SegmentType, options: SegmentOptions = [.upstreamAffinity]) -> CGRect? {
| `- error: cannot find type 'CGRect' in scope
126 | textSegmentFrame(in: NSTextRange(location: location), type: type, options: options)
127 | }
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutManager.swift:125:47: error: cannot find type 'NSTextLocation' in scope
123 |
124 | /// A text segment is both logically and visually contiguous portion of the text content inside a line fragment.
125 | public func textSegmentFrame(at location: NSTextLocation, type: NSTextLayoutManager.SegmentType, options: SegmentOptions = [.upstreamAffinity]) -> CGRect? {
| `- error: cannot find type 'NSTextLocation' in scope
126 | textSegmentFrame(in: NSTextRange(location: location), type: type, options: options)
127 | }
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutManager.swift:125:69: error: cannot find type 'NSTextLayoutManager' in scope
123 |
124 | /// A text segment is both logically and visually contiguous portion of the text content inside a line fragment.
125 | public func textSegmentFrame(at location: NSTextLocation, type: NSTextLayoutManager.SegmentType, options: SegmentOptions = [.upstreamAffinity]) -> CGRect? {
| `- error: cannot find type 'NSTextLayoutManager' in scope
126 | textSegmentFrame(in: NSTextRange(location: location), type: type, options: options)
127 | }
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutManager.swift:125:111: error: cannot find type 'SegmentOptions' in scope
123 |
124 | /// A text segment is both logically and visually contiguous portion of the text content inside a line fragment.
125 | public func textSegmentFrame(at location: NSTextLocation, type: NSTextLayoutManager.SegmentType, options: SegmentOptions = [.upstreamAffinity]) -> CGRect? {
| `- error: cannot find type 'SegmentOptions' in scope
126 | textSegmentFrame(in: NSTextRange(location: location), type: type, options: options)
127 | }
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutManager.swift:132:169: error: cannot find type 'CGRect' in scope
130 | /// Text segment is a logically and visually contiguous portion of the text content inside a line fragment that you specify with a single text range.
131 | /// The framework enumerates the segments visually from left to right.
132 | public func textSegmentFrame(in textRange: NSTextRange, type: NSTextLayoutManager.SegmentType, options: SegmentOptions = [.upstreamAffinity, .rangeNotRequired]) -> CGRect? {
| `- error: cannot find type 'CGRect' in scope
133 | var result: CGRect? = nil
134 | // .upstreamAffinity: When specified, the segment is placed based on the upstream affinity for an empty range.
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutManager.swift:132:48: error: cannot find type 'NSTextRange' in scope
130 | /// Text segment is a logically and visually contiguous portion of the text content inside a line fragment that you specify with a single text range.
131 | /// The framework enumerates the segments visually from left to right.
132 | public func textSegmentFrame(in textRange: NSTextRange, type: NSTextLayoutManager.SegmentType, options: SegmentOptions = [.upstreamAffinity, .rangeNotRequired]) -> CGRect? {
| `- error: cannot find type 'NSTextRange' in scope
133 | var result: CGRect? = nil
134 | // .upstreamAffinity: When specified, the segment is placed based on the upstream affinity for an empty range.
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutManager.swift:132:67: error: cannot find type 'NSTextLayoutManager' in scope
130 | /// Text segment is a logically and visually contiguous portion of the text content inside a line fragment that you specify with a single text range.
131 | /// The framework enumerates the segments visually from left to right.
132 | public func textSegmentFrame(in textRange: NSTextRange, type: NSTextLayoutManager.SegmentType, options: SegmentOptions = [.upstreamAffinity, .rangeNotRequired]) -> CGRect? {
| `- error: cannot find type 'NSTextLayoutManager' in scope
133 | var result: CGRect? = nil
134 | // .upstreamAffinity: When specified, the segment is placed based on the upstream affinity for an empty range.
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutManager.swift:132:109: error: cannot find type 'SegmentOptions' in scope
130 | /// Text segment is a logically and visually contiguous portion of the text content inside a line fragment that you specify with a single text range.
131 | /// The framework enumerates the segments visually from left to right.
132 | public func textSegmentFrame(in textRange: NSTextRange, type: NSTextLayoutManager.SegmentType, options: SegmentOptions = [.upstreamAffinity, .rangeNotRequired]) -> CGRect? {
| `- error: cannot find type 'SegmentOptions' in scope
133 | var result: CGRect? = nil
134 | // .upstreamAffinity: When specified, the segment is placed based on the upstream affinity for an empty range.
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutManager.swift:159:191: error: cannot find type 'NSTextLocation' in scope
157 | /// - block: A closure you provide that determines if the enumeration finishes early.
158 | /// - Returns: An NSTextLocation, or nil. If the method enumerates at least one fragment, it returns the edge of the enumerated range.
159 | @discardableResult public func enumerateTextLayoutFragments(in range: NSTextRange, options: NSTextLayoutFragment.EnumerationOptions = [], using block: (NSTextLayoutFragment) -> Bool) -> NSTextLocation? {
| `- error: cannot find type 'NSTextLocation' in scope
160 | enumerateTextLayoutFragments(from: range.location, options: options) { layoutFragment in
161 | let shouldContinue = layoutFragment.rangeInElement.location <= range.endLocation
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutManager.swift:159:75: error: cannot find type 'NSTextRange' in scope
157 | /// - block: A closure you provide that determines if the enumeration finishes early.
158 | /// - Returns: An NSTextLocation, or nil. If the method enumerates at least one fragment, it returns the edge of the enumerated range.
159 | @discardableResult public func enumerateTextLayoutFragments(in range: NSTextRange, options: NSTextLayoutFragment.EnumerationOptions = [], using block: (NSTextLayoutFragment) -> Bool) -> NSTextLocation? {
| `- error: cannot find type 'NSTextRange' in scope
160 | enumerateTextLayoutFragments(from: range.location, options: options) { layoutFragment in
161 | let shouldContinue = layoutFragment.rangeInElement.location <= range.endLocation
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutManager.swift:159:97: error: cannot find type 'NSTextLayoutFragment' in scope
157 | /// - block: A closure you provide that determines if the enumeration finishes early.
158 | /// - Returns: An NSTextLocation, or nil. If the method enumerates at least one fragment, it returns the edge of the enumerated range.
159 | @discardableResult public func enumerateTextLayoutFragments(in range: NSTextRange, options: NSTextLayoutFragment.EnumerationOptions = [], using block: (NSTextLayoutFragment) -> Bool) -> NSTextLocation? {
| `- error: cannot find type 'NSTextLayoutFragment' in scope
160 | enumerateTextLayoutFragments(from: range.location, options: options) { layoutFragment in
161 | let shouldContinue = layoutFragment.rangeInElement.location <= range.endLocation
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutManager.swift:159:157: error: cannot find type 'NSTextLayoutFragment' in scope
157 | /// - block: A closure you provide that determines if the enumeration finishes early.
158 | /// - Returns: An NSTextLocation, or nil. If the method enumerates at least one fragment, it returns the edge of the enumerated range.
159 | @discardableResult public func enumerateTextLayoutFragments(in range: NSTextRange, options: NSTextLayoutFragment.EnumerationOptions = [], using block: (NSTextLayoutFragment) -> Bool) -> NSTextLocation? {
| `- error: cannot find type 'NSTextLayoutFragment' in scope
160 | enumerateTextLayoutFragments(from: range.location, options: options) { layoutFragment in
161 | let shouldContinue = layoutFragment.rangeInElement.location <= range.endLocation
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutManager.swift:175:42: error: cannot find type 'NSTextLocation' in scope
173 | extension NSTextLayoutManager {
174 |
175 | public var insertionPointLocations: [NSTextLocation] {
| `- error: cannot find type 'NSTextLocation' in scope
176 | insertionPointSelections.flatMap(\.textRanges).map(\.location).sorted(by: { $0 < $1 })
177 | }
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutManager.swift:179:43: error: cannot find type 'NSTextSelection' in scope
177 | }
178 |
179 | public var insertionPointSelections: [NSTextSelection] {
| `- error: cannot find type 'NSTextSelection' in scope
180 | textSelections.filter(_textSelectionInsertionPointFilter)
181 | }
[11/17] Compiling STTextKitPlus NSTextLayoutFragment.swift
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutFragment.swift:37:11: error: cannot find type 'NSTextLayoutFragment' in scope
35 | #endif
36 |
37 | extension NSTextLayoutFragment {
| `- error: cannot find type 'NSTextLayoutFragment' in scope
38 |
39 | /// Whether the layout fragment is for the extra line fragment at the end of a document.
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutFragment.swift:46:118: error: cannot find type 'NSTextLineFragment' in scope
44 | }
45 |
46 | public func textLineFragment(at location: NSTextLocation, in textContentManager: NSTextContentManager? = nil) -> NSTextLineFragment? {
| `- error: cannot find type 'NSTextLineFragment' in scope
47 | guard let textContentManager = textContentManager ?? textLayoutManager?.textContentManager else {
48 | assertionFailure()
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutFragment.swift:46:47: error: cannot find type 'NSTextLocation' in scope
44 | }
45 |
46 | public func textLineFragment(at location: NSTextLocation, in textContentManager: NSTextContentManager? = nil) -> NSTextLineFragment? {
| `- error: cannot find type 'NSTextLocation' in scope
47 | guard let textContentManager = textContentManager ?? textLayoutManager?.textContentManager else {
48 | assertionFailure()
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutFragment.swift:46:86: error: cannot find type 'NSTextContentManager' in scope
44 | }
45 |
46 | public func textLineFragment(at location: NSTextLocation, in textContentManager: NSTextContentManager? = nil) -> NSTextLineFragment? {
| `- error: cannot find type 'NSTextContentManager' in scope
47 | guard let textContentManager = textContentManager ?? textLayoutManager?.textContentManager else {
48 | assertionFailure()
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutFragment.swift:60:111: error: cannot find type 'NSTextLineFragment' in scope
58 | }
59 |
60 | public func textLineFragment(at location: CGPoint, in textContentManager: NSTextContentManager? = nil) -> NSTextLineFragment? {
| `- error: cannot find type 'NSTextLineFragment' in scope
61 | textLineFragments.first { lineFragment in
62 | CGRect(origin: layoutFragmentFrame.origin, size: lineFragment.typographicBounds.size).contains(location)
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutFragment.swift:60:47: error: cannot find type 'CGPoint' in scope
58 | }
59 |
60 | public func textLineFragment(at location: CGPoint, in textContentManager: NSTextContentManager? = nil) -> NSTextLineFragment? {
| `- error: cannot find type 'CGPoint' in scope
61 | textLineFragments.first { lineFragment in
62 | CGRect(origin: layoutFragmentFrame.origin, size: lineFragment.typographicBounds.size).contains(location)
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutFragment.swift:60:79: error: cannot find type 'NSTextContentManager' in scope
58 | }
59 |
60 | public func textLineFragment(at location: CGPoint, in textContentManager: NSTextContentManager? = nil) -> NSTextLineFragment? {
| `- error: cannot find type 'NSTextContentManager' in scope
61 | textLineFragments.first { lineFragment in
62 | CGRect(origin: layoutFragmentFrame.origin, size: lineFragment.typographicBounds.size).contains(location)
error: emit-module command failed with exit code 1 (use -v to see invocation)
[12/17] Emitting module STTextKitPlus
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSRange.swift:37:11: error: cannot find type 'NSRange' in scope
35 | #endif
36 |
37 | extension NSRange {
| `- error: cannot find type 'NSRange' in scope
38 |
39 | /// A value indicating that a requested item couldn’t be found or doesn’t exist.
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextContentManager.swift:37:18: error: cannot find type 'NSTextContentManager' in scope
35 | #endif
36 |
37 | public extension NSTextContentManager {
| `- error: cannot find type 'NSTextContentManager' in scope
38 |
39 | func location(at offset: Int) -> NSTextLocation? {
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutFragment.swift:37:11: error: cannot find type 'NSTextLayoutFragment' in scope
35 | #endif
36 |
37 | extension NSTextLayoutFragment {
| `- error: cannot find type 'NSTextLayoutFragment' in scope
38 |
39 | /// Whether the layout fragment is for the extra line fragment at the end of a document.
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutManager.swift:37:11: error: cannot find type 'NSTextLayoutManager' in scope
35 | #endif
36 |
37 | extension NSTextLayoutManager {
| `- error: cannot find type 'NSTextLayoutManager' in scope
38 |
39 | /// Extra line layout fragment.
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutManager.swift:73:11: error: cannot find type 'NSTextLayoutManager' in scope
71 |
72 |
73 | extension NSTextLayoutManager {
| `- error: cannot find type 'NSTextLayoutManager' in scope
74 |
75 | public func textLineFragment(at location: NSTextLocation) -> NSTextLineFragment? {
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutManager.swift:85:11: error: cannot find type 'NSTextLayoutManager' in scope
83 | }
84 |
85 | extension NSTextLayoutManager {
| `- error: cannot find type 'NSTextLayoutManager' in scope
86 |
87 | /// Returns a location of text produced by a tap or click at the point you specify.
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutManager.swift:115:11: error: cannot find type 'NSTextLayoutManager' in scope
113 | }
114 |
115 | extension NSTextLayoutManager {
| `- error: cannot find type 'NSTextLayoutManager' in scope
116 |
117 | /// Typographic bounds of the range.
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutManager.swift:150:11: error: cannot find type 'NSTextLayoutManager' in scope
148 | }
149 |
150 | extension NSTextLayoutManager {
| `- error: cannot find type 'NSTextLayoutManager' in scope
151 |
152 | /// Enumerates the text layout fragments in the specified range.
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutManager.swift:173:11: error: cannot find type 'NSTextLayoutManager' in scope
171 | }
172 |
173 | extension NSTextLayoutManager {
| `- error: cannot find type 'NSTextLayoutManager' in scope
174 |
175 | public var insertionPointLocations: [NSTextLocation] {
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLayoutManager.swift:184:50: error: cannot find type 'NSTextSelection' in scope
182 | }
183 |
184 | private let _textSelectionInsertionPointFilter: (NSTextSelection) -> Bool = { textSelection in
| `- error: cannot find type 'NSTextSelection' in scope
185 | !textSelection.isLogical && textSelection.textRanges.contains(where: \.isEmpty)
186 | }
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLineFragment.swift:37:11: error: cannot find type 'NSTextLineFragment' in scope
35 | #endif
36 |
37 | extension NSTextLineFragment {
| `- error: cannot find type 'NSTextLineFragment' in scope
38 |
39 | /// Whether the line fragment is for the extra line fragment at the end of a document.
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextLocation+Equatable.swift:37:18: error: cannot find type 'NSTextLocation' in scope
35 | #endif
36 |
37 | public extension NSTextLocation {
| `- error: cannot find type 'NSTextLocation' in scope
38 |
39 | static func == (lhs: Self, rhs: Self) -> Bool {
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextRange.swift:37:11: error: cannot find type 'NSTextRange' in scope
35 | #endif
36 |
37 | extension NSTextRange {
| `- error: cannot find type 'NSTextRange' in scope
38 |
39 | public convenience init?(_ nsRange: NSRange, in textContentManager: NSTextContentManager) {
[13/17] Compiling STTextKitPlus NSTextContentManager.swift
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextContentManager.swift:37:18: error: cannot find type 'NSTextContentManager' in scope
35 | #endif
36 |
37 | public extension NSTextContentManager {
| `- error: cannot find type 'NSTextContentManager' in scope
38 |
39 | func location(at offset: Int) -> NSTextLocation? {
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextContentManager.swift:39:38: error: cannot find type 'NSTextLocation' in scope
37 | public extension NSTextContentManager {
38 |
39 | func location(at offset: Int) -> NSTextLocation? {
| `- error: cannot find type 'NSTextLocation' in scope
40 | location(documentRange.location, offsetBy: offset)
41 | }
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextContentManager.swift:47:75: error: cannot find type 'NSTextLocation' in scope
45 | }
46 |
47 | func location(line lineIdx: Int, character characterIdx: Int? = 0) -> NSTextLocation? {
| `- error: cannot find type 'NSTextLocation' in scope
48 | let linesTextElements = textElements(for: documentRange)
49 | guard linesTextElements.indices ~= lineIdx else {
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextContentManager.swift:62:31: error: cannot find type 'NSTextLocation' in scope
60 | }
61 |
62 | func position(_ location: NSTextLocation) -> (row: Int, column: Int)? {
| `- error: cannot find type 'NSTextLocation' in scope
63 | let linesElements = textElements(for: documentRange)
64 | if linesElements.isEmpty {
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextContentManager.swift:88:54: error: cannot find type 'NSAttributedString' in scope
86 | /// - Parameter range: Text range, or nil for the whole document.
87 | /// - Returns: Attributed string, or nil.
88 | func attributedString(in range: NSTextRange?) -> NSAttributedString? {
| `- error: cannot find type 'NSAttributedString' in scope
89 | if let range, range.isEmpty {
90 | return nil
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextContentManager.swift:88:37: error: cannot find type 'NSTextRange' in scope
86 | /// - Parameter range: Text range, or nil for the whole document.
87 | /// - Returns: Attributed string, or nil.
88 | func attributedString(in range: NSTextRange?) -> NSAttributedString? {
| `- error: cannot find type 'NSTextRange' in scope
89 | if let range, range.isEmpty {
90 | return nil
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextContentManager.swift:176:59: error: cannot find type 'NSTextElement' in scope
174 | ///
175 | /// This is working implementation, in contrary to buggy `textElements(for:)` (FB10019859)
176 | func textElementsNotBuggy(for range: NSTextRange) -> [NSTextElement] {
| `- error: cannot find type 'NSTextElement' in scope
177 | var elements: [NSTextElement] = []
178 |
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSTextContentManager.swift:176:42: error: cannot find type 'NSTextRange' in scope
174 | ///
175 | /// This is working implementation, in contrary to buggy `textElements(for:)` (FB10019859)
176 | func textElementsNotBuggy(for range: NSTextRange) -> [NSTextElement] {
| `- error: cannot find type 'NSTextRange' in scope
177 | var elements: [NSTextElement] = []
178 |
[14/17] Compiling STTextKitPlus NSRange.swift
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSRange.swift:37:11: error: cannot find type 'NSRange' in scope
35 | #endif
36 |
37 | extension NSRange {
| `- error: cannot find type 'NSRange' in scope
38 |
39 | /// A value indicating that a requested item couldn’t be found or doesn’t exist.
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSRange.swift:40:34: error: cannot find 'NSRange' in scope
38 |
39 | /// A value indicating that a requested item couldn’t be found or doesn’t exist.
40 | public static let notFound = NSRange(location: NSNotFound, length: 0)
| `- error: cannot find 'NSRange' in scope
41 |
42 | /// A Boolean value indicating whether the range is empty.
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSRange.swift:40:52: error: cannot find 'NSNotFound' in scope
38 |
39 | /// A value indicating that a requested item couldn’t be found or doesn’t exist.
40 | public static let notFound = NSRange(location: NSNotFound, length: 0)
| `- error: cannot find 'NSNotFound' in scope
41 |
42 | /// A Boolean value indicating whether the range is empty.
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSRange.swift:49:30: error: cannot find type 'NSTextRange' in scope
47 | }
48 |
49 | public init(_ textRange: NSTextRange, in textContentManager: NSTextContentManager) {
| `- error: cannot find type 'NSTextRange' in scope
50 | let offset = textContentManager.offset(from: textContentManager.documentRange.location, to: textRange.location)
51 | let length = textContentManager.offset(from: textRange.location, to: textRange.endLocation)
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSRange.swift:49:66: error: cannot find type 'NSTextContentManager' in scope
47 | }
48 |
49 | public init(_ textRange: NSTextRange, in textContentManager: NSTextContentManager) {
| `- error: cannot find type 'NSTextContentManager' in scope
50 | let offset = textContentManager.offset(from: textContentManager.documentRange.location, to: textRange.location)
51 | let length = textContentManager.offset(from: textRange.location, to: textRange.endLocation)
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSRange.swift:55:33: error: cannot find type 'NSTextLocation' in scope
53 | }
54 |
55 | public init(_ textLocation: NSTextLocation, in textContentManager: NSTextContentManager) {
| `- error: cannot find type 'NSTextLocation' in scope
56 | let offset = textContentManager.offset(from: textContentManager.documentRange.location, to: textLocation)
57 | self.init(location: offset, length: 0)
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSRange.swift:55:72: error: cannot find type 'NSTextContentManager' in scope
53 | }
54 |
55 | public init(_ textLocation: NSTextLocation, in textContentManager: NSTextContentManager) {
| `- error: cannot find type 'NSTextContentManager' in scope
56 | let offset = textContentManager.offset(from: textContentManager.documentRange.location, to: textLocation)
57 | self.init(location: offset, length: 0)
/host/spi-builder-workspace/.build/checkouts/STTextKitPlus/Sources/STTextKitPlus/NSRange.swift:61:25: error: cannot find type 'NSValue' in scope
59 |
60 | /// Creates a new value object containing the specified Foundation range structure.
61 | public var nsValue: NSValue {
| `- error: cannot find type 'NSValue' in scope
62 | NSValue(range: self)
63 | }
error: emit-module command failed with exit code 1 (use -v to see invocation)
[15/17] Emitting module STTextView
/host/spi-builder-workspace/Sources/STTextView/module.swift:11:19: error: no such module 'STTextViewCommon'
9 | #endif
10 |
11 | @_exported import STTextViewCommon
| `- error: no such module 'STTextViewCommon'
12 |
13 |
BUILD FAILURE 6.0 linux