The Swift Package Index logo.Swift Package Index

Build Information

Failed to build Khac, reference master (7e5ed5), with Swift 6.1 for Wasm on 16 Aug 2026 20:19:08 UTC.

Build Command

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

Build Log

========================================
RunAll
========================================
Builder version: 5.0.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/nhannht/Khac.git
Reference: master
Initialized empty Git repository in /host/spi-builder-workspace/.git/
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: 	git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: 	git branch -m <name>
From https://github.com/nhannht/Khac
 * branch            master     -> FETCH_HEAD
 * [new branch]      master     -> origin/master
HEAD is now at 7e5ed56 chore: release 0.4.0
Cloned https://github.com/nhannht/Khac.git
Revision (git rev-parse @):
7e5ed5638c0c2f743beb02a2b5181a12f7281ba7
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/nhannht/Khac.git at master
========================================
Build
========================================
Selected platform:         wasm
Swift version:             6.1
Building package at path:  $PWD
https://github.com/nhannht/Khac.git
https://github.com/nhannht/Khac.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-53886769-0":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/saguaro1/spi-images:wasm-6.1-latest swift build --swift-sdk wasm32-unknown-wasi -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures 2>&1
wasm-6.1-latest: Pulling from saguaro1/spi-images
Digest: sha256:290f441d1f5b7bf0dbbe61e8b7514208804cdcb507d57b3c762463ad036298f7
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:wasm-6.1-latest
Building for debugging...
[0/9] Write sources
[3/9] Write swift-version-24593BA9C3E375BF.txt
[5/59] Emitting module Khac
/host/spi-builder-workspace/Sources/Khac/Core/Engine.swift:18:16: warning: static property 'genericParsers' is not concurrency-safe because non-'Sendable' type '[any Parser]' may have shared mutable state; this is an error in the Swift 6 language mode
 16 |     /// one instance each serves every parse instead of eight fresh allocations
 17 |     /// per locale per call.
 18 |     static let genericParsers: [Parser] =
    |                |- warning: static property 'genericParsers' is not concurrency-safe because non-'Sendable' type '[any Parser]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: add '@MainActor' to make static property 'genericParsers' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 19 |         [
 20 |             ISOParser(),
/host/spi-builder-workspace/Sources/Khac/Locales/Locale.swift:564:17: note: protocol 'Parser' does not conform to the 'Sendable' protocol
562 | /// Generic parsers are stateless: they read all configuration from
563 | /// `context.locale`, so a single shared instance serves every locale.
564 | public protocol Parser {
    |                 `- note: protocol 'Parser' does not conform to the 'Sendable' protocol
565 |     /// The pattern to run over `context.text` (NFC-normalized). Build it from
566 |     /// `context.locale` data. Use NSRegularExpression for JS-semantic parity.
/host/spi-builder-workspace/Sources/Khac/Core/Engine.swift:39:16: warning: static property 'mergeRefiners' is not concurrency-safe because non-'Sendable' type '[any Refiner]' may have shared mutable state; this is an error in the Swift 6 language mode
 37 |     /// and the range repair untangles the order; the year suffix is claimed
 38 |     /// after the date-time merge; and the range merge runs last of all.
 39 |     static let mergeRefiners: [Refiner] =
    |                |- warning: static property 'mergeRefiners' is not concurrency-safe because non-'Sendable' type '[any Refiner]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: add '@MainActor' to make static property 'mergeRefiners' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 40 |         [
 41 |             OverlapFilterRefiner(),
/host/spi-builder-workspace/Sources/Khac/Locales/Locale.swift:583:17: note: protocol 'Refiner' does not conform to the 'Sendable' protocol
581 | /// building ranges, or filtering overlaps. Refiners must be order-independent in
582 | /// their observable outcome where the spec requires it (the overlap filter).
583 | public protocol Refiner {
    |                 `- note: protocol 'Refiner' does not conform to the 'Sendable' protocol
584 |     func refine(_ context: ParsingContext, _ results: [ParsedResult]) -> [ParsedResult]
585 | }
[6/65] Compiling Khac MergeDateTimeRefiner.swift
[7/65] Compiling Khac MergeRelativeAnchorRefiner.swift
[8/65] Compiling Khac MergeWeekdayRefiner.swift
[9/65] Compiling Khac MergingRefiner.swift
[10/65] Compiling Khac OverlapFilterRefiner.swift
[11/65] Compiling Khac UnlikelyFilterRefiner.swift
[12/65] Compiling Khac Engine.swift
/host/spi-builder-workspace/Sources/Khac/Core/Engine.swift:18:16: warning: static property 'genericParsers' is not concurrency-safe because non-'Sendable' type '[any Parser]' may have shared mutable state; this is an error in the Swift 6 language mode
 16 |     /// one instance each serves every parse instead of eight fresh allocations
 17 |     /// per locale per call.
 18 |     static let genericParsers: [Parser] =
    |                |- warning: static property 'genericParsers' is not concurrency-safe because non-'Sendable' type '[any Parser]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: add '@MainActor' to make static property 'genericParsers' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 19 |         [
 20 |             ISOParser(),
