Build Information
Failed to build STTextKitPlus, reference 0.3.1 (8117f3), with Swift 6.1 for Linux on 8 Sep 2026 21:00:21 UTC.
Build Command
bash -c docker run --pull=always --rm -v "checkouts-54344845-0":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/saguaro1/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu 2>&1Build Log
========================================
RunAll
========================================
Builder version: 5.0.2
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/krzyzanowskim/STTextKitPlus.git
Reference: 0.3.1
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/STTextKitPlus
* tag 0.3.1 -> FETCH_HEAD
HEAD is now at 8117f3b Avoid forcing layout when hit-testing text fragments
Cloned https://github.com/krzyzanowskim/STTextKitPlus.git
Revision (git rev-parse @):
8117f3b6a20633e4ce92df102dd260b808ffc9bd
SUCCESS checkout https://github.com/krzyzanowskim/STTextKitPlus.git at 0.3.1
========================================
Build
========================================
Selected platform: linux
Swift version: 6.1
Building package at path: $PWD
https://github.com/krzyzanowskim/STTextKitPlus.git
https://github.com/krzyzanowskim/STTextKitPlus.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-54344845-0":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/saguaro1/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures 2>&1
basic-6.1-latest: Pulling from saguaro1/spi-images
Digest: sha256:dff62030f4387a2d827d2b365d39a91716bd1d13650763ccbcbfe23419000563
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:basic-6.1-latest
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-24593BA9C3E375BF.txt
[3/10] Compiling STTextKitPlus NSTextLayoutManager.swift
/host/spi-builder-workspace/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/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/Sources/STTextKitPlus/NSTextLayoutManager.swift:96:11: error: cannot find type 'NSTextLayoutManager' in scope
94 | }
95 |
96 | extension NSTextLayoutManager {
| `- error: cannot find type 'NSTextLayoutManager' in scope
97 |
98 | /// Returns a location of text produced by a tap or click at the point you specify.
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:153:11: error: cannot find type 'NSTextLayoutManager' in scope
151 | }
152 |
153 | extension NSTextLayoutManager {
| `- error: cannot find type 'NSTextLayoutManager' in scope
154 |
155 | /// Typographic bounds of the range.
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:200:11: error: cannot find type 'NSTextLayoutManager' in scope
198 | }
199 |
200 | extension NSTextLayoutManager {
| `- error: cannot find type 'NSTextLayoutManager' in scope
201 |
202 | /// Enumerates the text layout fragments in the specified range.
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:221:11: error: cannot find type 'NSTextLayoutManager' in scope
219 | }
220 |
221 | extension NSTextLayoutManager {
| `- error: cannot find type 'NSTextLayoutManager' in scope
222 |
223 | public var insertionPointLocations: [NSTextLocation] {
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:232:50: error: cannot find type 'NSTextSelection' in scope
230 | }
231 |
232 | private let _textSelectionInsertionPointFilter: (NSTextSelection) -> Bool = { textSelection in
| `- error: cannot find type 'NSTextSelection' in scope
233 | !textSelection.isLogical && textSelection.textRanges.contains(where: \.isEmpty)
234 | }
/host/spi-builder-workspace/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/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/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/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/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(interactingAt: point)?.textLineFragment(at: point)
81 | }
/host/spi-builder-workspace/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(interactingAt: point)?.textLineFragment(at: point)
81 | }
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:87:69: error: cannot find type 'NSTextLayoutFragment' in scope
85 | /// Unlike `textLayoutFragment(for: CGPoint)`, does not ensure layout from the start of the document,
86 | /// which would move fragments positioned by estimate.
87 | public func textLayoutFragment(interactingAt point: CGPoint) -> NSTextLayoutFragment? {
| `- error: cannot find type 'NSTextLayoutFragment' in scope
88 | guard let lineFragmentRange = lineFragmentRange(for: point, inContainerAt: documentRange.location) else {
89 | return nil
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:87:57: error: cannot find type 'CGPoint' in scope
85 | /// Unlike `textLayoutFragment(for: CGPoint)`, does not ensure layout from the start of the document,
86 | /// which would move fragments positioned by estimate.
87 | public func textLayoutFragment(interactingAt point: CGPoint) -> NSTextLayoutFragment? {
| `- error: cannot find type 'CGPoint' in scope
88 | guard let lineFragmentRange = lineFragmentRange(for: point, inContainerAt: documentRange.location) else {
89 | return nil
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:104:108: error: cannot find type 'NSTextLocation' in scope
102 | /// - Returns: A location
103 | @available(*, deprecated, renamed: "caretLocation(interactingAt:inContainerAt:)")
104 | public func location(interactingAt point: CGPoint, inContainerAt containerLocation: NSTextLocation) -> NSTextLocation? {
| `- error: cannot find type 'NSTextLocation' in scope
105 | caretLocation(interactingAt: point, inContainerAt: containerLocation)
106 | }
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:104:47: error: cannot find type 'CGPoint' in scope
102 | /// - Returns: A location
103 | @available(*, deprecated, renamed: "caretLocation(interactingAt:inContainerAt:)")
104 | public func location(interactingAt point: CGPoint, inContainerAt containerLocation: NSTextLocation) -> NSTextLocation? {
| `- error: cannot find type 'CGPoint' in scope
105 | caretLocation(interactingAt: point, inContainerAt: containerLocation)
106 | }
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:104:89: error: cannot find type 'NSTextLocation' in scope
102 | /// - Returns: A location
103 | @available(*, deprecated, renamed: "caretLocation(interactingAt:inContainerAt:)")
104 | public func location(interactingAt point: CGPoint, inContainerAt containerLocation: NSTextLocation) -> NSTextLocation? {
| `- error: cannot find type 'NSTextLocation' in scope
105 | caretLocation(interactingAt: point, inContainerAt: containerLocation)
106 | }
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:115:42: error: cannot find 'CaretLocationOptions' in scope
113 |
114 | /// Allow point outside text layout fragment frame
115 | public static var allowOutside = CaretLocationOptions(rawValue: 1 << 0)
| `- error: cannot find 'CaretLocationOptions' in scope
116 | }
117 |
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:123:149: error: cannot find type 'NSTextLocation' in scope
121 | /// - containerLocation: A NSTextLocation that describes the container location.
122 | /// - Returns: A location
123 | public func caretLocation(interactingAt point: CGPoint, options: CaretLocationOptions = [], inContainerAt containerLocation: NSTextLocation) -> NSTextLocation? {
| `- error: cannot find type 'NSTextLocation' in scope
124 | guard let lineFragmentRange = lineFragmentRange(for: point, inContainerAt: containerLocation) else {
125 | return nil
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:123:52: error: cannot find type 'CGPoint' in scope
121 | /// - containerLocation: A NSTextLocation that describes the container location.
122 | /// - Returns: A location
123 | public func caretLocation(interactingAt point: CGPoint, options: CaretLocationOptions = [], inContainerAt containerLocation: NSTextLocation) -> NSTextLocation? {
| `- error: cannot find type 'CGPoint' in scope
124 | guard let lineFragmentRange = lineFragmentRange(for: point, inContainerAt: containerLocation) else {
125 | return nil
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:123:70: error: cannot find type 'CaretLocationOptions' in scope
121 | /// - containerLocation: A NSTextLocation that describes the container location.
122 | /// - Returns: A location
123 | public func caretLocation(interactingAt point: CGPoint, options: CaretLocationOptions = [], inContainerAt containerLocation: NSTextLocation) -> NSTextLocation? {
| `- error: cannot find type 'CaretLocationOptions' in scope
124 | guard let lineFragmentRange = lineFragmentRange(for: point, inContainerAt: containerLocation) else {
125 | return nil
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:123:130: error: cannot find type 'NSTextLocation' in scope
121 | /// - containerLocation: A NSTextLocation that describes the container location.
122 | /// - Returns: A location
123 | public func caretLocation(interactingAt point: CGPoint, options: CaretLocationOptions = [], inContainerAt containerLocation: NSTextLocation) -> NSTextLocation? {
| `- error: cannot find type 'NSTextLocation' in scope
124 | guard let lineFragmentRange = lineFragmentRange(for: point, inContainerAt: containerLocation) else {
125 | return nil
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:160:65: error: cannot find type 'CGRect' in scope
158 | ///
159 | /// Returns a union of each segment frame in the range, which may be larger than the area needed to layout the range.
160 | public func typographicBounds(in textRange: NSTextRange) -> CGRect? {
| `- error: cannot find type 'CGRect' in scope
161 | textSegmentFrame(in: textRange, type: .standard, options: [.upstreamAffinity, .rangeNotRequired])
162 | }
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:160:49: error: cannot find type 'NSTextRange' in scope
158 | ///
159 | /// Returns a union of each segment frame in the range, which may be larger than the area needed to layout the range.
160 | public func typographicBounds(in textRange: NSTextRange) -> CGRect? {
| `- error: cannot find type 'NSTextRange' in scope
161 | textSegmentFrame(in: textRange, type: .standard, options: [.upstreamAffinity, .rangeNotRequired])
162 | }
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:165:152: error: cannot find type 'CGRect' in scope
163 |
164 | /// A text segment is both logically and visually contiguous portion of the text content inside a line fragment.
165 | public func textSegmentFrame(at location: NSTextLocation, type: NSTextLayoutManager.SegmentType, options: SegmentOptions = [.upstreamAffinity]) -> CGRect? {
| `- error: cannot find type 'CGRect' in scope
166 | textSegmentFrame(in: NSTextRange(location: location), type: type, options: options)
167 | }
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:165:47: error: cannot find type 'NSTextLocation' in scope
163 |
164 | /// A text segment is both logically and visually contiguous portion of the text content inside a line fragment.
165 | public func textSegmentFrame(at location: NSTextLocation, type: NSTextLayoutManager.SegmentType, options: SegmentOptions = [.upstreamAffinity]) -> CGRect? {
| `- error: cannot find type 'NSTextLocation' in scope
166 | textSegmentFrame(in: NSTextRange(location: location), type: type, options: options)
167 | }
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:165:69: error: cannot find type 'NSTextLayoutManager' in scope
163 |
164 | /// A text segment is both logically and visually contiguous portion of the text content inside a line fragment.
165 | public func textSegmentFrame(at location: NSTextLocation, type: NSTextLayoutManager.SegmentType, options: SegmentOptions = [.upstreamAffinity]) -> CGRect? {
| `- error: cannot find type 'NSTextLayoutManager' in scope
166 | textSegmentFrame(in: NSTextRange(location: location), type: type, options: options)
167 | }
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:165:111: error: cannot find type 'SegmentOptions' in scope
163 |
164 | /// A text segment is both logically and visually contiguous portion of the text content inside a line fragment.
165 | public func textSegmentFrame(at location: NSTextLocation, type: NSTextLayoutManager.SegmentType, options: SegmentOptions = [.upstreamAffinity]) -> CGRect? {
| `- error: cannot find type 'SegmentOptions' in scope
166 | textSegmentFrame(in: NSTextRange(location: location), type: type, options: options)
167 | }
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:172:169: error: cannot find type 'CGRect' in scope
170 | /// 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.
171 | /// The framework enumerates the segments visually from left to right.
172 | public func textSegmentFrame(in textRange: NSTextRange, type: NSTextLayoutManager.SegmentType, options: SegmentOptions = [.upstreamAffinity, .rangeNotRequired]) -> CGRect? {
| `- error: cannot find type 'CGRect' in scope
173 | var result: CGRect? = nil
174 | // .upstreamAffinity: When specified, the segment is placed based on the upstream affinity for an empty range.
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:172:48: error: cannot find type 'NSTextRange' in scope
170 | /// 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.
171 | /// The framework enumerates the segments visually from left to right.
172 | public func textSegmentFrame(in textRange: NSTextRange, type: NSTextLayoutManager.SegmentType, options: SegmentOptions = [.upstreamAffinity, .rangeNotRequired]) -> CGRect? {
| `- error: cannot find type 'NSTextRange' in scope
173 | var result: CGRect? = nil
174 | // .upstreamAffinity: When specified, the segment is placed based on the upstream affinity for an empty range.
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:172:67: error: cannot find type 'NSTextLayoutManager' in scope
170 | /// 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.
171 | /// The framework enumerates the segments visually from left to right.
172 | public func textSegmentFrame(in textRange: NSTextRange, type: NSTextLayoutManager.SegmentType, options: SegmentOptions = [.upstreamAffinity, .rangeNotRequired]) -> CGRect? {
| `- error: cannot find type 'NSTextLayoutManager' in scope
173 | var result: CGRect? = nil
174 | // .upstreamAffinity: When specified, the segment is placed based on the upstream affinity for an empty range.
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:172:109: error: cannot find type 'SegmentOptions' in scope
170 | /// 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.
171 | /// The framework enumerates the segments visually from left to right.
172 | public func textSegmentFrame(in textRange: NSTextRange, type: NSTextLayoutManager.SegmentType, options: SegmentOptions = [.upstreamAffinity, .rangeNotRequired]) -> CGRect? {
| `- error: cannot find type 'SegmentOptions' in scope
173 | var result: CGRect? = nil
174 | // .upstreamAffinity: When specified, the segment is placed based on the upstream affinity for an empty range.
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:189:171: error: cannot find type 'CGRect' in scope
187 |
188 | /// Enumerates text segments in the text range you provide.
189 | public func textSegmentFrames(in textRange: NSTextRange, type: NSTextLayoutManager.SegmentType, options: SegmentOptions = [.upstreamAffinity, .rangeNotRequired]) -> [CGRect] {
| `- error: cannot find type 'CGRect' in scope
190 | var result: [CGRect] = []
191 | enumerateTextSegments(in: textRange, type: type, options: options) { textSegmentRange, textSegmentFrame, baselinePosition, textContainer -> Bool in
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:189:49: error: cannot find type 'NSTextRange' in scope
187 |
188 | /// Enumerates text segments in the text range you provide.
189 | public func textSegmentFrames(in textRange: NSTextRange, type: NSTextLayoutManager.SegmentType, options: SegmentOptions = [.upstreamAffinity, .rangeNotRequired]) -> [CGRect] {
| `- error: cannot find type 'NSTextRange' in scope
190 | var result: [CGRect] = []
191 | enumerateTextSegments(in: textRange, type: type, options: options) { textSegmentRange, textSegmentFrame, baselinePosition, textContainer -> Bool in
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:189:68: error: cannot find type 'NSTextLayoutManager' in scope
187 |
188 | /// Enumerates text segments in the text range you provide.
189 | public func textSegmentFrames(in textRange: NSTextRange, type: NSTextLayoutManager.SegmentType, options: SegmentOptions = [.upstreamAffinity, .rangeNotRequired]) -> [CGRect] {
| `- error: cannot find type 'NSTextLayoutManager' in scope
190 | var result: [CGRect] = []
191 | enumerateTextSegments(in: textRange, type: type, options: options) { textSegmentRange, textSegmentFrame, baselinePosition, textContainer -> Bool in
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:189:110: error: cannot find type 'SegmentOptions' in scope
187 |
188 | /// Enumerates text segments in the text range you provide.
189 | public func textSegmentFrames(in textRange: NSTextRange, type: NSTextLayoutManager.SegmentType, options: SegmentOptions = [.upstreamAffinity, .rangeNotRequired]) -> [CGRect] {
| `- error: cannot find type 'SegmentOptions' in scope
190 | var result: [CGRect] = []
191 | enumerateTextSegments(in: textRange, type: type, options: options) { textSegmentRange, textSegmentFrame, baselinePosition, textContainer -> Bool in
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:209:191: error: cannot find type 'NSTextLocation' in scope
207 | /// - block: A closure you provide that determines if the enumeration finishes early.
208 | /// - Returns: An NSTextLocation, or nil. If the method enumerates at least one fragment, it returns the edge of the enumerated range.
209 | @discardableResult public func enumerateTextLayoutFragments(in range: NSTextRange, options: NSTextLayoutFragment.EnumerationOptions = [], using block: (NSTextLayoutFragment) -> Bool) -> NSTextLocation? {
| `- error: cannot find type 'NSTextLocation' in scope
210 | enumerateTextLayoutFragments(from: range.location, options: options) { layoutFragment in
211 | guard layoutFragment.rangeInElement.location <= range.endLocation else {
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:209:75: error: cannot find type 'NSTextRange' in scope
207 | /// - block: A closure you provide that determines if the enumeration finishes early.
208 | /// - Returns: An NSTextLocation, or nil. If the method enumerates at least one fragment, it returns the edge of the enumerated range.
209 | @discardableResult public func enumerateTextLayoutFragments(in range: NSTextRange, options: NSTextLayoutFragment.EnumerationOptions = [], using block: (NSTextLayoutFragment) -> Bool) -> NSTextLocation? {
| `- error: cannot find type 'NSTextRange' in scope
210 | enumerateTextLayoutFragments(from: range.location, options: options) { layoutFragment in
211 | guard layoutFragment.rangeInElement.location <= range.endLocation else {
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:209:97: error: cannot find type 'NSTextLayoutFragment' in scope
207 | /// - block: A closure you provide that determines if the enumeration finishes early.
208 | /// - Returns: An NSTextLocation, or nil. If the method enumerates at least one fragment, it returns the edge of the enumerated range.
209 | @discardableResult public func enumerateTextLayoutFragments(in range: NSTextRange, options: NSTextLayoutFragment.EnumerationOptions = [], using block: (NSTextLayoutFragment) -> Bool) -> NSTextLocation? {
| `- error: cannot find type 'NSTextLayoutFragment' in scope
210 | enumerateTextLayoutFragments(from: range.location, options: options) { layoutFragment in
211 | guard layoutFragment.rangeInElement.location <= range.endLocation else {
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:209:157: error: cannot find type 'NSTextLayoutFragment' in scope
207 | /// - block: A closure you provide that determines if the enumeration finishes early.
208 | /// - Returns: An NSTextLocation, or nil. If the method enumerates at least one fragment, it returns the edge of the enumerated range.
209 | @discardableResult public func enumerateTextLayoutFragments(in range: NSTextRange, options: NSTextLayoutFragment.EnumerationOptions = [], using block: (NSTextLayoutFragment) -> Bool) -> NSTextLocation? {
| `- error: cannot find type 'NSTextLayoutFragment' in scope
210 | enumerateTextLayoutFragments(from: range.location, options: options) { layoutFragment in
211 | guard layoutFragment.rangeInElement.location <= range.endLocation else {
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:223:42: error: cannot find type 'NSTextLocation' in scope
221 | extension NSTextLayoutManager {
222 |
223 | public var insertionPointLocations: [NSTextLocation] {
| `- error: cannot find type 'NSTextLocation' in scope
224 | insertionPointSelections.flatMap(\.textRanges).map(\.location).sorted(by: { $0 < $1 })
225 | }
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:227:43: error: cannot find type 'NSTextSelection' in scope
225 | }
226 |
227 | public var insertionPointSelections: [NSTextSelection] {
| `- error: cannot find type 'NSTextSelection' in scope
228 | textSelections.filter(_textSelectionInsertionPointFilter)
229 | }
[4/10] Compiling STTextKitPlus NSTextLineFragment.swift
/host/spi-builder-workspace/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/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/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 {
[5/10] Compiling STTextKitPlus NSTextLocation+Equatable.swift
/host/spi-builder-workspace/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 {
[6/10] Compiling STTextKitPlus NSTextRange.swift
/host/spi-builder-workspace/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/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),
41 | let end = textContentManager.location(start, offsetBy: nsRange.length) else {
/host/spi-builder-workspace/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),
41 | let end = textContentManager.location(start, offsetBy: nsRange.length) else {
/host/spi-builder-workspace/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/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 {
error: emit-module command failed with exit code 1 (use -v to see invocation)
[7/10] Compiling STTextKitPlus NSTextLayoutFragment.swift
/host/spi-builder-workspace/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/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/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/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/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 | lineFragment.typographicBounds.offsetBy(dx: layoutFragmentFrame.origin.x, dy: layoutFragmentFrame.origin.y).contains(location)
/host/spi-builder-workspace/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 | lineFragment.typographicBounds.offsetBy(dx: layoutFragmentFrame.origin.x, dy: layoutFragmentFrame.origin.y).contains(location)
/host/spi-builder-workspace/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 | lineFragment.typographicBounds.offsetBy(dx: layoutFragmentFrame.origin.x, dy: layoutFragmentFrame.origin.y).contains(location)
[8/10] Emitting module STTextKitPlus
/host/spi-builder-workspace/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/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/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/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/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/Sources/STTextKitPlus/NSTextLayoutManager.swift:96:11: error: cannot find type 'NSTextLayoutManager' in scope
94 | }
95 |
96 | extension NSTextLayoutManager {
| `- error: cannot find type 'NSTextLayoutManager' in scope
97 |
98 | /// Returns a location of text produced by a tap or click at the point you specify.
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:153:11: error: cannot find type 'NSTextLayoutManager' in scope
151 | }
152 |
153 | extension NSTextLayoutManager {
| `- error: cannot find type 'NSTextLayoutManager' in scope
154 |
155 | /// Typographic bounds of the range.
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:200:11: error: cannot find type 'NSTextLayoutManager' in scope
198 | }
199 |
200 | extension NSTextLayoutManager {
| `- error: cannot find type 'NSTextLayoutManager' in scope
201 |
202 | /// Enumerates the text layout fragments in the specified range.
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:221:11: error: cannot find type 'NSTextLayoutManager' in scope
219 | }
220 |
221 | extension NSTextLayoutManager {
| `- error: cannot find type 'NSTextLayoutManager' in scope
222 |
223 | public var insertionPointLocations: [NSTextLocation] {
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:232:50: error: cannot find type 'NSTextSelection' in scope
230 | }
231 |
232 | private let _textSelectionInsertionPointFilter: (NSTextSelection) -> Bool = { textSelection in
| `- error: cannot find type 'NSTextSelection' in scope
233 | !textSelection.isLogical && textSelection.textRanges.contains(where: \.isEmpty)
234 | }
/host/spi-builder-workspace/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/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/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) {
[9/10] Compiling STTextKitPlus NSTextContentManager.swift
/host/spi-builder-workspace/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/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/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/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/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/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/Sources/STTextKitPlus/NSTextContentManager.swift:180:59: error: cannot find type 'NSTextElement' in scope
178 | ///
179 | /// This is working implementation, in contrary to buggy `textElements(for:)` (FB10019859)
180 | func textElementsNotBuggy(for range: NSTextRange) -> [NSTextElement] {
| `- error: cannot find type 'NSTextElement' in scope
181 | var elements: [NSTextElement] = []
182 |
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextContentManager.swift:180:42: error: cannot find type 'NSTextRange' in scope
178 | ///
179 | /// This is working implementation, in contrary to buggy `textElements(for:)` (FB10019859)
180 | func textElementsNotBuggy(for range: NSTextRange) -> [NSTextElement] {
| `- error: cannot find type 'NSTextRange' in scope
181 | var elements: [NSTextElement] = []
182 |
[10/10] Compiling STTextKitPlus NSRange.swift
/host/spi-builder-workspace/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/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/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/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/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/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/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/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 | }
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-54344845-0":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/saguaro1/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu 2>&1
basic-6.1-latest: Pulling from saguaro1/spi-images
Digest: sha256:dff62030f4387a2d827d2b365d39a91716bd1d13650763ccbcbfe23419000563
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:basic-6.1-latest
[0/1] Planning build
Building for debugging...
[0/1] Write swift-version-24593BA9C3E375BF.txt
[2/9] Compiling STTextKitPlus NSTextRange.swift
/host/spi-builder-workspace/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/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),
41 | let end = textContentManager.location(start, offsetBy: nsRange.length) else {
/host/spi-builder-workspace/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),
41 | let end = textContentManager.location(start, offsetBy: nsRange.length) else {
/host/spi-builder-workspace/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/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 {
[3/9] Compiling STTextKitPlus NSTextLocation+Equatable.swift
/host/spi-builder-workspace/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 {
[4/9] Compiling STTextKitPlus NSRange.swift
/host/spi-builder-workspace/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/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/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/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/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/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/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/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)
[5/9] Emitting module STTextKitPlus
/host/spi-builder-workspace/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/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/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/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/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/Sources/STTextKitPlus/NSTextLayoutManager.swift:96:11: error: cannot find type 'NSTextLayoutManager' in scope
94 | }
95 |
96 | extension NSTextLayoutManager {
| `- error: cannot find type 'NSTextLayoutManager' in scope
97 |
98 | /// Returns a location of text produced by a tap or click at the point you specify.
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:153:11: error: cannot find type 'NSTextLayoutManager' in scope
151 | }
152 |
153 | extension NSTextLayoutManager {
| `- error: cannot find type 'NSTextLayoutManager' in scope
154 |
155 | /// Typographic bounds of the range.
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:200:11: error: cannot find type 'NSTextLayoutManager' in scope
198 | }
199 |
200 | extension NSTextLayoutManager {
| `- error: cannot find type 'NSTextLayoutManager' in scope
201 |
202 | /// Enumerates the text layout fragments in the specified range.
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:221:11: error: cannot find type 'NSTextLayoutManager' in scope
219 | }
220 |
221 | extension NSTextLayoutManager {
| `- error: cannot find type 'NSTextLayoutManager' in scope
222 |
223 | public var insertionPointLocations: [NSTextLocation] {
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:232:50: error: cannot find type 'NSTextSelection' in scope
230 | }
231 |
232 | private let _textSelectionInsertionPointFilter: (NSTextSelection) -> Bool = { textSelection in
| `- error: cannot find type 'NSTextSelection' in scope
233 | !textSelection.isLogical && textSelection.textRanges.contains(where: \.isEmpty)
234 | }
/host/spi-builder-workspace/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/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/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) {
[6/9] Compiling STTextKitPlus NSTextLineFragment.swift
/host/spi-builder-workspace/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/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/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 {
[7/9] Compiling STTextKitPlus NSTextContentManager.swift
/host/spi-builder-workspace/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/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/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/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/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/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/Sources/STTextKitPlus/NSTextContentManager.swift:180:59: error: cannot find type 'NSTextElement' in scope
178 | ///
179 | /// This is working implementation, in contrary to buggy `textElements(for:)` (FB10019859)
180 | func textElementsNotBuggy(for range: NSTextRange) -> [NSTextElement] {
| `- error: cannot find type 'NSTextElement' in scope
181 | var elements: [NSTextElement] = []
182 |
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextContentManager.swift:180:42: error: cannot find type 'NSTextRange' in scope
178 | ///
179 | /// This is working implementation, in contrary to buggy `textElements(for:)` (FB10019859)
180 | func textElementsNotBuggy(for range: NSTextRange) -> [NSTextElement] {
| `- error: cannot find type 'NSTextRange' in scope
181 | var elements: [NSTextElement] = []
182 |
[8/9] Compiling STTextKitPlus NSTextLayoutManager.swift
/host/spi-builder-workspace/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/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/Sources/STTextKitPlus/NSTextLayoutManager.swift:96:11: error: cannot find type 'NSTextLayoutManager' in scope
94 | }
95 |
96 | extension NSTextLayoutManager {
| `- error: cannot find type 'NSTextLayoutManager' in scope
97 |
98 | /// Returns a location of text produced by a tap or click at the point you specify.
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:153:11: error: cannot find type 'NSTextLayoutManager' in scope
151 | }
152 |
153 | extension NSTextLayoutManager {
| `- error: cannot find type 'NSTextLayoutManager' in scope
154 |
155 | /// Typographic bounds of the range.
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:200:11: error: cannot find type 'NSTextLayoutManager' in scope
198 | }
199 |
200 | extension NSTextLayoutManager {
| `- error: cannot find type 'NSTextLayoutManager' in scope
201 |
202 | /// Enumerates the text layout fragments in the specified range.
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:221:11: error: cannot find type 'NSTextLayoutManager' in scope
219 | }
220 |
221 | extension NSTextLayoutManager {
| `- error: cannot find type 'NSTextLayoutManager' in scope
222 |
223 | public var insertionPointLocations: [NSTextLocation] {
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:232:50: error: cannot find type 'NSTextSelection' in scope
230 | }
231 |
232 | private let _textSelectionInsertionPointFilter: (NSTextSelection) -> Bool = { textSelection in
| `- error: cannot find type 'NSTextSelection' in scope
233 | !textSelection.isLogical && textSelection.textRanges.contains(where: \.isEmpty)
234 | }
/host/spi-builder-workspace/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/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/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/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/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(interactingAt: point)?.textLineFragment(at: point)
81 | }
/host/spi-builder-workspace/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(interactingAt: point)?.textLineFragment(at: point)
81 | }
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:87:69: error: cannot find type 'NSTextLayoutFragment' in scope
85 | /// Unlike `textLayoutFragment(for: CGPoint)`, does not ensure layout from the start of the document,
86 | /// which would move fragments positioned by estimate.
87 | public func textLayoutFragment(interactingAt point: CGPoint) -> NSTextLayoutFragment? {
| `- error: cannot find type 'NSTextLayoutFragment' in scope
88 | guard let lineFragmentRange = lineFragmentRange(for: point, inContainerAt: documentRange.location) else {
89 | return nil
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:87:57: error: cannot find type 'CGPoint' in scope
85 | /// Unlike `textLayoutFragment(for: CGPoint)`, does not ensure layout from the start of the document,
86 | /// which would move fragments positioned by estimate.
87 | public func textLayoutFragment(interactingAt point: CGPoint) -> NSTextLayoutFragment? {
| `- error: cannot find type 'CGPoint' in scope
88 | guard let lineFragmentRange = lineFragmentRange(for: point, inContainerAt: documentRange.location) else {
89 | return nil
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:104:108: error: cannot find type 'NSTextLocation' in scope
102 | /// - Returns: A location
103 | @available(*, deprecated, renamed: "caretLocation(interactingAt:inContainerAt:)")
104 | public func location(interactingAt point: CGPoint, inContainerAt containerLocation: NSTextLocation) -> NSTextLocation? {
| `- error: cannot find type 'NSTextLocation' in scope
105 | caretLocation(interactingAt: point, inContainerAt: containerLocation)
106 | }
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:104:47: error: cannot find type 'CGPoint' in scope
102 | /// - Returns: A location
103 | @available(*, deprecated, renamed: "caretLocation(interactingAt:inContainerAt:)")
104 | public func location(interactingAt point: CGPoint, inContainerAt containerLocation: NSTextLocation) -> NSTextLocation? {
| `- error: cannot find type 'CGPoint' in scope
105 | caretLocation(interactingAt: point, inContainerAt: containerLocation)
106 | }
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:104:89: error: cannot find type 'NSTextLocation' in scope
102 | /// - Returns: A location
103 | @available(*, deprecated, renamed: "caretLocation(interactingAt:inContainerAt:)")
104 | public func location(interactingAt point: CGPoint, inContainerAt containerLocation: NSTextLocation) -> NSTextLocation? {
| `- error: cannot find type 'NSTextLocation' in scope
105 | caretLocation(interactingAt: point, inContainerAt: containerLocation)
106 | }
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:115:42: error: cannot find 'CaretLocationOptions' in scope
113 |
114 | /// Allow point outside text layout fragment frame
115 | public static var allowOutside = CaretLocationOptions(rawValue: 1 << 0)
| `- error: cannot find 'CaretLocationOptions' in scope
116 | }
117 |
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:123:149: error: cannot find type 'NSTextLocation' in scope
121 | /// - containerLocation: A NSTextLocation that describes the container location.
122 | /// - Returns: A location
123 | public func caretLocation(interactingAt point: CGPoint, options: CaretLocationOptions = [], inContainerAt containerLocation: NSTextLocation) -> NSTextLocation? {
| `- error: cannot find type 'NSTextLocation' in scope
124 | guard let lineFragmentRange = lineFragmentRange(for: point, inContainerAt: containerLocation) else {
125 | return nil
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:123:52: error: cannot find type 'CGPoint' in scope
121 | /// - containerLocation: A NSTextLocation that describes the container location.
122 | /// - Returns: A location
123 | public func caretLocation(interactingAt point: CGPoint, options: CaretLocationOptions = [], inContainerAt containerLocation: NSTextLocation) -> NSTextLocation? {
| `- error: cannot find type 'CGPoint' in scope
124 | guard let lineFragmentRange = lineFragmentRange(for: point, inContainerAt: containerLocation) else {
125 | return nil
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:123:70: error: cannot find type 'CaretLocationOptions' in scope
121 | /// - containerLocation: A NSTextLocation that describes the container location.
122 | /// - Returns: A location
123 | public func caretLocation(interactingAt point: CGPoint, options: CaretLocationOptions = [], inContainerAt containerLocation: NSTextLocation) -> NSTextLocation? {
| `- error: cannot find type 'CaretLocationOptions' in scope
124 | guard let lineFragmentRange = lineFragmentRange(for: point, inContainerAt: containerLocation) else {
125 | return nil
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:123:130: error: cannot find type 'NSTextLocation' in scope
121 | /// - containerLocation: A NSTextLocation that describes the container location.
122 | /// - Returns: A location
123 | public func caretLocation(interactingAt point: CGPoint, options: CaretLocationOptions = [], inContainerAt containerLocation: NSTextLocation) -> NSTextLocation? {
| `- error: cannot find type 'NSTextLocation' in scope
124 | guard let lineFragmentRange = lineFragmentRange(for: point, inContainerAt: containerLocation) else {
125 | return nil
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:160:65: error: cannot find type 'CGRect' in scope
158 | ///
159 | /// Returns a union of each segment frame in the range, which may be larger than the area needed to layout the range.
160 | public func typographicBounds(in textRange: NSTextRange) -> CGRect? {
| `- error: cannot find type 'CGRect' in scope
161 | textSegmentFrame(in: textRange, type: .standard, options: [.upstreamAffinity, .rangeNotRequired])
162 | }
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:160:49: error: cannot find type 'NSTextRange' in scope
158 | ///
159 | /// Returns a union of each segment frame in the range, which may be larger than the area needed to layout the range.
160 | public func typographicBounds(in textRange: NSTextRange) -> CGRect? {
| `- error: cannot find type 'NSTextRange' in scope
161 | textSegmentFrame(in: textRange, type: .standard, options: [.upstreamAffinity, .rangeNotRequired])
162 | }
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:165:152: error: cannot find type 'CGRect' in scope
163 |
164 | /// A text segment is both logically and visually contiguous portion of the text content inside a line fragment.
165 | public func textSegmentFrame(at location: NSTextLocation, type: NSTextLayoutManager.SegmentType, options: SegmentOptions = [.upstreamAffinity]) -> CGRect? {
| `- error: cannot find type 'CGRect' in scope
166 | textSegmentFrame(in: NSTextRange(location: location), type: type, options: options)
167 | }
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:165:47: error: cannot find type 'NSTextLocation' in scope
163 |
164 | /// A text segment is both logically and visually contiguous portion of the text content inside a line fragment.
165 | public func textSegmentFrame(at location: NSTextLocation, type: NSTextLayoutManager.SegmentType, options: SegmentOptions = [.upstreamAffinity]) -> CGRect? {
| `- error: cannot find type 'NSTextLocation' in scope
166 | textSegmentFrame(in: NSTextRange(location: location), type: type, options: options)
167 | }
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:165:69: error: cannot find type 'NSTextLayoutManager' in scope
163 |
164 | /// A text segment is both logically and visually contiguous portion of the text content inside a line fragment.
165 | public func textSegmentFrame(at location: NSTextLocation, type: NSTextLayoutManager.SegmentType, options: SegmentOptions = [.upstreamAffinity]) -> CGRect? {
| `- error: cannot find type 'NSTextLayoutManager' in scope
166 | textSegmentFrame(in: NSTextRange(location: location), type: type, options: options)
167 | }
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:165:111: error: cannot find type 'SegmentOptions' in scope
163 |
164 | /// A text segment is both logically and visually contiguous portion of the text content inside a line fragment.
165 | public func textSegmentFrame(at location: NSTextLocation, type: NSTextLayoutManager.SegmentType, options: SegmentOptions = [.upstreamAffinity]) -> CGRect? {
| `- error: cannot find type 'SegmentOptions' in scope
166 | textSegmentFrame(in: NSTextRange(location: location), type: type, options: options)
167 | }
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:172:169: error: cannot find type 'CGRect' in scope
170 | /// 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.
171 | /// The framework enumerates the segments visually from left to right.
172 | public func textSegmentFrame(in textRange: NSTextRange, type: NSTextLayoutManager.SegmentType, options: SegmentOptions = [.upstreamAffinity, .rangeNotRequired]) -> CGRect? {
| `- error: cannot find type 'CGRect' in scope
173 | var result: CGRect? = nil
174 | // .upstreamAffinity: When specified, the segment is placed based on the upstream affinity for an empty range.
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:172:48: error: cannot find type 'NSTextRange' in scope
170 | /// 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.
171 | /// The framework enumerates the segments visually from left to right.
172 | public func textSegmentFrame(in textRange: NSTextRange, type: NSTextLayoutManager.SegmentType, options: SegmentOptions = [.upstreamAffinity, .rangeNotRequired]) -> CGRect? {
| `- error: cannot find type 'NSTextRange' in scope
173 | var result: CGRect? = nil
174 | // .upstreamAffinity: When specified, the segment is placed based on the upstream affinity for an empty range.
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:172:67: error: cannot find type 'NSTextLayoutManager' in scope
170 | /// 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.
171 | /// The framework enumerates the segments visually from left to right.
172 | public func textSegmentFrame(in textRange: NSTextRange, type: NSTextLayoutManager.SegmentType, options: SegmentOptions = [.upstreamAffinity, .rangeNotRequired]) -> CGRect? {
| `- error: cannot find type 'NSTextLayoutManager' in scope
173 | var result: CGRect? = nil
174 | // .upstreamAffinity: When specified, the segment is placed based on the upstream affinity for an empty range.
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:172:109: error: cannot find type 'SegmentOptions' in scope
170 | /// 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.
171 | /// The framework enumerates the segments visually from left to right.
172 | public func textSegmentFrame(in textRange: NSTextRange, type: NSTextLayoutManager.SegmentType, options: SegmentOptions = [.upstreamAffinity, .rangeNotRequired]) -> CGRect? {
| `- error: cannot find type 'SegmentOptions' in scope
173 | var result: CGRect? = nil
174 | // .upstreamAffinity: When specified, the segment is placed based on the upstream affinity for an empty range.
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:189:171: error: cannot find type 'CGRect' in scope
187 |
188 | /// Enumerates text segments in the text range you provide.
189 | public func textSegmentFrames(in textRange: NSTextRange, type: NSTextLayoutManager.SegmentType, options: SegmentOptions = [.upstreamAffinity, .rangeNotRequired]) -> [CGRect] {
| `- error: cannot find type 'CGRect' in scope
190 | var result: [CGRect] = []
191 | enumerateTextSegments(in: textRange, type: type, options: options) { textSegmentRange, textSegmentFrame, baselinePosition, textContainer -> Bool in
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:189:49: error: cannot find type 'NSTextRange' in scope
187 |
188 | /// Enumerates text segments in the text range you provide.
189 | public func textSegmentFrames(in textRange: NSTextRange, type: NSTextLayoutManager.SegmentType, options: SegmentOptions = [.upstreamAffinity, .rangeNotRequired]) -> [CGRect] {
| `- error: cannot find type 'NSTextRange' in scope
190 | var result: [CGRect] = []
191 | enumerateTextSegments(in: textRange, type: type, options: options) { textSegmentRange, textSegmentFrame, baselinePosition, textContainer -> Bool in
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:189:68: error: cannot find type 'NSTextLayoutManager' in scope
187 |
188 | /// Enumerates text segments in the text range you provide.
189 | public func textSegmentFrames(in textRange: NSTextRange, type: NSTextLayoutManager.SegmentType, options: SegmentOptions = [.upstreamAffinity, .rangeNotRequired]) -> [CGRect] {
| `- error: cannot find type 'NSTextLayoutManager' in scope
190 | var result: [CGRect] = []
191 | enumerateTextSegments(in: textRange, type: type, options: options) { textSegmentRange, textSegmentFrame, baselinePosition, textContainer -> Bool in
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:189:110: error: cannot find type 'SegmentOptions' in scope
187 |
188 | /// Enumerates text segments in the text range you provide.
189 | public func textSegmentFrames(in textRange: NSTextRange, type: NSTextLayoutManager.SegmentType, options: SegmentOptions = [.upstreamAffinity, .rangeNotRequired]) -> [CGRect] {
| `- error: cannot find type 'SegmentOptions' in scope
190 | var result: [CGRect] = []
191 | enumerateTextSegments(in: textRange, type: type, options: options) { textSegmentRange, textSegmentFrame, baselinePosition, textContainer -> Bool in
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:209:191: error: cannot find type 'NSTextLocation' in scope
207 | /// - block: A closure you provide that determines if the enumeration finishes early.
208 | /// - Returns: An NSTextLocation, or nil. If the method enumerates at least one fragment, it returns the edge of the enumerated range.
209 | @discardableResult public func enumerateTextLayoutFragments(in range: NSTextRange, options: NSTextLayoutFragment.EnumerationOptions = [], using block: (NSTextLayoutFragment) -> Bool) -> NSTextLocation? {
| `- error: cannot find type 'NSTextLocation' in scope
210 | enumerateTextLayoutFragments(from: range.location, options: options) { layoutFragment in
211 | guard layoutFragment.rangeInElement.location <= range.endLocation else {
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:209:75: error: cannot find type 'NSTextRange' in scope
207 | /// - block: A closure you provide that determines if the enumeration finishes early.
208 | /// - Returns: An NSTextLocation, or nil. If the method enumerates at least one fragment, it returns the edge of the enumerated range.
209 | @discardableResult public func enumerateTextLayoutFragments(in range: NSTextRange, options: NSTextLayoutFragment.EnumerationOptions = [], using block: (NSTextLayoutFragment) -> Bool) -> NSTextLocation? {
| `- error: cannot find type 'NSTextRange' in scope
210 | enumerateTextLayoutFragments(from: range.location, options: options) { layoutFragment in
211 | guard layoutFragment.rangeInElement.location <= range.endLocation else {
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:209:97: error: cannot find type 'NSTextLayoutFragment' in scope
207 | /// - block: A closure you provide that determines if the enumeration finishes early.
208 | /// - Returns: An NSTextLocation, or nil. If the method enumerates at least one fragment, it returns the edge of the enumerated range.
209 | @discardableResult public func enumerateTextLayoutFragments(in range: NSTextRange, options: NSTextLayoutFragment.EnumerationOptions = [], using block: (NSTextLayoutFragment) -> Bool) -> NSTextLocation? {
| `- error: cannot find type 'NSTextLayoutFragment' in scope
210 | enumerateTextLayoutFragments(from: range.location, options: options) { layoutFragment in
211 | guard layoutFragment.rangeInElement.location <= range.endLocation else {
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:209:157: error: cannot find type 'NSTextLayoutFragment' in scope
207 | /// - block: A closure you provide that determines if the enumeration finishes early.
208 | /// - Returns: An NSTextLocation, or nil. If the method enumerates at least one fragment, it returns the edge of the enumerated range.
209 | @discardableResult public func enumerateTextLayoutFragments(in range: NSTextRange, options: NSTextLayoutFragment.EnumerationOptions = [], using block: (NSTextLayoutFragment) -> Bool) -> NSTextLocation? {
| `- error: cannot find type 'NSTextLayoutFragment' in scope
210 | enumerateTextLayoutFragments(from: range.location, options: options) { layoutFragment in
211 | guard layoutFragment.rangeInElement.location <= range.endLocation else {
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:223:42: error: cannot find type 'NSTextLocation' in scope
221 | extension NSTextLayoutManager {
222 |
223 | public var insertionPointLocations: [NSTextLocation] {
| `- error: cannot find type 'NSTextLocation' in scope
224 | insertionPointSelections.flatMap(\.textRanges).map(\.location).sorted(by: { $0 < $1 })
225 | }
/host/spi-builder-workspace/Sources/STTextKitPlus/NSTextLayoutManager.swift:227:43: error: cannot find type 'NSTextSelection' in scope
225 | }
226 |
227 | public var insertionPointSelections: [NSTextSelection] {
| `- error: cannot find type 'NSTextSelection' in scope
228 | textSelections.filter(_textSelectionInsertionPointFilter)
229 | }
[9/9] Compiling STTextKitPlus NSTextLayoutFragment.swift
/host/spi-builder-workspace/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/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/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/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/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 | lineFragment.typographicBounds.offsetBy(dx: layoutFragmentFrame.origin.x, dy: layoutFragmentFrame.origin.y).contains(location)
/host/spi-builder-workspace/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 | lineFragment.typographicBounds.offsetBy(dx: layoutFragmentFrame.origin.x, dy: layoutFragmentFrame.origin.y).contains(location)
/host/spi-builder-workspace/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 | lineFragment.typographicBounds.offsetBy(dx: layoutFragmentFrame.origin.x, dy: layoutFragmentFrame.origin.y).contains(location)
BUILD FAILURE 6.1 linux