The Swift Package Index logo.Swift Package Index

Build Information

Successful build of Assay, reference v1.0.0 (3e3ff1), with Swift 6.4 for Wasm on 21 Oct 2026 06:30:29 UTC.

Swift 6 data race errors: 0

Build Command

bash -c docker run --pull=always --rm -v "checkouts-53886770-1":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/saguaro1/spi-images:wasm-6.4-latest swift build --swift-sdk swift-6.4.0-RELEASE_wasm 2>&1

Build Log

========================================
RunAll
========================================
Builder version: 5.1.3
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/nerdmenot-swift/assay.git
Reference: v1.0.0
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/nerdmenot-swift/assay
 * tag               v1.0.0     -> FETCH_HEAD
HEAD is now at 3e3ff15 1.0.0
Cloned https://github.com/nerdmenot-swift/assay.git
Revision (git rev-parse @):
3e3ff15578b9b781692f25fb98536809bc404c75
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/nerdmenot-swift/assay.git at v1.0.0
========================================
Build
========================================
Selected platform:         wasm
Swift version:             6.4
Building package at path:  $PWD
https://github.com/nerdmenot-swift/assay.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-53886770-1":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/saguaro1/spi-images:wasm-6.4-latest swift build --swift-sdk swift-6.4.0-RELEASE_wasm 2>&1
wasm-6.4-latest: Pulling from saguaro1/spi-images
Digest: sha256:7a2e5502d3bb6640f9b2bbb1dadf9967024364ce9ed0ed0bd80cf1b699d193fd
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:wasm-6.4-latest
Fetching https://github.com/swiftlang/swift-syntax.git
[1/80981] Fetching swift-syntax
Fetched https://github.com/swiftlang/swift-syntax.git (3.54s)
Computing version for https://github.com/swiftlang/swift-syntax.git
Computed https://github.com/swiftlang/swift-syntax.git at 603.0.2 (4.54s)
Creating working copy for https://github.com/swiftlang/swift-syntax.git
Working copy of https://github.com/swiftlang/swift-syntax.git resolved at 603.0.2
Downloading package prebuilt https://download.swift.org/prebuilts/swift-syntax/603.0.2/swift-6.4.0-RELEASE-ubuntu_noble_x86_64-MacroSupport.tar.gz
Downloaded https://download.swift.org/prebuilts/swift-syntax/603.0.2/swift-6.4.0-RELEASE-ubuntu_noble_x86_64-MacroSupport.tar.gz (0.27s)
Building for debugging...
[Computing dependencies]
[Provisioning 23 / 37]
[Pre-planning 1 / 997]
[Planning deferred tasks]
[182 / 377] _SwiftSyntaxCShims
/host/spi-builder-workspace/Sources/AssayCore/AssayReader.swift:639:16: warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
637 |         guard n > 0 else { return "" }
638 |         let src = unsafe base + lo
639 |         return unsafe String(unsafeUninitializedCapacity: n) { buffer in
    |                `- warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
640 |             unsafe buffer.baseAddress!.update(from: src, count: n)
641 |             return n
/host/spi-builder-workspace/Sources/AssayCore/Collectible.swift:79:9: warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
 77 |     @inlinable
 78 |     public func _keyString(_ key: KeyRange) -> String {
 79 |         unsafe String(unsafeUninitializedCapacity: key.len) { buffer in
    |         `- warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
 80 |             unsafe buffer.baseAddress!.update(from: _keyBytes(key), count: key.len)
 81 |             return key.len
/host/spi-builder-workspace/Sources/AssayCore/JSONWriter.swift:282:31: warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
280 |         // retain per string written (count.py: +2,000 per call on fields-2/encode). A native
281 |         // String always has contiguous UTF-8, so the copy is only for a bridged one.
282 |         let borrowed: Void? = unsafe v.utf8.withContiguousStorageIfAvailable {
    |                               `- warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
283 |             unsafe appendEscaping($0)
284 |         }
/host/spi-builder-workspace/Sources/AssayCore/Rules.swift:365:5: warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
363 | @inlinable
364 | func _assayEachRule(_ rules: [Rule], _ body: (Rule.Storage) -> Void) {
365 |     unsafe rules.withUnsafeBufferPointer { buf in
    |     `- warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
366 |         for i in buf.indices {
367 |             unsafe Unmanaged.passUnretained(buf[i].storage)._withUnsafeGuaranteedRef(body)
/host/spi-builder-workspace/Sources/AssayCore/Strings.swift:66:16: warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
 64 |     func makeString(at offset: Int, count n: Int) -> String {
 65 |         let src = unsafe base + offset
 66 |         return unsafe String(unsafeUninitializedCapacity: n) { buffer in
    |                `- warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/do[220 / 386] AssayCore
cumentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
 67 |             unsafe buffer.baseAddress!.update(from: src, count: n)
 68 |             return n
[#UnnecessaryEffectMarker]: <https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker>
[#UnnecessaryUnsafe]: <https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe>
[220 / 386] SwiftSyntax602
[233 / 389] SwiftSyntax603
[241 / 391] AssayCore
/host/spi-builder-workspace/Sources/AssayCore/FormatValidators.swift:69:20: warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
 67 |         // per `base/validate` call (count.py explain, 2026-09-19) — and is kept only for a
 68 |         // bridged String without contiguous UTF-8.
 69 |         if let r = unsafe s.utf8.withContiguousStorageIfAvailable({ buffer in
    |                    `- warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
 70 |             body(unsafe Span(_unsafeElements: buffer))
 71 |         }) {
[#UnnecessaryEffectMarker]: <https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker>
[#UnnecessaryUnsafe]: <https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe>
[242 / 392] SwiftSyntax510
/host/spi-builder-workspace/Sources/AssayCore/JSONValueDecode.swift:258:16: warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
256 |             return nil
257 |         }
258 |         return unsafe bytes.withUnsafeBufferPointer { buf -> JSON.Value? in
    |                `- warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
259 |             guard let base = buf.baseAddress else {
260 |                 sink.add(Issue(code: .malformedDocument))
/host/spi-builder-workspace/Sources/AssayCore/JSONWriter.swift:282:31: warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
280 |         // retain per string written (count.py: +2,000 per call on fields-2/encode). A native
281 |         // String always has contiguous UTF-8, so the copy is only for a bridged one.
282 |         let borrowed: Void? = unsafe v.utf8.withContiguousStorageIfAvailable {
    |                               `- warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
283 |             unsafe appendEscaping($0)
284 |         }
[#UnnecessaryEffectMarker]: <https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker>
[#UnnecessaryUnsafe]: <https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe>
/host/spi-builder-workspace/Sources/AssayCore/AssayReader.swift:639:16: warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
637 |         guard n > 0 else { return "" }
638 |         let src = unsafe base + lo
639 |         return unsafe String(unsafeUninitializedCapacity: n) { buffer in
    |                `- warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
640 |             unsafe buffer.baseAddress!.update(from: src, count: n)
641 |             return n
/host/spi-builder-workspace/Sources/AssayCore/Collectible.swift:79:9: warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
 77 |     @inlinable
 78 |     public func _keyString(_ key: KeyRange) -> String {
 79 |         unsafe String(unsafeUninitializedCapacity: key.len) { buffer in
    |         `- warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
 80 |             unsafe buffer.baseAddress!.update(from: _keyBytes(key), count: key.len)
 81 |             return key.len
[#UnnecessaryEffectMarker]: <https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker>
[#UnnecessaryUnsafe]: <https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe>
/host/spi-builder-workspace/Sources/AssayCore/DateParser.swift:72:26: warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
 70 |         // Int` to make this possible; `Array` and `UnsafeBufferPointer` both qualify and
 71 |         // the integer arithmetic inside them is unchanged.
 72 |         let viaStorage = unsafe text.utf8.withContiguousStorageIfAvailable { buffer in
    |                          `- warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
 73 |             unsafe parse(buffer, as: format)
 74 |         }
[#UnnecessaryEffectMarker]: <https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker>
[#UnnecessaryUnsafe]: <https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe>
/host/spi-builder-workspace/Sources/AssayCore/Strings.swift:66:16: warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
 64 |     func makeString(at offset: Int, count n: Int) -> String {
 65 |         let src = unsafe base + offset
 66 |         return unsafe String(unsafeUninitializedCapacity: n) { buffer in
    |                `- warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
 67 |             unsafe buffer.baseAddress!.update(from: src, count: n)
 68 |             return n
/host/spi-builder-workspace/Sources/AssayCore/Strings.swift:102:20: warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
100 |         let bound = min(end, count) &- start
101 |         if bound <= Self.stackUnescapeLimit {
102 |             return unsafe withUnsafeTemporaryAllocation(
    |                    `- warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
103 |                 of: UInt8.self,
104 |                 capacity: max(bound, 1)
/host/spi-builder-workspace/Sources/AssayCore/Strings.swift:114:17: warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
112 |         }
113 |         var decoded = true
114 |         let s = unsafe String(unsafeUninitializedCapacity: bound) { buffer in
    |                 `- warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
115 |             guard let n = unsafe unescape(from: start, into: buffer.baseAddress!) else {
116 |                 decoded = false
[#UnnecessaryEffectMarker]: <https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker>
[#UnnecessaryUnsafe]: <https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe>
[250 / 393] SwiftSyntax
/host/spi-builder-workspace/Sources/AssayCore/Rules.swift:365:5: warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
363 | @inlinable
364 | func _assayEachRule(_ rules: [Rule], _ body: (Rule.Storage) -> Void) {
365 |     unsafe rules.withUnsafeBufferPointer { buf in
    |     `- warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
366 |         for i in buf.indices {
367 |             unsafe Unmanaged.passUnretained(buf[i].storage)._withUnsafeGuaranteedRef(body)
/host/spi-builder-workspace/Sources/AssayCore/SourceBytes.swift:71:24: warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
69 |         switch storage {
70 |         case .owned(let bytes):
71 |             return try unsafe bytes.withUnsafeBytes(body)
   |                        `- warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
72 |         case .borrowed(let base, let count, let owner):
73 |             let buffer = unsafe UnsafeRawBufferPointer(start: base, count: count)
[#UnnecessaryEffectMarker]: <https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker>
[#UnnecessaryUnsafe]: <https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe>
[258 / 402] SwiftSyntax
[259 / 403] SwiftSyntax
[260 / 403] AssayCore
[263 / 403] SwiftSyntax
[276 / 431] SwiftParser
[277 / 431] SwiftBasicFormat
[289 / 431] SwiftParser
[290 / 431] SwiftParser
[291 / 431] SwiftParser
[292 / 431] SwiftSyntax
[298 / 431] SwiftParser
[300 / 431] SwiftDiagnostics
[301 / 431] SwiftDiagnostics
[304 / 431] SwiftDiagnostics
[307 / 431] SwiftDiagnostics
[311 / 432] SwiftDiagnostics
[315 / 434]
[319 / 453] SwiftOperators
[321 / 453] SwiftParserDiagnostics
[329 / 454] SwiftParserDiagnostics
[330 / 454] SwiftParserDiagnostics
[331 / 454] SwiftParserDiagnostics
[337 / 454] SwiftParserDiagnostics
[338 / 454] SwiftOperators
[343 / 454] SwiftOperators
[348 / 455] SwiftSyntaxBuilder
[352 / 464] SwiftSyntaxBuilder
[353 / 464] SwiftOperators
[356 / 466] SwiftSyntaxBuilder
[370 / 476] SwiftIfConfig
[377 / 476] SwiftIfConfig
[381 / 476] SwiftSyntaxBuilder
[388 / 487] SwiftSyntaxMacros
[395 / 487] SwiftSyntaxMacros
[403 / 497] SwiftSyntaxMacroExpansion
[407 / 499] SwiftSyntaxMacros
[412 / 499] SwiftSyntaxMacroExpansion
[422 / 509] SwiftCompilerPluginMessageHandling
[424 / 509] SwiftCompilerPluginMessageHandling
[426 / 509] SwiftCompilerPluginMessageHandling
[427 / 509] SwiftCompilerPluginMessageHandling
[435 / 512] SwiftCompilerPlugin
[440 / 513] SwiftCompilerPlugin
[444 / 514] SwiftCompilerPluginMessageHandling
[446 / 515] SwiftSyntax
[449 / 516] SwiftSyntax
[456 / 516] SwiftIfConfig
[465 / 517] AssayMacros
[474 / 526] AssayMacros
[475 / 526] AssayMacros
[479 / 527] AssayMacros
[489 / 537] Assay
[506 / 569] AssayFoundation
[508 / 570] AssayYAML
[528 / 570] AssayYAML-product
[532 / 570] AssayXML
/host/spi-builder-workspace/Sources/AssayTOML/TOMLParser.swift:115:9: warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
113 |         _ body: (inout Parser, inout AssayReader, inout IssueSink) -> T?
114 |     ) -> T? {
115 |         unsafe bytes.withUnsafeBufferPointer { buf -> T? in
    |         `- warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
116 |             guard let base = buf.baseAddress else { return empty }
117 |             if let bad = unsafe UTF8Validation.firstInvalid(base, buf.count) {
/host/spi-builder-workspace/Sources/AssayTOML/TOMLParser.swift:357:9: warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
355 |         var key = ""
356 |         var keySpan = SourceSpan(lo: 0, len: 0)
357 |         unsafe path.withUnsafeMutableBufferPointer {
    |         `- warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
358 |             unsafe swap(&key, &$0[$0.count - 1].text)
359 |             keySpan = unsafe $0[$0.count - 1].span
/host/spi-builder-workspace/Sources/AssayTOML/TOMLParser.swift:408:9: warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
406 |         // next use. Reading `path[last].text` for the lookup copied it.
407 |         var key = ""
408 |         unsafe path.withUnsafeMutableBufferPointer { unsafe swap(&key, &$0[$0.count - 1].text) }
    |         `- warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
409 |         if find(key, in: table) != nil {
410 |             r.report(
/host/spi-builder-workspace/Sources/AssayTOML/TOMLParser.swift:469:23: warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
467 |         var slots: [TOML.TableBuilder.Slot] = []
468 |         swap(&slots, &tables[table].slots)
469 |         let members = unsafe slots.withUnsafeMutableBufferPointer { src in
    |                       `- warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
470 |             unsafe [TOML.Member](unsafeUninitializedCapacity: src.count) { dst, count in
471 |                 for i in src.indices {
/host/spi-builder-workspace/Sources/AssayTOML/TOMLParser.swift:498:23: warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
496 |         var slots: [TOML.TableBuilder.Slot] = []
497 |         swap(&slots, &tables[table].slots)
498 |         let members = unsafe slots.withUnsafeMutableBufferPointer { src in
    |                       `- warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
499 |             unsafe [RawValue.Member](unsafeUninitializedCapacity: src.count) { dst, count in
500 |                 for i in src.indices {
[#UnnecessaryEffectMarker]: <https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker>
[#UnnecessaryUnsafe]: <https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe>
/host/spi-builder-workspace/Sources/AssayYAML/YAMLParser.swift:132:16: warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
130 |             return []
131 |         }
132 |         return unsafe bytes.withUnsafeBufferPointer { buf -> [B.Value] in
    |                `- warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
133 |             guard let base = buf.baseAddress else { return [] }
134 |             if let bad = unsafe UTF8Validation.firstInvalid(base, buf.count) {
[#UnnecessaryEffectMarker]: <https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker>
[#UnnecessaryUnsafe]: <https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe>
/host/spi-builder-workspace/Sources/AssayXML/XMLBuilder.swift:198:13: warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
196 |         let hadAttributes = !attributes.isEmpty
197 |         if hadAttributes {
198 |             unsafe attributes.withUnsafeMutableBufferPointer { src in
    |             `- warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
199 |                 for i in src.indices {
200 |                  [536 / 570] AssayXML
   var key = ""
[#UnnecessaryEffectMarker]: <https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker>
[#UnnecessaryUnsafe]: <https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe>
/host/spi-builder-workspace/Sources/AssayTOML/TOMLNode.swift:183:23: warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
181 |         // array costs no release per slot.
182 |         if isArray {
183 |             let out = unsafe items.withUnsafeMutableBufferPointer { src in
    |                       `- warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
184 |                 unsafe [RawValue](unsafeUninitializedCapacity: src.count) { dst, count in
185 |                     for i in src.indices {
/host/spi-builder-workspace/Sources/AssayTOML/TOMLNode.swift:197:19: warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
195 |             return
196 |         }
197 |         let out = unsafe members.withUnsafeMutableBufferPointer { src in
    |                   `- warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
198 |             unsafe [RawValue.Member](unsafeUninitializedCapacity: src.count) { dst, count in
199 |                 for i in src.indices {
[#UnnecessaryEffectMarker]: <https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker>
[#UnnecessaryUnsafe]: <https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe>
/host/spi-builder-workspace/Sources/AssayYAML/YAMLNode.swift:370:23: warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
368 |         var ok = true
369 |         if isSequence {
370 |             let out = unsafe items.withUnsafeMutableBufferPointer { src in
    |                       `- warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
371 |                 unsafe [RawValue](unsafeUninitializedCapacity: src.count) { dst, count in
372 |                     for i in src.indices {
/host/spi-builder-workspace/Sources/AssayYAML/YAMLNode.swift:387:19: warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
385 |             return
386 |         }
387 |         let out = unsafe pairs.withUnsafeMutableBufferPointer { src in
    |                   `- warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
388 |             unsafe [RawValue.Member](unsafeUninitializedCapacity: src.count) { dst, count in
389 |                 for i in src.indices {
[#UnnecessaryEffectMarker]: <https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker>
[#UnnecessaryUnsafe]: <https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe>
[540 / 570] AssayFoundation
/host/spi-builder-workspace/Sources/AssayXML/XMLNode.swift:375:21: warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
373 |                 // empty-array singleton goes through the make-unique path every time.
374 |                 if !attributes.isEmpty {
375 |                     unsafe attributes.withUnsafeMutableBufferPointer { attrs in
    |                     `- warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
376 |                         for i in attrs.indices {
377 |                             var key = ""
/host/spi-builder-workspace/Sources/AssayXML/XMLNode.swift:370:23: warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
368 |         // runs that are dropped; `count` says how many were written.
369 |         let capacity = attributes.count + children.count
370 |         let members = unsafe children.withUnsafeMutableBufferPointer { kids in
    |                       `- warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
371 |             unsafe [Member](unsafeUninitializedCapacity: capacity) { dst, count in
372 |                 // Skipped when empty, which is most elements: mutable access to the
[#UnnecessaryEffectMarker]: <https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker>
[#UnnecessaryUnsafe]: <https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe>
[543 / 571] AssayYAML
[552 / 572] Assay
/host/spi-builder-workspace/Sources/AssayXML/XMLParser.swift:98:16: warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
  96 |             return nil
  97 |         }
  98 |         return unsafe bytes.withUnsafeBufferPointer { buf -> B.Output? in
     |                `- warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
  99 |             guard let base = buf.baseAddress else { return nil }
 100 |             // Same whole-buffer UTF-8 pass as the JSON path, for the same reason: it is
[#UnnecessaryEffectMarker]: <https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker>
[#UnnecessaryUnsafe]: <https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe>
[557 / 578] AssayPlist
[566 / 579] AssayPlist
[573 / 579] AssayFoundation
/host/spi-builder-workspace/Sources/AssayFoundation/MappedFile.swift:137:9: warning: expression uses unsafe constructs but is not marked with 'unsafe' [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/strict-memory-safety\StrictMemorySafety]8;;\]
135 |         let buf = UnsafeMutableRawPointer.allocate(
136 |             byteCount: max(n, 1), alignment: MemoryLayout<UInt64>.alignment)
137 |         data.withUnsafeBytes { src in
    |         |    |               `- note: argument #0 in call to instance method 'withUnsafeBytes' has unsafe type '(UnsafeRawBufferPointer) -> ()'
    |         |    `- note: reference to instance method 'withUnsafeBytes' involves unsafe type 'UnsafeRawBufferPointer'
    |         `- warning: expression uses unsafe constructs but is not marked with 'unsafe' [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/strict-memory-safety\StrictMemorySafety]8;;\]
138 |             if let s = src.baseAddress, n > 0 { buf.copyMemory(from: s, byteCount: n) }
139 |         }
/host/spi-builder-workspace/Sources/AssayFoundation/MappedFile.swift:138:49: warning: expression uses unsafe constructs but is not marked with 'unsafe' [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/strict-memory-safety\StrictMemorySafety]8;;\]
136 |             byteCount: max(n, 1), alignment: MemoryLayout<UInt64>.alignment)
137 |         data.withUnsafeBytes { src in
138 |             if let s = src.baseAddress, n > 0 { buf.copyMemory(from: s, byteCount: n) }
    |                                                 |   |                |- note: argument 'from' in call to instance method 'copyMemory' has unsafe type 'UnsafeRawPointer'
    |                                                 |   |                `- note: reference to let 's' involves unsafe type 'UnsafeRawPointer'
    |                                                 |   `- note: reference to instance method 'copyMemory(from:byteCount:)' involves unsafe type 'UnsafeRawPointer'
    |                                                 |- warning: expression uses unsafe constructs but is not marked with 'unsafe' [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/strict-memory-safety\StrictMemorySafety]8;;\]
    |                                                 |- note: argument 'self' in call to instance method 'copyMemory' has unsafe type 'UnsafeMutableRawPointer'
    |                                                 `- note: reference to let 'buf' involves unsafe type 'UnsafeMutableRawPointer'
139 |         }
140 |         return MappedFile(base: UnsafeRawPointer(buf), count: n) { p, _ in
/host/spi-builder-workspace/Sources/AssayFoundation/MappedFile.swift:140:16: warning: expression uses unsafe constructs but is not marked with 'unsafe' [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/strict-memory-safety\StrictMemorySafety]8;;\]
138 |             if let s = src.baseAddress, n > 0 { buf.copyMemory(from: s, byteCount: n) }
139 |         }
140 |         return MappedFile(base: UnsafeRawPointer(buf), count: n) { p, _ in
    |                |                |                                `- note: argument 'release' in call to initializer 'init' has unsafe type '@Sendable (UnsafeRawPointer, Int) -> Void'
    |                |                `- note: argument 'base' in call to initializer 'init' has unsafe type 'UnsafeRawPointer'
    |                |- warning: expression uses unsafe constructs but is not marked with 'unsafe' [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/strict-memory-safety\StrictMemorySafety]8;;\]
    |                `- note: reference to initializer 'init(base:count:release:)' involves unsafe type 'UnsafeRawPointer'
141 |             UnsafeMutableRawPointer(mutating: p).deallocate()
142 |         }
/host/spi-builder-workspace/Sources/AssayFoundation/MappedFile.swift:141:13: warning: expression uses unsafe constructs but is not marked with 'unsafe' [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/strict-memory-safety\StrictMemorySafety]8;;\]
139 |         }
140 |         return MappedFile(base: UnsafeRawPointer(buf), count: n) { p, _ in
141 |             UnsafeMutableRawPointer(mutating: p).deallocate()
    |             |                                 |- note: argument 'mutating' in call to initializer 'init' has unsafe type 'UnsafeRawPointer'
    |             |                                 `- note: reference to parameter 'p' involves unsafe type 'UnsafeRawPointer'
    |             |- warning: expression uses unsafe constructs but is not marked with 'unsafe' [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/strict-memory-safety\StrictMemorySafety]8;;\]
    |             |- note: argument 'self' in call to instance method 'deallocate' has unsafe type 'UnsafeMutableRawPointer'
    |             |- note: argument 'self' in call to initializer 'init' has unsafe type 'UnsafeMutableRawPointer.Type'
    |             |- note: reference to unsafe type 'UnsafeMutableRawPointer'
    |             `- note: reference to initializer 'init(mutating:)' involves unsafe type 'UnsafeRawPointer'
142 |         }
143 |         #else
[#StrictMemorySafety]: <https://docs.swift.org/compiler/documentation/diagnostics/strict-memory-safety>
/host/spi-builder-workspace/Sources/AssayFoundation/DataParsing.swift:75:20: warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
 73 |             // spelled for the pinned toolchain; the gate will point at this line the day the
 74 |             // pin moves.
 75 |             return unsafe withUnsafeTemporaryAllocation(of: UInt8.self, capacity: 1) { tmp in
    |                    `- warning: no unsafe operations occur within 'unsafe' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe\UnnecessaryUnsafe]8;;\]
 76 |                 let value = unsafe body(tmp.baseAddress!, 0, &sink)
 77 |                 return Diagnosis(
[#UnnecessaryEffectMarker]: <https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker>
[#UnnecessaryUnsafe]: <https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-unsafe>
[577 / 580] AssayFoundation-product
[577 / 580] AssayPlist
Build complete! (28.84 secs)
Build complete.
{
  "dependencies" : [
    {
      "identity" : "swift-syntax",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "603.0.0",
            "upper_bound" : "604.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/swiftlang/swift-syntax.git"
    }
  ],
  "manifest_display_name" : "Assay",
  "name" : "Assay",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "11.0"
    },
    {
      "name" : "ios",
      "version" : "14.0"
    },
    {
      "name" : "tvos",
      "version" : "14.0"
    },
    {
      "name" : "watchos",
      "version" : "7.0"
    },
    {
      "name" : "visionos",
      "version" : "1.0"
    }
  ],
  "products" : [
    {
      "name" : "Assay",
      "targets" : [
        "Assay"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "AssayCore",
      "targets" : [
        "AssayCore"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "AssayYAML",
      "targets" : [
        "AssayYAML"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "AssayXML",
      "targets" : [
        "AssayXML"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "AssayTOML",
      "targets" : [
        "AssayTOML"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "AssayPlist",
      "targets" : [
        "AssayPlist"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "AssayFoundation",
      "targets" : [
        "AssayFoundation"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "AssayMacros",
      "targets" : [
        "AssayMacros"
      ],
      "type" : {
        "macro" : null
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "AssayYAML",
      "module_type" : "SwiftTarget",
      "name" : "AssayYAML",
      "path" : "Sources/AssayYAML",
      "product_memberships" : [
        "AssayYAML"
      ],
      "sources" : [
        "YAMLBuilder.swift",
        "YAMLEntry.swift",
        "YAMLNode.swift",
        "YAMLParser+Block.swift",
        "YAMLParser+Flow.swift",
        "YAMLParser+Lexing.swift",
        "YAMLParser+Scalars.swift",
        "YAMLParser.swift",
        "YAMLRefusals.swift",
        "YAMLWriter.swift"
      ],
      "target_dependencies" : [
        "Assay",
        "AssayCore"
      ],
      "type" : "library"
    },
    {
      "c99name" : "AssayXML",
      "module_type" : "SwiftTarget",
      "name" : "AssayXML",
      "path" : "Sources/AssayXML",
      "product_memberships" : [
        "AssayXML",
        "AssayPlist"
      ],
      "sources" : [
        "XMLBuilder.swift",
        "XMLEntry.swift",
        "XMLNode.swift",
        "XMLParser.swift",
        "XMLRefusals.swift"
      ],
      "target_dependencies" : [
        "Assay",
        "AssayCore"
      ],
      "type" : "library"
    },
    {
      "c99name" : "AssayTests",
      "module_type" : "SwiftTarget",
      "name" : "AssayTests",
      "path" : "Tests/AssayTests",
      "product_dependencies" : [
        "SwiftSyntaxMacroExpansion",
        "SwiftParser"
      ],
      "sources" : [
        "AmplificationTests.swift",
        "ArrayHintTests.swift",
        "AssayerTests.swift",
        "AuditRegressionTests.swift",
        "BinaryPlistTests.swift",
        "BucketDispatchTests.swift",
        "ChecksTests.swift",
        "ConcurrencyTests.swift",
        "ConformanceTests.swift",
        "ConsumingProjectionTests.swift",
        "ContextTests.swift",
        "CoreCoverageTests.swift",
        "DataInputTests.swift",
        "DateEncodingTests.swift",
        "DateMacroTests.swift",
        "DateSchemaTests.swift",
        "DateTests.swift",
        "DecimalTextTests.swift",
        "DecodeTests.swift",
        "DictionaryTests.swift",
        "DoorCoverageTests.swift",
        "DoubleTests.swift",
        "EncodingTests.swift",
        "EntryDoorTests.swift",
        "EnumConformanceTests.swift",
        "EscapePathTests.swift",
        "ExtrasTests.swift",
        "GoldenExpansionTests.swift",
        "GoldenFixtures.swift",
        "InlineTests.swift",
        "InoutPathTests.swift",
        "IntegerWidthTests.swift",
        "IssueCodeCoverageTests.swift",
        "JSONSchemaTests.swift",
        "KeyAliasTests.swift",
        "KeyEscapeTests.swift",
        "KeyPathTests.swift",
        "KeyStyleTests.swift",
        "KitchenSinkTests.swift",
        "MacroTests.swift",
        "MappedFileTests.swift",
        "MaxFieldsTests.swift",
        "MultiFormatTests.swift",
        "NegotiationTests.swift",
        "OneOrManyTests.swift",
        "ParserTableTests.swift",
        "ParserTests.swift",
        "PathEncodingTests.swift",
        "PlistTests.swift",
        "PublicTypeTests.swift",
        "RawElementPathTests.swift",
        "RemainderTests.swift",
        "RenderTests.swift",
        "RewindTests.swift",
        "RuleCoverageTests.swift",
        "RuntimeCoverageTests.swift",
        "ScalingTests.swift",
        "ShapeHintTests.swift",
        "SpanTests.swift",
        "TOMLTests.swift",
        "TransformRuleTests.swift",
        "UUIDFieldTests.swift",
        "UnionEncodingTests.swift",
        "UnionErrorTests.swift",
        "UnionTests.swift",
        "UnknownEnumTests.swift",
        "UntaggedUnionTests.swift",
        "ValidateTests.swift",
        "ValidateValueTests.swift",
        "ValueModelTests.swift",
        "WrapsTests.swift",
        "WriterCoverageTests.swift",
        "XMLEncodingTests.swift",
        "XMLRootTests.swift",
        "YAMLCoverageTests.swift",
        "YAMLEncodingTests.swift",
        "YAMLIndentlessSequenceTests.swift"
      ],
      "target_dependencies" : [
        "Assay",
        "AssayCore",
        "AssayYAML",
        "AssayXML",
        "AssayTOML",
        "AssayPlist",
        "AssayFoundation",
        "AssayMacros"
      ],
      "type" : "test"
    },
    {
      "c99name" : "AssayTOML",
      "module_type" : "SwiftTarget",
      "name" : "AssayTOML",
      "path" : "Sources/AssayTOML",
      "product_memberships" : [
        "AssayTOML"
      ],
      "sources" : [
        "TOMLEntry.swift",
        "TOMLNode.swift",
        "TOMLParser+Values.swift",
        "TOMLParser.swift",
        "TOMLRefusals.swift",
        "TOMLWriter.swift"
      ],
      "target_dependencies" : [
        "Assay",
        "AssayCore"
      ],
      "type" : "library"
    },
    {
      "c99name" : "AssayPlist",
      "module_type" : "SwiftTarget",
      "name" : "AssayPlist",
      "path" : "Sources/AssayPlist",
      "product_memberships" : [
        "AssayPlist"
      ],
      "sources" : [
        "BinaryPlist.swift",
        "PlistEntry.swift",
        "PlistRefusals.swift",
        "XMLPlist.swift"
      ],
      "target_dependencies" : [
        "Assay",
        "AssayCore",
        "AssayXML"
      ],
      "type" : "library"
    },
    {
      "c99name" : "AssayMacros",
      "module_type" : "SwiftTarget",
      "name" : "AssayMacros",
      "path" : "Sources/AssayMacros",
      "product_dependencies" : [
        "SwiftSyntaxMacros",
        "SwiftCompilerPlugin"
      ],
      "product_memberships" : [
        "Assay",
        "AssayYAML",
        "AssayXML",
        "AssayTOML",
        "AssayPlist",
        "AssayFoundation",
        "AssayMacros"
      ],
      "sources" : [
        "ChecksGen.swift",
        "CodeGen.swift",
        "DateFormatMacro.swift",
        "DescribeGen.swift",
        "EncodeGen.swift",
        "EnumGen.swift",
        "KeyStyle.swift",
        "MarkerMacros.swift",
        "PathKeys.swift",
        "Plugin.swift",
        "RawCodeGen.swift",
        "RawEncodeGen.swift",
        "SchemaConfig.swift",
        "SchemaMacro.swift",
        "SchemaRefusals.swift",
        "TypeShapes.swift",
        "UnionGen.swift",
        "ValidateGen.swift",
        "ValidationGen.swift",
        "WindowSearch.swift",
        "WrapsGen.swift",
        "XMLEncodeGen.swift"
      ],
      "type" : "macro"
    },
    {
      "c99name" : "AssayFoundation",
      "module_type" : "SwiftTarget",
      "name" : "AssayFoundation",
      "path" : "Sources/AssayFoundation",
      "product_memberships" : [
        "AssayFoundation"
      ],
      "sources" : [
        "DataParsing.swift",
        "ErrorBridging.swift",
        "MappedFile.swift",
        "MappedParsing.swift",
        "UUIDSupport.swift"
      ],
      "target_dependencies" : [
        "Assay",
        "AssayCore"
      ],
      "type" : "library"
    },
    {
      "c99name" : "AssayCore",
      "module_type" : "SwiftTarget",
      "name" : "AssayCore",
      "path" : "Sources/AssayCore",
      "product_memberships" : [
        "Assay",
        "AssayCore",
        "AssayYAML",
        "AssayXML",
        "AssayTOML",
        "AssayPlist",
        "AssayFoundation"
      ],
      "sources" : [
        "AssayError.swift",
        "AssayReader.swift",
        "Collectible.swift",
        "DateDecode.swift",
        "DateFormat.swift",
        "DateParser.swift",
        "DecimalText.swift",
        "Decode.swift",
        "DecodeWidths.swift",
        "Discriminator.swift",
        "EncodedBytes.swift",
        "FormatValidators.swift",
        "Issue.swift",
        "IssueCode+Names.swift",
        "IssueCollector.swift",
        "JSONSchemaRender.swift",
        "JSONValue.swift",
        "JSONValueDecode.swift",
        "JSONWriter.swift",
        "Limits.swift",
        "MediaType.swift",
        "Messages.swift",
        "Numbers.swift",
        "Preprocess.swift",
        "RawDecode.swift",
        "RawValue.swift",
        "Render.swift",
        "Rule.swift",
        "Rules.swift",
        "SchemaDescriptor.swift",
        "SourceBytes.swift",
        "Strings.swift",
        "UTF8Validation.swift",
        "WireFormat.swift",
        "XMLWriter.swift"
      ],
      "type" : "library"
    },
    {
      "c99name" : "Assay",
      "module_type" : "SwiftTarget",
      "name" : "Assay",
      "path" : "Sources/Assay",
      "product_memberships" : [
        "Assay",
        "AssayYAML",
        "AssayXML",
        "AssayTOML",
        "AssayPlist",
        "AssayFoundation"
      ],
      "sources" : [
        "Assay.swift",
        "Assayer.swift",
        "AssayerBacked.swift",
        "AssayerPlan.swift",
        "AsyncEntry.swift",
        "CapabilityRefusals.swift",
        "ContextEntry.swift",
        "Entry.swift",
        "Enums.swift",
        "Macros.swift",
        "Negotiate.swift",
        "Options.swift",
        "Protocols.swift",
        "Validate.swift"
      ],
      "target_dependencies" : [
        "AssayCore",
        "AssayMacros"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "6.2"
}
wasm-6.4-latest: Pulling from saguaro1/spi-images
Digest: sha256:7a2e5502d3bb6640f9b2bbb1dadf9967024364ce9ed0ed0bd80cf1b699d193fd
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:wasm-6.4-latest
Done.