/host/spi-builder-workspace/Sources/Khac/Locales/Locale.swift:564:17: note: protocol 'Parser' does not conform to the 'Sendable' protocol
562 | /// Generic parsers are stateless: they read all configuration from
563 | /// `context.locale`, so a single shared instance serves every locale.
564 | public protocol Parser {
    |                 `- note: protocol 'Parser' does not conform to the 'Sendable' protocol
565 |     /// The pattern to run over `context.text` (NFC-normalized). Build it from
566 |     /// `context.locale` data. Use NSRegularExpression for JS-semantic parity.
/host/spi-builder-workspace/Sources/Khac/Core/Engine.swift:39:16: warning: static property 'mergeRefiners' is not concurrency-safe because non-'Sendable' type '[any Refiner]' may have shared mutable state; this is an error in the Swift 6 language mode
 37 |     /// and the range repair untangles the order; the year suffix is claimed
 38 |     /// after the date-time merge; and the range merge runs last of all.
 39 |     static let mergeRefiners: [Refiner] =
    |                |- warning: static property 'mergeRefiners' is not concurrency-safe because non-'Sendable' type '[any Refiner]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: add '@MainActor' to make static property 'mergeRefiners' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 40 |         [
 41 |             OverlapFilterRefiner(),
/host/spi-builder-workspace/Sources/Khac/Locales/Locale.swift:583:17: note: protocol 'Refiner' does not conform to the 'Sendable' protocol
581 | /// building ranges, or filtering overlaps. Refiners must be order-independent in
582 | /// their observable outcome where the spec requires it (the overlap filter).
583 | public protocol Refiner {
    |                 `- note: protocol 'Refiner' does not conform to the 'Sendable' protocol
584 |     func refine(_ context: ParsingContext, _ results: [ParsedResult]) -> [ParsedResult]
585 | }
/host/spi-builder-workspace/Sources/Khac/Core/Engine.swift:74:17: warning: initialization of immutable value 'locale' was never used; consider replacing with assignment to '_' or removing it
 72 |
 73 |         for (localeIndex, prepared) in locales.enumerated() {
 74 |             let locale = prepared.locale
    |                 `- warning: initialization of immutable value 'locale' was never used; consider replacing with assignment to '_' or removing it
 75 |             let context = ParsingContext(reference: reference, options: options, prepared: prepared, normalization: normalization)
 76 |             lastContext = context
[13/65] Compiling Khac Options.swift
/host/spi-builder-workspace/Sources/Khac/Core/Engine.swift:18:16: warning: static property 'genericParsers' is not concurrency-safe because non-'Sendable' type '[any Parser]' may have shared mutable state; this is an error in the Swift 6 language mode
 16 |     /// one instance each serves every parse instead of eight fresh allocations
 17 |     /// per locale per call.
 18 |     static let genericParsers: [Parser] =
    |                |- warning: static property 'genericParsers' is not concurrency-safe because non-'Sendable' type '[any Parser]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: add '@MainActor' to make static property 'genericParsers' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 19 |         [
 20 |             ISOParser(),
/host/spi-builder-workspace/Sources/Khac/Locales/Locale.swift:564:17: note: protocol 'Parser' does not conform to the 'Sendable' protocol
562 | /// Generic parsers are stateless: they read all configuration from
563 | /// `context.locale`, so a single shared instance serves every locale.
564 | public protocol Parser {
    |                 `- note: protocol 'Parser' does not conform to the 'Sendable' protocol
565 |     /// The pattern to run over `context.text` (NFC-normalized). Build it from
566 |     /// `context.locale` data. Use NSRegularExpression for JS-semantic parity.
/host/spi-builder-workspace/Sources/Khac/Core/Engine.swift:39:16: warning: static property 'mergeRefiners' is not concurrency-safe because non-'Sendable' type '[any Refiner]' may have shared mutable state; this is an error in the Swift 6 language mode
 37 |     /// and the range repair untangles the order; the year suffix is claimed
 38 |     /// after the date-time merge; and the range merge runs last of all.
 39 |     static let mergeRefiners: [Refiner] =
    |                |- warning: static property 'mergeRefiners' is not concurrency-safe because non-'Sendable' type '[any Refiner]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: add '@MainActor' to make static property 'mergeRefiners' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 40 |         [
 41 |             OverlapFilterRefiner(),
/host/spi-builder-workspace/Sources/Khac/Locales/Locale.swift:583:17: note: protocol 'Refiner' does not conform to the 'Sendable' protocol
581 | /// building ranges, or filtering overlaps. Refiners must be order-independent in
582 | /// their observable outcome where the spec requires it (the overlap filter).
583 | public protocol Refiner {
    |                 `- note: protocol 'Refiner' does not conform to the 'Sendable' protocol
584 |     func refine(_ context: ParsingContext, _ results: [ParsedResult]) -> [ParsedResult]
585 | }
/host/spi-builder-workspace/Sources/Khac/Core/Engine.swift:74:17: warning: initialization of immutable value 'locale' was never used; consider replacing with assignment to '_' or removing it
 72 |
 73 |         for (localeIndex, prepared) in locales.enumerated() {
 74 |             let locale = prepared.locale
    |                 `- warning: initialization of immutable value 'locale' was never used; consider replacing with assignment to '_' or removing it
 75 |             let context = ParsingContext(reference: reference, options: options, prepared: prepared, normalization: normalization)
 76 |             lastContext = context
[14/65] Compiling Khac ParsedResult.swift
/host/spi-builder-workspace/Sources/Khac/Core/Engine.swift:18:16: warning: static property 'genericParsers' is not concurrency-safe because non-'Sendable' type '[any Parser]' may have shared mutable state; this is an error in the Swift 6 language mode
 16 |     /// one instance each serves every parse instead of eight fresh allocations
 17 |     /// per locale per call.
 18 |     static let genericParsers: [Parser] =
    |                |- warning: static property 'genericParsers' is not concurrency-safe because non-'Sendable' type '[any Parser]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: add '@MainActor' to make static property 'genericParsers' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 19 |         [
 20 |             ISOParser(),
/host/spi-builder-workspace/Sources/Khac/Locales/Locale.swift:564:17: note: protocol 'Parser' does not conform to the 'Sendable' protocol
562 | /// Generic parsers are stateless: they read all configuration from
563 | /// `context.locale`, so a single shared instance serves every locale.
564 | public protocol Parser {
    |                 `- note: protocol 'Parser' does not conform to the 'Sendable' protocol
565 |     /// The pattern to run over `context.text` (NFC-normalized). Build it from
566 |     /// `context.locale` data. Use NSRegularExpression for JS-semantic parity.
/host/spi-builder-workspace/Sources/Khac/Core/Engine.swift:39:16: warning: static property 'mergeRefiners' is not concurrency-safe because non-'Sendable' type '[any Refiner]' may have shared mutable state; this is an error in the Swift 6 language mode
 37 |     /// and the range repair untangles the order; the year suffix is claimed
 38 |     /// after the date-time merge; and the range merge runs last of all.
 39 |     static let mergeRefiners: [Refiner] =
    |                |- warning: static property 'mergeRefiners' is not concurrency-safe because non-'Sendable' type '[any Refiner]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: add '@MainActor' to make static property 'mergeRefiners' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 40 |         [
 41 |             OverlapFilterRefiner(),
/host/spi-builder-workspace/Sources/Khac/Locales/Locale.swift:583:17: note: protocol 'Refiner' does not conform to the 'Sendable' protocol
581 | /// building ranges, or filtering overlaps. Refiners must be order-independent in
582 | /// their observable outcome where the spec requires it (the overlap filter).
583 | public protocol Refiner {
    |                 `- note: protocol 'Refiner' does not conform to the 'Sendable' protocol
584 |     func refine(_ context: ParsingContext, _ results: [ParsedResult]) -> [ParsedResult]
585 | }
/host/spi-builder-workspace/Sources/Khac/Core/Engine.swift:74:17: warning: initialization of immutable value 'locale' was never used; consider replacing with assignment to '_' or removing it
 72 |
 73 |         for (localeIndex, prepared) in locales.enumerated() {
 74 |             let locale = prepared.locale
    |                 `- warning: initialization of immutable value 'locale' was never used; consider replacing with assignment to '_' or removing it
 75 |             let context = ParsingContext(reference: reference, options: options, prepared: prepared, normalization: normalization)
 76 |             lastContext = context
[15/65] Compiling Khac ParsingComponents.swift
/host/spi-builder-workspace/Sources/Khac/Core/Engine.swift:18:16: warning: static property 'genericParsers' is not concurrency-safe because non-'Sendable' type '[any Parser]' may have shared mutable state; this is an error in the Swift 6 language mode
 16 |     /// one instance each serves every parse instead of eight fresh allocations
 17 |     /// per locale per call.
 18 |     static let genericParsers: [Parser] =
    |                |- warning: static property 'genericParsers' is not concurrency-safe because non-'Sendable' type '[any Parser]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: add '@MainActor' to make static property 'genericParsers' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 19 |         [
 20 |             ISOParser(),
/host/spi-builder-workspace/Sources/Khac/Locales/Locale.swift:564:17: note: protocol 'Parser' does not conform to the 'Sendable' protocol
562 | /// Generic parsers are stateless: they read all configuration from
563 | /// `context.locale`, so a single shared instance serves every locale.
564 | public protocol Parser {
    |                 `- note: protocol 'Parser' does not conform to the 'Sendable' protocol
565 |     /// The pattern to run over `context.text` (NFC-normalized). Build it from
566 |     /// `context.locale` data. Use NSRegularExpression for JS-semantic parity.
/host/spi-builder-workspace/Sources/Khac/Core/Engine.swift:39:16: warning: static property 'mergeRefiners' is not concurrency-safe because non-'Sendable' type '[any Refiner]' may have shared mutable state; this is an error in the Swift 6 language mode
 37 |     /// and the range repair untangles the order; the year suffix is claimed
 38 |     /// after the date-time merge; and the range merge runs last of all.
 39 |     static let mergeRefiners: [Refiner] =
    |                |- warning: static property 'mergeRefiners' is not concurrency-safe because non-'Sendable' type '[any Refiner]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: add '@MainActor' to make static property 'mergeRefiners' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 40 |         [
 41 |             OverlapFilterRefiner(),
/host/spi-builder-workspace/Sources/Khac/Locales/Locale.swift:583:17: note: protocol 'Refiner' does not conform to the 'Sendable' protocol
581 | /// building ranges, or filtering overlaps. Refiners must be order-independent in
582 | /// their observable outcome where the spec requires it (the overlap filter).
583 | public protocol Refiner {
    |                 `- note: protocol 'Refiner' does not conform to the 'Sendable' protocol
584 |     func refine(_ context: ParsingContext, _ results: [ParsedResult]) -> [ParsedResult]
585 | }
/host/spi-builder-workspace/Sources/Khac/Core/Engine.swift:74:17: warning: initialization of immutable value 'locale' was never used; consider replacing with assignment to '_' or removing it
 72 |
 73 |         for (localeIndex, prepared) in locales.enumerated() {
 74 |             let locale = prepared.locale
    |                 `- warning: initialization of immutable value 'locale' was never used; consider replacing with assignment to '_' or removing it
 75 |             let context = ParsingContext(reference: reference, options: options, prepared: prepared, normalization: normalization)
 76 |             lastContext = context
[16/65] Compiling Khac ParsingContext.swift
/host/spi-builder-workspace/Sources/Khac/Core/Engine.swift:18:16: warning: static property 'genericParsers' is not concurrency-safe because non-'Sendable' type '[any Parser]' may have shared mutable state; this is an error in the Swift 6 language mode
 16 |     /// one instance each serves every parse instead of eight fresh allocations
 17 |     /// per locale per call.
 18 |     static let genericParsers: [Parser] =
    |                |- warning: static property 'genericParsers' is not concurrency-safe because non-'Sendable' type '[any Parser]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: add '@MainActor' to make static property 'genericParsers' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 19 |         [
 20 |             ISOParser(),
/host/spi-builder-workspace/Sources/Khac/Locales/Locale.swift:564:17: note: protocol 'Parser' does not conform to the 'Sendable' protocol
562 | /// Generic parsers are stateless: they read all configuration from
563 | /// `context.locale`, so a single shared instance serves every locale.
564 | public protocol Parser {
    |                 `- note: protocol 'Parser' does not conform to the 'Sendable' protocol
565 |     /// The pattern to run over `context.text` (NFC-normalized). Build it from
566 |     /// `context.locale` data. Use NSRegularExpression for JS-semantic parity.
/host/spi-builder-workspace/Sources/Khac/Core/Engine.swift:39:16: warning: static property 'mergeRefiners' is not concurrency-safe because non-'Sendable' type '[any Refiner]' may have shared mutable state; this is an error in the Swift 6 language mode
 37 |     /// and the range repair untangles the order; the year suffix is claimed
 38 |     /// after the date-time merge; and the range merge runs last of all.
 39 |     static let mergeRefiners: [Refiner] =
    |                |- warning: static property 'mergeRefiners' is not concurrency-safe because non-'Sendable' type '[any Refiner]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: add '@MainActor' to make static property 'mergeRefiners' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 40 |         [
 41 |             OverlapFilterRefiner(),
/host/spi-builder-workspace/Sources/Khac/Locales/Locale.swift:583:17: note: protocol 'Refiner' does not conform to the 'Sendable' protocol
581 | /// building ranges, or filtering overlaps. Refiners must be order-independent in
582 | /// their observable outcome where the spec requires it (the overlap filter).
583 | public protocol Refiner {
    |                 `- note: protocol 'Refiner' does not conform to the 'Sendable' protocol
584 |     func refine(_ context: ParsingContext, _ results: [ParsedResult]) -> [ParsedResult]
585 | }
/host/spi-builder-workspace/Sources/Khac/Core/Engine.swift:74:17: warning: initialization of immutable value 'locale' was never used; consider replacing with assignment to '_' or removing it
 72 |
 73 |         for (localeIndex, prepared) in locales.enumerated() {
 74 |             let locale = prepared.locale
    |                 `- warning: initialization of immutable value 'locale' was never used; consider replacing with assignment to '_' or removing it
 75 |             let context = ParsingContext(reference: reference, options: options, prepared: prepared, normalization: normalization)
 76 |             lastContext = context
[17/65] Compiling Khac PreparedLocale.swift
/host/spi-builder-workspace/Sources/Khac/Core/Engine.swift:18:16: warning: static property 'genericParsers' is not concurrency-safe because non-'Sendable' type '[any Parser]' may have shared mutable state; this is an error in the Swift 6 language mode
 16 |     /// one instance each serves every parse instead of eight fresh allocations
 17 |     /// per locale per call.
 18 |     static let genericParsers: [Parser] =
    |                |- warning: static property 'genericParsers' is not concurrency-safe because non-'Sendable' type '[any Parser]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: add '@MainActor' to make static property 'genericParsers' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 19 |         [
 20 |             ISOParser(),
/host/spi-builder-workspace/Sources/Khac/Locales/Locale.swift:564:17: note: protocol 'Parser' does not conform to the 'Sendable' protocol
562 | /// Generic parsers are stateless: they read all configuration from
563 | /// `context.locale`, so a single shared instance serves every locale.
564 | public protocol Parser {
    |                 `- note: protocol 'Parser' does not conform to the 'Sendable' protocol
565 |     /// The pattern to run over `context.text` (NFC-normalized). Build it from
566 |     /// `context.locale` data. Use NSRegularExpression for JS-semantic parity.
/host/spi-builder-workspace/Sources/Khac/Core/Engine.swift:39:16: warning: static property 'mergeRefiners' is not concurrency-safe because non-'Sendable' type '[any Refiner]' may have shared mutable state; this is an error in the Swift 6 language mode
 37 |     /// and the range repair untangles the order; the year suffix is claimed
 38 |     /// after the date-time merge; and the range merge runs last of all.
 39 |     static let mergeRefiners: [Refiner] =
    |                |- warning: static property 'mergeRefiners' is not concurrency-safe because non-'Sendable' type '[any Refiner]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: add '@MainActor' to make static property 'mergeRefiners' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 40 |         [
 41 |             OverlapFilterRefiner(),
/host/spi-builder-workspace/Sources/Khac/Locales/Locale.swift:583:17: note: protocol 'Refiner' does not conform to the 'Sendable' protocol
581 | /// building ranges, or filtering overlaps. Refiners must be order-independent in
582 | /// their observable outcome where the spec requires it (the overlap filter).
583 | public protocol Refiner {
    |                 `- note: protocol 'Refiner' does not conform to the 'Sendable' protocol
584 |     func refine(_ context: ParsingContext, _ results: [ParsedResult]) -> [ParsedResult]
585 | }
/host/spi-builder-workspace/Sources/Khac/Core/Engine.swift:74:17: warning: initialization of immutable value 'locale' was never used; consider replacing with assignment to '_' or removing it
 72 |
 73 |         for (localeIndex, prepared) in locales.enumerated() {
 74 |             let locale = prepared.locale
    |                 `- warning: initialization of immutable value 'locale' was never used; consider replacing with assignment to '_' or removing it
 75 |             let context = ParsingContext(reference: reference, options: options, prepared: prepared, normalization: normalization)
 76 |             lastContext = context
[18/65] Compiling Khac ReferencePoint.swift
/host/spi-builder-workspace/Sources/Khac/Core/Engine.swift:18:16: warning: static property 'genericParsers' is not concurrency-safe because non-'Sendable' type '[any Parser]' may have shared mutable state; this is an error in the Swift 6 language mode
 16 |     /// one instance each serves every parse instead of eight fresh allocations
 17 |     /// per locale per call.
 18 |     static let genericParsers: [Parser] =
    |                |- warning: static property 'genericParsers' is not concurrency-safe because non-'Sendable' type '[any Parser]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: add '@MainActor' to make static property 'genericParsers' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 19 |         [
 20 |             ISOParser(),
/host/spi-builder-workspace/Sources/Khac/Locales/Locale.swift:564:17: note: protocol 'Parser' does not conform to the 'Sendable' protocol
562 | /// Generic parsers are stateless: they read all configuration from
563 | /// `context.locale`, so a single shared instance serves every locale.
564 | public protocol Parser {
    |                 `- note: protocol 'Parser' does not conform to the 'Sendable' protocol
565 |     /// The pattern to run over `context.text` (NFC-normalized). Build it from
566 |     /// `context.locale` data. Use NSRegularExpression for JS-semantic parity.
/host/spi-builder-workspace/Sources/Khac/Core/Engine.swift:39:16: warning: static property 'mergeRefiners' is not concurrency-safe because non-'Sendable' type '[any Refiner]' may have shared mutable state; this is an error in the Swift 6 language mode
 37 |     /// and the range repair untangles the order; the year suffix is claimed
 38 |     /// after the date-time merge; and the range merge runs last of all.
 39 |     static let mergeRefiners: [Refiner] =
    |                |- warning: static property 'mergeRefiners' is not concurrency-safe because non-'Sendable' type '[any Refiner]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: add '@MainActor' to make static property 'mergeRefiners' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 40 |         [
 41 |             OverlapFilterRefiner(),
/host/spi-builder-workspace/Sources/Khac/Locales/Locale.swift:583:17: note: protocol 'Refiner' does not conform to the 'Sendable' protocol
581 | /// building ranges, or filtering overlaps. Refiners must be order-independent in
582 | /// their observable outcome where the spec requires it (the overlap filter).
583 | public protocol Refiner {
    |                 `- note: protocol 'Refiner' does not conform to the 'Sendable' protocol
584 |     func refine(_ context: ParsingContext, _ results: [ParsedResult]) -> [ParsedResult]
585 | }
/host/spi-builder-workspace/Sources/Khac/Core/Engine.swift:74:17: warning: initialization of immutable value 'locale' was never used; consider replacing with assignment to '_' or removing it
 72 |
 73 |         for (localeIndex, prepared) in locales.enumerated() {
 74 |             let locale = prepared.locale
    |                 `- warning: initialization of immutable value 'locale' was never used; consider replacing with assignment to '_' or removing it
 75 |             let context = ParsingContext(reference: reference, options: options, prepared: prepared, normalization: normalization)
 76 |             lastContext = context
[19/65] Compiling Khac DELocale.swift
[20/65] Compiling Khac DEParsers.swift
[21/65] Compiling Khac ENLocale.swift
[22/65] Compiling Khac ENParsers.swift
[23/65] Compiling Khac ENRefiners.swift
[24/65] Compiling Khac ESLocale.swift
[25/65] Compiling Khac FILocale.swift
[26/65] Compiling Khac FIParsers.swift
[27/65] Compiling Khac FRLocale.swift
[28/65] Compiling Khac ITLocale.swift
[29/65] Compiling Khac JALocale.swift
[30/65] Compiling Khac JAParsers.swift
[31/65] Compiling Khac Locale.swift
[32/65] Compiling Khac NLLocale.swift
[33/65] Compiling Khac ZHLocale.swift
[34/65] Compiling Khac ZHParsers.swift
[35/65] Compiling Khac CasualDateParser.swift
[36/65] Compiling Khac ISOParser.swift
[37/65] Compiling Khac MonthNameParser.swift
[38/65] Compiling Khac NumericDateParser.swift
[39/65] Compiling Khac RelativeUnitParser.swift
[40/65] Compiling Khac PTLocale.swift
[41/65] Compiling Khac RULocale.swift
[42/65] Compiling Khac RUParsers.swift
[43/65] Compiling Khac SVLocale.swift
[44/65] Compiling Khac UKLocale.swift
[45/65] Compiling Khac UKParsers.swift
[46/65] Compiling Khac VILocale.swift
[47/65] Compiling Khac TimeExpressionParser.swift
/host/spi-builder-workspace/Sources/Khac/Parsers/TimeExpressionParser.swift:189:13: warning: variable 'startComponents' was never mutated; consider changing to 'let' constant
187 |         resolveRange(&start, &end)
188 |
189 |         var startComponents = components(context, start)
    |             `- warning: variable 'startComponents' was never mutated; consider changing to 'let' constant
190 |         var endComponents = components(context, end)
191 |
[48/65] Compiling Khac WeekdayParser.swift
/host/spi-builder-workspace/Sources/Khac/Parsers/TimeExpressionParser.swift:189:13: warning: variable 'startComponents' was never mutated; consider changing to 'let' constant
187 |         resolveRange(&start, &end)
188 |
189 |         var startComponents = components(context, start)
    |             `- warning: variable 'startComponents' was never mutated; consider changing to 'let' constant
190 |         var endComponents = components(context, end)
191 |
[49/65] Compiling Khac YearParser.swift
/host/spi-builder-workspace/Sources/Khac/Parsers/TimeExpressionParser.swift:189:13: warning: variable 'startComponents' was never mutated; consider changing to 'let' constant
187 |         resolveRange(&start, &end)
188 |
189 |         var startComponents = components(context, start)
    |             `- warning: variable 'startComponents' was never mutated; consider changing to 'let' constant
190 |         var endComponents = components(context, end)
191 |
[50/65] Compiling Khac ExtractTimezoneOffsetRefiner.swift
/host/spi-builder-workspace/Sources/Khac/Parsers/TimeExpressionParser.swift:189:13: warning: variable 'startComponents' was never mutated; consider changing to 'let' constant
187 |         resolveRange(&start, &end)
188 |
189 |         var startComponents = components(context, start)
    |             `- warning: variable 'startComponents' was never mutated; consider changing to 'let' constant
190 |         var endComponents = components(context, end)
191 |
[51/65] Compiling Khac ExtractYearSuffixRefiner.swift
/host/spi-builder-workspace/Sources/Khac/Parsers/TimeExpressionParser.swift:189:13: warning: variable 'startComponents' was never mutated; consider changing to 'let' constant
187 |         resolveRange(&start, &end)
188 |
189 |         var startComponents = components(context, start)
    |             `- warning: variable 'startComponents' was never mutated; consider changing to 'let' constant
190 |         var endComponents = components(context, end)
191 |
[52/65] Compiling Khac ForwardDateRefiner.swift
/host/spi-builder-workspace/Sources/Khac/Parsers/TimeExpressionParser.swift:189:13: warning: variable 'startComponents' was never mutated; consider changing to 'let' constant
187 |         resolveRange(&start, &end)
188 |
189 |         var startComponents = components(context, start)
    |             `- warning: variable 'startComponents' was never mutated; consider changing to 'let' constant
190 |         var endComponents = components(context, end)
191 |
[53/65] Compiling Khac MergeDateRangeRefiner.swift
/host/spi-builder-workspace/Sources/Khac/Parsers/TimeExpressionParser.swift:189:13: warning: variable 'startComponents' was never mutated; consider changing to 'let' constant
187 |         resolveRange(&start, &end)
188 |
189 |         var startComponents = components(context, start)
    |             `- warning: variable 'startComponents' was never mutated; consider changing to 'let' constant
190 |         var endComponents = components(context, end)
191 |
[54/65] Compiling Khac Regex.swift
[55/65] Compiling Khac ParserSupport.swift
[56/65] Compiling Khac PrecedingText.swift
[57/65] Compiling Khac RelativeDuration.swift
[58/65] Compiling Khac Normalization.swift
[59/65] Compiling Khac Khac.swift
[60/65] Compiling Khac CJKNumerals.swift
[61/66] Wrapping AST for Khac for debugging
[63/73] Compiling KhacCLICore Run.swift
[64/73] Compiling KhacCLICore Event.swift
[65/73] Compiling KhacCLICore SourceLoader.swift
[66/73] Compiling KhacCLICore Output.swift
[67/73] Compiling KhacCLICore LineIndex.swift
/host/spi-builder-workspace/Sources/KhacCLICore/LineIndex.swift:228:27: error: subscript 'subscript(_:)' requires the types 'String.Index' and 'Int' be equivalent
226 |         let head = windowStart > 0 ? "..." : ""
227 |         let tail = windowEnd < text.count ? "..." : ""
228 |         return head + text[lower ..< upper] + tail
    |                           `- error: subscript 'subscript(_:)' requires the types 'String.Index' and 'Int' be equivalent
229 |     }
230 | }
Swift.String.subscript:3:10: note: where 'R.Bound' = 'String.Index'
1 | struct String {
2 | @available(*, unavailable, message: "cannot subscript String with an integer range, use a String.Index range instead.")
3 |   public subscript<R>(bounds: R) -> String where R : RangeExpression, R.Bound == Int { get }}
  |          `- note: where 'R.Bound' = 'String.Index'
4 |
[68/73] Emitting module KhacCLICore
[69/73] Compiling KhacCLICore Arguments.swift
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-53886769-0":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/saguaro1/spi-images:wasm-6.1-latest swift build --swift-sdk wasm32-unknown-wasi 2>&1
wasm-6.1-latest: Pulling from saguaro1/spi-images
Digest: sha256:290f441d1f5b7bf0dbbe61e8b7514208804cdcb507d57b3c762463ad036298f7
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:wasm-6.1-latest
warning: 'spi-builder-workspace': found 13 file(s) which are unhandled; explicitly declare them as resources or exclude from the target
    /host/spi-builder-workspace/Tests/KhacTests/Oracle/SV/extraction-report.json
    /host/spi-builder-workspace/Tests/KhacTests/Oracle/NL/extraction-report.json
    /host/spi-builder-workspace/Tests/KhacTests/Oracle/ES/extraction-report.json
    /host/spi-builder-workspace/Tests/KhacTests/Oracle/DE/extraction-report.json
    /host/spi-builder-workspace/Tests/KhacTests/Oracle/FR/extraction-report.json
    /host/spi-builder-workspace/Tests/KhacTests/Oracle/RU/extraction-report.json
    /host/spi-builder-workspace/Tests/KhacTests/Oracle/README.md
    /host/spi-builder-workspace/Tests/KhacTests/Oracle/PT/extraction-report.json
    /host/spi-builder-workspace/Tests/KhacTests/Oracle/FI/extraction-report.json
    /host/spi-builder-workspace/Tests/KhacTests/Oracle/ZH/extraction-report.json
    /host/spi-builder-workspace/Tests/KhacTests/Oracle/IT/extraction-report.json
    /host/spi-builder-workspace/Tests/KhacTests/Oracle/UK/extraction-report.json
    /host/spi-builder-workspace/Tests/KhacTests/Oracle/JA/extraction-report.json
[0/1] Planning build
Building for debugging...
[0/6] Write swift-version-24593BA9C3E375BF.txt
[2/56] Compiling Khac Engine.swift
/host/spi-builder-workspace/Sources/Khac/Core/Engine.swift:74:17: warning: initialization of immutable value 'locale' was never used; consider replacing with assignment to '_' or removing it
 72 |
 73 |         for (localeIndex, prepared) in locales.enumerated() {
 74 |             let locale = prepared.locale
    |                 `- warning: initialization of immutable value 'locale' was never used; consider replacing with assignment to '_' or removing it
 75 |             let context = ParsingContext(reference: reference, options: options, prepared: prepared, normalization: normalization)
 76 |             lastContext = context
[3/56] Compiling Khac Options.swift
/host/spi-builder-workspace/Sources/Khac/Core/Engine.swift:74:17: warning: initialization of immutable value 'locale' was never used; consider replacing with assignment to '_' or removing it
 72 |
 73 |         for (localeIndex, prepared) in locales.enumerated() {
 74 |             let locale = prepared.locale
    |                 `- warning: initialization of immutable value 'locale' was never used; consider replacing with assignment to '_' or removing it
 75 |             let context = ParsingContext(reference: reference, options: options, prepared: prepared, normalization: normalization)
 76 |             lastContext = context
[4/56] Compiling Khac ParsedResult.swift
/host/spi-builder-workspace/Sources/Khac/Core/Engine.swift:74:17: warning: initialization of immutable value 'locale' was never used; consider replacing with assignment to '_' or removing it
 72 |
 73 |         for (localeIndex, prepared) in locales.enumerated() {
 74 |             let locale = prepared.locale
    |                 `- warning: initialization of immutable value 'locale' was never used; consider replacing with assignment to '_' or removing it
 75 |             let context = ParsingContext(reference: reference, options: options, prepared: prepared, normalization: normalization)
 76 |             lastContext = context
[5/56] Compiling Khac ParsingComponents.swift
/host/spi-builder-workspace/Sources/Khac/Core/Engine.swift:74:17: warning: initialization of immutable value 'locale' was never used; consider replacing with assignment to '_' or removing it
 72 |
 73 |         for (localeIndex, prepared) in locales.enumerated() {
 74 |             let locale = prepared.locale
    |                 `- warning: initialization of immutable value 'locale' was never used; consider replacing with assignment to '_' or removing it
 75 |             let context = ParsingContext(reference: reference, options: options, prepared: prepared, normalization: normalization)
 76 |             lastContext = context
[6/56] Compiling Khac ParsingContext.swift
/host/spi-builder-workspace/Sources/Khac/Core/Engine.swift:74:17: warning: initialization of immutable value 'locale' was never used; consider replacing with assignment to '_' or removing it
 72 |
 73 |         for (localeIndex, prepared) in locales.enumerated() {
 74 |             let locale = prepared.locale
    |                 `- warning: initialization of immutable value 'locale' was never used; consider replacing with assignment to '_' or removing it
 75 |             let context = ParsingContext(reference: reference, options: options, prepared: prepared, normalization: normalization)
 76 |             lastContext = context
[7/56] Compiling Khac PreparedLocale.swift
/host/spi-builder-workspace/Sources/Khac/Core/Engine.swift:74:17: warning: initialization of immutable value 'locale' was never used; consider replacing with assignment to '_' or removing it
 72 |
 73 |         for (localeIndex, prepared) in locales.enumerated() {
 74 |             let locale = prepared.locale
    |                 `- warning: initialization of immutable value 'locale' was never used; consider replacing with assignment to '_' or removing it
 75 |             let context = ParsingContext(reference: reference, options: options, prepared: prepared, normalization: normalization)
 76 |             lastContext = context
[8/56] Compiling Khac ReferencePoint.swift
/host/spi-builder-workspace/Sources/Khac/Core/Engine.swift:74:17: warning: initialization of immutable value 'locale' was never used; consider replacing with assignment to '_' or removing it
 72 |
 73 |         for (localeIndex, prepared) in locales.enumerated() {
 74 |             let locale = prepared.locale
    |                 `- warning: initialization of immutable value 'locale' was never used; consider replacing with assignment to '_' or removing it
 75 |             let context = ParsingContext(reference: reference, options: options, prepared: prepared, normalization: normalization)
 76 |             lastContext = context
[9/62] Emitting module Khac
[10/62] Compiling Khac PTLocale.swift
[11/62] Compiling Khac RULocale.swift
[12/62] Compiling Khac RUParsers.swift
[13/62] Compiling Khac SVLocale.swift
[14/62] Compiling Khac UKLocale.swift
[15/62] Compiling Khac UKParsers.swift
[16/62] Compiling Khac VILocale.swift
[17/62] Compiling Khac Regex.swift
[18/62] Compiling Khac ParserSupport.swift
[19/62] Compiling Khac PrecedingText.swift
[20/62] Compiling Khac RelativeDuration.swift
[21/62] Compiling Khac Normalization.swift
[22/62] Compiling Khac Khac.swift
[23/62] Compiling Khac CJKNumerals.swift
[24/62] Compiling Khac TimeExpressionParser.swift
/host/spi-builder-workspace/Sources/Khac/Parsers/TimeExpressionParser.swift:189:13: warning: variable 'startComponents' was never mutated; consider changing to 'let' constant
187 |         resolveRange(&start, &end)
188 |
189 |         var startComponents = components(context, start)
    |             `- warning: variable 'startComponents' was never mutated; consider changing to 'let' constant
190 |         var endComponents = components(context, end)
191 |
[25/62] Compiling Khac WeekdayParser.swift
/host/spi-builder-workspace/Sources/Khac/Parsers/TimeExpressionParser.swift:189:13: warning: variable 'startComponents' was never mutated; consider changing to 'let' constant
187 |         resolveRange(&start, &end)
188 |
189 |         var startComponents = components(context, start)
    |             `- warning: variable 'startComponents' was never mutated; consider changing to 'let' constant
190 |         var endComponents = components(context, end)
191 |
[26/62] Compiling Khac YearParser.swift
/host/spi-builder-workspace/Sources/Khac/Parsers/TimeExpressionParser.swift:189:13: warning: variable 'startComponents' was never mutated; consider changing to 'let' constant
187 |         resolveRange(&start, &end)
188 |
189 |         var startComponents = components(context, start)
    |             `- warning: variable 'startComponents' was never mutated; consider changing to 'let' constant
190 |         var endComponents = components(context, end)
191 |
[27/62] Compiling Khac ExtractTimezoneOffsetRefiner.swift
/host/spi-builder-workspace/Sources/Khac/Parsers/TimeExpressionParser.swift:189:13: warning: variable 'startComponents' was never mutated; consider changing to 'let' constant
187 |         resolveRange(&start, &end)
188 |
189 |         var startComponents = components(context, start)
    |             `- warning: variable 'startComponents' was never mutated; consider changing to 'let' constant
190 |         var endComponents = components(context, end)
191 |
[28/62] Compiling Khac ExtractYearSuffixRefiner.swift
/host/spi-builder-workspace/Sources/Khac/Parsers/TimeExpressionParser.swift:189:13: warning: variable 'startComponents' was never mutated; consider changing to 'let' constant
187 |         resolveRange(&start, &end)
188 |
189 |         var startComponents = components(context, start)
    |             `- warning: variable 'startComponents' was never mutated; consider changing to 'let' constant
190 |         var endComponents = components(context, end)
191 |
[29/62] Compiling Khac ForwardDateRefiner.swift
/host/spi-builder-workspace/Sources/Khac/Parsers/TimeExpressionParser.swift:189:13: warning: variable 'startComponents' was never mutated; consider changing to 'let' constant
187 |         resolveRange(&start, &end)
188 |
189 |         var startComponents = components(context, start)
    |             `- warning: variable 'startComponents' was never mutated; consider changing to 'let' constant
190 |         var endComponents = components(context, end)
191 |
[30/62] Compiling Khac MergeDateRangeRefiner.swift
/host/spi-builder-workspace/Sources/Khac/Parsers/TimeExpressionParser.swift:189:13: warning: variable 'startComponents' was never mutated; consider changing to 'let' constant
187 |         resolveRange(&start, &end)
188 |
189 |         var startComponents = components(context, start)
    |             `- warning: variable 'startComponents' was never mutated; consider changing to 'let' constant
190 |         var endComponents = components(context, end)
191 |
[31/62] Compiling Khac DELocale.swift
[32/62] Compiling Khac DEParsers.swift
[33/62] Compiling Khac ENLocale.swift
[34/62] Compiling Khac ENParsers.swift
[35/62] Compiling Khac ENRefiners.swift
[36/62] Compiling Khac ESLocale.swift
[37/62] Compiling Khac FILocale.swift
[38/62] Compiling Khac MergeDateTimeRefiner.swift
[39/62] Compiling Khac MergeRelativeAnchorRefiner.swift
[40/62] Compiling Khac MergeWeekdayRefiner.swift
[41/62] Compiling Khac MergingRefiner.swift
[42/62] Compiling Khac OverlapFilterRefiner.swift
[43/62] Compiling Khac UnlikelyFilterRefiner.swift
[44/62] Compiling Khac FIParsers.swift
[45/62] Compiling Khac FRLocale.swift
[46/62] Compiling Khac ITLocale.swift
[47/62] Compiling Khac JALocale.swift
[48/62] Compiling Khac JAParsers.swift
[49/62] Compiling Khac Locale.swift
[50/62] Compiling Khac NLLocale.swift
[51/62] Compiling Khac ZHLocale.swift
[52/62] Compiling Khac ZHParsers.swift
[53/62] Compiling Khac CasualDateParser.swift
[54/62] Compiling Khac ISOParser.swift
[55/62] Compiling Khac MonthNameParser.swift
[56/62] Compiling Khac NumericDateParser.swift
[57/62] Compiling Khac RelativeUnitParser.swift
[58/63] Wrapping AST for Khac for debugging
[60/70] Compiling KhacCLICore Event.swift
[61/70] Compiling KhacCLICore LineIndex.swift
/host/spi-builder-workspace/Sources/KhacCLICore/LineIndex.swift:228:27: error: subscript 'subscript(_:)' requires the types 'String.Index' and 'Int' be equivalent
226 |         let head = windowStart > 0 ? "..." : ""
227 |         let tail = windowEnd < text.count ? "..." : ""
228 |         return head + text[lower ..< upper] + tail
    |                           `- error: subscript 'subscript(_:)' requires the types 'String.Index' and 'Int' be equivalent
229 |     }
230 | }
Swift.String.subscript:3:10: note: where 'R.Bound' = 'String.Index'
1 | struct String {
2 | @available(*, unavailable, message: "cannot subscript String with an integer range, use a String.Index range instead.")
3 |   public subscript<R>(bounds: R) -> String where R : RangeExpression, R.Bound == Int { get }}
  |          `- note: where 'R.Bound' = 'String.Index'
4 |
[62/70] Compiling KhacCLICore Run.swift
[63/70] Compiling KhacCLICore SourceLoader.swift
[64/70] Compiling KhacCLICore Output.swift
[65/70] Emitting module KhacCLICore
[66/70] Compiling KhacCLICore Arguments.swift
BUILD FAILURE 6.1 wasm