The Swift Package Index logo.Swift Package Index

Build Information

Successful build of MarkdownEngine, reference 0.14.0 (5ed9dd), with Swift 6.3 for macOS (SPM) on 8 Oct 2026 20:09:42 UTC.

Swift 6 data race errors: 0

Build Command

env DEVELOPER_DIR=/Applications/Xcode-26.5.0.app xcrun swift build --arch arm64

Build Log

========================================
RunAll
========================================
Builder version: 5.1.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/nodes-app/swift-markdown-engine.git
Reference: 0.14.0
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/nodes-app/swift-markdown-engine
 * tag               0.14.0     -> FETCH_HEAD
HEAD is now at 5ed9dd8 chore(release): 0.14.0
Cloned https://github.com/nodes-app/swift-markdown-engine.git
Revision (git rev-parse @):
5ed9dd8d7eea0c77e93a91462836f4a3ef52424c
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/nodes-app/swift-markdown-engine.git at 0.14.0
Fetching https://github.com/mgriebling/SwiftMath
Fetching https://github.com/smittytone/HighlighterSwift
[1/1377] Fetching highlighterswift
[277/3746] Fetching highlighterswift, swiftmath
Fetched https://github.com/mgriebling/SwiftMath from cache (1.62s)
Fetched https://github.com/smittytone/HighlighterSwift from cache (1.62s)
Computing version for https://github.com/mgriebling/SwiftMath
Computed https://github.com/mgriebling/SwiftMath at 1.7.3 (4.53s)
Computing version for https://github.com/smittytone/HighlighterSwift
Computed https://github.com/smittytone/HighlighterSwift at 3.1.0 (0.60s)
Creating working copy for https://github.com/mgriebling/SwiftMath
Working copy of https://github.com/mgriebling/SwiftMath resolved at 1.7.3
Creating working copy for https://github.com/smittytone/HighlighterSwift
Working copy of https://github.com/smittytone/HighlighterSwift resolved at 3.1.0
========================================
ResolveProductDependencies
========================================
Resolving dependencies ...
{
  "identity": ".resolve-product-dependencies",
  "name": "resolve-dependencies",
  "url": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
  "version": "unspecified",
  "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
  "traits": [
    "default"
  ],
  "dependencies": [
    {
      "identity": "swift-markdown-engine",
      "name": "MarkdownEngine",
      "url": "https://github.com/nodes-app/swift-markdown-engine.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/swift-markdown-engine",
      "traits": [
        "default"
      ],
      "dependencies": [
        {
          "identity": "highlighterswift",
          "name": "Highlighter",
          "url": "https://github.com/smittytone/HighlighterSwift",
          "version": "3.1.0",
          "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/HighlighterSwift",
          "traits": [
            "default"
          ],
          "dependencies": [
          ]
        },
        {
          "identity": "swiftmath",
          "name": "SwiftMath",
          "url": "https://github.com/mgriebling/SwiftMath",
          "version": "1.7.3",
          "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/SwiftMath",
          "traits": [
            "default"
          ],
          "dependencies": [
          ]
        }
      ]
    }
  ]
}
Fetching https://github.com/nodes-app/swift-markdown-engine.git
[1/6038] Fetching swift-markdown-engine
Fetched https://github.com/nodes-app/swift-markdown-engine.git from cache (2.81s)
Fetching https://github.com/smittytone/HighlighterSwift from cache
Fetching https://github.com/mgriebling/SwiftMath from cache
Fetched https://github.com/mgriebling/SwiftMath from cache (0.50s)
Fetched https://github.com/smittytone/HighlighterSwift from cache (0.50s)
Computing version for https://github.com/mgriebling/SwiftMath
Computed https://github.com/mgriebling/SwiftMath at 1.7.3 (0.56s)
Computing version for https://github.com/smittytone/HighlighterSwift
Computed https://github.com/smittytone/HighlighterSwift at 3.1.0 (0.03s)
Creating working copy for https://github.com/mgriebling/SwiftMath
Working copy of https://github.com/mgriebling/SwiftMath resolved at 1.7.3
Creating working copy for https://github.com/smittytone/HighlighterSwift
Working copy of https://github.com/smittytone/HighlighterSwift resolved at 3.1.0
Creating working copy for https://github.com/nodes-app/swift-markdown-engine.git
Working copy of https://github.com/nodes-app/swift-markdown-engine.git resolved at 0.14.0 (5ed9dd8)
warning: '.resolve-product-dependencies': dependency 'swift-markdown-engine' is not used by any target
Found 2 product dependencies
  - Highlighter
  - SwiftMath
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.3
Building package at path:  $PWD
https://github.com/nodes-app/swift-markdown-engine.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-26.5.0.app xcrun swift build --arch arm64
Building for debugging...
[0/258] Copying a11y-dark.css
[0/258] Write sources
[4/258] Copying a11y-light.css
[4/258] Write sources
[4/258] Copying highlight.min.js
[5/258] Copying circus.css
[8/258] Copying docco.css
[9/258] Copying xt256.css
[9/258] Write sources
[9/258] Copying zenburn.css
[12/258] Copying Info.plist
[12/258] Copying xcode.css
[14/258] Copying woodland.css
[14/258] Copying xcode-dusk.css
[14/258] Copying windows-nt.css
[14/258] Copying windows-nt-light.css
[14/258] Copying windows-high-contrast-light.css
[18/258] Copying windows-high-contrast.css
[20/258] Copying windows-95.css
[20/258] Copying windows-95-light.css
[20/258] Copying vs2015.css
[20/258] Copying windows-10-light.css
[20/258] Copying windows-10.css
[20/258] Copying vs-light.css
[26/258] Copying vulcan.css
[26/258] Copying vs-dark.css
[26/258] Copying unikitty-dark.css
[29/258] Copying unikitty-light.css
[29/258] Copying twilight.css
[29/258] Copying tomorrow.css
[29/258] Copying tomorrow-night.css
[29/258] Copying tomorrow-night-eighties.css
[29/258] Copying tomorrow-night-bright.css
[29/258] Copying tomorrow-night-blue.css
[29/258] Copying tokyo-night-light.css
[37/258] Copying tokyo-night-dark.css
[37/258] Copying tender.css
[37/258] Copying tango.css
[37/258] Copying synth-midnight-terminal-light.css
[41/258] Copying synth-midnight-terminal-dark.css
[41/258] Copying sunburst.css
[41/258] Copying summerfruit-dark.css
[44/258] Copying summercamp.css
[44/258] Copying summerfruit-light.css
[44/258] Copying stackoverflow-light.css
[45/258] Copying stackoverflow-dark.css
[48/258] Copying srcery.css
[49/258] Copying spacemacs.css
[49/258] Copying solarized-dark.css
[51/258] Copying solarized-light.css
[52/258] Copying snazzy.css
[53/258] Copying solar-flare.css
[53/258] Copying silk-dark.css
[53/258] Copying silk-light.css
[54/258] Copying solar-flare-light.css
[57/258] Copying shapeshifter.css
[58/258] Copying shades-of-purple.css
[58/258] Copying school-book.css
[58/258] Copying seti-ui.css
[61/258] Copying routeros.css
[61/258] Copying sandcastle.css
[63/258] Copying rose-pine-moon.css
[63/258] Copying rose-pine.css
[64/258] Copying rose-pine-dawn.css
[64/258] Copying sagelight.css
[67/258] Copying rainbow.css
[67/258] Copying rebecca.css
[67/258] Copying railscasts.css
[70/258] Copying purebasic.css
[70/258] Copying qtcreator_light.css
[72/258] Copying qualia.css
[73/258] Copying qtcreator_dark.css
[73/258] Copying porple.css
[73/258] Copying pop.css
[76/258] Copying pojoaque.css
[76/258] Copying pico.css
[76/258] Copying pasque.css
[76/258] Copying paraiso-light.css
[80/258] Copying paraiso-dark.css
[80/258] Copying papercolor-light.css
[81/258] Copying phd.css
[82/258] Copying panda-syntax-light.css
[82/258] Copying papercolor-dark.css
[85/258] Copying panda-syntax-dark.css
[86/258] Copying outrun-dark.css
[86/258] Copying one-light.css
[88/258] Copying onedark.css
[89/258] Copying nova.css
[89/258] Copying ocean.css
[89/258] Copying obsidian.css
[89/258] Copying oceanicnext.css
[89/258] Copying nnfx-light.css
[93/258] Copying nord.css
[93/258] Copying nnfx-dark.css
[96/258] Copying night-owl.css
[96/258] Copying nebula.css
[96/258] Copying monokai.css
[96/258] Copying monokai-sublime.css
[100/258] Copying mono-blue.css
[100/258] Copying mellow-purple.css
[100/258] Copying mocha.css
[101/258] Copying mexico-light.css
[103/258] Copying material-vivid.css
[104/258] Copying material.css
[105/258] Copying material-palenight.css
[105/258] Copying material-lighter.css
[106/258] Copying material-darker.css
[106/258] Copying materia.css
[110/258] Copying london-tube.css
[110/258] Copying magula.css
[110/258] Copying macintosh.css
[111/258] Copying lightfair.css
[113/258] Copying kimbie-light.css
[113/258] Copying marrakesh.css
[116/258] Copying kimbie-dark.css
[116/258] Copying lioshi.css
[118/258] Copying isotope.css
[119/258] Copying kimber.css
[119/258] Copying isbl-editor-light.css
[119/258] Copying ir-black.css
[119/258] Copying isbl-editor-dark.css
[119/258] Copying intellij-light.css
[122/258] Copying icy-dark.css
[122/258] Copying ia-light.css
[122/258] Copying idea.css
[127/258] Copying humanoid-light.css
[127/258] Copying ia-dark.css
[127/258] Copying hybrid.css
[130/258] Copying horizon-dark.css
[131/258] Copying humanoid-dark.css
[131/258] Copying horizon-light.css
[131/258] Copying hopscotch.css
[131/258] Copying helios.css
[132/258] Copying heetch-light.css
[135/258] Copying heetch-dark.css
[137/258] Copying harmonic16-light.css
[138/258] Copying harmonic16-dark.css
[138/258] Copying gruvbox-light.css
[139/258] Copying hardcore.css
[139/258] Copying gruvbox-light-soft.css
[139/258] Copying gruvbox-light-medium.css
[139/258] Copying gruvbox-dark-soft.css
[141/258] Copying gruvbox-dark.css
[145/258] Copying gruvbox-dark-pale.css
[145/258] Copying gruvbox-dark-medium.css
[145/258] Copying gradient-light.css
[145/258] Copying green-screen.css
[148/258] Copying grayscale-light.css
[148/258] Copying grayscale-dark.css
[148/258] Copying googlecode.css
[148/258] Copying google-light.css
[148/258] Copying github-dark.css
[149/258] Copying gradient-dark.css
[151/258] Copying github-gist.css
[156/258] Copying github-dark-dimmed.css
[156/258] Copying gml.css
[156/258] Copying google-dark.css
[156/258] Copying github.css
[156/258] Copying fruit-soda.css
[156/258] Copying framer.css
[156/258] Copying flat.css
[163/258] Copying gigavolt.css
[163/258] Copying felipec.css
[163/258] Copying foundation.css
[163/258] Copying far.css
[167/258] Copying equilibrium-light.css
[167/258] Copying espresso.css
[167/258] Copying eva-dim.css
[167/258] Copying equilibrium-gray-dark.css
[167/258] Copying eva.css
[170/258] Copying equilibrium-gray-light.css
[170/258] Copying mathFonts.bundle
[173/258] Copying equilibrium-dark.css
[173/258] Copying embers.css
[173/258] Copying eighties.css
[177/258] Copying dirtysea.css
[177/258] Copying edge-light.css
[178/258] Copying default-light.css
[180/258] Copying darktooth.css
[181/258] Copying dracula.css
[181/258] Copying edge-dark.css
[181/258] Copying default-dark.css
[183/258] Copying devibeans.css
[183/258] Copying decaf.css
[186/258] Copying darkmoss.css
[186/258] Copying dark-violet.css
[187/258] Copying dark.css
[187/258] Copying darcula.css
[187/258] Copying cybertopia-saturated.css
[187/258] Copying danqing.css
[187/258] Copying cybertopia-dimmer.css
[193/258] Copying cybertopia-icecap.css
[194/258] Copying cybertopia-cherry.css
[195/258] Copying color-brewer.css
[195/258] Copying colors.css
[195/258] Copying cupcake.css
[198/258] Copying cupertino.css
[198/258] Copying classic-light.css
[198/258] Copying codeschool.css
[198/258] Copying classic-dark.css
[198/258] Copying codepen-embed.css
[203/258] Copying chalk.css
[204/258] Copying brush-trees-light.css
[205/258] Copying brush-trees-dark.css
[205/258] Copying bright.css
[205/258] Copying brown-paper.css
[205/258] Copying brewer.css
[205/258] Copying black-metal-nile.css
[210/258] Copying black-metal-venom.css
[210/258] Copying brogrammer.css
[210/258] Copying black-metal-marduk.css
[212/258] Copying black-metal-mayhem.css
[212/258] Copying black-metal-immortal.css
[212/258] Copying black-metal-khold.css
[212/258] Copying black-metal-gorgoroth.css
[212/258] Copying black-metal-dark-funeral.css
[213/258] Copying black-metal.css
[219/258] Copying black-metal-burzum.css
[219/258] Copying black-metal-bathory.css
[220/258] Copying atom-one-dark.css
[220/258] Copying atom-one-light.css
[220/258] Copying bespin.css
[223/258] Copying atlas.css
[224/258] Copying atelier-sulphurpool-light.css
[224/258] Copying atelier-sulphurpool-dark.css
[227/258] Copying atom-one-dark-reasonable.css
[227/258] Copying atelier-seaside-dark.css
[227/258] Copying atelier-seaside-light.css
[228/258] Copying atelier-plateau-light.css
[228/258] Copying atelier-savanna-light.css
[228/258] Copying atelier-savanna-dark.css
[232/258] Copying atelier-plateau-dark.css
[233/258] Copying atelier-lakeside-light.css
[234/258] Copying atelier-lakeside-dark.css
[235/258] Copying atelier-heath-dark.css
[236/258] Copying atelier-estuary-light.css
[236/258] Copying atelier-forest-dark.css
[238/258] Copying atelier-forest-light.css
[238/258] Copying atelier-dune-dark.css
[241/258] Copying atelier-cave-light.css
[241/258] Copying atelier-estuary-dark.css
[243/258] Copying ashes.css
[243/258] Copying atelier-heath-light.css
[243/258] Copying atelier-cave-dark.css
[243/258] Copying atelier-dune-light.css
[247/258] Copying apprentice.css
[248/258] Copying ascetic.css
[249/258] Copying arta.css
[250/258] Copying arduino-light.css
[250/258] Copying agate.css
[250/258] Copying an-old-hope.css
[253/258] Copying 3024.css
[253/258] Copying 1c-light.css
[254/258] Copying apathy.css
[254/258] Copying androidstudio.css
[257/258] Write swift-version-69A768CDF2A0BEE1.txt
[259/362] Compiling MarkdownEngine LayoutBridge.swift
[260/362] Compiling MarkdownEngine MarkdownHTMLRenderer.swift
[261/362] Compiling MarkdownEngine BlockParser.swift
[262/362] Compiling MarkdownEngine BlockScopedTokenizer.swift
[263/364] Compiling SwiftMath RWLock.swift
[264/364] Compiling SwiftMath resource_bundle_accessor.swift
[265/364] Emitting module SwiftMath
[266/364] Compiling MarkdownEngine MarkdownEditorConfiguration.swift
[267/364] Compiling MarkdownEngine MarkdownEditorTheme.swift
[268/364] Compiling MarkdownEngine PerfTrace.swift
[269/364] Compiling MarkdownEngine StrikethroughExtension.swift
[270/364] Compiling MarkdownEngine MarkdownInputHandler.swift
[271/364] Compiling MarkdownEngine MarkdownListHandler.swift
[272/364] Compiling MarkdownEngine BlockLevelTokenizer.swift
[273/364] Compiling Highlighter Shims.swift
[274/364] Compiling Highlighter LineNumberData.swift
[275/364] Compiling Highlighter Extensions.swift
[276/364] Compiling Highlighter Highlighter.swift
[277/364] Emitting module Highlighter
[278/364] Compiling Highlighter HTMLUtils.swift
[279/364] Compiling Highlighter Theme.swift
[280/364] Compiling Highlighter resource_bundle_accessor.swift
[281/364] Compiling MarkdownEngine HighlightExtension.swift
[282/364] Compiling MarkdownEngine MarkdownExtension.swift
[283/364] Compiling MarkdownEngine DirectiveRegistry.swift
[284/364] Compiling MarkdownEngine DirectiveScanner.swift
[285/364] Compiling MarkdownEngine BuiltinDirectives.swift
[286/364] Compiling MarkdownEngine DirectiveArguments.swift
[287/364] Compiling MarkdownEngine DirectiveCompletionScanner.swift
[288/364] Compiling MarkdownEngine MarkdownDirective.swift
[289/364] Compiling MarkdownEngine ContainerExtension.swift
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/Parser/BlockScopedTokenizer.swift:110:13: warning: variable 'first' was never mutated; consider changing to 'let' constant
108 |             if NSMaxRange(blocks[m].range) >= changeStart { hi = m } else { lo = m + 1 }
109 |         }
110 |         var first = lo
    |             `- warning: variable 'first' was never mutated; consider changing to 'let' constant
111 |         lo = 0; hi = blocks.count - 1
112 |         while lo < hi {                       // last block starting <= changeEndNew
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/Parser/BlockScopedTokenizer.swift:110:13: warning: variable 'first' was never mutated; consider changing to 'let' constant
108 |             if NSMaxRange(blocks[m].range) >= changeStart { hi = m } else { lo = m + 1 }
109 |         }
110 |         var first = lo
    |             `- warning: variable 'first' was never mutated; consider changing to 'let' constant
