The Swift Package Index logo.Swift Package Index

Build Information

Failed to build MarkdownToAttributedString, reference main (1dec63), with Swift 6.3 for Android on 23 Apr 2026 02:07:02 UTC.

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4609320-2":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/swiftpackageindex/spi-images:android-6.3-latest swift build --swift-sdk aarch64-unknown-linux-android28 2>&1

Build Log

========================================
RunAll
========================================
Builder version: 4.70.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/madebywindmill/MarkdownToAttributedString.git
Reference: main
Initialized empty Git repository in /host/spi-builder-workspace/.git/
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: 	git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: 	git branch -m <name>
From https://github.com/madebywindmill/MarkdownToAttributedString
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at 1dec63a Merge pull request #4 from SkylerSea/fix/visitListItem-protocol-dispatch
Cloned https://github.com/madebywindmill/MarkdownToAttributedString.git
Revision (git rev-parse @):
1dec63a2a0b62572c94229d05eccf9dead79f077
SUCCESS checkout https://github.com/madebywindmill/MarkdownToAttributedString.git at main
========================================
Build
========================================
Selected platform:         android
Swift version:             6.3
Building package at path:  $PWD
https://github.com/madebywindmill/MarkdownToAttributedString.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-2":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/swiftpackageindex/spi-images:android-6.3-latest swift build --swift-sdk aarch64-unknown-linux-android28 2>&1
android-6.3-latest: Pulling from swiftpackageindex/spi-images
Digest: sha256:9008270ea37a55e78725e6225015adb5eff8582da520c5232bf0499f32c36dc4
Status: Image is up to date for registry.gitlab.com/swiftpackageindex/spi-images:android-6.3-latest
Fetching https://github.com/swiftlang/swift-markdown.git
[1/7308] Fetching swift-markdown
Fetched https://github.com/swiftlang/swift-markdown.git from cache (0.74s)
Fetching https://github.com/swiftlang/swift-cmark.git
[1/18376] Fetching swift-cmark
Fetched https://github.com/swiftlang/swift-cmark.git from cache (1.68s)
Creating working copy for https://github.com/swiftlang/swift-cmark.git
Working copy of https://github.com/swiftlang/swift-cmark.git resolved at gfm (924936d)
Creating working copy for https://github.com/swiftlang/swift-markdown.git
Working copy of https://github.com/swiftlang/swift-markdown.git resolved at main (55d66d9)
Building for debugging...
[0/38] Compiling cmark-gfm-extensions tagfilter.c
[1/38] Compiling cmark-gfm-extensions tasklist.c
[1/38] Compiling cmark-gfm-extensions core-extensions.c
[3/38] Compiling cmark-gfm-extensions ext_scanners.c
[4/38] Compiling cmark-gfm-extensions strikethrough.c
[5/38] Compiling cmark-gfm-extensions autolink.c
[6/38] Compiling cmark-gfm xml.c
[7/38] Compiling cmark-gfm syntax_extension.c
[8/38] Compiling cmark-gfm-extensions table.c
[9/38] Write swift-version--4F562202D5529B1.txt
[10/38] Compiling cmark-gfm render.c
[11/38] Compiling cmark-gfm registry.c
[12/38] Compiling cmark-gfm plugin.c
[13/38] Compiling cmark-gfm references.c
[14/38] Compiling cmark-gfm plaintext.c
[15/38] Compiling cmark-gfm map.c
[16/38] Compiling cmark-gfm linked_list.c
[17/38] Compiling cmark-gfm man.c
[18/38] Compiling cmark-gfm iterator.c
[19/38] Compiling cmark-gfm node.c
[20/38] Compiling cmark-gfm latex.c
[21/38] Compiling cmark-gfm utf8.c
[22/38] Compiling cmark-gfm html.c
[23/38] Compiling cmark-gfm footnotes.c
[24/38] Compiling cmark-gfm houdini_html_e.c
[25/38] Compiling cmark-gfm houdini_href_e.c
[26/38] Compiling cmark-gfm cmark_ctype.c
[27/38] Compiling cmark-gfm commonmark.c
[28/38] Compiling cmark-gfm houdini_html_u.c
[29/38] Write sources
[31/38] Compiling cmark-gfm arena.c
[32/38] Compiling cmark-gfm cmark.c
[33/38] Compiling CAtomic CAtomic.c
[34/38] Compiling cmark-gfm buffer.c
[35/38] Compiling cmark-gfm inlines.c
[36/38] Compiling cmark-gfm scanners.c
[37/38] Compiling cmark-gfm blocks.c
[39/101] Emitting module Markdown
[40/109] Compiling Markdown BasicBlockContainer.swift
[41/109] Compiling Markdown BasicInlineContainer.swift
[42/109] Compiling Markdown BlockContainer.swift
[43/109] Compiling Markdown BlockMarkup.swift
[44/109] Compiling Markdown InlineContainer.swift
[45/109] Compiling Markdown InlineMarkup.swift
[46/109] Compiling Markdown ListItemContainer.swift
[47/109] Compiling Markdown AtomicCounter.swift
[48/109] Compiling Markdown OrderedList.swift
[49/109] Compiling Markdown UnorderedList.swift
[50/109] Compiling Markdown Paragraph.swift
[51/109] Compiling Markdown CodeBlock.swift
[52/109] Compiling Markdown HTMLBlock.swift
[53/109] Compiling Markdown Heading.swift
[54/109] Compiling Markdown ThematicBreak.swift
[55/109] Compiling Markdown Table.swift
[56/109] Compiling Markdown TableBody.swift
[57/109] Compiling Markdown Link.swift
[58/109] Compiling Markdown Strikethrough.swift
[59/109] Compiling Markdown Strong.swift
[60/109] Compiling Markdown CustomInline.swift
[61/109] Compiling Markdown InlineCode.swift
[62/109] Compiling Markdown InlineHTML.swift
[63/109] Compiling Markdown LineBreak.swift
[64/109] Compiling Markdown SoftBreak.swift
[65/109] Compiling Markdown SymbolLink.swift
[66/109] Compiling Markdown BlockDirective.swift
[67/109] Compiling Markdown BlockQuote.swift
[68/109] Compiling Markdown CustomBlock.swift
[69/109] Compiling Markdown DoxygenAbstract.swift
[70/109] Compiling Markdown DoxygenDiscussion.swift
[71/109] Compiling Markdown DoxygenNote.swift
[72/109] Compiling Markdown DoxygenParameter.swift
[73/109] Compiling Markdown DoxygenReturns.swift
[74/109] Compiling Markdown ListItem.swift
[75/109] Compiling Markdown TableCell.swift
[76/109] Compiling Markdown TableCellContainer.swift
[77/109] Compiling Markdown TableHead.swift
[78/109] Compiling Markdown TableRow.swift
[79/109] Compiling Markdown Replacement.swift
[80/109] Compiling Markdown SourceLocation.swift
[81/109] Compiling Markdown Emphasis.swift
[82/109] Compiling Markdown Image.swift
[83/109] Compiling Markdown InlineAttributes.swift
[84/109] Compiling Markdown ChildIndexPath.swift
[85/109] Compiling Markdown DirectiveArgument.swift
[86/109] Compiling Markdown Document.swift
[87/109] Compiling Markdown LiteralMarkup.swift
[88/109] Compiling Markdown Markup.swift
[89/109] Compiling Markdown MarkupChildren.swift
[90/109] Compiling Markdown MarkupData.swift
[91/109] Compiling Markdown PlainTextConvertibleMarkup.swift
[92/109] Compiling Markdown RawMarkup.swift
[93/109] Compiling Markdown Text.swift
[94/109] Compiling Markdown Aside.swift
[95/109] Compiling Markdown BlockDirectiveParser.swift
[96/109] Compiling Markdown CommonMarkConverter.swift
[97/109] Compiling Markdown LazySplitLines.swift
[98/109] Compiling Markdown ParseOptions.swift
[99/109] Compiling Markdown RangeAdjuster.swift
[100/109] Compiling Markdown RangerTracker.swift
[101/109] Compiling Markdown MarkupRewriter.swift
[102/109] Compiling Markdown CharacterExtensions.swift
[103/109] Compiling Markdown CollectionExtensions.swift
[104/109] Compiling Markdown StringExtensions.swift
[105/109] Compiling Markdown MarkupVisitor.swift
[106/109] Compiling Markdown MarkupWalker.swift
[107/109] Compiling Markdown HTMLFormatter.swift
[108/109] Compiling Markdown MarkupFormatter.swift
[109/109] Compiling Markdown MarkupTreeDumper.swift
[111/119] Compiling MarkdownToAttributedString Platform.swift
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/Platform.swift:80:11: error: cannot find type 'CocoaFont' in scope
 78 | #endif
 79 |
 80 | extension CocoaFont {
    |           `- error: cannot find type 'CocoaFont' in scope
 81 |
 82 |     func isMonospaced() -> Bool {
[112/120] Compiling MarkdownToAttributedString MarkdownUtility.swift
[113/120] Compiling MarkdownToAttributedString Types.swift
error: emit-module command failed with exit code 1 (use -v to see invocation)
[114/120] Compiling MarkdownToAttributedString FormattingOptions.swift
[115/120] Compiling MarkdownToAttributedString MarkdownElementAttribute.swift
[116/120] Emitting module MarkdownToAttributedString
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:19:36: error: cannot find 'NSMutableAttributedString' in scope
 17 |     var markdownStyles: MarkdownStyles
 18 |
 19 |     private var attributedString = NSMutableAttributedString()
    |                                    `- error: cannot find 'NSMutableAttributedString' in scope
 20 |     private var currentAttributes: StringAttrs
 21 |     private var formattingOptions: FormattingOptions?
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:30:28: error: cannot find 'DispatchQueue' in scope
 28 |     private var currentOrderedListLevel: Int = 0
 29 |
 30 |     private let loggingQ = DispatchQueue(label: "MTAS.logging")
    |                            `- error: cannot find 'DispatchQueue' in scope
 31 |
 32 |     init(markdown: String,
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:41:32: error: cannot find type 'NSAttributedString' in scope
 39 |     }
 40 |
 41 |     mutating func convert() -> NSAttributedString {
    |                                `- error: cannot find type 'NSAttributedString' in scope
 42 |         debugLog("Raw markdown to process:\n\(markdown)\n")
 43 |         let document = Document(parsing: markdown)
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:539:90: error: cannot find type 'FontDescriptor' in scope
537 |     }
538 |
539 |     private func mergeFontDescriptors(base: FontDescriptor, expected: FontDescriptor) -> FontDescriptor {
    |                                                                                          `- error: cannot find type 'FontDescriptor' in scope
540 |         var traits = base.symbolicTraits
541 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:539:45: error: cannot find type 'FontDescriptor' in scope
537 |     }
538 |
539 |     private func mergeFontDescriptors(base: FontDescriptor, expected: FontDescriptor) -> FontDescriptor {
    |                                             `- error: cannot find type 'FontDescriptor' in scope
540 |         var traits = base.symbolicTraits
541 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:539:71: error: cannot find type 'FontDescriptor' in scope
537 |     }
538 |
539 |     private func mergeFontDescriptors(base: FontDescriptor, expected: FontDescriptor) -> FontDescriptor {
    |                                                                       `- error: cannot find type 'FontDescriptor' in scope
540 |         var traits = base.symbolicTraits
541 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:32:36: error: cannot find type 'CGFloat' in scope
 30 |     public var baseAttributes: StringAttrs
 31 |     public var styleAttributes: [MarkupType: StringAttrs]
 32 |     public var headingPointSizes: [CGFloat] = [22, 18, 15, 14, 13, 11]
    |                                    `- error: cannot find type 'CGFloat' in scope
 33 |     public var unorderedListBullets: [String] = ["•", "◦", "▪", "▫"]
 34 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:38:42: error: cannot find type 'NSParagraphStyle' in scope
 36 |     /// Paragraph styles to apply at the beginning and end of a container block. This is especially useful for (and currently only implemented for) lists. Since NSParagraphStyle spacing is applied to each line and a list typically has lines separated by a newline, you would end up with the spacing applied to each line if just using a single paragraph style in `styleAttributes` for `orderedList`/`unorderedList`.
 37 |     /// With these, you can instead have the formatter apply a pstyle with paragraph spacing only at the beginning and end (typically `paragraphSpacingBefore` for start and `paragraphSpacing` for end).
 38 |     public var blockStartParagraphStyle: NSParagraphStyle?
    |                                          `- error: cannot find type 'NSParagraphStyle' in scope
 39 |     public var blockEndParagraphStyle: NSParagraphStyle?
 40 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:39:40: error: cannot find type 'NSParagraphStyle' in scope
 37 |     /// With these, you can instead have the formatter apply a pstyle with paragraph spacing only at the beginning and end (typically `paragraphSpacingBefore` for start and `paragraphSpacing` for end).
 38 |     public var blockStartParagraphStyle: NSParagraphStyle?
 39 |     public var blockEndParagraphStyle: NSParagraphStyle?
    |                                        `- error: cannot find type 'NSParagraphStyle' in scope
 40 |
 41 |     public init(baseAttributes: StringAttrs, styleAttributes: [MarkupType : StringAttrs]) {
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:644:26: error: cannot find type 'NSRange' in scope
642 |     }
643 |
644 |     var rangeWithinLine: NSRange {
    |                          `- error: cannot find type 'NSRange' in scope
645 |         guard let range else { return NSRange(location: NSNotFound, length: 0) }
646 |         let start = range.lowerBound.column - 1
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:692:35: error: cannot find type 'NSAttributedString' in scope
690 | }
691 |
692 | extension Dictionary where Key == NSAttributedString.Key, Value == Any {
    |                                   `- error: cannot find type 'NSAttributedString' in scope
693 |     func deepCopy() -> StringAttrs {
694 |         var copy: StringAttrs = [:]
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:57:56: error: cannot find type 'NSAttributedString' in scope
 55 |     }
 56 |
 57 |     public mutating func setBaseAttribute(_ attribute: NSAttributedString.Key, _ value: Any) {
    |                                                        `- error: cannot find type 'NSAttributedString' in scope
 58 |         var attrs = baseAttributes
 59 |         attrs[attribute] = value
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:63:57: error: cannot find type 'NSAttributedString' in scope
 61 |     }
 62 |
 63 |     public mutating func setStyleAttribute(_ attribute: NSAttributedString.Key, _ value: Any, forType type: MarkupType) {
    |                                                         `- error: cannot find type 'NSAttributedString' in scope
 64 |         var attrs = styleAttributes[type] ?? [:]
 65 |         attrs[attribute] = value
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:128:54: error: cannot find type 'CocoaFont' in scope
126 |     }
127 |
128 |     func fontAttributeForType(_ type: MarkupType) -> CocoaFont {
    |                                                      `- error: cannot find type 'CocoaFont' in scope
129 |         return (attributesForType(type)[.font] as? CocoaFont) ?? CocoaFont.systemFont(ofSize: 13)
130 |     }
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:132:44: error: cannot find type 'NSAttributedString' in scope
130 |     }
131 |
132 |     func valueForAttribute<T>(_ attribute: NSAttributedString.Key, type: MarkupType) -> T? {
    |                                            `- error: cannot find type 'NSAttributedString' in scope
133 |         if let styleAttributeValue = styleAttributes[type]?[attribute] as? T {
134 |             return styleAttributeValue
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/Platform.swift:80:11: error: cannot find type 'CocoaFont' in scope
 78 | #endif
 79 |
 80 | extension CocoaFont {
    |           `- error: cannot find type 'CocoaFont' in scope
 81 |
 82 |     func isMonospaced() -> Bool {
[117/120] Compiling MarkdownToAttributedString Extras.swift
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/Extras.swift:18:43: error: type 'NSAttributedString.Key' has no member 'paragraphStyle'
 16 |             let nextStr = self.nextContinuousAttrString(from: location)
 17 |             var str = "\(location): "
 18 |             if nextStr.hasAttribute(key: .paragraphStyle, at: 0) {
    |                                           `- error: type 'NSAttributedString.Key' has no member 'paragraphStyle'
 19 |                 str += "<NSParagraphStyle>"
 20 |             }
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/Extras.swift:21:84: error: cannot find type 'CocoaFont' in scope
 19 |                 str += "<NSParagraphStyle>"
 20 |             }
 21 |             if let font = nextStr.attribute(.font, at: 0, effectiveRange: nil) as? CocoaFont {
    |                                                                                    `- error: cannot find type 'CocoaFont' in scope
 22 |                 str += "<Font name=“\(font.compatibleDisplayName)”>"
 23 |             }
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/Extras.swift:21:46: error: type 'NSAttributedString.Key' has no member 'font'
 19 |                 str += "<NSParagraphStyle>"
 20 |             }
 21 |             if let font = nextStr.attribute(.font, at: 0, effectiveRange: nil) as? CocoaFont {
    |                                              `- error: type 'NSAttributedString.Key' has no member 'font'
 22 |                 str += "<Font name=“\(font.compatibleDisplayName)”>"
 23 |             }
[118/120] Compiling MarkdownToAttributedString MarkdownStyles.swift
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:32:36: error: cannot find type 'CGFloat' in scope
 30 |     public var baseAttributes: StringAttrs
 31 |     public var styleAttributes: [MarkupType: StringAttrs]
 32 |     public var headingPointSizes: [CGFloat] = [22, 18, 15, 14, 13, 11]
    |                                    `- error: cannot find type 'CGFloat' in scope
 33 |     public var unorderedListBullets: [String] = ["•", "◦", "▪", "▫"]
 34 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:38:42: error: cannot find type 'NSParagraphStyle' in scope
 36 |     /// Paragraph styles to apply at the beginning and end of a container block. This is especially useful for (and currently only implemented for) lists. Since NSParagraphStyle spacing is applied to each line and a list typically has lines separated by a newline, you would end up with the spacing applied to each line if just using a single paragraph style in `styleAttributes` for `orderedList`/`unorderedList`.
 37 |     /// With these, you can instead have the formatter apply a pstyle with paragraph spacing only at the beginning and end (typically `paragraphSpacingBefore` for start and `paragraphSpacing` for end).
 38 |     public var blockStartParagraphStyle: NSParagraphStyle?
    |                                          `- error: cannot find type 'NSParagraphStyle' in scope
 39 |     public var blockEndParagraphStyle: NSParagraphStyle?
 40 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:39:40: error: cannot find type 'NSParagraphStyle' in scope
 37 |     /// With these, you can instead have the formatter apply a pstyle with paragraph spacing only at the beginning and end (typically `paragraphSpacingBefore` for start and `paragraphSpacing` for end).
 38 |     public var blockStartParagraphStyle: NSParagraphStyle?
 39 |     public var blockEndParagraphStyle: NSParagraphStyle?
    |                                        `- error: cannot find type 'NSParagraphStyle' in scope
 40 |
 41 |     public init(baseAttributes: StringAttrs, styleAttributes: [MarkupType : StringAttrs]) {
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:57:56: error: cannot find type 'NSAttributedString' in scope
 55 |     }
 56 |
 57 |     public mutating func setBaseAttribute(_ attribute: NSAttributedString.Key, _ value: Any) {
    |                                                        `- error: cannot find type 'NSAttributedString' in scope
 58 |         var attrs = baseAttributes
 59 |         attrs[attribute] = value
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:63:57: error: cannot find type 'NSAttributedString' in scope
 61 |     }
 62 |
 63 |     public mutating func setStyleAttribute(_ attribute: NSAttributedString.Key, _ value: Any, forType type: MarkupType) {
    |                                                         `- error: cannot find type 'NSAttributedString' in scope
 64 |         var attrs = styleAttributes[type] ?? [:]
 65 |         attrs[attribute] = value
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:128:54: error: cannot find type 'CocoaFont' in scope
126 |     }
127 |
128 |     func fontAttributeForType(_ type: MarkupType) -> CocoaFont {
    |                                                      `- error: cannot find type 'CocoaFont' in scope
129 |         return (attributesForType(type)[.font] as? CocoaFont) ?? CocoaFont.systemFont(ofSize: 13)
130 |     }
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:132:44: error: cannot find type 'NSAttributedString' in scope
130 |     }
131 |
132 |     func valueForAttribute<T>(_ attribute: NSAttributedString.Key, type: MarkupType) -> T? {
    |                                            `- error: cannot find type 'NSAttributedString' in scope
133 |         if let styleAttributeValue = styleAttributes[type]?[attribute] as? T {
134 |             return styleAttributeValue
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:73:30: error: cannot find 'NSMutableParagraphStyle' in scope
 71 | public extension MarkdownStyles {
 72 |     static var `default`: MarkdownStyles {
 73 |         let indentedPStyle = NSMutableParagraphStyle()
    |                              `- error: cannot find 'NSMutableParagraphStyle' in scope
 74 |         indentedPStyle.firstLineHeadIndent = 20
 75 |         indentedPStyle.headIndent = 20
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:77:28: error: cannot find 'NSMutableParagraphStyle' in scope
 75 |         indentedPStyle.headIndent = 20
 76 |
 77 |         let tabbedPStyle = NSMutableParagraphStyle()
    |                            `- error: cannot find 'NSMutableParagraphStyle' in scope
 78 |         tabbedPStyle.defaultTabInterval = 9
 79 |         tabbedPStyle.tabStops = []
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:84:24: error: cannot find 'CocoaFont' in scope
 82 |         return MarkdownStyles(
 83 |             baseAttributes: [
 84 |                 .font: CocoaFont.systemFont(ofSize: 13),
    |                        `- error: cannot find 'CocoaFont' in scope
 85 |                 .foregroundColor: CocoaColor.darkGray
 86 |             ],
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:85:35: error: cannot find 'CocoaColor' in scope
 83 |             baseAttributes: [
 84 |                 .font: CocoaFont.systemFont(ofSize: 13),
 85 |                 .foregroundColor: CocoaColor.darkGray
    |                                   `- error: cannot find 'CocoaColor' in scope
 86 |             ],
 87 |             styleAttributes: [
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:89:28: error: cannot find 'CocoaFont' in scope
 87 |             styleAttributes: [
 88 |                 .strong: [
 89 |                     .font: CocoaFont.systemFont(ofSize: 13, weight: .bold)
    |                            `- error: cannot find 'CocoaFont' in scope
 90 |                 ],
 91 |                 .emphasis: [
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:92:28: error: cannot find 'CocoaFont' in scope
 90 |                 ],
 91 |                 .emphasis: [
 92 |                     .font: CocoaFont.systemItalicFont(ofSize: 13)
    |                            `- error: cannot find 'CocoaFont' in scope
 93 |                 ],
 94 |                 .strikethrough: [
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:96:42: error: cannot find 'CocoaColor' in scope
 94 |                 .strikethrough: [
 95 |                     .strikethroughStyle: 1,
 96 |                     .strikethroughColor: CocoaColor.lightGray
    |                                          `- error: cannot find 'CocoaColor' in scope
 97 |                 ],
 98 |                 .inlineCode: [
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:99:28: error: cannot find 'CocoaFont' in scope
 97 |                 ],
 98 |                 .inlineCode: [
 99 |                     .font: CocoaFont.monospacedFont(ofSize: 12, weight: .regular),
    |                            `- error: cannot find 'CocoaFont' in scope
100 |                     .backgroundColor: CocoaColor.black.withAlphaComponent(0.05),
101 |                 ],
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:100:39: error: cannot find 'CocoaColor' in scope
 98 |                 .inlineCode: [
 99 |                     .font: CocoaFont.monospacedFont(ofSize: 12, weight: .regular),
100 |                     .backgroundColor: CocoaColor.black.withAlphaComponent(0.05),
    |                                       `- error: cannot find 'CocoaColor' in scope
101 |                 ],
102 |                 .codeBlock: [
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:103:28: error: cannot find 'CocoaFont' in scope
101 |                 ],
102 |                 .codeBlock: [
103 |                     .font: CocoaFont.monospacedFont(ofSize: 11, weight: .regular),
    |                            `- error: cannot find 'CocoaFont' in scope
104 |                     .foregroundColor: CocoaColor.lightGray,
105 |                     .paragraphStyle: indentedPStyle
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:104:39: error: cannot find 'CocoaColor' in scope
102 |                 .codeBlock: [
103 |                     .font: CocoaFont.monospacedFont(ofSize: 11, weight: .regular),
104 |                     .foregroundColor: CocoaColor.lightGray,
    |                                       `- error: cannot find 'CocoaColor' in scope
105 |                     .paragraphStyle: indentedPStyle
106 |                 ],
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:108:28: error: cannot find 'CocoaFont' in scope
106 |                 ],
107 |                 .listItem: [
108 |                     .font: CocoaFont.monospacedFont(ofSize: 13, weight: .regular),
    |                            `- error: cannot find 'CocoaFont' in scope
109 |                     .foregroundColor: CocoaColor.lightGray
110 |                 ],
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:109:39: error: cannot find 'CocoaColor' in scope
107 |                 .listItem: [
108 |                     .font: CocoaFont.monospacedFont(ofSize: 13, weight: .regular),
109 |                     .foregroundColor: CocoaColor.lightGray
    |                                       `- error: cannot find 'CocoaColor' in scope
110 |                 ],
111 |                 .heading: [
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:112:28: error: cannot find 'CocoaFont' in scope
110 |                 ],
111 |                 .heading: [
112 |                     .font: CocoaFont.boldSystemFont(ofSize: 13),
    |                            `- error: cannot find 'CocoaFont' in scope
113 |                     .paragraphStyle: indentedPStyle
114 |                 ],
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:122:28: error: cannot find 'CocoaFont' in scope
120 |                 ],
121 |                 .link: [
122 |                     .font: CocoaFont.systemFont(ofSize: 13, weight: .regular),
    |                            `- error: cannot find 'CocoaFont' in scope
123 |                     .foregroundColor: CocoaColor.blue
124 |                 ]
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:123:39: error: cannot find 'CocoaColor' in scope
121 |                 .link: [
122 |                     .font: CocoaFont.systemFont(ofSize: 13, weight: .regular),
123 |                     .foregroundColor: CocoaColor.blue
    |                                       `- error: cannot find 'CocoaColor' in scope
124 |                 ]
125 |             ])
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:84:18: error: type 'NSAttributedString.Key' has no member 'font'
 82 |         return MarkdownStyles(
 83 |             baseAttributes: [
 84 |                 .font: CocoaFont.systemFont(ofSize: 13),
    |                  `- error: type 'NSAttributedString.Key' has no member 'font'
 85 |                 .foregroundColor: CocoaColor.darkGray
 86 |             ],
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:85:18: error: type 'NSAttributedString.Key' has no member 'foregroundColor'
 83 |             baseAttributes: [
 84 |                 .font: CocoaFont.systemFont(ofSize: 13),
 85 |                 .foregroundColor: CocoaColor.darkGray
    |                  `- error: type 'NSAttributedString.Key' has no member 'foregroundColor'
 86 |             ],
 87 |             styleAttributes: [
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:89:22: error: type 'NSAttributedString.Key' has no member 'font'
 87 |             styleAttributes: [
 88 |                 .strong: [
 89 |                     .font: CocoaFont.systemFont(ofSize: 13, weight: .bold)
    |                      `- error: type 'NSAttributedString.Key' has no member 'font'
 90 |                 ],
 91 |                 .emphasis: [
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:89:70: error: cannot infer contextual base in reference to member 'bold'
 87 |             styleAttributes: [
 88 |                 .strong: [
 89 |                     .font: CocoaFont.systemFont(ofSize: 13, weight: .bold)
    |                                                                      `- error: cannot infer contextual base in reference to member 'bold'
 90 |                 ],
 91 |                 .emphasis: [
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:92:22: error: type 'NSAttributedString.Key' has no member 'font'
 90 |                 ],
 91 |                 .emphasis: [
 92 |                     .font: CocoaFont.systemItalicFont(ofSize: 13)
    |                      `- error: type 'NSAttributedString.Key' has no member 'font'
 93 |                 ],
 94 |                 .strikethrough: [
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:95:22: error: type 'NSAttributedString.Key' has no member 'strikethroughStyle'
 93 |                 ],
 94 |                 .strikethrough: [
 95 |                     .strikethroughStyle: 1,
    |                      `- error: type 'NSAttributedString.Key' has no member 'strikethroughStyle'
 96 |                     .strikethroughColor: CocoaColor.lightGray
 97 |                 ],
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:96:22: error: type 'NSAttributedString.Key' has no member 'strikethroughColor'
 94 |                 .strikethrough: [
 95 |                     .strikethroughStyle: 1,
 96 |                     .strikethroughColor: CocoaColor.lightGray
    |                      `- error: type 'NSAttributedString.Key' has no member 'strikethroughColor'
 97 |                 ],
 98 |                 .inlineCode: [
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:99:22: error: type 'NSAttributedString.Key' has no member 'font'
 97 |                 ],
 98 |                 .inlineCode: [
 99 |                     .font: CocoaFont.monospacedFont(ofSize: 12, weight: .regular),
    |                      `- error: type 'NSAttributedString.Key' has no member 'font'
100 |                     .backgroundColor: CocoaColor.black.withAlphaComponent(0.05),
101 |                 ],
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:99:74: error: cannot infer contextual base in reference to member 'regular'
 97 |                 ],
 98 |                 .inlineCode: [
 99 |                     .font: CocoaFont.monospacedFont(ofSize: 12, weight: .regular),
    |                                                                          `- error: cannot infer contextual base in reference to member 'regular'
100 |                     .backgroundColor: CocoaColor.black.withAlphaComponent(0.05),
101 |                 ],
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:100:22: error: type 'NSAttributedString.Key' has no member 'backgroundColor'
 98 |                 .inlineCode: [
 99 |                     .font: CocoaFont.monospacedFont(ofSize: 12, weight: .regular),
100 |                     .backgroundColor: CocoaColor.black.withAlphaComponent(0.05),
    |                      `- error: type 'NSAttributedString.Key' has no member 'backgroundColor'
101 |                 ],
102 |                 .codeBlock: [
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:103:22: error: type 'NSAttributedString.Key' has no member 'font'
101 |                 ],
102 |                 .codeBlock: [
103 |                     .font: CocoaFont.monospacedFont(ofSize: 11, weight: .regular),
    |                      `- error: type 'NSAttributedString.Key' has no member 'font'
104 |                     .foregroundColor: CocoaColor.lightGray,
105 |                     .paragraphStyle: indentedPStyle
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:103:74: error: cannot infer contextual base in reference to member 'regular'
101 |                 ],
102 |                 .codeBlock: [
103 |                     .font: CocoaFont.monospacedFont(ofSize: 11, weight: .regular),
    |                                                                          `- error: cannot infer contextual base in reference to member 'regular'
104 |                     .foregroundColor: CocoaColor.lightGray,
105 |                     .paragraphStyle: indentedPStyle
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:104:22: error: type 'NSAttributedString.Key' has no member 'foregroundColor'
102 |                 .codeBlock: [
103 |                     .font: CocoaFont.monospacedFont(ofSize: 11, weight: .regular),
104 |                     .foregroundColor: CocoaColor.lightGray,
    |                      `- error: type 'NSAttributedString.Key' has no member 'foregroundColor'
105 |                     .paragraphStyle: indentedPStyle
106 |                 ],
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:105:22: error: type 'NSAttributedString.Key' has no member 'paragraphStyle'
103 |                     .font: CocoaFont.monospacedFont(ofSize: 11, weight: .regular),
104 |                     .foregroundColor: CocoaColor.lightGray,
105 |                     .paragraphStyle: indentedPStyle
    |                      `- error: type 'NSAttributedString.Key' has no member 'paragraphStyle'
106 |                 ],
107 |                 .listItem: [
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:108:22: error: type 'NSAttributedString.Key' has no member 'font'
106 |                 ],
107 |                 .listItem: [
108 |                     .font: CocoaFont.monospacedFont(ofSize: 13, weight: .regular),
    |                      `- error: type 'NSAttributedString.Key' has no member 'font'
109 |                     .foregroundColor: CocoaColor.lightGray
110 |                 ],
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:108:74: error: cannot infer contextual base in reference to member 'regular'
106 |                 ],
107 |                 .listItem: [
108 |                     .font: CocoaFont.monospacedFont(ofSize: 13, weight: .regular),
    |                                                                          `- error: cannot infer contextual base in reference to member 'regular'
109 |                     .foregroundColor: CocoaColor.lightGray
110 |                 ],
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:109:22: error: type 'NSAttributedString.Key' has no member 'foregroundColor'
107 |                 .listItem: [
108 |                     .font: CocoaFont.monospacedFont(ofSize: 13, weight: .regular),
109 |                     .foregroundColor: CocoaColor.lightGray
    |                      `- error: type 'NSAttributedString.Key' has no member 'foregroundColor'
110 |                 ],
111 |                 .heading: [
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:112:22: error: type 'NSAttributedString.Key' has no member 'font'
110 |                 ],
111 |                 .heading: [
112 |                     .font: CocoaFont.boldSystemFont(ofSize: 13),
    |                      `- error: type 'NSAttributedString.Key' has no member 'font'
113 |                     .paragraphStyle: indentedPStyle
114 |                 ],
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:113:22: error: type 'NSAttributedString.Key' has no member 'paragraphStyle'
111 |                 .heading: [
112 |                     .font: CocoaFont.boldSystemFont(ofSize: 13),
113 |                     .paragraphStyle: indentedPStyle
    |                      `- error: type 'NSAttributedString.Key' has no member 'paragraphStyle'
114 |                 ],
115 |                 .unorderedList: [
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:116:22: error: type 'NSAttributedString.Key' has no member 'paragraphStyle'
114 |                 ],
115 |                 .unorderedList: [
116 |                     .paragraphStyle: tabbedPStyle
    |                      `- error: type 'NSAttributedString.Key' has no member 'paragraphStyle'
117 |                 ],
118 |                 .orderedList: [
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:119:22: error: type 'NSAttributedString.Key' has no member 'paragraphStyle'
117 |                 ],
118 |                 .orderedList: [
119 |                     .paragraphStyle: indentedPStyle
    |                      `- error: type 'NSAttributedString.Key' has no member 'paragraphStyle'
120 |                 ],
121 |                 .link: [
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:122:22: error: type 'NSAttributedString.Key' has no member 'font'
120 |                 ],
121 |                 .link: [
122 |                     .font: CocoaFont.systemFont(ofSize: 13, weight: .regular),
    |                      `- error: type 'NSAttributedString.Key' has no member 'font'
123 |                     .foregroundColor: CocoaColor.blue
124 |                 ]
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:122:70: error: cannot infer contextual base in reference to member 'regular'
120 |                 ],
121 |                 .link: [
122 |                     .font: CocoaFont.systemFont(ofSize: 13, weight: .regular),
    |                                                                      `- error: cannot infer contextual base in reference to member 'regular'
123 |                     .foregroundColor: CocoaColor.blue
124 |                 ]
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:123:22: error: type 'NSAttributedString.Key' has no member 'foregroundColor'
121 |                 .link: [
122 |                     .font: CocoaFont.systemFont(ofSize: 13, weight: .regular),
123 |                     .foregroundColor: CocoaColor.blue
    |                      `- error: type 'NSAttributedString.Key' has no member 'foregroundColor'
124 |                 ]
125 |             ])
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:129:66: error: cannot find 'CocoaFont' in scope
127 |
128 |     func fontAttributeForType(_ type: MarkupType) -> CocoaFont {
129 |         return (attributesForType(type)[.font] as? CocoaFont) ?? CocoaFont.systemFont(ofSize: 13)
    |                                                                  `- error: cannot find 'CocoaFont' in scope
130 |     }
131 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:129:52: error: cannot find type 'CocoaFont' in scope
127 |
128 |     func fontAttributeForType(_ type: MarkupType) -> CocoaFont {
129 |         return (attributesForType(type)[.font] as? CocoaFont) ?? CocoaFont.systemFont(ofSize: 13)
    |                                                    `- error: cannot find type 'CocoaFont' in scope
130 |     }
131 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:129:42: error: reference to member 'font' cannot be resolved without a contextual type
127 |
128 |     func fontAttributeForType(_ type: MarkupType) -> CocoaFont {
129 |         return (attributesForType(type)[.font] as? CocoaFont) ?? CocoaFont.systemFont(ofSize: 13)
    |                                          `- error: reference to member 'font' cannot be resolved without a contextual type
130 |     }
131 |
[119/120] Compiling MarkdownToAttributedString AttributedStringFormatter.swift
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:41:32: error: cannot find type 'NSAttributedString' in scope
 39 |     }
 40 |
 41 |     mutating func convert() -> NSAttributedString {
    |                                `- error: cannot find type 'NSAttributedString' in scope
 42 |         debugLog("Raw markdown to process:\n\(markdown)\n")
 43 |         let document = Document(parsing: markdown)
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringFormatter.swift:71:85: error: cannot infer contextual base in reference to member 'backwards'
69 |
70 |             let startRange = nsString.rangeOfCharacter(from: nonWhitespace)
71 |             let endRange = nsString.rangeOfCharacter(from: nonWhitespace, options: .backwards)
   |                                                                                     `- error: cannot infer contextual base in reference to member 'backwards'
72 |
73 |             // If we actually found some non‐whitespace, trim
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringFormatter.swift:83:79: error: cannot convert value of type 'Duration' to expected argument type 'Int'
81 |                 let newEnd = endCluster.location + endCluster.length - 1
82 |
83 |                 let trimmedRange = NSRange(location: newStart, length: newEnd - newStart + 1)
   |                                                                               `- error: cannot convert value of type 'Duration' to expected argument type 'Int'
84 |                 result = result.attributedSubstring(from: trimmedRange)
85 |             } else {
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:19:36: error: cannot find 'NSMutableAttributedString' in scope
 17 |     var markdownStyles: MarkdownStyles
 18 |
 19 |     private var attributedString = NSMutableAttributedString()
    |                                    `- error: cannot find 'NSMutableAttributedString' in scope
 20 |     private var currentAttributes: StringAttrs
 21 |     private var formattingOptions: FormattingOptions?
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:30:28: error: cannot find 'DispatchQueue' in scope
 28 |     private var currentOrderedListLevel: Int = 0
 29 |
 30 |     private let loggingQ = DispatchQueue(label: "MTAS.logging")
    |                            `- error: cannot find 'DispatchQueue' in scope
 31 |
 32 |     init(markdown: String,
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:539:90: error: cannot find type 'FontDescriptor' in scope
537 |     }
538 |
539 |     private func mergeFontDescriptors(base: FontDescriptor, expected: FontDescriptor) -> FontDescriptor {
    |                                                                                          `- error: cannot find type 'FontDescriptor' in scope
540 |         var traits = base.symbolicTraits
541 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:539:45: error: cannot find type 'FontDescriptor' in scope
537 |     }
538 |
539 |     private func mergeFontDescriptors(base: FontDescriptor, expected: FontDescriptor) -> FontDescriptor {
    |                                             `- error: cannot find type 'FontDescriptor' in scope
540 |         var traits = base.symbolicTraits
541 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:539:71: error: cannot find type 'FontDescriptor' in scope
537 |     }
538 |
539 |     private func mergeFontDescriptors(base: FontDescriptor, expected: FontDescriptor) -> FontDescriptor {
    |                                                                       `- error: cannot find type 'FontDescriptor' in scope
540 |         var traits = base.symbolicTraits
541 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:32:36: error: cannot find type 'CGFloat' in scope
 30 |     public var baseAttributes: StringAttrs
 31 |     public var styleAttributes: [MarkupType: StringAttrs]
 32 |     public var headingPointSizes: [CGFloat] = [22, 18, 15, 14, 13, 11]
    |                                    `- error: cannot find type 'CGFloat' in scope
 33 |     public var unorderedListBullets: [String] = ["•", "◦", "▪", "▫"]
 34 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:38:42: error: cannot find type 'NSParagraphStyle' in scope
 36 |     /// Paragraph styles to apply at the beginning and end of a container block. This is especially useful for (and currently only implemented for) lists. Since NSParagraphStyle spacing is applied to each line and a list typically has lines separated by a newline, you would end up with the spacing applied to each line if just using a single paragraph style in `styleAttributes` for `orderedList`/`unorderedList`.
 37 |     /// With these, you can instead have the formatter apply a pstyle with paragraph spacing only at the beginning and end (typically `paragraphSpacingBefore` for start and `paragraphSpacing` for end).
 38 |     public var blockStartParagraphStyle: NSParagraphStyle?
    |                                          `- error: cannot find type 'NSParagraphStyle' in scope
 39 |     public var blockEndParagraphStyle: NSParagraphStyle?
 40 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:39:40: error: cannot find type 'NSParagraphStyle' in scope
 37 |     /// With these, you can instead have the formatter apply a pstyle with paragraph spacing only at the beginning and end (typically `paragraphSpacingBefore` for start and `paragraphSpacing` for end).
 38 |     public var blockStartParagraphStyle: NSParagraphStyle?
 39 |     public var blockEndParagraphStyle: NSParagraphStyle?
    |                                        `- error: cannot find type 'NSParagraphStyle' in scope
 40 |
 41 |     public init(baseAttributes: StringAttrs, styleAttributes: [MarkupType : StringAttrs]) {
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:644:26: error: cannot find type 'NSRange' in scope
642 |     }
643 |
644 |     var rangeWithinLine: NSRange {
    |                          `- error: cannot find type 'NSRange' in scope
645 |         guard let range else { return NSRange(location: NSNotFound, length: 0) }
646 |         let start = range.lowerBound.column - 1
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:692:35: error: cannot find type 'NSAttributedString' in scope
690 | }
691 |
692 | extension Dictionary where Key == NSAttributedString.Key, Value == Any {
    |                                   `- error: cannot find type 'NSAttributedString' in scope
693 |     func deepCopy() -> StringAttrs {
694 |         var copy: StringAttrs = [:]
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:37:69: error: instance method 'deepCopy()' requires the types 'NSAttributedString.Key' and '_' be equivalent
 35 |         self.markdown = markdown
 36 |         self.markdownStyles = styles ?? MarkdownStyles.default
 37 |         self.currentAttributes = self.markdownStyles.baseAttributes.deepCopy()
    |                                                                     `- error: instance method 'deepCopy()' requires the types 'NSAttributedString.Key' and '_' be equivalent
 38 |         self.formattingOptions = options
 39 |     }
    :
