Build Information
Failed to build NSAttributedStringBuilder, reference master (873f3e), with Swift 6.4 for Wasm on 17 Sep 2026 16:05:15 UTC.
Build Command
bash -c docker run --pull=always --rm -v "checkouts-53886769-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:wasm-6.4-latest swift build --swift-sdk swift-6.4.x-DEVELOPMENT-SNAPSHOT-2026-09-04-a_wasm 2>&1Build Log
========================================
RunAll
========================================
Builder version: 5.1.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/ethanhuang13/NSAttributedStringBuilder.git
Reference: master
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/ethanhuang13/NSAttributedStringBuilder
* branch master -> FETCH_HEAD
* [new branch] master -> origin/master
HEAD is now at 873f3e3 Update indentation for conditional code
Cloned https://github.com/ethanhuang13/NSAttributedStringBuilder.git
Revision (git rev-parse @):
873f3e3b27cceac11c84e269dde9c610ddb2a018
SUCCESS checkout https://github.com/ethanhuang13/NSAttributedStringBuilder.git at master
========================================
Build
========================================
Selected platform: wasm
Swift version: 6.4
Building package at path: $PWD
https://github.com/ethanhuang13/NSAttributedStringBuilder.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-53886769-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:wasm-6.4-latest swift build --swift-sdk swift-6.4.x-DEVELOPMENT-SNAPSHOT-2026-09-04-a_wasm 2>&1
wasm-6.4-latest: Pulling from saguaro1/spi-images
Digest: sha256:4328fdb43c680d205c1d6761b1e3267aa38277eefdda9ddfb17b6a0f1a77857a
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:wasm-6.4-latest
Building for debugging...
[Planning deferred tasks]
error: SwiftCompile normal wasm32 failed with a nonzero exit code. Command line: cd /host
/host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/AText.swift:7:26: [1;31merror: [1;39mcannot find type 'NSAttributedString' in scope[0;0m
[0;36m5 |[0;0m #endif
[0;36m6 |[0;0m
[0;36m7 |[0;0m public typealias AText = [4;39mNSAttributedString[0;0m.AttrText
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'NSAttributedString' in scope[0;0m
[0;36m8 |[0;0m
[0;36m9 |[0;0m public extension NSAttributedString {
/host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/AText.swift:9:18: [1;31merror: [1;39mcannot find type 'NSAttributedString' in scope[0;0m
[0;36m7 |[0;0m public typealias AText = NSAttributedString.AttrText
[0;36m8 |[0;0m
[0;36m9 |[0;0m public extension [4;39mNSAttributedString[0;0m {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'NSAttributedString' in scope[0;0m
[0;36m10 |[0;0m struct AttrText: Component {
[0;36m11 |[0;0m // MARK: Lifecycle
/host/spi-builder-workspace/Sources/NSAttributedStringBuilder/NSAttributedStringBuilder.swift:12:32: [1;31merror: [1;39mcannot find type 'NSAttributedString' in scope[0;0m
[0;36m10 |[0;0m #endif
[0;36m11 |[0;0m
[0;36m12 |[0;0m public typealias Attributes = [[4;39mNSAttributedString[0;0m.Key: Any]
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'NSAttributedString' in scope[0;0m
[0;36m13 |[0;0m
[0;36m14 |[0;0m @resultBuilder
/host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/Component.swift:12:27: [1;31merror: [1;39mcannot find type 'NSAttributedString' in scope[0;0m
[0;36m10 |[0;0m var string: String { get }
[0;36m11 |[0;0m var attributes: Attributes { get }
[0;36m12 |[0;0m var attributedString: [4;39mNSAttributedString[0;0m { get }
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'NSAttributedString' in scope[0;0m
[0;36m13 |[0;0m }
[0;36m14 |[0;0m
/host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/Component.swift:29:27: [1;31merror: [1;39mcannot find type 'NSAttributedString' in scope[0;0m
[0;36m27 |[0;0m }
[0;36m28 |[0;0m
[0;36m29 |[0;0m var attributedString: [4;39mNSAttributedString[0;0m {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'NSAttributedString' in scope[0;0m
[0;36m30 |[0;0m NSAttributedString(string: string, attributes: attributes)
[0;36m31 |[0;0m }
/host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/Component.swift:33:36: [1;31merror: [1;39mcannot find type 'NSAttributedString' in scope[0;0m
[0;36m31 |[0;0m }
[0;36m32 |[0;0m
[0;36m33 |[0;0m func attribute(_ newAttribute: [4;39mNSAttributedString[0;0m.Key, value: Any) -> Component {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'NSAttributedString' in scope[0;0m
[0;36m34 |[0;0m attributes([newAttribute: value])
[0;36m35 |[0;0m }
/host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/Component.swift:49:35: [1;31merror: [1;39mcannot find type 'Color' in scope[0;0m
[0;36m47 |[0;0m
[0;36m48 |[0;0m public extension Component {
[0;36m49 |[0;0m func backgroundColor(_ color: [4;39mColor[0;0m) -> Component {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'Color' in scope[0;0m
[0;36m50 |[0;0m attributes([.backgroundColor: color])
[0;36m51 |[0;0m }
/host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/Component.swift:53:43: [1;31merror: [1;39mcannot find type 'CGFloat' in scope[0;0m
[0;36m51 |[0;0m }
[0;36m52 |[0;0m
[0;36m53 |[0;0m func baselineOffset(_ baselineOffset: [4;39mCGFloat[0;0m) -> Component {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'CGFloat' in scope[0;0m
[0;36m54 |[0;0m attributes([.baselineOffset: baselineOffset])
[0;36m55 |[0;0m }
/host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/Component.swift:57:23: [1;31merror: [1;39mcannot find type 'Font' in scope[0;0m
[0;36m55 |[0;0m }
[0;36m56 |[0;0m
[0;36m57 |[0;0m func font(_ font: [4;39mFont[0;0m) -> Component {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'Font' in scope[0;0m
[0;36m58 |[0;0m attributes([.font: font])
[0;36m59 |[0;0m }
/host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/Component.swift:61:35: [1;31merror: [1;39mcannot find type 'Color' in scope[0;0m
[0;36m59 |[0;0m }
[0;36m60 |[0;0m
[0;36m61 |[0;0m func foregroundColor(_ color: [4;39mColor[0;0m) -> Component {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'Color' in scope[0;0m
[0;36m62 |[0;0m attributes([.foregroundColor: color])
[0;36m63 |[0;0m }
/host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/Component.swift:65:33: [1;31merror: [1;39mcannot find type 'CGFloat' in scope[0;0m
[0;36m63 |[0;0m }
[0;36m64 |[0;0m
[0;36m65 |[0;0m func expansion(_ expansion: [4;39mCGFloat[0;0m) -> Component {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'CGFloat' in scope[0;0m
[0;36m66 |[0;0m attributes([.expansion: expansion])
[0;36m67 |[0;0m }
/host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/Component.swift:69:26: [1;31merror: [1;39mcannot find type 'CGFloat' in scope[0;0m
[0;36m67 |[0;0m }
[0;36m68 |[0;0m
[0;36m69 |[0;0m func kerning(_ kern: [4;39mCGFloat[0;0m) -> Component {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'CGFloat' in scope[0;0m
[0;36m70 |[0;0m attributes([.kern: kern])
[0;36m71 |[0;0m }
/host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/Component.swift:81:24: [1;31merror: [1;39mcannot find type 'Color' in scope[0;0m
[0;36m79 |[0;0m }
[0;36m80 |[0;0m
[0;36m81 |[0;0m func shadow(color: [4;39mColor[0;0m? = nil, radius: CGFloat, x: CGFloat, y: CGFloat) -> Component {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'Color' in scope[0;0m
[0;36m82 |[0;0m let shadow = NSShadow()
[0;36m83 |[0;0m shadow.shadowColor = color
/host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/Component.swift:81:46: [1;31merror: [1;39mcannot find type 'CGFloat' in scope[0;0m
[0;36m79 |[0;0m }
[0;36m80 |[0;0m
[0;36m81 |[0;0m func shadow(color: Color? = nil, radius: [4;39mCGFloat[0;0m, x: CGFloat, y: CGFloat) -> Component {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'CGFloat' in scope[0;0m
[0;36m82 |[0;0m let shadow = NSShadow()
[0;36m83 |[0;0m shadow.shadowColor = color
/host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/Component.swift:81:58: [1;31merror: [1;39mcannot find type 'CGFloat' in scope[0;0m
[0;36m79 |[0;0m }
[0;36m80 |[0;0m
[0;36m81 |[0;0m func shadow(color: Color? = nil, radius: CGFloat, x: [4;39mCGFloat[0;0m, y: CGFloat) -> Component {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'CGFloat' in scope[0;0m
[0;36m82 |[0;0m let shadow = NSShadow()
[0;36m83 |[0;0m shadow.shadowColor = color
/host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/Component.swift:81:70: [1;31merror: [1;39mcannot find type 'CGFloat' in scope[0;0m
[0;36m79 |[0;0m }
[0;36m80 |[0;0m
[0;36m81 |[0;0m func shadow(color: Color? = nil, radius: CGFloat, x: CGFloat, y: [4;39mCGFloat[0;0m) -> Component {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'CGFloat' in scope[0;0m
[0;36m82 |[0;0m let shadow = NSShadow()
[0;36m83 |[0;0m shadow.shadowColor = color
/host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/Component.swift:89:31: [1;31merror: [1;39mcannot find type 'NSUnderlineStyle' in scope[0;0m
[0;36m87 |[0;0m }
[0;36m88 |[0;0m
[0;36m89 |[0;0m func strikethrough(style: [4;39mNSUnderlineStyle[0;0m, color: Color? = nil) -> Component {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'NSUnderlineStyle' in scope[0;0m
[0;36m90 |[0;0m if let color = color {
[0;36m91 |[0;0m return attributes([.strikethroughStyle: style.rawValue,
/host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/Component.swift:89:56: [1;31merror: [1;39mcannot find type 'Color' in scope[0;0m
[0;36m87 |[0;0m }
[0;36m88 |[0;0m
[0;36m89 |[0;0m func strikethrough(style: NSUnderlineStyle, color: [4;39mColor[0;0m? = nil) -> Component {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'Color' in scope[0;0m
[0;36m90 |[0;0m if let color = color {
[0;36m91 |[0;0m return attributes([.strikethroughStyle: style.rawValue,
/host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/Component.swift:98:24: [1;31merror: [1;39mcannot find type 'CGFloat' in scope[0;0m
[0;36m96 |[0;0m }
[0;36m97 |[0;0m
[0;36m98 |[0;0m func stroke(width: [4;39mCGFloat[0;0m, color: Color? = nil) -> Component {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'CGFloat' in scope[0;0m
[0;36m99 |[0;0m if let color = color {
[0;36m100 |[0;0m return attributes([.strokeWidth: width,
/host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/Component.swift:98:40: [1;31merror: [1;39mcannot find type 'Color' in scope[0;0m
[0;36m96 |[0;0m }
[0;36m97 |[0;0m
[0;36m98 |[0;0m func stroke(width: CGFloat, color: [4;39mColor[0;0m? = nil) -> Component {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'Color' in scope[0;0m
[0;36m99 |[0;0m if let color = color {
[0;36m100 |[0;0m return attributes([.strokeWidth: width,
/host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/Component.swift:107:35: [1;31merror: [1;39mcannot find type 'NSAttributedString' in scope[0;0m
[0;36m105 |[0;0m }
[0;36m106 |[0;0m
[0;36m107 |[0;0m func textEffect(_ textEffect: [4;39mNSAttributedString[0;0m.TextEffectStyle) -> Component {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'NSAttributedString' in scope[0;0m
[0;36m108 |[0;0m attributes([.textEffect: textEffect])
[0;36m109 |[0;0m }
/host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/Component.swift:111:29: [1;31merror: [1;39mcannot find type 'NSUnderlineStyle' in scope[0;0m
[0;36m109 |[0;0m }
[0;36m110 |[0;0m
[0;36m111 |[0;0m func underline(_ style: [4;39mNSUnderlineStyle[0;0m, color: Color? = nil) -> Component {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'NSUnderlineStyle' in scope[0;0m
[0;36m112 |[0;0m if let color = color {
[0;36m113 |[0;0m return attributes([.underlineStyle: style.rawValue,
/host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/Component.swift:111:54: [1;31merror: [1;39mcannot find type 'Color' in scope[0;0m
[0;36m109 |[0;0m }
[0;36m110 |[0;0m
[0;36m111 |[0;0m func underline(_ style: NSUnderlineStyle, color: [4;39mColor[0;0m? = nil) -> Component {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'Color' in scope[0;0m
[0;36m112 |[0;0m if let color = color {
[0;36m113 |[0;0m return attributes([.underlineStyle: style.rawValue,
/host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/Component.swift:120:47: [1;31merror: [1;39mcannot find type 'NSWritingDirection' in scope[0;0m
[0;36m118 |[0;0m }
[0;36m119 |[0;0m
[0;36m120 |[0;0m func writingDirection(_ writingDirection: [4;39mNSWritingDirection[0;0m) -> Component {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'NSWritingDirection' in scope[0;0m
[0;36m121 |[0;0m attributes([.writingDirection: writingDirection.rawValue])
[0;36m122 |[0;0m }
/host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/Component.swift:134:43: [1;31merror: [1;39mcannot find type 'NSParagraphStyle' in scope[0;0m
[0;36m132 |[0;0m
[0;36m133 |[0;0m public extension Component {
[0;36m134 |[0;0m func paragraphStyle(_ paragraphStyle: [4;39mNSParagraphStyle[0;0m) -> Component {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'NSParagraphStyle' in scope[0;0m
[0;36m135 |[0;0m attributes([.paragraphStyle: paragraphStyle])
[0;36m136 |[0;0m }
/host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/Component.swift:138:43: [1;31merror: [1;39mcannot find type 'NSMutableParagraphStyle' in scope[0;0m
[0;36m136 |[0;0m }
[0;36m137 |[0;0m
[0;36m138 |[0;0m func paragraphStyle(_ paragraphStyle: [4;39mNSMutableParagraphStyle[0;0m) -> Component {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'NSMutableParagraphStyle' in scope[0;0m
[0;36m139 |[0;0m attributes([.paragraphStyle: paragraphStyle])
[0;36m140 |[0;0m }
/host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/Component.swift:142:48: [1;31merror: [1;39mcannot find type 'NSMutableParagraphStyle' in scope[0;0m
[0;36m140 |[0;0m }
[0;36m141 |[0;0m
[0;36m142 |[0;0m private func getMutableParagraphStyle() -> [4;39mNSMutableParagraphStyle[0;0m {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'NSMutableParagraphStyle' in scope[0;0m
[0;36m143 |[0;0m if let mps = attributes[.paragraphStyle] as? NSMutableParagraphStyle {
[0;36m144 |[0;0m return mps
/host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/Component.swift:153:33: [1;31merror: [1;39mcannot find type 'NSTextAlignment' in scope[0;0m
[0;36m151 |[0;0m }
[0;36m152 |[0;0m
[0;36m153 |[0;0m func alignment(_ alignment: [4;39mNSTextAlignment[0;0m) -> Component {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'NSTextAlignment' in scope[0;0m
[0;36m154 |[0;0m let paragraphStyle = getMutableParagraphStyle()
[0;36m155 |[0;0m paragraphStyle.alignment = alignment
/host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/Component.swift:159:40: [1;31merror: [1;39mcannot find type 'CGFloat' in scope[0;0m
[0;36m157 |[0;0m }
[0;36m158 |[0;0m
[0;36m159 |[0;0m func firstLineHeadIndent(_ indent: [4;39mCGFloat[0;0m) -> Component {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'CGFloat' in scope[0;0m
[0;36m160 |[0;0m let paragraphStyle = getMutableParagraphStyle()
[0;36m161 |[0;0m paragraphStyle.firstLineHeadIndent = indent
/host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/Component.swift:165:31: [1;31merror: [1;39mcannot find type 'CGFloat' in scope[0;0m
[0;36m163 |[0;0m }
[0;36m164 |[0;0m
[0;36m165 |[0;0m func headIndent(_ indent: [4;39mCGFloat[0;0m) -> Component {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'CGFloat' in scope[0;0m
[0;36m166 |[0;0m let paragraphStyle = getMutableParagraphStyle()
[0;36m167 |[0;0m paragraphStyle.headIndent = indent
/host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/Component.swift:171:31: [1;31merror: [1;39mcannot find type 'CGFloat' in scope[0;0m
[0;36m169 |[0;0m }
[0;36m170 |[0;0m
[0;36m171 |[0;0m func tailIndent(_ indent: [4;39mCGFloat[0;0m) -> Component {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'CGFloat' in scope[0;0m
[0;36m172 |[0;0m let paragraphStyle = getMutableParagraphStyle()
[0;36m173 |[0;0m paragraphStyle.tailIndent = indent
/host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/Component.swift:177:42: [1;31merror: [1;39mcannot find type 'NSLineBreakMode' in scope[0;0m
[0;36m175 |[0;0m }
[0;36m176 |[0;0m
[0;36m177 |[0;0m func lineBreakeMode(_ lineBreakMode: [4;39mNSLineBreakMode[0;0m) -> Component {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'NSLineBreakMode' in scope[0;0m
[0;36m178 |[0;0m let paragraphStyle = getMutableParagraphStyle()
[0;36m179 |[0;0m paragraphStyle.lineBreakMode = lineBreakMode
/host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/Component.swift:183:31: [1;31merror: [1;39mcannot find type 'CGFloat' in scope[0;0m
[0;36m181 |[0;0m }
[0;36m182 |[0;0m
[0;36m183 |[0;0m func lineHeight(multiple: [4;39mCGFloat[0;0m = 0, maximum: CGFloat = 0, minimum: CGFloat) -> Component {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'CGFloat' in scope[0;0m
[0;36m184 |[0;0m let paragraphStyle = getMutableParagraphStyle()
[0;36m185 |[0;0m paragraphStyle.lineHeightMultiple = multiple
/host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/Component.swift:183:53: [1;31merror: [1;39mcannot find type 'CGFloat' in scope[0;0m
[0;36m181 |[0;0m }
[0;36m182 |[0;0m
[0;36m183 |[0;0m func lineHeight(multiple: CGFloat = 0, maximum: [4;39mCGFloat[0;0m = 0, minimum: CGFloat) -> Component {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'CGFloat' in scope[0;0m
[0;36m184 |[0;0m let paragraphStyle = getMutableParagraphStyle()
[0;36m185 |[0;0m paragraphStyle.lineHeightMultiple = multiple
/host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/Component.swift:183:75: [1;31merror: [1;39mcannot find type 'CGFloat' in scope[0;0m
[0;36m181 |[0;0m }
[0;36m182 |[0;0m
[0;36m183 |[0;0m func lineHeight(multiple: CGFloat = 0, maximum: CGFloat = 0, minimum: [4;39mCGFloat[0;0m) -> Component {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'CGFloat' in scope[0;0m
[0;36m184 |[0;0m let paragraphStyle = getMutableParagraphStyle()
[0;36m185 |[0;0m paragraphStyle.lineHeightMultiple = multiple
/host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/Component.swift:191:33: [1;31merror: [1;39mcannot find type 'CGFloat' in scope[0;0m
[0;36m189 |[0;0m }
[0;36m190 |[0;0m
[0;36m191 |[0;0m func lineSpacing(_ spacing: [4;39mCGFloat[0;0m) -> Component {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'CGFloat' in scope[0;0m
[0;36m192 |[0;0m let paragraphStyle = getMutableParagraphStyle()
[0;36m193 |[0;0m paragraphStyle.lineSpacing = spacing
/host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/Component.swift:197:38: [1;31merror: [1;39mcannot find type 'CGFloat' in scope[0;0m
[0;36m195 |[0;0m }
[0;36m196 |[0;0m
[0;36m197 |[0;0m func paragraphSpacing(_ spacing: [4;39mCGFloat[0;0m, before: CGFloat = 0) -> Component {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'CGFloat' in scope[0;0m
[0;36m198 |[0;0m let paragraphStyle = getMutableParagraphStyle()
[0;36m199 |[0;0m paragraphStyle.paragraphSpacing = spacing
/host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/Component.swift:197:55: [1;31merror: [1;39mcannot find type 'CGFloat' in scope[0;0m
[0;36m195 |[0;0m }
[0;36m196 |[0;0m
[0;36m197 |[0;0m func paragraphSpacing(_ spacing: CGFloat, before: [4;39mCGFloat[0;0m = 0) -> Component {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'CGFloat' in scope[0;0m
[0;36m198 |[0;0m let paragraphStyle = getMutableParagraphStyle()
[0;36m199 |[0;0m paragraphStyle.paragraphSpacing = spacing
/host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/Component.swift:204:55: [1;31merror: [1;39mcannot find type 'NSWritingDirection' in scope[0;0m
[0;36m202 |[0;0m }
[0;36m203 |[0;0m
[0;36m204 |[0;0m func baseWritingDirection(_ baseWritingDirection: [4;39mNSWritingDirection[0;0m) -> Component {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'NSWritingDirection' in scope[0;0m
[0;36m205 |[0;0m let paragraphStyle = getMutableParagraphStyle()
[0;36m206 |[0;0m paragraphStyle.baseWritingDirection = baseWritingDirection
/host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/Component.swift:223:33: [1;31merror: [1;39mcannot find type 'NSTextTab' in scope[0;0m
[0;36m221 |[0;0m }
[0;36m222 |[0;0m
[0;36m223 |[0;0m func tabsStops(_ tabStops: [[4;39mNSTextTab[0;0m], defaultInterval: CGFloat = 0) -> Component {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'NSTextTab' in scope[0;0m
[0;36m224 |[0;0m let paragraphStyle = getMutableParagraphStyle()
[0;36m225 |[0;0m paragraphStyle.tabStops = tabStops
/host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/Component.swift:223:62: [1;31merror: [1;39mcannot find type 'CGFloat' in scope[0;0m
[0;36m221 |[0;0m }
[0;36m222 |[0;0m
[0;36m223 |[0;0m func tabsStops(_ tabStops: [NSTextTab], defaultInterval: [4;39mCGFloat[0;0m = 0) -> Component {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'CGFloat' in scope[0;0m
[0;36m224 |[0;0m let paragraphStyle = getMutableParagraphStyle()
[0;36m225 |[0;0m paragraphStyle.tabStops = tabStops
/host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/Link.swift:7:25: [1;31merror: [1;39mcannot find type 'NSAttributedString' in scope[0;0m
[0;36m5 |[0;0m #endif
[0;36m6 |[0;0m
[0;36m7 |[0;0m public typealias Link = [4;39mNSAttributedString[0;0m.Link
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'NSAttributedString' in scope[0;0m
[0;36m8 |[0;0m
[0;36m9 |[0;0m public extension NSAttributedString {
/host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/Link.swift:9:18: [1;31merror: [1;39mcannot find type 'NSAttributedString' in scope[0;0m
[0;36m7 |[0;0m public typealias Link = NSAttributedString.Link
[0;36m8 |[0;0m
[0;36m9 |[0;0m public extension [4;39mNSAttributedString[0;0m {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'NSAttributedString' in scope[0;0m
[0;36m10 |[0;0m struct Link: Component {
[0;36m11 |[0;0m // MARK: Lifecycle
/host/spi-builder-workspace/Sources/NSAttributedStringBuilder/NSAttributedStringBuilder.swift:16:66: [1;31merror: [1;39mcannot find type 'NSAttributedString' in scope[0;0m
[0;36m14 |[0;0m @resultBuilder
[0;36m15 |[0;0m public enum NSAttributedStringBuilder {
[0;36m16 |[0;0m public static func buildBlock(_ components: Component...) -> [4;39mNSAttributedString[0;0m {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'NSAttributedString' in scope[0;0m
[0;36m17 |[0;0m let mas = NSMutableAttributedString(string: "")
[0;36m18 |[0;0m for component in components {
/host/spi-builder-workspace/Sources/NSAttributedStringBuilder/NSAttributedStringBuilder.swift:25:18: [1;31merror: [1;39mcannot find type 'NSAttributedString' in scope[0;0m
[0;36m23 |[0;0m }
[0;36m24 |[0;0m
[0;36m25 |[0;0m public extension [4;39mNSAttributedString[0;0m {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'NSAttributedString' in scope[0;0m
[0;36m26 |[0;0m convenience init(@NSAttributedStringBuilder _ builder: () -> NSAttributedString) {
[0;36m27 |[0;0m self.init(attributedString: builder())
Failed frontend command:
/usr/bin/swift-frontend -frontend -emit-module -experimental-skip-non-inlinable-function-bodies-without-types /host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/AText.swift /host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/Component.swift /host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/ImageAttachment.swift /host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/Link.swift /host/spi-builder-workspace/Sources/NSAttributedStringBuilder/Components/StaticComponents.swift /host/spi-builder-workspace/Sources/NSAttributedStringBuilder/NSAttributedStringBuilder.swift -target wasm32-unknown-wasip1 -disable-objc-interop -sdk /root/.swiftpm/swift-sdks/swift-6.4.x-DEVELOPMENT-SNAPSHOT-2026-09-04-a_wasm.artifactbundle/swift-6.4.x-DEVELOPMENT-SNAPSHOT-2026-09-04-a_wasm/wasm32-unknown-wasip1/WASI.sdk -sysroot /root/.swiftpm/swift-sdks/swift-6.4.x-DEVELOPMENT-SNAPSHOT-2026-09-04-a_wasm.artifactbundle/swift-6.4.x-DEVELOPMENT-SNAPSHOT-2026-09-04-a_wasm/wasm32-unknown-wasip1/WASI.sdk -I /host/spi-builder-workspace/.build/out/Products/Debug-webassembly-wasm32 -module-cache-path /host/spi-builder-workspace/.build/out/ModuleCache.noindex -color-diagnostics -Xcc -fcolor-diagnostics -enable-testing -g -debug-info-format\=dwarf -dwarf-version\=4 -swift-version 5 -Onone -D SWIFT_PACKAGE -D DEBUG -D SWIFT_MODULE_RESOURCE_BUNDLE_UNAVAILABLE -D Xcode -serialize-debugging-options -enable-experimental-feature DebugDescriptionMacro -empty-abi-descriptor -external-plugin-path /usr/lib/swift/host/plugins/testing\#/usr/bin/swift-plugin-server -validate-clang-modules-once -clang-build-session-file /host/spi-builder-workspace/.build/out/ModuleCache.noindex/Session.modulevalidation -Xcc -working-directory -Xcc /host -resource-dir /root/.swiftpm/swift-sdks/swift-6.4.x-DEVELOPMENT-SNAPSHOT-2026-09-04-a_wasm.artifactbundle/swift-6.4.x-DEVELOPMENT-SNAPSHOT-2026-09-04-a_wasm/wasm32-unknown-wasip1/swift.xctoolchain/usr/lib/swift_static -use-static-resource-dir -enable-anonymous-context-mangled-names -file-compilation-dir /host -Xcc -resource-dir -Xcc /root/.swiftpm/swift-sdks/swift-6.4.x-DEVELOPMENT-SNAPSHOT-2026-09-04-a_wasm.artifactbundle/swift-6.4.x-DEVELOPMENT-SNAPSHOT-2026-09-04-a_wasm/wasm32-unknown-wasip1/swift.xctoolchain/usr/lib/swift_static/clang -Xcc -D_LIBCPP_HARDENING_MODE\=_LIBCPP_HARDENING_MODE_DEBUG -Xcc -fmodules-prune-interval\=86400 -Xcc -fmodules-prune-after\=345600 -Xcc -I/host/spi-builder-workspace/.build/out/Products/Debug-webassembly-wasm32/include -Xcc -I/host/spi-builder-workspace/.build/out/Intermediates.noindex/NSAttributedStringBuilder.build/Debug-webassembly-wasm32/NSAttributedStringBuilder-t.build/DerivedSources-normal/wasm32 -Xcc -I/host/spi-builder-workspace/.build/out/Intermediates.noindex/NSAttributedStringBuilder.build/Debug-webassembly-wasm32/NSAttributedStringBuilder-t.build/DerivedSources/wasm32 -Xcc -I/host/spi-builder-workspace/.build/out/Intermediates.noindex/NSAttributedStringBuilder.build/Debug-webassembly-wasm32/NSAttributedStringBuilder-t.build/DerivedSources -Xcc -DSWIFT_PACKAGE -Xcc -DDEBUG\=1 -no-auto-bridging-header-chaining -module-name NSAttributedStringBuilder -const-gather-protocols-file /host/spi-builder-workspace/.build/out/Intermediates.noindex/NSAttributedStringBuilder.build/Debug-webassembly-wasm32/NSAttributedStringBuilder-t.build/Objects-normal/wasm32/NSAttributedStringBuilder_const_extract_protocols.json -in-process-plugin-server-path /usr/lib/swift/host/libSwiftInProcPluginServer.so -plugin-path /usr/lib/swift/host/plugins -plugin-path /usr/local/lib/swift/host/plugins -emit-module-doc-path /host/spi-builder-workspace/.build/out/Intermediates.noindex/NSAttributedStringBuilder.build/Debug-webassembly-wasm32/NSAttributedStringBuilder-t.build/Objects-normal/wasm32/Modules/NSAttributedStringBuilder.swiftdoc -emit-module-source-info-path /host/spi-builder-workspace/.build/out/Intermediates.noindex/NSAttributedStringBuilder.build/Debug-webassembly-wasm32/NSAttributedStringBuilder-t.build/Objects-normal/wasm32/Modules/NSAttributedStringBuilder.swiftsourceinfo -emit-objc-header-path /host/spi-builder-workspace/.build/out/Intermediates.noindex/NSAttributedStringBuilder.build/Debug-webassembly-wasm32/NSAttributedStringBuilder-t.build/Objects-normal/wasm32/NSAttributedStringBuilder-Swift.h -serialize-diagnostics-path /host/spi-builder-workspace/.build/out/Intermediates.noindex/NSAttributedStringBuilder.build/Debug-webassembly-wasm32/NSAttributedStringBuilder-t.build/Objects-normal/wasm32/NSAttributedStringBuilder-primary-emit-module.dia -emit-dependencies-path /host/spi-builder-workspace/.build/out/Intermediates.noindex/NSAttributedStringBuilder.build/Debug-webassembly-wasm32/NSAttributedStringBuilder-t.build/Objects-normal/wasm32/NSAttributedStringBuilder-primary-emit-module.d -parse-as-library -o /host/spi-builder-workspace/.build/out/Intermediates.noindex/NSAttributedStringBuilder.build/Debug-webassembly-wasm32/NSAttributedStringBuilder-t.build/Objects-normal/wasm32/Modules/NSAttributedStringBuilder.swiftmodule
error: Build failed
BUILD FAILURE 6.4 wasm