111 |         lo = 0; hi = blocks.count - 1
112 |         while lo < hi {                       // last block starting <= changeEndNew
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/Parser/BlockScopedTokenizer.swift:110:13: warning: variable 'first' was never mutated; consider changing to 'let' constant
108 |             if NSMaxRange(blocks[m].range) >= changeStart { hi = m } else { lo = m + 1 }
109 |         }
110 |         var first = lo
    |             `- warning: variable 'first' was never mutated; consider changing to 'let' constant
111 |         lo = 0; hi = blocks.count - 1
112 |         while lo < hi {                       // last block starting <= changeEndNew
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/Parser/BlockScopedTokenizer.swift:110:13: warning: variable 'first' was never mutated; consider changing to 'let' constant
108 |             if NSMaxRange(blocks[m].range) >= changeStart { hi = m } else { lo = m + 1 }
109 |         }
110 |         var first = lo
    |             `- warning: variable 'first' was never mutated; consider changing to 'let' constant
111 |         lo = 0; hi = blocks.count - 1
112 |         while lo < hi {                       // last block starting <= changeEndNew
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/Parser/BlockScopedTokenizer.swift:110:13: warning: variable 'first' was never mutated; consider changing to 'let' constant
108 |             if NSMaxRange(blocks[m].range) >= changeStart { hi = m } else { lo = m + 1 }
109 |         }
110 |         var first = lo
    |             `- warning: variable 'first' was never mutated; consider changing to 'let' constant
111 |         lo = 0; hi = blocks.count - 1
112 |         while lo < hi {                       // last block starting <= changeEndNew
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/Parser/BlockScopedTokenizer.swift:110:13: warning: variable 'first' was never mutated; consider changing to 'let' constant
108 |             if NSMaxRange(blocks[m].range) >= changeStart { hi = m } else { lo = m + 1 }
109 |         }
110 |         var first = lo
    |             `- warning: variable 'first' was never mutated; consider changing to 'let' constant