691 |
692 | extension Dictionary where Key == NSAttributedString.Key, Value == Any {
693 |     func deepCopy() -> StringAttrs {
    |          `- note: where 'Key' = 'NSAttributedString.Key'
694 |         var copy: StringAttrs = [:]
695 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:48:51: error: cannot find 'NSRange' in scope
 46 |         // Apparently something in SwiftMarkdown is sometimes adding a zero-width space at the end. Remove it.
 47 |         if attributedString.string.hasSuffix("\u{200B}") {
 48 |             attributedString.deleteCharacters(in: NSRange(location: attributedString.length - 1, length: 1))
    |                                                   `- error: cannot find 'NSRange' in scope
 49 |         }
 50 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:155:57: error: cannot find type 'CocoaFont' in scope
153 |         while let parent = currentParent {
154 |             if parent is Strong {
155 |                 if let baseFont = styleAttrs[.font] as? CocoaFont {
    |                                                         `- error: cannot find type 'CocoaFont' in scope
156 |                     if shouldAddCustomAttr {
157 |                         styleAttrs.addMarkdownElementAttr(
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:155:47: error: reference to member 'font' cannot be resolved without a contextual type
153 |         while let parent = currentParent {
154 |             if parent is Strong {
155 |                 if let baseFont = styleAttrs[.font] as? CocoaFont {
    |                                               `- error: reference to member 'font' cannot be resolved without a contextual type
156 |                     if shouldAddCustomAttr {
157 |                         styleAttrs.addMarkdownElementAttr(
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:168:57: error: cannot find type 'CocoaFont' in scope
166 |                 }
167 |             } else if parent is Emphasis {
168 |                 if let baseFont = styleAttrs[.font] as? CocoaFont {
    |                                                         `- error: cannot find type 'CocoaFont' in scope
169 |                     if shouldAddCustomAttr {
170 |                         styleAttrs.addMarkdownElementAttr(
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:168:47: error: reference to member 'font' cannot be resolved without a contextual type
166 |                 }
167 |             } else if parent is Emphasis {
168 |                 if let baseFont = styleAttrs[.font] as? CocoaFont {
    |                                               `- error: reference to member 'font' cannot be resolved without a contextual type
169 |                     if shouldAddCustomAttr {
170 |                         styleAttrs.addMarkdownElementAttr(
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:195:52: error: instance method 'deepCopy()' requires the types 'NSAttributedString.Key' and '_' be equivalent
193 |         debugLog("<open>", file: "")
194 |
195 |         let previousAttributes = currentAttributes.deepCopy()
    |                                                    `- error: instance method 'deepCopy()' requires the types 'NSAttributedString.Key' and '_' be equivalent
196 |         var styleAttrs = markdownStyles.attributesForType(.codeBlock)
197 |
    :
691 |
692 | extension Dictionary where Key == NSAttributedString.Key, Value == Any {
693 |     func deepCopy() -> StringAttrs {
    |          `- note: where 'Key' = 'NSAttributedString.Key'
694 |         var copy: StringAttrs = [:]
695 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:223:52: error: instance method 'deepCopy()' requires the types 'NSAttributedString.Key' and '_' be equivalent
221 |         debugLog("<open>", file: "")
222 |
223 |         let previousAttributes = currentAttributes.deepCopy()
    |                                                    `- error: instance method 'deepCopy()' requires the types 'NSAttributedString.Key' and '_' be equivalent
224 |         var styleAttrs = markdownStyles.attributesForType(.unorderedList)
225 |
    :
691 |
692 | extension Dictionary where Key == NSAttributedString.Key, Value == Any {
693 |     func deepCopy() -> StringAttrs {
    |          `- note: where 'Key' = 'NSAttributedString.Key'
694 |         var copy: StringAttrs = [:]
695 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:269:52: error: instance method 'deepCopy()' requires the types 'NSAttributedString.Key' and '_' be equivalent
267 |         debugLog("<open>", file: "")
268 |
269 |         let previousAttributes = currentAttributes.deepCopy()
    |                                                    `- error: instance method 'deepCopy()' requires the types 'NSAttributedString.Key' and '_' be equivalent
270 |         var styleAttrs = markdownStyles.attributesForType(.orderedList)
271 |
    :
691 |
692 | extension Dictionary where Key == NSAttributedString.Key, Value == Any {
693 |     func deepCopy() -> StringAttrs {
    |          `- note: where 'Key' = 'NSAttributedString.Key'
694 |         var copy: StringAttrs = [:]
695 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:325:52: error: instance method 'deepCopy()' requires the types 'NSAttributedString.Key' and '_' be equivalent
323 |         debugLog("<open>", file: "")
324 |         var styleAttrs = markdownStyles.attributesForType(.listItem)
325 |         let previousAttributes = currentAttributes.deepCopy()
    |                                                    `- error: instance method 'deepCopy()' requires the types 'NSAttributedString.Key' and '_' be equivalent
326 |
327 |         currentAttributes.mergeAttributes(styleAttrs)
    :
691 |
692 | extension Dictionary where Key == NSAttributedString.Key, Value == Any {
693 |     func deepCopy() -> StringAttrs {
    |          `- note: where 'Key' = 'NSAttributedString.Key'
694 |         var copy: StringAttrs = [:]
695 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:332:49: error: type 'NSAttributedString.Key' has no member 'paragraphStyle'
330 |            let pstyle = markdownStyles.blockStartParagraphStyle
331 |         {
332 |             currentAttributes.mergeAttributes([.paragraphStyle: pstyle])
    |                                                 `- error: type 'NSAttributedString.Key' has no member 'paragraphStyle'
333 |         } else if listItem.isLast,
334 |            let pstyle = markdownStyles.blockEndParagraphStyle
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:336:49: error: type 'NSAttributedString.Key' has no member 'paragraphStyle'
334 |            let pstyle = markdownStyles.blockEndParagraphStyle
335 |         {
336 |             currentAttributes.mergeAttributes([.paragraphStyle: pstyle])
    |                                                 `- error: type 'NSAttributedString.Key' has no member 'paragraphStyle'
337 |         }
338 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:411:52: error: instance method 'deepCopy()' requires the types 'NSAttributedString.Key' and '_' be equivalent
409 |         debugLog("<open>", file: "")
410 |
411 |         let previousAttributes = currentAttributes.deepCopy()
    |                                                    `- error: instance method 'deepCopy()' requires the types 'NSAttributedString.Key' and '_' be equivalent
412 |
413 |         let level = max(1, min(heading.level, 6))
    :
691 |
692 | extension Dictionary where Key == NSAttributedString.Key, Value == Any {
693 |     func deepCopy() -> StringAttrs {
    |          `- note: where 'Key' = 'NSAttributedString.Key'
694 |         var copy: StringAttrs = [:]
695 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:417:23: error: cannot find type 'CocoaFont' in scope
415 |         var styleAttrs = markdownStyles.attributesForType(.heading)
416 |
417 |         let baseFont: CocoaFont = (styleAttrs[.font] as? CocoaFont) ?? CocoaFont.systemFont(ofSize: 15)
    |                       `- error: cannot find type 'CocoaFont' in scope
418 |         let fontSize = markdownStyles.headingPointSizes[level - 1]
419 |         let headingFont: CocoaFont
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:417:72: error: cannot find 'CocoaFont' in scope
415 |         var styleAttrs = markdownStyles.attributesForType(.heading)
416 |
417 |         let baseFont: CocoaFont = (styleAttrs[.font] as? CocoaFont) ?? CocoaFont.systemFont(ofSize: 15)
    |                                                                        `- error: cannot find 'CocoaFont' in scope
418 |         let fontSize = markdownStyles.headingPointSizes[level - 1]
419 |         let headingFont: CocoaFont
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:417:58: error: cannot find type 'CocoaFont' in scope
415 |         var styleAttrs = markdownStyles.attributesForType(.heading)
416 |
417 |         let baseFont: CocoaFont = (styleAttrs[.font] as? CocoaFont) ?? CocoaFont.systemFont(ofSize: 15)
    |                                                          `- error: cannot find type 'CocoaFont' in scope
418 |         let fontSize = markdownStyles.headingPointSizes[level - 1]
419 |         let headingFont: CocoaFont
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:417:48: error: reference to member 'font' cannot be resolved without a contextual type
415 |         var styleAttrs = markdownStyles.attributesForType(.heading)
416 |
417 |         let baseFont: CocoaFont = (styleAttrs[.font] as? CocoaFont) ?? CocoaFont.systemFont(ofSize: 15)
    |                                                `- error: reference to member 'font' cannot be resolved without a contextual type
418 |         let fontSize = markdownStyles.headingPointSizes[level - 1]
419 |         let headingFont: CocoaFont
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:419:26: error: cannot find type 'CocoaFont' in scope
417 |         let baseFont: CocoaFont = (styleAttrs[.font] as? CocoaFont) ?? CocoaFont.systemFont(ofSize: 15)
418 |         let fontSize = markdownStyles.headingPointSizes[level - 1]
419 |         let headingFont: CocoaFont
    |                          `- error: cannot find type 'CocoaFont' in scope
420 | #if os(macOS)
421 |         headingFont = CocoaFont(descriptor: baseFont.fontDescriptor, size: fontSize) ?? baseFont
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:423:23: error: cannot find 'CocoaFont' in scope
421 |         headingFont = CocoaFont(descriptor: baseFont.fontDescriptor, size: fontSize) ?? baseFont
422 | #else // iOS/watchOS
423 |         headingFont = CocoaFont(descriptor: baseFont.fontDescriptor, size: fontSize)
    |                       `- error: cannot find 'CocoaFont' in scope
424 | #endif
425 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:426:21: error: type 'NSAttributedString.Key' has no member 'font'
424 | #endif
425 |
426 |         styleAttrs[.font] = headingFont
    |                     `- error: type 'NSAttributedString.Key' has no member 'font'
427 |
428 |         if shouldAddCustomAttr {
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:456:29: error: cannot find 'URL' in scope
454 |
455 |         if let urlstr = link.destination {
456 |             guard let url = URL(string: urlstr) else {
    |                             `- error: cannot find 'URL' in scope
457 |                 assertionFailure("Invalid URL string \(urlstr)"); return
458 |             }
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:464:25: error: type 'NSAttributedString.Key' has no member 'link'
462 |                 )
463 |             }
464 |             styleAttrs[.link] = url
    |                         `- error: type 'NSAttributedString.Key' has no member 'link'
465 |         }
466 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:467:52: error: instance method 'deepCopy()' requires the types 'NSAttributedString.Key' and '_' be equivalent
465 |         }
466 |
467 |         let previousAttributes = currentAttributes.deepCopy()
    |                                                    `- error: instance method 'deepCopy()' requires the types 'NSAttributedString.Key' and '_' be equivalent
468 |         currentAttributes.mergeAttributes(styleAttrs)
469 |
    :
691 |
692 | extension Dictionary where Key == NSAttributedString.Key, Value == Any {
693 |     func deepCopy() -> StringAttrs {
    |          `- note: where 'Key' = 'NSAttributedString.Key'
694 |         var copy: StringAttrs = [:]
695 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:507:52: error: instance method 'deepCopy()' requires the types 'NSAttributedString.Key' and '_' be equivalent
505 |         _ markup: Markup
506 |     ) {
507 |         let previousAttributes = currentAttributes.deepCopy()
    |                                                    `- error: instance method 'deepCopy()' requires the types 'NSAttributedString.Key' and '_' be equivalent
508 |         currentAttributes.mergeAttributes(attributes)
509 |         visitChildren(of: markup)
    :
691 |
692 | extension Dictionary where Key == NSAttributedString.Key, Value == Any {
693 |     func deepCopy() -> StringAttrs {
    |          `- note: where 'Key' = 'NSAttributedString.Key'
694 |         var copy: StringAttrs = [:]
695 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:518:52: error: instance method 'deepCopy()' requires the types 'NSAttributedString.Key' and '_' be equivalent
516 |         markupType: MarkupType
517 |     ) {
518 |         let previousAttributes = currentAttributes.deepCopy()
    |                                                    `- error: instance method 'deepCopy()' requires the types 'NSAttributedString.Key' and '_' be equivalent
519 |         var mergedAttributes = currentAttributes.deepCopy()
520 |         mergedAttributes.mergeAttributes(newAttributes) // Merge general attributes
    :
691 |
692 | extension Dictionary where Key == NSAttributedString.Key, Value == Any {
693 |     func deepCopy() -> StringAttrs {
    |          `- note: where 'Key' = 'NSAttributedString.Key'
694 |         var copy: StringAttrs = [:]
695 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:519:50: error: instance method 'deepCopy()' requires the types 'NSAttributedString.Key' and '_' be equivalent
517 |     ) {
518 |         let previousAttributes = currentAttributes.deepCopy()
519 |         var mergedAttributes = currentAttributes.deepCopy()
    |                                                  `- error: instance method 'deepCopy()' requires the types 'NSAttributedString.Key' and '_' be equivalent
520 |         mergedAttributes.mergeAttributes(newAttributes) // Merge general attributes
521 |
    :
691 |
692 | extension Dictionary where Key == NSAttributedString.Key, Value == Any {
693 |     func deepCopy() -> StringAttrs {
    |          `- note: where 'Key' = 'NSAttributedString.Key'
694 |         var copy: StringAttrs = [:]
695 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:128:54: error: cannot find type 'CocoaFont' in scope
126 |     }
127 |
128 |     func fontAttributeForType(_ type: MarkupType) -> CocoaFont {
    |                                                      `- error: cannot find type 'CocoaFont' in scope
129 |         return (attributesForType(type)[.font] as? CocoaFont) ?? CocoaFont.systemFont(ofSize: 13)
130 |     }
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:528:83: error: cannot find type 'CocoaFont' in scope
526 |         }
527 |
528 |         if let expectedFont = markdownStyles.fontAttributeForType(markupType) as? CocoaFont,
    |                                                                                   `- error: cannot find type 'CocoaFont' in scope
529 |            let currentFont = currentAttributes[.font] as? CocoaFont {
530 |             let newDescriptor = mergeFontDescriptors(base: currentFont.fontDescriptor, expected: expectedFont.fontDescriptor)
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:529:59: error: cannot find type 'CocoaFont' in scope
527 |
528 |         if let expectedFont = markdownStyles.fontAttributeForType(markupType) as? CocoaFont,
529 |            let currentFont = currentAttributes[.font] as? CocoaFont {
    |                                                           `- error: cannot find type 'CocoaFont' in scope
530 |             let newDescriptor = mergeFontDescriptors(base: currentFont.fontDescriptor, expected: expectedFont.fontDescriptor)
531 |             mergedAttributes[.font] = CocoaFont(descriptor: newDescriptor, size: expectedFont.pointSize)
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:529:49: error: reference to member 'font' cannot be resolved without a contextual type
527 |
528 |         if let expectedFont = markdownStyles.fontAttributeForType(markupType) as? CocoaFont,
529 |            let currentFont = currentAttributes[.font] as? CocoaFont {
    |                                                 `- error: reference to member 'font' cannot be resolved without a contextual type
530 |             let newDescriptor = mergeFontDescriptors(base: currentFont.fontDescriptor, expected: expectedFont.fontDescriptor)
531 |             mergedAttributes[.font] = CocoaFont(descriptor: newDescriptor, size: expectedFont.pointSize)
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:531:39: error: cannot find 'CocoaFont' in scope
529 |            let currentFont = currentAttributes[.font] as? CocoaFont {
530 |             let newDescriptor = mergeFontDescriptors(base: currentFont.fontDescriptor, expected: expectedFont.fontDescriptor)
531 |             mergedAttributes[.font] = CocoaFont(descriptor: newDescriptor, size: expectedFont.pointSize)
    |                                       `- error: cannot find 'CocoaFont' in scope
532 |         }
533 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:531:31: error: cannot infer contextual base in reference to member 'font'
529 |            let currentFont = currentAttributes[.font] as? CocoaFont {
530 |             let newDescriptor = mergeFontDescriptors(base: currentFont.fontDescriptor, expected: expectedFont.fontDescriptor)
531 |             mergedAttributes[.font] = CocoaFont(descriptor: newDescriptor, size: expectedFont.pointSize)
    |                               `- error: cannot infer contextual base in reference to member 'font'
532 |         }
533 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:574:33: error: cannot find 'NSAttributedString' in scope
572 |         let actualAttrs = attrs ?? currentAttributes
573 |         debugLog("Appending:\n\(string)", file: "")
574 |         attributedString.append(NSAttributedString(string: string, attributes: actualAttrs))
    |                                 `- error: cannot find 'NSAttributedString' in scope
575 |     }
576 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:584:33: error: cannot find 'NSAttributedString' in scope
582 |     private func appendPlainText(_ plainText: String, attrs: StringAttrs? = nil) {
583 |         let actualAttrs = attrs ?? markdownStyles.baseAttributes
584 |         attributedString.append(NSAttributedString(
    |                                 `- error: cannot find 'NSAttributedString' in scope
585 |             string: plainText,
586 |             attributes: actualAttrs))
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:645:39: error: cannot find 'NSRange' in scope
643 |
644 |     var rangeWithinLine: NSRange {
645 |         guard let range else { return NSRange(location: NSNotFound, length: 0) }
    |                                       `- error: cannot find 'NSRange' in scope
646 |         let start = range.lowerBound.column - 1
647 |         return NSRange(location: start,
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:645:57: error: cannot find 'NSNotFound' in scope
643 |
644 |     var rangeWithinLine: NSRange {
645 |         guard let range else { return NSRange(location: NSNotFound, length: 0) }
    |                                                         `- error: cannot find 'NSNotFound' in scope
646 |         let start = range.lowerBound.column - 1
647 |         return NSRange(location: start,
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:647:16: error: cannot find 'NSRange' in scope
645 |         guard let range else { return NSRange(location: NSNotFound, length: 0) }
646 |         let start = range.lowerBound.column - 1
647 |         return NSRange(location: start,
    |                `- error: cannot find 'NSRange' in scope
648 |                        length: range.upperBound.column - start - 1)
649 |     }
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:697:41: error: cannot find type 'NSCopying' in scope
695 |
696 |         for (key, value) in self {
697 |             if let copyable = value as? NSCopying {
    |                                         `- error: cannot find type 'NSCopying' in scope
698 |                 copy[key] = copyable.copy()
699 |             } else if let array = value as? [Any] {
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:715:43: error: cannot find type 'NSCopying' in scope
713 |     func deepCopyArray() -> [Any] {
714 |         return self.map { element in
715 |             if let copyable = element as? NSCopying {
    |                                           `- error: cannot find type 'NSCopying' in scope
716 |                 return copyable.copy()
717 |             } else if let dict = element as? [AnyHashable: Any] {
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:730:41: error: cannot find type 'NSCopying' in scope
728 |         var copy: [AnyHashable: Any] = [:]
729 |         for (key, value) in self {
730 |             if let copyable = value as? NSCopying {
    |                                         `- error: cannot find type 'NSCopying' in scope
731 |                 copy[key] = copyable.copy()
732 |             } else if let array = value as? [Any] {
[120/120] Compiling MarkdownToAttributedString AttributedStringVisitor.swift
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:41:32: error: cannot find type 'NSAttributedString' in scope
 39 |     }
 40 |
 41 |     mutating func convert() -> NSAttributedString {
    |                                `- error: cannot find type 'NSAttributedString' in scope
 42 |         debugLog("Raw markdown to process:\n\(markdown)\n")
 43 |         let document = Document(parsing: markdown)
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringFormatter.swift:71:85: error: cannot infer contextual base in reference to member 'backwards'
69 |
70 |             let startRange = nsString.rangeOfCharacter(from: nonWhitespace)
71 |             let endRange = nsString.rangeOfCharacter(from: nonWhitespace, options: .backwards)
   |                                                                                     `- error: cannot infer contextual base in reference to member 'backwards'
72 |
73 |             // If we actually found some non‐whitespace, trim
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringFormatter.swift:83:79: error: cannot convert value of type 'Duration' to expected argument type 'Int'
81 |                 let newEnd = endCluster.location + endCluster.length - 1
82 |
83 |                 let trimmedRange = NSRange(location: newStart, length: newEnd - newStart + 1)
   |                                                                               `- error: cannot convert value of type 'Duration' to expected argument type 'Int'
84 |                 result = result.attributedSubstring(from: trimmedRange)
85 |             } else {
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:19:36: error: cannot find 'NSMutableAttributedString' in scope
 17 |     var markdownStyles: MarkdownStyles
 18 |
 19 |     private var attributedString = NSMutableAttributedString()
    |                                    `- error: cannot find 'NSMutableAttributedString' in scope
 20 |     private var currentAttributes: StringAttrs
 21 |     private var formattingOptions: FormattingOptions?
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:30:28: error: cannot find 'DispatchQueue' in scope
 28 |     private var currentOrderedListLevel: Int = 0
 29 |
 30 |     private let loggingQ = DispatchQueue(label: "MTAS.logging")
    |                            `- error: cannot find 'DispatchQueue' in scope
 31 |
 32 |     init(markdown: String,
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:539:90: error: cannot find type 'FontDescriptor' in scope
537 |     }
538 |
539 |     private func mergeFontDescriptors(base: FontDescriptor, expected: FontDescriptor) -> FontDescriptor {
    |                                                                                          `- error: cannot find type 'FontDescriptor' in scope
540 |         var traits = base.symbolicTraits
541 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:539:45: error: cannot find type 'FontDescriptor' in scope
537 |     }
538 |
539 |     private func mergeFontDescriptors(base: FontDescriptor, expected: FontDescriptor) -> FontDescriptor {
    |                                             `- error: cannot find type 'FontDescriptor' in scope
540 |         var traits = base.symbolicTraits
541 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:539:71: error: cannot find type 'FontDescriptor' in scope
537 |     }
538 |
539 |     private func mergeFontDescriptors(base: FontDescriptor, expected: FontDescriptor) -> FontDescriptor {
    |                                                                       `- error: cannot find type 'FontDescriptor' in scope
540 |         var traits = base.symbolicTraits
541 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:32:36: error: cannot find type 'CGFloat' in scope
 30 |     public var baseAttributes: StringAttrs
 31 |     public var styleAttributes: [MarkupType: StringAttrs]
 32 |     public var headingPointSizes: [CGFloat] = [22, 18, 15, 14, 13, 11]
    |                                    `- error: cannot find type 'CGFloat' in scope
 33 |     public var unorderedListBullets: [String] = ["•", "◦", "▪", "▫"]
 34 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:38:42: error: cannot find type 'NSParagraphStyle' in scope
 36 |     /// Paragraph styles to apply at the beginning and end of a container block. This is especially useful for (and currently only implemented for) lists. Since NSParagraphStyle spacing is applied to each line and a list typically has lines separated by a newline, you would end up with the spacing applied to each line if just using a single paragraph style in `styleAttributes` for `orderedList`/`unorderedList`.
 37 |     /// With these, you can instead have the formatter apply a pstyle with paragraph spacing only at the beginning and end (typically `paragraphSpacingBefore` for start and `paragraphSpacing` for end).
 38 |     public var blockStartParagraphStyle: NSParagraphStyle?
    |                                          `- error: cannot find type 'NSParagraphStyle' in scope
 39 |     public var blockEndParagraphStyle: NSParagraphStyle?
 40 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:39:40: error: cannot find type 'NSParagraphStyle' in scope
 37 |     /// With these, you can instead have the formatter apply a pstyle with paragraph spacing only at the beginning and end (typically `paragraphSpacingBefore` for start and `paragraphSpacing` for end).
 38 |     public var blockStartParagraphStyle: NSParagraphStyle?
 39 |     public var blockEndParagraphStyle: NSParagraphStyle?
    |                                        `- error: cannot find type 'NSParagraphStyle' in scope
 40 |
 41 |     public init(baseAttributes: StringAttrs, styleAttributes: [MarkupType : StringAttrs]) {
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:644:26: error: cannot find type 'NSRange' in scope
642 |     }
643 |
644 |     var rangeWithinLine: NSRange {
    |                          `- error: cannot find type 'NSRange' in scope
645 |         guard let range else { return NSRange(location: NSNotFound, length: 0) }
646 |         let start = range.lowerBound.column - 1
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:692:35: error: cannot find type 'NSAttributedString' in scope
690 | }
691 |
692 | extension Dictionary where Key == NSAttributedString.Key, Value == Any {
    |                                   `- error: cannot find type 'NSAttributedString' in scope
693 |     func deepCopy() -> StringAttrs {
694 |         var copy: StringAttrs = [:]
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:37:69: error: instance method 'deepCopy()' requires the types 'NSAttributedString.Key' and '_' be equivalent
 35 |         self.markdown = markdown
 36 |         self.markdownStyles = styles ?? MarkdownStyles.default
 37 |         self.currentAttributes = self.markdownStyles.baseAttributes.deepCopy()
    |                                                                     `- error: instance method 'deepCopy()' requires the types 'NSAttributedString.Key' and '_' be equivalent
 38 |         self.formattingOptions = options
 39 |     }
    :
691 |
692 | extension Dictionary where Key == NSAttributedString.Key, Value == Any {
693 |     func deepCopy() -> StringAttrs {
    |          `- note: where 'Key' = 'NSAttributedString.Key'
694 |         var copy: StringAttrs = [:]
695 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:48:51: error: cannot find 'NSRange' in scope
 46 |         // Apparently something in SwiftMarkdown is sometimes adding a zero-width space at the end. Remove it.
 47 |         if attributedString.string.hasSuffix("\u{200B}") {
 48 |             attributedString.deleteCharacters(in: NSRange(location: attributedString.length - 1, length: 1))
    |                                                   `- error: cannot find 'NSRange' in scope
 49 |         }
 50 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:155:57: error: cannot find type 'CocoaFont' in scope
153 |         while let parent = currentParent {
154 |             if parent is Strong {
155 |                 if let baseFont = styleAttrs[.font] as? CocoaFont {
    |                                                         `- error: cannot find type 'CocoaFont' in scope
156 |                     if shouldAddCustomAttr {
157 |                         styleAttrs.addMarkdownElementAttr(
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:155:47: error: reference to member 'font' cannot be resolved without a contextual type
153 |         while let parent = currentParent {
154 |             if parent is Strong {
155 |                 if let baseFont = styleAttrs[.font] as? CocoaFont {
    |                                               `- error: reference to member 'font' cannot be resolved without a contextual type
156 |                     if shouldAddCustomAttr {
157 |                         styleAttrs.addMarkdownElementAttr(
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:168:57: error: cannot find type 'CocoaFont' in scope
166 |                 }
167 |             } else if parent is Emphasis {
168 |                 if let baseFont = styleAttrs[.font] as? CocoaFont {
    |                                                         `- error: cannot find type 'CocoaFont' in scope
169 |                     if shouldAddCustomAttr {
170 |                         styleAttrs.addMarkdownElementAttr(
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:168:47: error: reference to member 'font' cannot be resolved without a contextual type
166 |                 }
167 |             } else if parent is Emphasis {
168 |                 if let baseFont = styleAttrs[.font] as? CocoaFont {
    |                                               `- error: reference to member 'font' cannot be resolved without a contextual type
169 |                     if shouldAddCustomAttr {
170 |                         styleAttrs.addMarkdownElementAttr(
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:195:52: error: instance method 'deepCopy()' requires the types 'NSAttributedString.Key' and '_' be equivalent
193 |         debugLog("<open>", file: "")
194 |
195 |         let previousAttributes = currentAttributes.deepCopy()
    |                                                    `- error: instance method 'deepCopy()' requires the types 'NSAttributedString.Key' and '_' be equivalent
196 |         var styleAttrs = markdownStyles.attributesForType(.codeBlock)
197 |
    :
691 |
692 | extension Dictionary where Key == NSAttributedString.Key, Value == Any {
693 |     func deepCopy() -> StringAttrs {
    |          `- note: where 'Key' = 'NSAttributedString.Key'
694 |         var copy: StringAttrs = [:]
695 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:223:52: error: instance method 'deepCopy()' requires the types 'NSAttributedString.Key' and '_' be equivalent
221 |         debugLog("<open>", file: "")
222 |
223 |         let previousAttributes = currentAttributes.deepCopy()
    |                                                    `- error: instance method 'deepCopy()' requires the types 'NSAttributedString.Key' and '_' be equivalent
224 |         var styleAttrs = markdownStyles.attributesForType(.unorderedList)
225 |
    :
691 |
692 | extension Dictionary where Key == NSAttributedString.Key, Value == Any {
693 |     func deepCopy() -> StringAttrs {
    |          `- note: where 'Key' = 'NSAttributedString.Key'
694 |         var copy: StringAttrs = [:]
695 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:269:52: error: instance method 'deepCopy()' requires the types 'NSAttributedString.Key' and '_' be equivalent
267 |         debugLog("<open>", file: "")
268 |
269 |         let previousAttributes = currentAttributes.deepCopy()
    |                                                    `- error: instance method 'deepCopy()' requires the types 'NSAttributedString.Key' and '_' be equivalent
270 |         var styleAttrs = markdownStyles.attributesForType(.orderedList)
271 |
    :
691 |
692 | extension Dictionary where Key == NSAttributedString.Key, Value == Any {
693 |     func deepCopy() -> StringAttrs {
    |          `- note: where 'Key' = 'NSAttributedString.Key'
694 |         var copy: StringAttrs = [:]
695 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:325:52: error: instance method 'deepCopy()' requires the types 'NSAttributedString.Key' and '_' be equivalent
323 |         debugLog("<open>", file: "")
324 |         var styleAttrs = markdownStyles.attributesForType(.listItem)
325 |         let previousAttributes = currentAttributes.deepCopy()
    |                                                    `- error: instance method 'deepCopy()' requires the types 'NSAttributedString.Key' and '_' be equivalent
326 |
327 |         currentAttributes.mergeAttributes(styleAttrs)
    :
691 |
692 | extension Dictionary where Key == NSAttributedString.Key, Value == Any {
693 |     func deepCopy() -> StringAttrs {
    |          `- note: where 'Key' = 'NSAttributedString.Key'
694 |         var copy: StringAttrs = [:]
695 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:332:49: error: type 'NSAttributedString.Key' has no member 'paragraphStyle'
330 |            let pstyle = markdownStyles.blockStartParagraphStyle
331 |         {
332 |             currentAttributes.mergeAttributes([.paragraphStyle: pstyle])
    |                                                 `- error: type 'NSAttributedString.Key' has no member 'paragraphStyle'
333 |         } else if listItem.isLast,
334 |            let pstyle = markdownStyles.blockEndParagraphStyle
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:336:49: error: type 'NSAttributedString.Key' has no member 'paragraphStyle'
334 |            let pstyle = markdownStyles.blockEndParagraphStyle
335 |         {
336 |             currentAttributes.mergeAttributes([.paragraphStyle: pstyle])
    |                                                 `- error: type 'NSAttributedString.Key' has no member 'paragraphStyle'
337 |         }
338 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:411:52: error: instance method 'deepCopy()' requires the types 'NSAttributedString.Key' and '_' be equivalent
409 |         debugLog("<open>", file: "")
410 |
411 |         let previousAttributes = currentAttributes.deepCopy()
    |                                                    `- error: instance method 'deepCopy()' requires the types 'NSAttributedString.Key' and '_' be equivalent
412 |
413 |         let level = max(1, min(heading.level, 6))
    :
691 |
692 | extension Dictionary where Key == NSAttributedString.Key, Value == Any {
693 |     func deepCopy() -> StringAttrs {
    |          `- note: where 'Key' = 'NSAttributedString.Key'
694 |         var copy: StringAttrs = [:]
695 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:417:23: error: cannot find type 'CocoaFont' in scope
415 |         var styleAttrs = markdownStyles.attributesForType(.heading)
416 |
417 |         let baseFont: CocoaFont = (styleAttrs[.font] as? CocoaFont) ?? CocoaFont.systemFont(ofSize: 15)
    |                       `- error: cannot find type 'CocoaFont' in scope
418 |         let fontSize = markdownStyles.headingPointSizes[level - 1]
419 |         let headingFont: CocoaFont
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:417:72: error: cannot find 'CocoaFont' in scope
415 |         var styleAttrs = markdownStyles.attributesForType(.heading)
416 |
417 |         let baseFont: CocoaFont = (styleAttrs[.font] as? CocoaFont) ?? CocoaFont.systemFont(ofSize: 15)
    |                                                                        `- error: cannot find 'CocoaFont' in scope
418 |         let fontSize = markdownStyles.headingPointSizes[level - 1]
419 |         let headingFont: CocoaFont
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:417:58: error: cannot find type 'CocoaFont' in scope
415 |         var styleAttrs = markdownStyles.attributesForType(.heading)
416 |
417 |         let baseFont: CocoaFont = (styleAttrs[.font] as? CocoaFont) ?? CocoaFont.systemFont(ofSize: 15)
    |                                                          `- error: cannot find type 'CocoaFont' in scope
418 |         let fontSize = markdownStyles.headingPointSizes[level - 1]
419 |         let headingFont: CocoaFont
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:417:48: error: reference to member 'font' cannot be resolved without a contextual type
415 |         var styleAttrs = markdownStyles.attributesForType(.heading)
416 |
417 |         let baseFont: CocoaFont = (styleAttrs[.font] as? CocoaFont) ?? CocoaFont.systemFont(ofSize: 15)
    |                                                `- error: reference to member 'font' cannot be resolved without a contextual type
418 |         let fontSize = markdownStyles.headingPointSizes[level - 1]
419 |         let headingFont: CocoaFont
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:419:26: error: cannot find type 'CocoaFont' in scope
417 |         let baseFont: CocoaFont = (styleAttrs[.font] as? CocoaFont) ?? CocoaFont.systemFont(ofSize: 15)
418 |         let fontSize = markdownStyles.headingPointSizes[level - 1]
419 |         let headingFont: CocoaFont
    |                          `- error: cannot find type 'CocoaFont' in scope
420 | #if os(macOS)
421 |         headingFont = CocoaFont(descriptor: baseFont.fontDescriptor, size: fontSize) ?? baseFont
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:423:23: error: cannot find 'CocoaFont' in scope
421 |         headingFont = CocoaFont(descriptor: baseFont.fontDescriptor, size: fontSize) ?? baseFont
422 | #else // iOS/watchOS
423 |         headingFont = CocoaFont(descriptor: baseFont.fontDescriptor, size: fontSize)
    |                       `- error: cannot find 'CocoaFont' in scope
424 | #endif
425 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:426:21: error: type 'NSAttributedString.Key' has no member 'font'
424 | #endif
425 |
426 |         styleAttrs[.font] = headingFont
    |                     `- error: type 'NSAttributedString.Key' has no member 'font'
427 |
428 |         if shouldAddCustomAttr {
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:456:29: error: cannot find 'URL' in scope
454 |
455 |         if let urlstr = link.destination {
456 |             guard let url = URL(string: urlstr) else {
    |                             `- error: cannot find 'URL' in scope
457 |                 assertionFailure("Invalid URL string \(urlstr)"); return
458 |             }
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:464:25: error: type 'NSAttributedString.Key' has no member 'link'
462 |                 )
463 |             }
464 |             styleAttrs[.link] = url
    |                         `- error: type 'NSAttributedString.Key' has no member 'link'
465 |         }
466 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:467:52: error: instance method 'deepCopy()' requires the types 'NSAttributedString.Key' and '_' be equivalent
465 |         }
466 |
467 |         let previousAttributes = currentAttributes.deepCopy()
    |                                                    `- error: instance method 'deepCopy()' requires the types 'NSAttributedString.Key' and '_' be equivalent
468 |         currentAttributes.mergeAttributes(styleAttrs)
469 |
    :
691 |
692 | extension Dictionary where Key == NSAttributedString.Key, Value == Any {
693 |     func deepCopy() -> StringAttrs {
    |          `- note: where 'Key' = 'NSAttributedString.Key'
694 |         var copy: StringAttrs = [:]
695 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:507:52: error: instance method 'deepCopy()' requires the types 'NSAttributedString.Key' and '_' be equivalent
505 |         _ markup: Markup
506 |     ) {
507 |         let previousAttributes = currentAttributes.deepCopy()
    |                                                    `- error: instance method 'deepCopy()' requires the types 'NSAttributedString.Key' and '_' be equivalent
508 |         currentAttributes.mergeAttributes(attributes)
509 |         visitChildren(of: markup)
    :
691 |
692 | extension Dictionary where Key == NSAttributedString.Key, Value == Any {
693 |     func deepCopy() -> StringAttrs {
    |          `- note: where 'Key' = 'NSAttributedString.Key'
694 |         var copy: StringAttrs = [:]
695 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:518:52: error: instance method 'deepCopy()' requires the types 'NSAttributedString.Key' and '_' be equivalent
516 |         markupType: MarkupType
517 |     ) {
518 |         let previousAttributes = currentAttributes.deepCopy()
    |                                                    `- error: instance method 'deepCopy()' requires the types 'NSAttributedString.Key' and '_' be equivalent
519 |         var mergedAttributes = currentAttributes.deepCopy()
520 |         mergedAttributes.mergeAttributes(newAttributes) // Merge general attributes
    :
691 |
692 | extension Dictionary where Key == NSAttributedString.Key, Value == Any {
693 |     func deepCopy() -> StringAttrs {
    |          `- note: where 'Key' = 'NSAttributedString.Key'
694 |         var copy: StringAttrs = [:]
695 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:519:50: error: instance method 'deepCopy()' requires the types 'NSAttributedString.Key' and '_' be equivalent
517 |     ) {
518 |         let previousAttributes = currentAttributes.deepCopy()
519 |         var mergedAttributes = currentAttributes.deepCopy()
    |                                                  `- error: instance method 'deepCopy()' requires the types 'NSAttributedString.Key' and '_' be equivalent
520 |         mergedAttributes.mergeAttributes(newAttributes) // Merge general attributes
521 |
    :
691 |
692 | extension Dictionary where Key == NSAttributedString.Key, Value == Any {
693 |     func deepCopy() -> StringAttrs {
    |          `- note: where 'Key' = 'NSAttributedString.Key'
694 |         var copy: StringAttrs = [:]
695 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/MarkdownStyles.swift:128:54: error: cannot find type 'CocoaFont' in scope
126 |     }
127 |
128 |     func fontAttributeForType(_ type: MarkupType) -> CocoaFont {
    |                                                      `- error: cannot find type 'CocoaFont' in scope
129 |         return (attributesForType(type)[.font] as? CocoaFont) ?? CocoaFont.systemFont(ofSize: 13)
130 |     }
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:528:83: error: cannot find type 'CocoaFont' in scope
526 |         }
527 |
528 |         if let expectedFont = markdownStyles.fontAttributeForType(markupType) as? CocoaFont,
    |                                                                                   `- error: cannot find type 'CocoaFont' in scope
529 |            let currentFont = currentAttributes[.font] as? CocoaFont {
530 |             let newDescriptor = mergeFontDescriptors(base: currentFont.fontDescriptor, expected: expectedFont.fontDescriptor)
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:529:59: error: cannot find type 'CocoaFont' in scope
527 |
528 |         if let expectedFont = markdownStyles.fontAttributeForType(markupType) as? CocoaFont,
529 |            let currentFont = currentAttributes[.font] as? CocoaFont {
    |                                                           `- error: cannot find type 'CocoaFont' in scope
530 |             let newDescriptor = mergeFontDescriptors(base: currentFont.fontDescriptor, expected: expectedFont.fontDescriptor)
531 |             mergedAttributes[.font] = CocoaFont(descriptor: newDescriptor, size: expectedFont.pointSize)
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:529:49: error: reference to member 'font' cannot be resolved without a contextual type
527 |
528 |         if let expectedFont = markdownStyles.fontAttributeForType(markupType) as? CocoaFont,
529 |            let currentFont = currentAttributes[.font] as? CocoaFont {
    |                                                 `- error: reference to member 'font' cannot be resolved without a contextual type
530 |             let newDescriptor = mergeFontDescriptors(base: currentFont.fontDescriptor, expected: expectedFont.fontDescriptor)
531 |             mergedAttributes[.font] = CocoaFont(descriptor: newDescriptor, size: expectedFont.pointSize)
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:531:39: error: cannot find 'CocoaFont' in scope
529 |            let currentFont = currentAttributes[.font] as? CocoaFont {
530 |             let newDescriptor = mergeFontDescriptors(base: currentFont.fontDescriptor, expected: expectedFont.fontDescriptor)
531 |             mergedAttributes[.font] = CocoaFont(descriptor: newDescriptor, size: expectedFont.pointSize)
    |                                       `- error: cannot find 'CocoaFont' in scope
532 |         }
533 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:531:31: error: cannot infer contextual base in reference to member 'font'
529 |            let currentFont = currentAttributes[.font] as? CocoaFont {
530 |             let newDescriptor = mergeFontDescriptors(base: currentFont.fontDescriptor, expected: expectedFont.fontDescriptor)
531 |             mergedAttributes[.font] = CocoaFont(descriptor: newDescriptor, size: expectedFont.pointSize)
    |                               `- error: cannot infer contextual base in reference to member 'font'
532 |         }
533 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:574:33: error: cannot find 'NSAttributedString' in scope
572 |         let actualAttrs = attrs ?? currentAttributes
573 |         debugLog("Appending:\n\(string)", file: "")
574 |         attributedString.append(NSAttributedString(string: string, attributes: actualAttrs))
    |                                 `- error: cannot find 'NSAttributedString' in scope
575 |     }
576 |
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:584:33: error: cannot find 'NSAttributedString' in scope
582 |     private func appendPlainText(_ plainText: String, attrs: StringAttrs? = nil) {
583 |         let actualAttrs = attrs ?? markdownStyles.baseAttributes
584 |         attributedString.append(NSAttributedString(
    |                                 `- error: cannot find 'NSAttributedString' in scope
585 |             string: plainText,
586 |             attributes: actualAttrs))
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:645:39: error: cannot find 'NSRange' in scope
643 |
644 |     var rangeWithinLine: NSRange {
645 |         guard let range else { return NSRange(location: NSNotFound, length: 0) }
    |                                       `- error: cannot find 'NSRange' in scope
646 |         let start = range.lowerBound.column - 1
647 |         return NSRange(location: start,
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:645:57: error: cannot find 'NSNotFound' in scope
643 |
644 |     var rangeWithinLine: NSRange {
645 |         guard let range else { return NSRange(location: NSNotFound, length: 0) }
    |                                                         `- error: cannot find 'NSNotFound' in scope
646 |         let start = range.lowerBound.column - 1
647 |         return NSRange(location: start,
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:647:16: error: cannot find 'NSRange' in scope
645 |         guard let range else { return NSRange(location: NSNotFound, length: 0) }
646 |         let start = range.lowerBound.column - 1
647 |         return NSRange(location: start,
    |                `- error: cannot find 'NSRange' in scope
648 |                        length: range.upperBound.column - start - 1)
649 |     }
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:697:41: error: cannot find type 'NSCopying' in scope
695 |
696 |         for (key, value) in self {
697 |             if let copyable = value as? NSCopying {
    |                                         `- error: cannot find type 'NSCopying' in scope
698 |                 copy[key] = copyable.copy()
699 |             } else if let array = value as? [Any] {
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:715:43: error: cannot find type 'NSCopying' in scope
713 |     func deepCopyArray() -> [Any] {
714 |         return self.map { element in
715 |             if let copyable = element as? NSCopying {
    |                                           `- error: cannot find type 'NSCopying' in scope
716 |                 return copyable.copy()
717 |             } else if let dict = element as? [AnyHashable: Any] {
/host/spi-builder-workspace/Sources/MarkdownToAttributedString/AttributedStringVisitor.swift:730:41: error: cannot find type 'NSCopying' in scope
728 |         var copy: [AnyHashable: Any] = [:]
729 |         for (key, value) in self {
730 |             if let copyable = value as? NSCopying {
    |                                         `- error: cannot find type 'NSCopying' in scope
731 |                 copy[key] = copyable.copy()
732 |             } else if let array = value as? [Any] {
BUILD FAILURE 6.3 android