The Swift Package Index logo.Swift Package Index

Has it really been five years since Swift Package Index launched? Read our anniversary blog post!

Build Information

Successful build of Trellis, reference v0.4.2-beta (cb3a67), with Swift 6.0 for Linux on 28 Nov 2024 14:56:03 UTC.

Swift 6 data race errors: 19

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4606859-0":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu -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

Build Log

========================================
RunAll
========================================
Builder version: 4.58.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/valentinradu/Trellis.git
Reference: v0.4.2-beta
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/valentinradu/Trellis
 * tag               v0.4.2-beta -> FETCH_HEAD
HEAD is now at cb3a675 Bootstrap is a main actor now
Cloned https://github.com/valentinradu/Trellis.git
Revision (git rev-parse @):
cb3a67537a39565c623efb891b451c82f8390298
SUCCESS checkout https://github.com/valentinradu/Trellis.git at v0.4.2-beta
========================================
Build
========================================
Selected platform:         linux
Swift version:             6.0
Building package at path:  $PWD
https://github.com/valentinradu/Trellis.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-0":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu -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
basic-6.0-latest: Pulling from finestructure/spi-images
Digest: sha256:47d26c99ca4f1ac0a332c85fd5b13ff4390e72115219984a57a68fe9d1063a05
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.0-latest
Fetching https://github.com/wickwirew/Runtime.git
[1/1966] Fetching runtime
Fetched https://github.com/wickwirew/Runtime.git from cache (0.34s)
Computing version for https://github.com/wickwirew/Runtime.git
Computed https://github.com/wickwirew/Runtime.git at 2.2.7 (0.50s)
Creating working copy for https://github.com/wickwirew/Runtime.git
Working copy of https://github.com/wickwirew/Runtime.git resolved at 2.2.7
Building for debugging...
[0/4] Write sources
[2/4] Compiling CRuntime dummy.c
[3/4] Write swift-version-24593BA9C3E375BF.txt
[5/45] Emitting module Runtime
[6/50] Compiling Runtime ProtocolMetadataLayout.swift
[7/50] Compiling Runtime ProtocolTypeContainer.swift
[8/50] Compiling Runtime StructMetadataLayout.swift
[9/50] Compiling Runtime StructTypeDescriptor.swift
[10/50] Compiling Runtime TargetTypeGenericContextDescriptorHeader.swift
[11/50] Compiling Runtime TupleMetadataLayout.swift
[12/50] Compiling Runtime Vector.swift
[13/50] Compiling Runtime GettersSetters.swift
[14/50] Compiling Runtime Pointer+Extensions.swift
[15/50] Compiling Runtime RetainCounts.swift
[16/50] Compiling Runtime String+Extensions.swift
[17/50] Compiling Runtime TypeInfoConvertible.swift
[18/50] Compiling Runtime Pointers.swift
[19/50] Compiling Runtime RelativePointer.swift
[20/50] Compiling Runtime RelativeVectorPointer.swift
[21/50] Compiling Runtime Union.swift
[22/50] Compiling Runtime Errors.swift
[23/50] Compiling Runtime FunctionInfo.swift
[24/50] Compiling Runtime Kind.swift
[25/50] Compiling Runtime PropertyInfo.swift
[26/50] Compiling Runtime TypeInfo.swift
[27/50] Compiling Runtime EnumTypeDescriptor.swift
[28/50] Compiling Runtime ExistentialContainter.swift
[29/50] Compiling Runtime FieldDescriptor.swift
[30/50] Compiling Runtime FunctionMetadataLayout.swift
[31/50] Compiling Runtime MetadataLayoutType.swift
[32/50] Compiling Runtime ProtocolDescriptor.swift
[33/50] Compiling Runtime TypeDescriptor.swift
[34/50] Compiling Runtime ValueWitnessTable.swift
[35/50] Compiling Runtime ClassMetadata.swift
[36/50] Compiling Runtime EnumMetadata.swift
[37/50] Compiling Runtime FuntionMetadata.swift
[38/50] Compiling Runtime Metadata.swift
[39/50] Compiling Runtime MetadataType.swift
[40/50] Compiling Runtime NominalMetadataType.swift
[41/50] Compiling Runtime ProtocolMetadata.swift
[42/50] Compiling Runtime StructMetadata.swift
[43/50] Compiling Runtime TupleMetadata.swift
[44/50] Compiling Runtime Case.swift
[45/50] Compiling Runtime DefaultValue.swift
[46/50] Compiling Runtime Factory.swift
[47/50] Compiling Runtime ClassHeader.swift
[48/50] Compiling Runtime ClassMetadataLayout.swift
[49/50] Compiling Runtime ClassTypeDescriptor.swift
[50/50] Compiling Runtime EnumMetadataLayout.swift
[52/62] Compiling Trellis Environment.swift
/host/spi-builder-workspace/Sources/Trellis/Environment.swift:16:16: warning: static property 'all' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 14 |
 15 | public struct EnvironmentValues {
 16 |     static var all: [AnyHashable: EnvironmentValues] = [:]
    |                |- warning: static property 'all' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'all' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: annotate 'all' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 17 |
 18 |     private var _values: [ObjectIdentifier: Any] = [:]
/host/spi-builder-workspace/Sources/Trellis/Environment.swift:51:16: warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 49 |
 50 | private struct EnvironmentObjectKey: EnvironmentKey {
 51 |     static var defaultValue: EnvironmentObjects = [:]
    |                |- warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'defaultValue' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: annotate 'defaultValue' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 52 | }
 53 |
/host/spi-builder-workspace/Sources/Trellis/Service.swift:84:10: warning: non-sendable type 'EnvironmentValues' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 82 |     func receive(action _: any Action) async throws {}
 83 |
 84 |     func inject<ID>(environment: EnvironmentValues,
    |          `- warning: non-sendable type 'EnvironmentValues' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 85 |                     from parentId: ID) async throws
 86 |         where ID: Identity
/host/spi-builder-workspace/Sources/Trellis/Environment.swift:15:15: note: consider making struct 'EnvironmentValues' conform to the 'Sendable' protocol
 13 | }
 14 |
 15 | public struct EnvironmentValues {
    |               `- note: consider making struct 'EnvironmentValues' conform to the 'Sendable' protocol
 16 |     static var all: [AnyHashable: EnvironmentValues] = [:]
 17 |
/host/spi-builder-workspace/Sources/Trellis/Service.swift:84:10: warning: non-sendable type 'ID' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 82 |     func receive(action _: any Action) async throws {}
 83 |
 84 |     func inject<ID>(environment: EnvironmentValues,
    |          |      `- note: consider making generic parameter 'ID' conform to the 'Sendable' protocol
    |          `- warning: non-sendable type 'ID' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 85 |                     from parentId: ID) async throws
 86 |         where ID: Identity
[53/62] Compiling Trellis Group.swift
/host/spi-builder-workspace/Sources/Trellis/Environment.swift:16:16: warning: static property 'all' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 14 |
 15 | public struct EnvironmentValues {
 16 |     static var all: [AnyHashable: EnvironmentValues] = [:]
    |                |- warning: static property 'all' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'all' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: annotate 'all' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 17 |
 18 |     private var _values: [ObjectIdentifier: Any] = [:]
/host/spi-builder-workspace/Sources/Trellis/Environment.swift:51:16: warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 49 |
 50 | private struct EnvironmentObjectKey: EnvironmentKey {
 51 |     static var defaultValue: EnvironmentObjects = [:]
    |                |- warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'defaultValue' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: annotate 'defaultValue' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 52 | }
 53 |
/host/spi-builder-workspace/Sources/Trellis/Service.swift:84:10: warning: non-sendable type 'EnvironmentValues' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 82 |     func receive(action _: any Action) async throws {}
 83 |
 84 |     func inject<ID>(environment: EnvironmentValues,
    |          `- warning: non-sendable type 'EnvironmentValues' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 85 |                     from parentId: ID) async throws
 86 |         where ID: Identity
/host/spi-builder-workspace/Sources/Trellis/Environment.swift:15:15: note: consider making struct 'EnvironmentValues' conform to the 'Sendable' protocol
 13 | }
 14 |
 15 | public struct EnvironmentValues {
    |               `- note: consider making struct 'EnvironmentValues' conform to the 'Sendable' protocol
 16 |     static var all: [AnyHashable: EnvironmentValues] = [:]
 17 |
/host/spi-builder-workspace/Sources/Trellis/Service.swift:84:10: warning: non-sendable type 'ID' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 82 |     func receive(action _: any Action) async throws {}
 83 |
 84 |     func inject<ID>(environment: EnvironmentValues,
    |          |      `- note: consider making generic parameter 'ID' conform to the 'Sendable' protocol
    |          `- warning: non-sendable type 'ID' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 85 |                     from parentId: ID) async throws
 86 |         where ID: Identity
[54/63] Compiling Trellis Service.swift
/host/spi-builder-workspace/Sources/Trellis/Service.swift:84:10: warning: non-sendable type 'EnvironmentValues' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 82 |     func receive(action _: any Action) async throws {}
 83 |
 84 |     func inject<ID>(environment: EnvironmentValues,
    |          `- warning: non-sendable type 'EnvironmentValues' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 85 |                     from parentId: ID) async throws
 86 |         where ID: Identity
/host/spi-builder-workspace/Sources/Trellis/Environment.swift:15:15: note: consider making struct 'EnvironmentValues' conform to the 'Sendable' protocol
 13 | }
 14 |
 15 | public struct EnvironmentValues {
    |               `- note: consider making struct 'EnvironmentValues' conform to the 'Sendable' protocol
 16 |     static var all: [AnyHashable: EnvironmentValues] = [:]
 17 |
/host/spi-builder-workspace/Sources/Trellis/Service.swift:84:10: warning: non-sendable type 'ID' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 82 |     func receive(action _: any Action) async throws {}
 83 |
 84 |     func inject<ID>(environment: EnvironmentValues,
    |          |      `- note: consider making generic parameter 'ID' conform to the 'Sendable' protocol
    |          `- warning: non-sendable type 'ID' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 85 |                     from parentId: ID) async throws
 86 |         where ID: Identity
/host/spi-builder-workspace/Sources/Trellis/Service.swift:84:10: warning: non-sendable type 'EnvironmentValues' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 82 |     func receive(action _: any Action) async throws {}
 83 |
 84 |     func inject<ID>(environment: EnvironmentValues,
    |          `- warning: non-sendable type 'EnvironmentValues' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 85 |                     from parentId: ID) async throws
 86 |         where ID: Identity
/host/spi-builder-workspace/Sources/Trellis/Environment.swift:15:15: note: consider making struct 'EnvironmentValues' conform to the 'Sendable' protocol
 13 | }
 14 |
 15 | public struct EnvironmentValues {
    |               `- note: consider making struct 'EnvironmentValues' conform to the 'Sendable' protocol
 16 |     static var all: [AnyHashable: EnvironmentValues] = [:]
 17 |
/host/spi-builder-workspace/Sources/Trellis/Service.swift:84:10: warning: non-sendable type 'ID' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 82 |     func receive(action _: any Action) async throws {}
 83 |
 84 |     func inject<ID>(environment: EnvironmentValues,
    |          |      `- note: consider making generic parameter 'ID' conform to the 'Sendable' protocol
    |          `- warning: non-sendable type 'ID' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 85 |                     from parentId: ID) async throws
 86 |         where ID: Identity
/host/spi-builder-workspace/Sources/Trellis/Environment.swift:16:16: warning: static property 'all' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 14 |
 15 | public struct EnvironmentValues {
 16 |     static var all: [AnyHashable: EnvironmentValues] = [:]
    |                |- warning: static property 'all' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'all' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: annotate 'all' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 17 |
 18 |     private var _values: [ObjectIdentifier: Any] = [:]
/host/spi-builder-workspace/Sources/Trellis/Service.swift:96:28: warning: sending 'environment' risks causing data races; this is an error in the Swift 6 language mode
 94 |
 95 |         if Body.self != Never.self {
 96 |             try await body.inject(environment: environment,
    |                            |- warning: sending 'environment' risks causing data races; this is an error in the Swift 6 language mode
    |                            `- note: sending task-isolated 'environment' to main actor-isolated instance method 'inject(environment:from:)' risks causing data races between main actor-isolated and task-isolated uses
 97 |                                   from: id)
 98 |         }
/host/spi-builder-workspace/Sources/Trellis/Service.swift:96:28: warning: sending 'id' risks causing data races; this is an error in the Swift 6 language mode
 94 |
 95 |         if Body.self != Never.self {
 96 |             try await body.inject(environment: environment,
    |                            |- warning: sending 'id' risks causing data races; this is an error in the Swift 6 language mode
    |                            `- note: sending task-isolated 'id' to main actor-isolated instance method 'inject(environment:from:)' risks causing data races between main actor-isolated and task-isolated uses
 97 |                                   from: id)
 98 |         }
/host/spi-builder-workspace/Sources/Trellis/Service.swift:96:28: warning: sending task-isolated value of type 'Self.Body' with later accesses to main actor-isolated context risks causing data races; this is an error in the Swift 6 language mode
 94 |
 95 |         if Body.self != Never.self {
 96 |             try await body.inject(environment: environment,
    |                            `- warning: sending task-isolated value of type 'Self.Body' with later accesses to main actor-isolated context risks causing data races; this is an error in the Swift 6 language mode
 97 |                                   from: id)
 98 |         }
[55/63] Compiling Trellis Service+Environment.swift
/host/spi-builder-workspace/Sources/Trellis/Service+Environment.swift:18:23: warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
16 |
17 | private struct ConcurrencyStrategyKey: EnvironmentKey {
18 |     public static var defaultValue: ConcurrencyStrategy = .concurrent
   |                       |- warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'defaultValue' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: annotate 'defaultValue' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
19 | }
20 |
/host/spi-builder-workspace/Sources/Trellis/Service+Environment.swift:27:16: warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
25 |
26 | private struct FailureStrategyKey: EnvironmentKey {
27 |     static var defaultValue: FailureStrategy = .fail
   |                |- warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'defaultValue' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'defaultValue' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
28 | }
29 |
/host/spi-builder-workspace/Sources/Trellis/Service+Environment.swift:31:16: warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
29 |
30 | private struct IdKey: EnvironmentKey {
31 |     static var defaultValue = AnyHashable(0)
   |                |- warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'defaultValue' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'defaultValue' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
32 | }
33 |
[56/63] Compiling Trellis Service+Middleware.swift
/host/spi-builder-workspace/Sources/Trellis/Service.swift:84:10: warning: non-sendable type 'EnvironmentValues' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 82 |     func receive(action _: any Action) async throws {}
 83 |
 84 |     func inject<ID>(environment: EnvironmentValues,
    |          `- warning: non-sendable type 'EnvironmentValues' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 85 |                     from parentId: ID) async throws
 86 |         where ID: Identity
/host/spi-builder-workspace/Sources/Trellis/Environment.swift:15:15: note: consider making struct 'EnvironmentValues' conform to the 'Sendable' protocol
 13 | }
 14 |
 15 | public struct EnvironmentValues {
    |               `- note: consider making struct 'EnvironmentValues' conform to the 'Sendable' protocol
 16 |     static var all: [AnyHashable: EnvironmentValues] = [:]
 17 |
/host/spi-builder-workspace/Sources/Trellis/Service.swift:84:10: warning: non-sendable type 'ID' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 82 |     func receive(action _: any Action) async throws {}
 83 |
 84 |     func inject<ID>(environment: EnvironmentValues,
    |          |      `- note: consider making generic parameter 'ID' conform to the 'Sendable' protocol
    |          `- warning: non-sendable type 'ID' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 85 |                     from parentId: ID) async throws
 86 |         where ID: Identity
[57/63] Emitting module Trellis
/host/spi-builder-workspace/Sources/Trellis/Bootstrap.swift:13:23: warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
11 |
12 | private struct SendKey: EnvironmentKey {
13 |     public static var defaultValue: Send = { _ in }
   |                       |- warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'defaultValue' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: annotate 'defaultValue' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
14 | }
15 |
/host/spi-builder-workspace/Sources/Trellis/Environment.swift:16:16: warning: static property 'all' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 14 |
 15 | public struct EnvironmentValues {
 16 |     static var all: [AnyHashable: EnvironmentValues] = [:]
    |                |- warning: static property 'all' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'all' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: annotate 'all' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 17 |
 18 |     private var _values: [ObjectIdentifier: Any] = [:]
/host/spi-builder-workspace/Sources/Trellis/Environment.swift:51:16: warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 49 |
 50 | private struct EnvironmentObjectKey: EnvironmentKey {
 51 |     static var defaultValue: EnvironmentObjects = [:]
    |                |- warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'defaultValue' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: annotate 'defaultValue' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 52 | }
 53 |
/host/spi-builder-workspace/Sources/Trellis/Service.swift:84:10: warning: non-sendable type 'EnvironmentValues' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 82 |     func receive(action _: any Action) async throws {}
 83 |
 84 |     func inject<ID>(environment: EnvironmentValues,
    |          `- warning: non-sendable type 'EnvironmentValues' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 85 |                     from parentId: ID) async throws
 86 |         where ID: Identity
/host/spi-builder-workspace/Sources/Trellis/Environment.swift:15:15: note: consider making struct 'EnvironmentValues' conform to the 'Sendable' protocol
 13 | }
 14 |
 15 | public struct EnvironmentValues {
    |               `- note: consider making struct 'EnvironmentValues' conform to the 'Sendable' protocol
 16 |     static var all: [AnyHashable: EnvironmentValues] = [:]
 17 |
/host/spi-builder-workspace/Sources/Trellis/Service.swift:84:10: warning: non-sendable type 'ID' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 82 |     func receive(action _: any Action) async throws {}
 83 |
 84 |     func inject<ID>(environment: EnvironmentValues,
    |          |      `- note: consider making generic parameter 'ID' conform to the 'Sendable' protocol
    |          `- warning: non-sendable type 'ID' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 85 |                     from parentId: ID) async throws
 86 |         where ID: Identity
/host/spi-builder-workspace/Sources/Trellis/Service.swift:84:10: warning: non-sendable type 'EnvironmentValues' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 82 |     func receive(action _: any Action) async throws {}
 83 |
 84 |     func inject<ID>(environment: EnvironmentValues,
    |          `- warning: non-sendable type 'EnvironmentValues' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 85 |                     from parentId: ID) async throws
 86 |         where ID: Identity
/host/spi-builder-workspace/Sources/Trellis/Environment.swift:15:15: note: consider making struct 'EnvironmentValues' conform to the 'Sendable' protocol
 13 | }
 14 |
 15 | public struct EnvironmentValues {
    |               `- note: consider making struct 'EnvironmentValues' conform to the 'Sendable' protocol
 16 |     static var all: [AnyHashable: EnvironmentValues] = [:]
 17 |
/host/spi-builder-workspace/Sources/Trellis/Service.swift:84:10: warning: non-sendable type 'ID' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 82 |     func receive(action _: any Action) async throws {}
 83 |
 84 |     func inject<ID>(environment: EnvironmentValues,
    |          |      `- note: consider making generic parameter 'ID' conform to the 'Sendable' protocol
    |          `- warning: non-sendable type 'ID' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 85 |                     from parentId: ID) async throws
 86 |         where ID: Identity
/host/spi-builder-workspace/Sources/Trellis/Service+Environment.swift:18:23: warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
16 |
17 | private struct ConcurrencyStrategyKey: EnvironmentKey {
18 |     public static var defaultValue: ConcurrencyStrategy = .concurrent
   |                       |- warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'defaultValue' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: annotate 'defaultValue' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
19 | }
20 |
/host/spi-builder-workspace/Sources/Trellis/Service+Environment.swift:27:16: warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
25 |
26 | private struct FailureStrategyKey: EnvironmentKey {
27 |     static var defaultValue: FailureStrategy = .fail
   |                |- warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'defaultValue' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'defaultValue' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
28 | }
29 |
/host/spi-builder-workspace/Sources/Trellis/Service+Environment.swift:31:16: warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
29 |
30 | private struct IdKey: EnvironmentKey {
31 |     static var defaultValue = AnyHashable(0)
   |                |- warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'defaultValue' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'defaultValue' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
32 | }
33 |
/host/spi-builder-workspace/Sources/Trellis/Service.swift:84:10: warning: non-sendable type 'EnvironmentValues' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 82 |     func receive(action _: any Action) async throws {}
 83 |
 84 |     func inject<ID>(environment: EnvironmentValues,
    |          `- warning: non-sendable type 'EnvironmentValues' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 85 |                     from parentId: ID) async throws
 86 |         where ID: Identity
/host/spi-builder-workspace/Sources/Trellis/Environment.swift:15:15: note: consider making struct 'EnvironmentValues' conform to the 'Sendable' protocol
 13 | }
 14 |
 15 | public struct EnvironmentValues {
    |               `- note: consider making struct 'EnvironmentValues' conform to the 'Sendable' protocol
 16 |     static var all: [AnyHashable: EnvironmentValues] = [:]
 17 |
/host/spi-builder-workspace/Sources/Trellis/Service.swift:84:10: warning: non-sendable type 'ID' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 82 |     func receive(action _: any Action) async throws {}
 83 |
 84 |     func inject<ID>(environment: EnvironmentValues,
    |          |      `- note: consider making generic parameter 'ID' conform to the 'Sendable' protocol
    |          `- warning: non-sendable type 'ID' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 85 |                     from parentId: ID) async throws
 86 |         where ID: Identity
/host/spi-builder-workspace/Sources/Trellis/Service.swift:84:10: warning: non-sendable type 'EnvironmentValues' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 82 |     func receive(action _: any Action) async throws {}
 83 |
 84 |     func inject<ID>(environment: EnvironmentValues,
    |          `- warning: non-sendable type 'EnvironmentValues' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 85 |                     from parentId: ID) async throws
 86 |         where ID: Identity
/host/spi-builder-workspace/Sources/Trellis/Environment.swift:15:15: note: consider making struct 'EnvironmentValues' conform to the 'Sendable' protocol
 13 | }
 14 |
 15 | public struct EnvironmentValues {
    |               `- note: consider making struct 'EnvironmentValues' conform to the 'Sendable' protocol
 16 |     static var all: [AnyHashable: EnvironmentValues] = [:]
 17 |
/host/spi-builder-workspace/Sources/Trellis/Service.swift:84:10: warning: non-sendable type 'ID' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 82 |     func receive(action _: any Action) async throws {}
 83 |
 84 |     func inject<ID>(environment: EnvironmentValues,
    |          |      `- note: consider making generic parameter 'ID' conform to the 'Sendable' protocol
    |          `- warning: non-sendable type 'ID' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 85 |                     from parentId: ID) async throws
 86 |         where ID: Identity
/host/spi-builder-workspace/Sources/Trellis/Service.swift:84:10: warning: non-sendable type 'EnvironmentValues' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 82 |     func receive(action _: any Action) async throws {}
 83 |
 84 |     func inject<ID>(environment: EnvironmentValues,
    |          `- warning: non-sendable type 'EnvironmentValues' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 85 |                     from parentId: ID) async throws
 86 |         where ID: Identity
/host/spi-builder-workspace/Sources/Trellis/Environment.swift:15:15: note: consider making struct 'EnvironmentValues' conform to the 'Sendable' protocol
 13 | }
 14 |
 15 | public struct EnvironmentValues {
    |               `- note: consider making struct 'EnvironmentValues' conform to the 'Sendable' protocol
 16 |     static var all: [AnyHashable: EnvironmentValues] = [:]
 17 |
/host/spi-builder-workspace/Sources/Trellis/Service.swift:84:10: warning: non-sendable type 'ID' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 82 |     func receive(action _: any Action) async throws {}
 83 |
 84 |     func inject<ID>(environment: EnvironmentValues,
    |          |      `- note: consider making generic parameter 'ID' conform to the 'Sendable' protocol
    |          `- warning: non-sendable type 'ID' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 85 |                     from parentId: ID) async throws
 86 |         where ID: Identity
/host/spi-builder-workspace/Sources/Trellis/Store.swift:11:16: warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | private struct ModelKey: EnvironmentKey {
11 |     static var defaultValue: Any? = nil
   |                |- warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'defaultValue' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'defaultValue' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
12 | }
13 |
/host/spi-builder-workspace/Sources/Trellis/Service.swift:84:10: warning: non-sendable type 'EnvironmentValues' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 82 |     func receive(action _: any Action) async throws {}
 83 |
 84 |     func inject<ID>(environment: EnvironmentValues,
    |          `- warning: non-sendable type 'EnvironmentValues' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 85 |                     from parentId: ID) async throws
 86 |         where ID: Identity
/host/spi-builder-workspace/Sources/Trellis/Environment.swift:15:15: note: consider making struct 'EnvironmentValues' conform to the 'Sendable' protocol
 13 | }
 14 |
 15 | public struct EnvironmentValues {
    |               `- note: consider making struct 'EnvironmentValues' conform to the 'Sendable' protocol
 16 |     static var all: [AnyHashable: EnvironmentValues] = [:]
 17 |
/host/spi-builder-workspace/Sources/Trellis/Service.swift:84:10: warning: non-sendable type 'ID' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 82 |     func receive(action _: any Action) async throws {}
 83 |
 84 |     func inject<ID>(environment: EnvironmentValues,
    |          |      `- note: consider making generic parameter 'ID' conform to the 'Sendable' protocol
    |          `- warning: non-sendable type 'ID' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 85 |                     from parentId: ID) async throws
 86 |         where ID: Identity
[58/63] Compiling Trellis Bootstrap.swift
/host/spi-builder-workspace/Sources/Trellis/Bootstrap.swift:13:23: warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
11 |
12 | private struct SendKey: EnvironmentKey {
13 |     public static var defaultValue: Send = { _ in }
   |                       |- warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'defaultValue' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: annotate 'defaultValue' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
14 | }
15 |
/host/spi-builder-workspace/Sources/Trellis/Bootstrap.swift:42:19: warning: non-sendable type 'I' in implicitly asynchronous access to main actor-isolated property '_items' cannot cross actor boundary; this is an error in the Swift 6 language mode
22 |
23 | @MainActor
24 | public class Bootstrap<I>
   |                        `- note: consider making generic parameter 'I' conform to the 'Sendable' protocol
25 |     where I: Service
26 | {
   :
40 |
41 |     public nonisolated func send(action: any Action) async throws {
42 |         try await _items.send(action: action,
   |                   `- warning: non-sendable type 'I' in implicitly asynchronous access to main actor-isolated property '_items' cannot cross actor boundary; this is an error in the Swift 6 language mode
43 |                               from: rootHashValue)
44 |     }
/host/spi-builder-workspace/Sources/Trellis/Bootstrap.swift:43:37: warning: non-sendable type 'AnyHashable' in implicitly asynchronous access to main actor-isolated property 'rootHashValue' cannot cross actor boundary; this is an error in the Swift 6 language mode
41 |     public nonisolated func send(action: any Action) async throws {
42 |         try await _items.send(action: action,
43 |                               from: rootHashValue)
   |                                     `- warning: non-sendable type 'AnyHashable' in implicitly asynchronous access to main actor-isolated property 'rootHashValue' cannot cross actor boundary; this is an error in the Swift 6 language mode
44 |     }
45 | }
Swift.AnyHashable:1:23: note: struct 'AnyHashable' does not conform to the 'Sendable' protocol
1 | @frozen public struct AnyHashable {
  |                       `- note: struct 'AnyHashable' does not conform to the 'Sendable' protocol
2 |     public init<H>(_ base: H) where H : Hashable
3 |     public var base: Any { get }
/host/spi-builder-workspace/Sources/Trellis/Bootstrap.swift:33:23: warning: sending '$0' risks causing data races; this is an error in the Swift 6 language mode
31 |         var environment = EnvironmentValues()
32 |         environment.send = { [unowned self] in
33 |             try await send(action: $0)
   |                       |- warning: sending '$0' risks causing data races; this is an error in the Swift 6 language mode
   |                       `- note: sending main actor-isolated '$0' to nonisolated instance method 'send(action:)' risks causing data races between nonisolated and main actor-isolated uses
34 |         }
35 |         try await _items
[59/63] Compiling Trellis Builder.swift
/host/spi-builder-workspace/Sources/Trellis/Bootstrap.swift:13:23: warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
11 |
12 | private struct SendKey: EnvironmentKey {
13 |     public static var defaultValue: Send = { _ in }
   |                       |- warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'defaultValue' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: annotate 'defaultValue' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
14 | }
15 |
/host/spi-builder-workspace/Sources/Trellis/Bootstrap.swift:42:19: warning: non-sendable type 'I' in implicitly asynchronous access to main actor-isolated property '_items' cannot cross actor boundary; this is an error in the Swift 6 language mode
22 |
23 | @MainActor
24 | public class Bootstrap<I>
   |                        `- note: consider making generic parameter 'I' conform to the 'Sendable' protocol
25 |     where I: Service
26 | {
   :
40 |
41 |     public nonisolated func send(action: any Action) async throws {
42 |         try await _items.send(action: action,
   |                   `- warning: non-sendable type 'I' in implicitly asynchronous access to main actor-isolated property '_items' cannot cross actor boundary; this is an error in the Swift 6 language mode
43 |                               from: rootHashValue)
44 |     }
/host/spi-builder-workspace/Sources/Trellis/Bootstrap.swift:43:37: warning: non-sendable type 'AnyHashable' in implicitly asynchronous access to main actor-isolated property 'rootHashValue' cannot cross actor boundary; this is an error in the Swift 6 language mode
41 |     public nonisolated func send(action: any Action) async throws {
42 |         try await _items.send(action: action,
43 |                               from: rootHashValue)
   |                                     `- warning: non-sendable type 'AnyHashable' in implicitly asynchronous access to main actor-isolated property 'rootHashValue' cannot cross actor boundary; this is an error in the Swift 6 language mode
44 |     }
45 | }
Swift.AnyHashable:1:23: note: struct 'AnyHashable' does not conform to the 'Sendable' protocol
1 | @frozen public struct AnyHashable {
  |                       `- note: struct 'AnyHashable' does not conform to the 'Sendable' protocol
2 |     public init<H>(_ base: H) where H : Hashable
3 |     public var base: Any { get }
/host/spi-builder-workspace/Sources/Trellis/Bootstrap.swift:33:23: warning: sending '$0' risks causing data races; this is an error in the Swift 6 language mode
31 |         var environment = EnvironmentValues()
32 |         environment.send = { [unowned self] in
33 |             try await send(action: $0)
   |                       |- warning: sending '$0' risks causing data races; this is an error in the Swift 6 language mode
   |                       `- note: sending main actor-isolated '$0' to nonisolated instance method 'send(action:)' risks causing data races between nonisolated and main actor-isolated uses
34 |         }
35 |         try await _items
[60/63] Compiling Trellis Service+Bootstrap.swift
/host/spi-builder-workspace/Sources/Trellis/Service.swift:84:10: warning: non-sendable type 'EnvironmentValues' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 82 |     func receive(action _: any Action) async throws {}
 83 |
 84 |     func inject<ID>(environment: EnvironmentValues,
    |          `- warning: non-sendable type 'EnvironmentValues' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 85 |                     from parentId: ID) async throws
 86 |         where ID: Identity
/host/spi-builder-workspace/Sources/Trellis/Environment.swift:15:15: note: consider making struct 'EnvironmentValues' conform to the 'Sendable' protocol
 13 | }
 14 |
 15 | public struct EnvironmentValues {
    |               `- note: consider making struct 'EnvironmentValues' conform to the 'Sendable' protocol
 16 |     static var all: [AnyHashable: EnvironmentValues] = [:]
 17 |
/host/spi-builder-workspace/Sources/Trellis/Service.swift:84:10: warning: non-sendable type 'ID' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 82 |     func receive(action _: any Action) async throws {}
 83 |
 84 |     func inject<ID>(environment: EnvironmentValues,
    |          |      `- note: consider making generic parameter 'ID' conform to the 'Sendable' protocol
    |          `- warning: non-sendable type 'ID' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 85 |                     from parentId: ID) async throws
 86 |         where ID: Identity
/host/spi-builder-workspace/Sources/Trellis/Service+Emitter.swift:33:33: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
31 |         _items
32 |             .bootstrap {
33 |                 let task = Task {
   |                                 `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
34 |                     for await action in _stream {
   |                                         `- note: closure captures 'self' which is accessible to code in the current task
35 |                         try await _send(action)
36 |                     }
[61/63] Compiling Trellis Service+Emitter.swift
/host/spi-builder-workspace/Sources/Trellis/Service.swift:84:10: warning: non-sendable type 'EnvironmentValues' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 82 |     func receive(action _: any Action) async throws {}
 83 |
 84 |     func inject<ID>(environment: EnvironmentValues,
    |          `- warning: non-sendable type 'EnvironmentValues' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 85 |                     from parentId: ID) async throws
 86 |         where ID: Identity
/host/spi-builder-workspace/Sources/Trellis/Environment.swift:15:15: note: consider making struct 'EnvironmentValues' conform to the 'Sendable' protocol
 13 | }
 14 |
 15 | public struct EnvironmentValues {
    |               `- note: consider making struct 'EnvironmentValues' conform to the 'Sendable' protocol
 16 |     static var all: [AnyHashable: EnvironmentValues] = [:]
 17 |
/host/spi-builder-workspace/Sources/Trellis/Service.swift:84:10: warning: non-sendable type 'ID' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 82 |     func receive(action _: any Action) async throws {}
 83 |
 84 |     func inject<ID>(environment: EnvironmentValues,
    |          |      `- note: consider making generic parameter 'ID' conform to the 'Sendable' protocol
    |          `- warning: non-sendable type 'ID' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 85 |                     from parentId: ID) async throws
 86 |         where ID: Identity
/host/spi-builder-workspace/Sources/Trellis/Service+Emitter.swift:33:33: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
31 |         _items
32 |             .bootstrap {
33 |                 let task = Task {
   |                                 `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
34 |                     for await action in _stream {
   |                                         `- note: closure captures 'self' which is accessible to code in the current task
35 |                         try await _send(action)
36 |                     }
[62/63] Compiling Trellis Service+Tuple.swift
/host/spi-builder-workspace/Sources/Trellis/Environment.swift:16:16: warning: static property 'all' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 14 |
 15 | public struct EnvironmentValues {
 16 |     static var all: [AnyHashable: EnvironmentValues] = [:]
    |                |- warning: static property 'all' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'all' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: annotate 'all' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 17 |
 18 |     private var _values: [ObjectIdentifier: Any] = [:]
/host/spi-builder-workspace/Sources/Trellis/Service+Tuple.swift:148:39: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
146 |                 try await withThrowingTaskGroup(of: Void.self) { [_children] group in
147 |                     for child in _children {
148 |                         group.addTask {
    |                                       `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
149 |                             try await child.send(action: action,
    |                                       |                  `- note: closure captures non-Sendable 'action'
    |                                       `- note: closure captures non-Sendable 'child'
150 |                                                  from: id)
    |                                                        `- note: closure captures non-Sendable 'id'
151 |                         }
152 |                     }
/host/spi-builder-workspace/Sources/Trellis/Service+Tuple.swift:159:39: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
157 |                 await withThrowingTaskGroup(of: Void.self) { [_children] group in
158 |                     for child in _children {
159 |                         group.addTask {
    |                                       `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
160 |                             try await child.send(action: action,
    |                                       |                  `- note: closure captures non-Sendable 'action'
    |                                       `- note: closure captures non-Sendable 'child'
161 |                                                  from: id)
    |                                                        `- note: closure captures non-Sendable 'id'
162 |                         }
163 |                     }
/host/spi-builder-workspace/Sources/Trellis/Service+Tuple.swift:167:43: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
165 |                     while let result = await group.nextResult() {
166 |                         if case let .failure(error) = result {
167 |                             group.addTask {
    |                                           `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
168 |                                 try await _send(handler(error))
    |                                                 `- note: closure captures 'handler' which is accessible to code in the current task
169 |                             }
170 |                         }
[63/63] Compiling Trellis Store.swift
/host/spi-builder-workspace/Sources/Trellis/Store.swift:11:16: warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 9 |
10 | private struct ModelKey: EnvironmentKey {
11 |     static var defaultValue: Any? = nil
   |                |- warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'defaultValue' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'defaultValue' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
12 | }
13 |
/host/spi-builder-workspace/Sources/Trellis/Service.swift:84:10: warning: non-sendable type 'EnvironmentValues' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 82 |     func receive(action _: any Action) async throws {}
 83 |
 84 |     func inject<ID>(environment: EnvironmentValues,
    |          `- warning: non-sendable type 'EnvironmentValues' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 85 |                     from parentId: ID) async throws
 86 |         where ID: Identity
/host/spi-builder-workspace/Sources/Trellis/Environment.swift:15:15: note: consider making struct 'EnvironmentValues' conform to the 'Sendable' protocol
 13 | }
 14 |
 15 | public struct EnvironmentValues {
    |               `- note: consider making struct 'EnvironmentValues' conform to the 'Sendable' protocol
 16 |     static var all: [AnyHashable: EnvironmentValues] = [:]
 17 |
/host/spi-builder-workspace/Sources/Trellis/Service.swift:84:10: warning: non-sendable type 'ID' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 82 |     func receive(action _: any Action) async throws {}
 83 |
 84 |     func inject<ID>(environment: EnvironmentValues,
    |          |      `- note: consider making generic parameter 'ID' conform to the 'Sendable' protocol
    |          `- warning: non-sendable type 'ID' in parameter of the protocol requirement satisfied by nonisolated instance method 'inject(environment:from:)' cannot cross actor boundary; this is an error in the Swift 6 language mode
 85 |                     from parentId: ID) async throws
 86 |         where ID: Identity
Build complete! (17.41s)
Build complete.
{
  "dependencies" : [
    {
      "identity" : "runtime",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "2.2.4",
            "upper_bound" : "3.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/wickwirew/Runtime.git"
    }
  ],
  "manifest_display_name" : "Trellis",
  "name" : "Trellis",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "14.0"
    },
    {
      "name" : "macos",
      "version" : "11.0"
    },
    {
      "name" : "tvos",
      "version" : "14.0"
    },
    {
      "name" : "maccatalyst",
      "version" : "14.0"
    },
    {
      "name" : "watchos",
      "version" : "7.0"
    },
    {
      "name" : "driverkit",
      "version" : "20.0"
    }
  ],
  "products" : [
    {
      "name" : "Trellis",
      "targets" : [
        "Trellis"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "TrellisTests",
      "module_type" : "SwiftTarget",
      "name" : "TrellisTests",
      "path" : "Tests/TrellisTests",
      "sources" : [
        "Fixtures.swift",
        "ServiceTests.swift"
      ],
      "target_dependencies" : [
        "Trellis"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Trellis",
      "module_type" : "SwiftTarget",
      "name" : "Trellis",
      "path" : "Sources/Trellis",
      "product_dependencies" : [
        "Runtime"
      ],
      "product_memberships" : [
        "Trellis"
      ],
      "sources" : [
        "Bootstrap.swift",
        "Builder.swift",
        "Environment.swift",
        "Group.swift",
        "Service+Bootstrap.swift",
        "Service+Emitter.swift",
        "Service+Environment.swift",
        "Service+Middleware.swift",
        "Service+Tuple.swift",
        "Service.swift",
        "Store.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.5"
}
basic-6.0-latest: Pulling from finestructure/spi-images
Digest: sha256:47d26c99ca4f1ac0a332c85fd5b13ff4390e72115219984a57a68fe9d1063a05
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.0-latest
Done.