111 |         lo = 0; hi = blocks.count - 1
112 |         while lo < hi {                       // last block starting <= changeEndNew
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/Parser/BlockScopedTokenizer.swift:110:13: warning: variable 'first' was never mutated; consider changing to 'let' constant
108 |             if NSMaxRange(blocks[m].range) >= changeStart { hi = m } else { lo = m + 1 }
109 |         }
110 |         var first = lo
    |             `- warning: variable 'first' was never mutated; consider changing to 'let' constant
111 |         lo = 0; hi = blocks.count - 1
112 |         while lo < hi {                       // last block starting <= changeEndNew
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/Parser/BlockScopedTokenizer.swift:110:13: warning: variable 'first' was never mutated; consider changing to 'let' constant
108 |             if NSMaxRange(blocks[m].range) >= changeStart { hi = m } else { lo = m + 1 }
109 |         }
110 |         var first = lo
    |             `- warning: variable 'first' was never mutated; consider changing to 'let' constant
111 |         lo = 0; hi = blocks.count - 1
112 |         while lo < hi {                       // last block starting <= changeEndNew
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/Parser/BlockScopedTokenizer.swift:110:13: warning: variable 'first' was never mutated; consider changing to 'let' constant
108 |             if NSMaxRange(blocks[m].range) >= changeStart { hi = m } else { lo = m + 1 }
109 |         }
110 |         var first = lo
    |             `- warning: variable 'first' was never mutated; consider changing to 'let' constant
111 |         lo = 0; hi = blocks.count - 1
112 |         while lo < hi {                       // last block starting <= changeEndNew
[299/364] Emitting module MarkdownEngine
[313/372] Compiling MarkdownEngine WideTableOverlay.swift
[314/372] Compiling MarkdownEngine MarkdownEditorServices.swift
[315/372] Compiling MarkdownEngine WikiLinkService.swift
[316/372] Compiling MarkdownEngine HeadingHelpers.swift
[317/372] Compiling MarkdownEngine DocumentParseState.swift
[318/372] Compiling MarkdownEngine InlineASTAdapter.swift
[319/372] Compiling MarkdownEngine InlineParser.swift
[320/372] Compiling MarkdownEngine MarkdownAST.swift
[321/372] Compiling MarkdownEngine MarkdownDetection.swift
[322/372] Compiling MarkdownEngine MarkdownToken.swift
[323/372] Compiling MarkdownEngine MarkdownTokenizer.swift
[324/372] Compiling MarkdownEngine EmbeddedImageCache.swift
[325/372] Compiling MarkdownEngine MarkdownASTStyler+Directives.swift
[326/372] Compiling MarkdownEngine MarkdownASTStyler.swift
[327/372] Compiling MarkdownEngine MarkdownStyler+BulletMarkers.swift
[328/372] Compiling MarkdownEngine MarkdownStyler+Images.swift
[329/372] Compiling MarkdownEngine MarkdownStyler+Latex.swift
[330/372] Compiling MarkdownEngine MarkdownStyler+OrderedMarkers.swift
[331/372] Compiling MarkdownEngine MarkdownStyler+Tables.swift
[332/372] Compiling MarkdownEngine MarkdownStyler+TaskCheckboxes.swift
[333/372] Compiling MarkdownEngine MarkdownStyler.swift
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/ContextMenu.swift:38:64: warning: use '#selector' instead of explicitly constructing a 'Selector'
 36 |         if let fontIndex = menu.items.firstIndex(where: { item in
 37 |             if item.title == "Font" { return true }
 38 |             return item.submenu?.items.contains { $0.action == Selector("orderFrontFontPanel:") } ?? false
    |                                                                `- warning: use '#selector' instead of explicitly constructing a 'Selector'
 39 |         }) {
 40 |             menu.removeItem(at: fontIndex)
[334/372] Compiling MarkdownEngine TextStylingService.swift
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/ContextMenu.swift:38:64: warning: use '#selector' instead of explicitly constructing a 'Selector'
 36 |         if let fontIndex = menu.items.firstIndex(where: { item in
 37 |             if item.title == "Font" { return true }
 38 |             return item.submenu?.items.contains { $0.action == Selector("orderFrontFontPanel:") } ?? false
    |                                                                `- warning: use '#selector' instead of explicitly constructing a 'Selector'
 39 |         }) {
 40 |             menu.removeItem(at: fontIndex)
[335/372] Compiling MarkdownEngine BottomOverscrollPolicy.swift
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/ContextMenu.swift:38:64: warning: use '#selector' instead of explicitly constructing a 'Selector'
 36 |         if let fontIndex = menu.items.firstIndex(where: { item in
 37 |             if item.title == "Font" { return true }
 38 |             return item.submenu?.items.contains { $0.action == Selector("orderFrontFontPanel:") } ?? false
    |                                                                `- warning: use '#selector' instead of explicitly constructing a 'Selector'
 39 |         }) {
 40 |             menu.removeItem(at: fontIndex)
[336/372] Compiling MarkdownEngine ClampedScrollView.swift
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/ContextMenu.swift:38:64: warning: use '#selector' instead of explicitly constructing a 'Selector'
 36 |         if let fontIndex = menu.items.firstIndex(where: { item in
 37 |             if item.title == "Font" { return true }
 38 |             return item.submenu?.items.contains { $0.action == Selector("orderFrontFontPanel:") } ?? false
    |                                                                `- warning: use '#selector' instead of explicitly constructing a 'Selector'
 39 |         }) {
 40 |             menu.removeItem(at: fontIndex)
[337/372] Compiling MarkdownEngine CodeBlockButton.swift
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/ContextMenu.swift:38:64: warning: use '#selector' instead of explicitly constructing a 'Selector'
 36 |         if let fontIndex = menu.items.firstIndex(where: { item in
 37 |             if item.title == "Font" { return true }
 38 |             return item.submenu?.items.contains { $0.action == Selector("orderFrontFontPanel:") } ?? false
    |                                                                `- warning: use '#selector' instead of explicitly constructing a 'Selector'
 39 |         }) {
 40 |             menu.removeItem(at: fontIndex)
[338/372] Compiling MarkdownEngine ContextMenu.swift
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/ContextMenu.swift:38:64: warning: use '#selector' instead of explicitly constructing a 'Selector'
 36 |         if let fontIndex = menu.items.firstIndex(where: { item in
 37 |             if item.title == "Font" { return true }
 38 |             return item.submenu?.items.contains { $0.action == Selector("orderFrontFontPanel:") } ?? false
    |                                                                `- warning: use '#selector' instead of explicitly constructing a 'Selector'
 39 |         }) {
 40 |             menu.removeItem(at: fontIndex)
[339/372] Compiling MarkdownEngine NativeTextViewCoordinator+Autocorrect.swift
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/ContextMenu.swift:38:64: warning: use '#selector' instead of explicitly constructing a 'Selector'
 36 |         if let fontIndex = menu.items.firstIndex(where: { item in
 37 |             if item.title == "Font" { return true }
 38 |             return item.submenu?.items.contains { $0.action == Selector("orderFrontFontPanel:") } ?? false
    |                                                                `- warning: use '#selector' instead of explicitly constructing a 'Selector'
 39 |         }) {
 40 |             menu.removeItem(at: fontIndex)
[340/372] Compiling MarkdownEngine NativeTextViewCoordinator+CaretColor.swift
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/ContextMenu.swift:38:64: warning: use '#selector' instead of explicitly constructing a 'Selector'
 36 |         if let fontIndex = menu.items.firstIndex(where: { item in
 37 |             if item.title == "Font" { return true }
 38 |             return item.submenu?.items.contains { $0.action == Selector("orderFrontFontPanel:") } ?? false
    |                                                                `- warning: use '#selector' instead of explicitly constructing a 'Selector'
 39 |         }) {
 40 |             menu.removeItem(at: fontIndex)
[341/372] Compiling MarkdownEngine NativeTextViewCoordinator+WritingTools.swift
[342/372] Compiling MarkdownEngine NativeTextViewCoordinator.swift
[343/372] Compiling MarkdownEngine HTMLToMarkdownConverter.swift
[344/372] Compiling MarkdownEngine MarkdownPasteboardWriter.swift
[345/372] Compiling MarkdownEngine MarkdownTextMutation.swift
[346/372] Compiling MarkdownEngine InvertedIBeamCursor.swift
[347/372] Compiling MarkdownEngine NativeTextView+CaretWorkarounds.swift
[348/372] Compiling MarkdownEngine NativeTextView+ClickRemap.swift
[349/372] Compiling MarkdownEngine NativeTextViewCoordinator+CodeBlocks.swift
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/Coordinator/NativeTextViewCoordinator+TextDelegate.swift:248:13: warning: initialization of immutable value 'blockLatexTokens' was never used; consider replacing with assignment to '_' or removing it [#no-usage]
 246 |         let codeTokens = parsed.codeTokens
 247 |         let latexTokens = parsed.latexTokens
 248 |         let blockLatexTokens = parsed.blockLatexTokens
     |             `- warning: initialization of immutable value 'blockLatexTokens' was never used; consider replacing with assignment to '_' or removing it [#no-usage]
 249 |         let preEditActiveTokenIndices = pendingPreEditActiveTokenIndices ?? previousActiveTokenIndices
 250 |         pendingPreEditActiveTokenIndices = nil
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/Coordinator/NativeTextViewCoordinator+TextDelegate.swift:434:13: warning: initialization of immutable value 'blockLatexTokens' was never used; consider replacing with assignment to '_' or removing it [#no-usage]
 432 |         let codeTokens = parsed.codeTokens
 433 |         let latexTokens = parsed.latexTokens
 434 |         let blockLatexTokens = parsed.blockLatexTokens
     |             `- warning: initialization of immutable value 'blockLatexTokens' was never used; consider replacing with assignment to '_' or removing it [#no-usage]
 435 |
 436 |         let prevActive = activeTokenIndices
[350/372] Compiling MarkdownEngine NativeTextViewCoordinator+Directives.swift
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/Coordinator/NativeTextViewCoordinator+TextDelegate.swift:248:13: warning: initialization of immutable value 'blockLatexTokens' was never used; consider replacing with assignment to '_' or removing it [#no-usage]
 246 |         let codeTokens = parsed.codeTokens
 247 |         let latexTokens = parsed.latexTokens
 248 |         let blockLatexTokens = parsed.blockLatexTokens
     |             `- warning: initialization of immutable value 'blockLatexTokens' was never used; consider replacing with assignment to '_' or removing it [#no-usage]
 249 |         let preEditActiveTokenIndices = pendingPreEditActiveTokenIndices ?? previousActiveTokenIndices
 250 |         pendingPreEditActiveTokenIndices = nil
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/Coordinator/NativeTextViewCoordinator+TextDelegate.swift:434:13: warning: initialization of immutable value 'blockLatexTokens' was never used; consider replacing with assignment to '_' or removing it [#no-usage]
 432 |         let codeTokens = parsed.codeTokens
 433 |         let latexTokens = parsed.latexTokens
 434 |         let blockLatexTokens = parsed.blockLatexTokens
     |             `- warning: initialization of immutable value 'blockLatexTokens' was never used; consider replacing with assignment to '_' or removing it [#no-usage]
 435 |
 436 |         let prevActive = activeTokenIndices
[351/372] Compiling MarkdownEngine NativeTextViewCoordinator+Find.swift
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/Coordinator/NativeTextViewCoordinator+TextDelegate.swift:248:13: warning: initialization of immutable value 'blockLatexTokens' was never used; consider replacing with assignment to '_' or removing it [#no-usage]
 246 |         let codeTokens = parsed.codeTokens
 247 |         let latexTokens = parsed.latexTokens
 248 |         let blockLatexTokens = parsed.blockLatexTokens
     |             `- warning: initialization of immutable value 'blockLatexTokens' was never used; consider replacing with assignment to '_' or removing it [#no-usage]
 249 |         let preEditActiveTokenIndices = pendingPreEditActiveTokenIndices ?? previousActiveTokenIndices
 250 |         pendingPreEditActiveTokenIndices = nil
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/Coordinator/NativeTextViewCoordinator+TextDelegate.swift:434:13: warning: initialization of immutable value 'blockLatexTokens' was never used; consider replacing with assignment to '_' or removing it [#no-usage]
 432 |         let codeTokens = parsed.codeTokens
 433 |         let latexTokens = parsed.latexTokens
 434 |         let blockLatexTokens = parsed.blockLatexTokens
     |             `- warning: initialization of immutable value 'blockLatexTokens' was never used; consider replacing with assignment to '_' or removing it [#no-usage]
 435 |
 436 |         let prevActive = activeTokenIndices
[352/372] Compiling MarkdownEngine NativeTextViewCoordinator+InlineSelection.swift
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/Coordinator/NativeTextViewCoordinator+TextDelegate.swift:248:13: warning: initialization of immutable value 'blockLatexTokens' was never used; consider replacing with assignment to '_' or removing it [#no-usage]
 246 |         let codeTokens = parsed.codeTokens
 247 |         let latexTokens = parsed.latexTokens
 248 |         let blockLatexTokens = parsed.blockLatexTokens
     |             `- warning: initialization of immutable value 'blockLatexTokens' was never used; consider replacing with assignment to '_' or removing it [#no-usage]
 249 |         let preEditActiveTokenIndices = pendingPreEditActiveTokenIndices ?? previousActiveTokenIndices
 250 |         pendingPreEditActiveTokenIndices = nil
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/Coordinator/NativeTextViewCoordinator+TextDelegate.swift:434:13: warning: initialization of immutable value 'blockLatexTokens' was never used; consider replacing with assignment to '_' or removing it [#no-usage]
 432 |         let codeTokens = parsed.codeTokens
 433 |         let latexTokens = parsed.latexTokens
 434 |         let blockLatexTokens = parsed.blockLatexTokens
     |             `- warning: initialization of immutable value 'blockLatexTokens' was never used; consider replacing with assignment to '_' or removing it [#no-usage]
 435 |
 436 |         let prevActive = activeTokenIndices
[353/372] Compiling MarkdownEngine NativeTextViewCoordinator+Notifications.swift
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/Coordinator/NativeTextViewCoordinator+TextDelegate.swift:248:13: warning: initialization of immutable value 'blockLatexTokens' was never used; consider replacing with assignment to '_' or removing it [#no-usage]
 246 |         let codeTokens = parsed.codeTokens
 247 |         let latexTokens = parsed.latexTokens
 248 |         let blockLatexTokens = parsed.blockLatexTokens
     |             `- warning: initialization of immutable value 'blockLatexTokens' was never used; consider replacing with assignment to '_' or removing it [#no-usage]
 249 |         let preEditActiveTokenIndices = pendingPreEditActiveTokenIndices ?? previousActiveTokenIndices
 250 |         pendingPreEditActiveTokenIndices = nil
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/Coordinator/NativeTextViewCoordinator+TextDelegate.swift:434:13: warning: initialization of immutable value 'blockLatexTokens' was never used; consider replacing with assignment to '_' or removing it [#no-usage]
 432 |         let codeTokens = parsed.codeTokens
 433 |         let latexTokens = parsed.latexTokens
 434 |         let blockLatexTokens = parsed.blockLatexTokens
     |             `- warning: initialization of immutable value 'blockLatexTokens' was never used; consider replacing with assignment to '_' or removing it [#no-usage]
 435 |
 436 |         let prevActive = activeTokenIndices
[354/372] Compiling MarkdownEngine NativeTextViewCoordinator+Restyling.swift
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/Coordinator/NativeTextViewCoordinator+TextDelegate.swift:248:13: warning: initialization of immutable value 'blockLatexTokens' was never used; consider replacing with assignment to '_' or removing it [#no-usage]
 246 |         let codeTokens = parsed.codeTokens
 247 |         let latexTokens = parsed.latexTokens
 248 |         let blockLatexTokens = parsed.blockLatexTokens
     |             `- warning: initialization of immutable value 'blockLatexTokens' was never used; consider replacing with assignment to '_' or removing it [#no-usage]
 249 |         let preEditActiveTokenIndices = pendingPreEditActiveTokenIndices ?? previousActiveTokenIndices
 250 |         pendingPreEditActiveTokenIndices = nil
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/Coordinator/NativeTextViewCoordinator+TextDelegate.swift:434:13: warning: initialization of immutable value 'blockLatexTokens' was never used; consider replacing with assignment to '_' or removing it [#no-usage]
 432 |         let codeTokens = parsed.codeTokens
 433 |         let latexTokens = parsed.latexTokens
 434 |         let blockLatexTokens = parsed.blockLatexTokens
     |             `- warning: initialization of immutable value 'blockLatexTokens' was never used; consider replacing with assignment to '_' or removing it [#no-usage]
 435 |
 436 |         let prevActive = activeTokenIndices
[355/372] Compiling MarkdownEngine NativeTextViewCoordinator+TextDelegate.swift
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/Coordinator/NativeTextViewCoordinator+TextDelegate.swift:248:13: warning: initialization of immutable value 'blockLatexTokens' was never used; consider replacing with assignment to '_' or removing it [#no-usage]
 246 |         let codeTokens = parsed.codeTokens
 247 |         let latexTokens = parsed.latexTokens
 248 |         let blockLatexTokens = parsed.blockLatexTokens
     |             `- warning: initialization of immutable value 'blockLatexTokens' was never used; consider replacing with assignment to '_' or removing it [#no-usage]
 249 |         let preEditActiveTokenIndices = pendingPreEditActiveTokenIndices ?? previousActiveTokenIndices
 250 |         pendingPreEditActiveTokenIndices = nil
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/Coordinator/NativeTextViewCoordinator+TextDelegate.swift:434:13: warning: initialization of immutable value 'blockLatexTokens' was never used; consider replacing with assignment to '_' or removing it [#no-usage]
 432 |         let codeTokens = parsed.codeTokens
 433 |         let latexTokens = parsed.latexTokens
 434 |         let blockLatexTokens = parsed.blockLatexTokens
     |             `- warning: initialization of immutable value 'blockLatexTokens' was never used; consider replacing with assignment to '_' or removing it [#no-usage]
 435 |
 436 |         let prevActive = activeTokenIndices
[356/372] Compiling MarkdownEngine NativeTextViewCoordinator+WikiLinkSnapback.swift
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/Coordinator/NativeTextViewCoordinator+TextDelegate.swift:248:13: warning: initialization of immutable value 'blockLatexTokens' was never used; consider replacing with assignment to '_' or removing it [#no-usage]
 246 |         let codeTokens = parsed.codeTokens
 247 |         let latexTokens = parsed.latexTokens
 248 |         let blockLatexTokens = parsed.blockLatexTokens
     |             `- warning: initialization of immutable value 'blockLatexTokens' was never used; consider replacing with assignment to '_' or removing it [#no-usage]
 249 |         let preEditActiveTokenIndices = pendingPreEditActiveTokenIndices ?? previousActiveTokenIndices
 250 |         pendingPreEditActiveTokenIndices = nil
/Users/admin/builder/spi-builder-workspace/Sources/MarkdownEngine/TextView/Coordinator/NativeTextViewCoordinator+TextDelegate.swift:434:13: warning: initialization of immutable value 'blockLatexTokens' was never used; consider replacing with assignment to '_' or removing it [#no-usage]
 432 |         let codeTokens = parsed.codeTokens
 433 |         let latexTokens = parsed.latexTokens
 434 |         let blockLatexTokens = parsed.blockLatexTokens
     |             `- warning: initialization of immutable value 'blockLatexTokens' was never used; consider replacing with assignment to '_' or removing it [#no-usage]
 435 |
 436 |         let prevActive = activeTokenIndices
[357/372] Compiling MarkdownEngine NativeTextView+CmdReturn.swift
[358/372] Compiling MarkdownEngine NativeTextView+Copy.swift
[359/372] Compiling MarkdownEngine NativeTextView+CursorRects.swift
[360/372] Compiling MarkdownEngine NativeTextView+DragSelectBoost.swift
[361/372] Compiling MarkdownEngine NativeTextView+FrameAndOverscroll.swift
[362/372] Compiling MarkdownEngine NativeTextView+PasteHandling.swift
[363/372] Compiling MarkdownEngine NativeTextView+Placeholder.swift
[364/372] Compiling MarkdownEngine NativeTextView+SpellingPolicy.swift
[365/372] Compiling MarkdownEngine NativeTextView+SpellingToggles.swift
[366/372] Compiling MarkdownEngine NativeTextView+TaskCheckbox.swift
[367/372] Compiling MarkdownEngine NativeTextView.swift
[368/372] Compiling MarkdownEngine NativeTextViewContainer.swift
[369/372] Compiling MarkdownEngine NativeTextViewSelectionTypes.swift
[370/372] Compiling MarkdownEngine NativeTextViewWrapper.swift
[371/372] Compiling MarkdownEngine PasteboardImageReader.swift
[372/372] Compiling MarkdownEngine ScrollingHeaderController.swift
[373/376] Emitting module MarkdownEngineCodeBlocks
[374/376] Compiling MarkdownEngineCodeBlocks HighlighterSwiftBridge.swift
[375/376] Emitting module MarkdownEngineLatex
[376/376] Compiling MarkdownEngineLatex SwiftMathBridge.swift
Build complete! (14.35s)
Build complete.
{
  "dependencies" : [
    {
      "identity" : "highlighterswift",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "3.0.0",
            "upper_bound" : "4.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/smittytone/HighlighterSwift"
    },
    {
      "identity" : "swiftmath",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.7.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/mgriebling/SwiftMath"
    }
  ],
  "manifest_display_name" : "MarkdownEngine",
  "name" : "MarkdownEngine",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "14.0"
    }
  ],
  "products" : [
    {
      "name" : "MarkdownEngine",
      "targets" : [
        "MarkdownEngine"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "MarkdownEngineCodeBlocks",
      "targets" : [
        "MarkdownEngineCodeBlocks"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "MarkdownEngineLatex",
      "targets" : [
        "MarkdownEngineLatex"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "MarkdownEngineTests",
      "module_type" : "SwiftTarget",
      "name" : "MarkdownEngineTests",
      "path" : "Tests/MarkdownEngineTests",
      "sources" : [
        "ASTPipelineTests.swift",
        "BacktickCensusTests.swift",
        "BlockBackgroundFillTests.swift",
        "BlockExtensionTests.swift",
        "BlockParserTests.swift",
        "BlockquotePasteTests.swift",
        "BottomOverscrollPolicyTests.swift",
        "CaretColorTests.swift",
        "ClampedScrollViewElasticityTests.swift",
        "CodeBlockSelectionStaleCacheTests.swift",
        "ContextMenuBindingTests.swift",
        "DirectiveArgumentTests.swift",
        "DirectiveCompletionCoordinatorTests.swift",
        "DirectiveCompletionTests.swift",
        "DirectiveCompositionTests.swift",
        "DirectiveGlyphTests.swift",
        "DirectiveHTMLTests.swift",
        "DirectiveParserTests.swift",
        "DirectivePerformanceTests.swift",
        "DirectiveStylingTests.swift",
        "DirectiveTestFixtures.swift",
        "FenceInteriorIncrementalTests.swift",
        "FindHighlightRestoreTests.swift",
        "FlattenedRunsTests.swift",
        "FormattingActionTests.swift",
        "GoldenCorpusTests.swift",
        "HTMLToMarkdownConverterTests.swift",
        "HeightBehaviorTests.swift",
        "InlineParserTests.swift",
        "InlineSpanDensityTests.swift",
        "InterceptorStorageSyncTests.swift",
        "InterceptorTrustTests.swift",
        "InvertedIBeamCursorTests.swift",
        "LatexRenderModeTests.swift",
        "ListHandlerCodeContextTests.swift",
        "ListParsingTests.swift",
        "MarkdownASTStylerTests.swift",
        "MarkdownHTMLRendererTests.swift",
        "MarkdownPasteboardWriterTests.swift",
        "MarkdownTextMutationTests.swift",
        "NativeTextViewContainerTests.swift",
        "OrderedListDisplayNumberingTests.swift",
        "ParseIncrementalEquivalenceTests.swift",
        "PasteStructureGuardTests.swift",
        "PerDocumentUndoTests.swift",
        "PrecomputedBlocksTests.swift",
        "QuoteSubstitutionPolicyTests.swift",
        "RawSourceModeTests.swift",
        "RebuildSelectionReplayTests.swift",
        "RestyleApplyEquivalenceTests.swift",
        "ScopedListRestyleEquivalenceTests.swift",
        "ScrollMemoryTests.swift",
        "ScrollingHeaderControllerTests.swift",
        "TableCellSourceTests.swift",
        "TableCellTests.swift",
        "TableHiddenSourceGeometryTests.swift",
        "TableImageCacheTests.swift",
        "TableScopeSkipTests.swift",
        "TableWidthChangeRestyleTests.swift",
        "TableWrappingTests.swift",
        "ThematicBreakMarkTests.swift",
        "WikiLinkIncrementalTests.swift"
      ],
      "target_dependencies" : [
        "MarkdownEngine"
      ],
      "type" : "test"
    },
    {
      "c99name" : "MarkdownEngineLatexTests",
      "module_type" : "SwiftTarget",
      "name" : "MarkdownEngineLatexTests",
      "path" : "Tests/MarkdownEngineLatexTests",
      "sources" : [
        "SwiftMathBridgeModeTests.swift"
      ],
      "target_dependencies" : [
        "MarkdownEngine",
        "MarkdownEngineLatex"
      ],
      "type" : "test"
    },
    {
      "c99name" : "MarkdownEngineLatex",
      "module_type" : "SwiftTarget",
      "name" : "MarkdownEngineLatex",
      "path" : "Sources/MarkdownEngineLatex",
      "product_dependencies" : [
        "SwiftMath"
      ],
      "product_memberships" : [
        "MarkdownEngineLatex"
      ],
      "sources" : [
        "SwiftMathBridge.swift"
      ],
      "target_dependencies" : [
        "MarkdownEngine"
      ],
      "type" : "library"
    },
    {
      "c99name" : "MarkdownEngineCodeBlocks",
      "module_type" : "SwiftTarget",
      "name" : "MarkdownEngineCodeBlocks",
      "path" : "Sources/MarkdownEngineCodeBlocks",
      "product_dependencies" : [
        "Highlighter"
      ],
      "product_memberships" : [
        "MarkdownEngineCodeBlocks"
      ],
      "sources" : [
        "HighlighterSwiftBridge.swift"
      ],
      "target_dependencies" : [
        "MarkdownEngine"
      ],
      "type" : "library"
    },
    {
      "c99name" : "MarkdownEngine",
      "module_type" : "SwiftTarget",
      "name" : "MarkdownEngine",
      "path" : "Sources/MarkdownEngine",
      "product_memberships" : [
        "MarkdownEngine",
        "MarkdownEngineCodeBlocks",
        "MarkdownEngineLatex"
      ],
      "sources" : [
        "Configuration/MarkdownEditorConfiguration.swift",
        "Configuration/MarkdownEditorTheme.swift",
        "Diagnostics/PerfTrace.swift",
        "Directives/BuiltinDirectives.swift",
        "Directives/DirectiveArguments.swift",
        "Directives/DirectiveCompletionScanner.swift",
        "Directives/DirectiveRegistry.swift",
        "Directives/DirectiveScanner.swift",
        "Directives/MarkdownDirective.swift",
        "Extensions/ContainerExtension.swift",
        "Extensions/HighlightExtension.swift",
        "Extensions/MarkdownExtension.swift",
        "Extensions/StrikethroughExtension.swift",
        "Input/MarkdownInputHandler.swift",
        "Input/MarkdownListHandler.swift",
        "Parser/BlockLevelTokenizer.swift",
        "Parser/BlockParser.swift",
        "Parser/BlockScopedTokenizer.swift",
        "Parser/DocumentParseState.swift",
        "Parser/InlineASTAdapter.swift",
        "Parser/InlineParser.swift",
        "Parser/MarkdownAST.swift",
        "Parser/MarkdownDetection.swift",
        "Parser/MarkdownToken.swift",
        "Parser/MarkdownTokenizer.swift",
        "Renderer/EmbeddedImageCache.swift",
        "Renderer/LayoutBridge.swift",
        "Renderer/MarkdownHTMLRenderer.swift",
        "Renderer/MarkdownTextLayoutFragment.swift",
        "Renderer/TaskCheckboxGeometry.swift",
        "Renderer/WideTableOverlay.swift",
        "Services/MarkdownEditorServices.swift",
        "Services/WikiLinkService.swift",
        "Styling/HeadingHelpers.swift",
        "Styling/MarkdownASTStyler+Directives.swift",
        "Styling/MarkdownASTStyler.swift",
        "Styling/MarkdownStyler+BulletMarkers.swift",
        "Styling/MarkdownStyler+Images.swift",
        "Styling/MarkdownStyler+Latex.swift",
        "Styling/MarkdownStyler+OrderedMarkers.swift",
        "Styling/MarkdownStyler+Tables.swift",
        "Styling/MarkdownStyler+TaskCheckboxes.swift",
        "Styling/MarkdownStyler.swift",
        "Styling/TextStylingService.swift",
        "TextView/BottomOverscrollPolicy.swift",
        "TextView/ClampedScrollView.swift",
        "TextView/CodeBlockButton.swift",
        "TextView/ContextMenu.swift",
        "TextView/Coordinator/NativeTextViewCoordinator+Autocorrect.swift",
        "TextView/Coordinator/NativeTextViewCoordinator+CaretColor.swift",
        "TextView/Coordinator/NativeTextViewCoordinator+CodeBlocks.swift",
        "TextView/Coordinator/NativeTextViewCoordinator+Directives.swift",
        "TextView/Coordinator/NativeTextViewCoordinator+Find.swift",
        "TextView/Coordinator/NativeTextViewCoordinator+InlineSelection.swift",
        "TextView/Coordinator/NativeTextViewCoordinator+Notifications.swift",
        "TextView/Coordinator/NativeTextViewCoordinator+Restyling.swift",
        "TextView/Coordinator/NativeTextViewCoordinator+TextDelegate.swift",
        "TextView/Coordinator/NativeTextViewCoordinator+WikiLinkSnapback.swift",
        "TextView/Coordinator/NativeTextViewCoordinator+WritingTools.swift",
        "TextView/Coordinator/NativeTextViewCoordinator.swift",
        "TextView/HTMLToMarkdownConverter.swift",
        "TextView/MarkdownPasteboardWriter.swift",
        "TextView/MarkdownTextMutation.swift",
        "TextView/NativeTextView/InvertedIBeamCursor.swift",
        "TextView/NativeTextView/NativeTextView+CaretWorkarounds.swift",
        "TextView/NativeTextView/NativeTextView+ClickRemap.swift",
        "TextView/NativeTextView/NativeTextView+CmdReturn.swift",
        "TextView/NativeTextView/NativeTextView+Copy.swift",
        "TextView/NativeTextView/NativeTextView+CursorRects.swift",
        "TextView/NativeTextView/NativeTextView+DragSelectBoost.swift",
        "TextView/NativeTextView/NativeTextView+FrameAndOverscroll.swift",
        "TextView/NativeTextView/NativeTextView+PasteHandling.swift",
        "TextView/NativeTextView/NativeTextView+Placeholder.swift",
        "TextView/NativeTextView/NativeTextView+SpellingPolicy.swift",
        "TextView/NativeTextView/NativeTextView+SpellingToggles.swift",
        "TextView/NativeTextView/NativeTextView+TaskCheckbox.swift",
        "TextView/NativeTextView/NativeTextView.swift",
        "TextView/NativeTextViewContainer.swift",
        "TextView/NativeTextViewSelectionTypes.swift",
        "TextView/NativeTextViewWrapper.swift",
        "TextView/PasteboardImageReader.swift",
        "TextView/ScrollingHeaderController.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.9"
}
✅  Doc result (pending) reported
========================================
GenerateDocs
========================================
Generating docs at path:  $PWD/.docs/nodes-app/swift-markdown-engine/0.14.0
Repository:               nodes-app/swift-markdown-engine
Swift version used:       6.3
Target:                   MarkdownEngine
Extracting symbol information for 'MarkdownEngine'...
Finished extracting symbol information for 'MarkdownEngine'. (44.80s)
Building documentation for 'MarkdownEngine'...
warning: 'language ... ' doesn't exist at '/MarkdownEngine/CodeBlockStyle'
   --> ../Configuration/MarkdownEditorConfiguration.swift:275:39-275:52
273 | // MARK: - Code blocks
274 |
275 + /// Styling for fenced code blocks (```language ... ```).
276 | public struct CodeBlockStyle: Sendable {
277 |     /// Code-block font size as a fraction of the document base font size.
warning: '`code`' doesn't exist at '/MarkdownEngine/InlineCodeStyle'
   --> ../Configuration/MarkdownEditorConfiguration.swift:299:26-299:32
297 | // MARK: - Inline code
298 |
299 + /// Styling for inline `` `code` `` spans.
300 | public struct InlineCodeStyle: Sendable {
301 |     /// Inline-code reuses the code block font size scale by default.
warning: '[[Name]]' doesn't exist at '/MarkdownEngine'
  --> MarkdownEngine.md:8:14-8:22
6  |
7  | MarkdownEngine provides a native AppKit Markdown editor with live styling,
8  + wiki-style ``[[Name]]`` linking, fenced code blocks with syntax highlighting,
9  | LaTeX rendering, embedded images, and GitHub-style task checkboxes.
10 |
warning: '```swift' doesn't exist at '/MarkdownEngine/CodeBlockSelection/language'
  --> ../TextView/CodeBlockButton.swift:22:58-22:66
20 |     /// Frame of the rendered code block in the text view's coordinate space.
21 |     public let rect: CGRect
22 +     /// Language tag declared after the opening fence (`` ```swift ``).
23 |     public let language: String?
24 |     /// Plain text content of the block, suitable for putting on the
Finished building documentation for 'MarkdownEngine' (2.00s)
Generated documentation archive at:
  /Users/admin/builder/spi-builder-workspace/.docs/nodes-app/swift-markdown-engine/0.14.0
Fetching https://github.com/swiftlang/swift-docc-plugin
Updating https://github.com/mgriebling/SwiftMath
Updated https://github.com/mgriebling/SwiftMath (0.49s)
[1/2345] Fetching swift-docc-plugin
Updating https://github.com/smittytone/HighlighterSwift
Fetched https://github.com/swiftlang/swift-docc-plugin from cache (1.30s)
Updated https://github.com/smittytone/HighlighterSwift (0.47s)
Computing version for https://github.com/mgriebling/SwiftMath
Computed https://github.com/mgriebling/SwiftMath at 1.7.3 (2.41s)
Computing version for https://github.com/smittytone/HighlighterSwift
Computed https://github.com/smittytone/HighlighterSwift at 3.1.0 (0.59s)
Computing version for https://github.com/swiftlang/swift-docc-plugin
Computed https://github.com/swiftlang/swift-docc-plugin at 1.5.0 (0.69s)
Fetching https://github.com/swiftlang/swift-docc-symbolkit
[1/3834] Fetching swift-docc-symbolkit
Fetched https://github.com/swiftlang/swift-docc-symbolkit from cache (1.31s)
Computing version for https://github.com/swiftlang/swift-docc-symbolkit
Computed https://github.com/swiftlang/swift-docc-symbolkit at 1.0.0 (2.03s)
Creating working copy for https://github.com/swiftlang/swift-docc-symbolkit
Working copy of https://github.com/swiftlang/swift-docc-symbolkit resolved at 1.0.0
Creating working copy for https://github.com/swiftlang/swift-docc-plugin
Working copy of https://github.com/swiftlang/swift-docc-plugin resolved at 1.5.0
Building for debugging...
[0/8] Write sources
[1/8] Write snippet-extract-tool-entitlement.plist
[2/8] Write sources
[4/8] Write swift-version-69A768CDF2A0BEE1.txt
[6/54] Compiling SymbolKit DeclarationFragments.swift
[7/54] Compiling SymbolKit Fragment.swift
[8/54] Compiling SymbolKit FragmentKind.swift
[9/54] Compiling SymbolKit FunctionParameter.swift
[10/54] Compiling SymbolKit FunctionSignature.swift
[11/58] Compiling SymbolKit Mixin+Equals.swift
[12/58] Compiling SymbolKit Mixin+Hash.swift
[13/58] Compiling SymbolKit Mixin.swift
[14/58] Compiling SymbolKit LineList.swift
[15/58] Compiling SymbolKit Position.swift
[16/58] Emitting module SymbolKit
[17/58] Compiling SymbolKit SourceRange.swift
[18/58] Compiling SymbolKit Metadata.swift
[19/58] Compiling SymbolKit Module.swift
[20/58] Compiling SymbolKit OperatingSystem.swift
[21/58] Compiling SymbolKit Platform.swift
[22/58] Compiling SymbolKit SemanticVersion.swift
[23/58] Compiling SymbolKit AccessControl.swift
[24/58] Compiling SymbolKit Availability.swift
[25/58] Compiling SymbolKit AvailabilityItem.swift
[26/58] Compiling SymbolKit Domain.swift
[27/58] Compiling Snippets SnippetParser.swift
[28/58] Compiling Snippets SnippetLanguage.swift
[29/58] Compiling Snippets Snippet.swift
[30/58] Emitting module Snippets
[31/58] Compiling SymbolKit Names.swift
[32/58] Compiling SymbolKit SPI.swift
[33/58] Compiling SymbolKit Snippet.swift
[34/58] Compiling SymbolKit Extension.swift
[35/58] Compiling SymbolKit Identifier.swift
[36/58] Compiling SymbolKit KindIdentifier.swift
[37/58] Compiling SymbolKit Location.swift
[38/58] Compiling SymbolKit Mutability.swift
[39/58] Compiling SymbolKit GenericConstraint.swift
[40/58] Compiling SymbolKit GenericParameter.swift
[41/58] Compiling SymbolKit Generics.swift
[42/58] Compiling SymbolKit Namespace.swift
[43/58] Compiling SymbolKit Symbol.swift
[44/58] Compiling SymbolKit SymbolKind.swift
[45/58] Compiling SymbolKit SymbolGraph.swift
[46/58] Compiling SymbolKit GraphCollector.swift
[47/58] Compiling SymbolKit Relationship.swift
[48/58] Compiling SymbolKit RelationshipKind.swift
[49/58] Compiling SymbolKit SourceOrigin.swift
[50/58] Compiling SymbolKit GenericConstraints.swift
[51/58] Compiling SymbolKit Swift.swift
[52/58] Compiling SymbolKit UnifiedSymbol+Encodable.swift
[53/58] Compiling SymbolKit UnifiedSymbol.swift
[54/58] Compiling SymbolKit UnifiedSymbolGraph+Encodable.swift
[55/58] Compiling SymbolKit UnifiedSymbolGraph.swift
[56/62] Compiling snippet_extract URL+Status.swift
[57/62] Compiling snippet_extract SymbolGraph+Snippet.swift
[58/62] Compiling snippet_extract SnippetBuildCommand.swift
[59/62] Emitting module snippet_extract
[59/62] Write Objects.LinkFileList
[60/62] Linking snippet-extract-tool
[61/62] Applying snippet-extract-tool
Build of product 'snippet-extract' complete! (4.60s)
Building for debugging...
[0/1] Write swift-version-69A768CDF2A0BEE1.txt
Build of target: 'MarkdownEngine' complete! (0.82s)
    4668
32	/Users/admin/builder/spi-builder-workspace/.docs/nodes-app/swift-markdown-engine/0.14.0
✅  Doc result (uploading) reported
========================================
SyncDocs
========================================
Doc archive source directory: $PWD/.docs/nodes-app/swift-markdown-engine/0.14.0
File count: 4668
Doc size:   32.0MB
Preparing doc bundle ...
Using presigned URL upload - AWS credentials not required
Uploading -nodes-app-swift-markdown-engine-0.14.0-2ae33437.zip to presigned URL
Starting upload of 6499200 bytes...
Upload completed successfully
Done.