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

Failed to build InterposeKit, reference master (d775be), with Swift 6.1 for Linux on 25 Nov 2025 15:22:34 UTC.

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4609320-1":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/finestructure/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu 2>&1

Build Log

========================================
RunAll
========================================
Builder version: 4.68.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/steipete/InterposeKit.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/steipete/InterposeKit
 * branch            master     -> FETCH_HEAD
 * [new branch]      master     -> origin/master
HEAD is now at d775bea ci: enable manual dispatch and use default Xcode
Cloned https://github.com/steipete/InterposeKit.git
Revision (git rev-parse @):
d775bea638e130edf62f3aaab8939dd3b764c0af
SUCCESS checkout https://github.com/steipete/InterposeKit.git at master
========================================
Build
========================================
Selected platform:         linux
Swift version:             6.1
Building package at path:  $PWD
https://github.com/steipete/InterposeKit.git
https://github.com/steipete/InterposeKit.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
{
  "dependencies" : [
  ],
  "manifest_display_name" : "InterposeKit",
  "name" : "InterposeKit",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "11.0"
    },
    {
      "name" : "macos",
      "version" : "10.13"
    },
    {
      "name" : "tvos",
      "version" : "11.0"
    },
    {
      "name" : "watchos",
      "version" : "5.0"
    }
  ],
  "products" : [
    {
      "name" : "InterposeKit",
      "targets" : [
        "InterposeKit"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "SuperBuilder",
      "module_type" : "ClangTarget",
      "name" : "SuperBuilder",
      "path" : "Sources/SuperBuilder",
      "product_memberships" : [
        "InterposeKit"
      ],
      "sources" : [
        "src/ITKSuperBuilder.m"
      ],
      "type" : "library"
    },
    {
      "c99name" : "InterposeKitTests",
      "module_type" : "SwiftTarget",
      "name" : "InterposeKitTests",
      "path" : "Tests/InterposeKitTests",
      "sources" : [
        "InterposeKitTestCase.swift",
        "InterposeKitTests.swift",
        "KVOTests.swift",
        "MultipleInterposing.swift",
        "ObjectInterposeTests.swift",
        "TestClass.swift",
        "XCTestManifests.swift"
      ],
      "target_dependencies" : [
        "InterposeKit"
      ],
      "type" : "test"
    },
    {
      "c99name" : "InterposeKit",
      "module_type" : "SwiftTarget",
      "name" : "InterposeKit",
      "path" : "Sources/InterposeKit",
      "product_memberships" : [
        "InterposeKit"
      ],
      "sources" : [
        "AnyHook.swift",
        "ClassHook.swift",
        "HookFinder.swift",
        "InterposeError.swift",
        "InterposeKit.swift",
        "InterposeSubclass.swift",
        "LinuxCompileSupport.swift",
        "ObjectHook.swift",
        "Watcher.swift"
      ],
      "target_dependencies" : [
        "SuperBuilder"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.0"
}
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-1":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/finestructure/spi-images:basic-6.1-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.1-latest: Pulling from finestructure/spi-images
Digest: sha256:4d72617259f6eef9908440c49a67b79bc4f973ae19f78187418ddfb5b178d4ec
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.1-latest
Building for debugging...
[0/3] Write sources
[1/3] Compiling ITKSuperBuilder.m
[2/3] Write swift-version-24593BA9C3E375BF.txt
[4/12] Compiling InterposeKit InterposeError.swift
/host/spi-builder-workspace/Sources/InterposeKit/InterposeError.swift:6:10: warning: associated value 'methodNotFound' of 'Sendable'-conforming enum 'InterposeError' has non-sendable type 'Selector'; this is an error in the Swift 6 language mode
 4 | public enum InterposeError: LocalizedError {
 5 |     /// The method couldn't be found. Usually happens for when you use stringified selectors that do not exist.
 6 |     case methodNotFound(AnyClass, Selector)
   |          `- warning: associated value 'methodNotFound' of 'Sendable'-conforming enum 'InterposeError' has non-sendable type 'Selector'; this is an error in the Swift 6 language mode
 7 |
 8 |     /// The implementation could not be found. Class must be in a weird state for this to happen.
/host/spi-builder-workspace/Sources/InterposeKit/LinuxCompileSupport.swift:6:15: note: consider making struct 'Selector' conform to the 'Sendable' protocol
 4 | #if os(Linux)
 5 | /// :nodoc: Selector
 6 | public struct Selector: Equatable {
   |               `- note: consider making struct 'Selector' conform to the 'Sendable' protocol
 7 |     var name: String?
 8 |     init(_ name: String) { self.name = name }
/host/spi-builder-workspace/Sources/InterposeKit/InterposeError.swift:9:10: warning: associated value 'nonExistingImplementation' of 'Sendable'-conforming enum 'InterposeError' has non-sendable type 'Selector'; this is an error in the Swift 6 language mode
 7 |
 8 |     /// The implementation could not be found. Class must be in a weird state for this to happen.
 9 |     case nonExistingImplementation(AnyClass, Selector)
   |          `- warning: associated value 'nonExistingImplementation' of 'Sendable'-conforming enum 'InterposeError' has non-sendable type 'Selector'; this is an error in the Swift 6 language mode
10 |
11 |     /// Someone else changed the implementation; reverting removed this implementation.
/host/spi-builder-workspace/Sources/InterposeKit/LinuxCompileSupport.swift:6:15: note: consider making struct 'Selector' conform to the 'Sendable' protocol
 4 | #if os(Linux)
 5 | /// :nodoc: Selector
 6 | public struct Selector: Equatable {
   |               `- note: consider making struct 'Selector' conform to the 'Sendable' protocol
 7 |     var name: String?
 8 |     init(_ name: String) { self.name = name }
/host/spi-builder-workspace/Sources/InterposeKit/InterposeError.swift:13:10: warning: associated value 'unexpectedImplementation' of 'Sendable'-conforming enum 'InterposeError' has non-sendable type 'Selector'; this is an error in the Swift 6 language mode
11 |     /// Someone else changed the implementation; reverting removed this implementation.
12 |     /// This is bad, likely someone else also hooked this method. If you are in such a codebase, do not use revert.
13 |     case unexpectedImplementation(AnyClass, Selector, IMP?)
   |          `- warning: associated value 'unexpectedImplementation' of 'Sendable'-conforming enum 'InterposeError' has non-sendable type 'Selector'; this is an error in the Swift 6 language mode
14 |
15 |     /// Unable to register subclass for object-based interposing.
/host/spi-builder-workspace/Sources/InterposeKit/LinuxCompileSupport.swift:6:15: note: consider making struct 'Selector' conform to the 'Sendable' protocol
 4 | #if os(Linux)
 5 | /// :nodoc: Selector
 6 | public struct Selector: Equatable {
   |               `- note: consider making struct 'Selector' conform to the 'Sendable' protocol
 7 |     var name: String?
 8 |     init(_ name: String) { self.name = name }
/host/spi-builder-workspace/Sources/InterposeKit/InterposeError.swift:13:10: warning: associated value 'unexpectedImplementation' of 'Sendable'-conforming enum 'InterposeError' has non-sendable type 'IMP'; this is an error in the Swift 6 language mode
11 |     /// Someone else changed the implementation; reverting removed this implementation.
12 |     /// This is bad, likely someone else also hooked this method. If you are in such a codebase, do not use revert.
13 |     case unexpectedImplementation(AnyClass, Selector, IMP?)
   |          `- warning: associated value 'unexpectedImplementation' of 'Sendable'-conforming enum 'InterposeError' has non-sendable type 'IMP'; this is an error in the Swift 6 language mode
14 |
15 |     /// Unable to register subclass for object-based interposing.
/host/spi-builder-workspace/Sources/InterposeKit/LinuxCompileSupport.swift:11:15: note: consider making struct 'IMP' conform to the 'Sendable' protocol
 9 | }
10 | /// :nodoc: IMP
11 | public struct IMP: Equatable {}
   |               `- note: consider making struct 'IMP' conform to the 'Sendable' protocol
12 | /// :nodoc: Method
13 | public struct Method {}
/host/spi-builder-workspace/Sources/InterposeKit/InterposeError.swift:19:10: warning: associated value 'unableToAddMethod' of 'Sendable'-conforming enum 'InterposeError' has non-sendable type 'Selector'; this is an error in the Swift 6 language mode
17 |
18 |     /// Unable to add method  for object-based interposing.
19 |     case unableToAddMethod(AnyClass, Selector)
   |          `- warning: associated value 'unableToAddMethod' of 'Sendable'-conforming enum 'InterposeError' has non-sendable type 'Selector'; this is an error in the Swift 6 language mode
20 |
21 |     /// Object-based hooking does not work if an object is using KVO.
/host/spi-builder-workspace/Sources/InterposeKit/LinuxCompileSupport.swift:6:15: note: consider making struct 'Selector' conform to the 'Sendable' protocol
 4 | #if os(Linux)
 5 | /// :nodoc: Selector
 6 | public struct Selector: Equatable {
   |               `- note: consider making struct 'Selector' conform to the 'Sendable' protocol
 7 |     var name: String?
 8 |     init(_ name: String) { self.name = name }
/host/spi-builder-workspace/Sources/InterposeKit/InterposeError.swift:24:10: warning: associated value 'keyValueObservationDetected' of 'Sendable'-conforming enum 'InterposeError' has non-sendable type 'AnyObject'; this is an error in the Swift 6 language mode
22 |     /// The KVO mechanism also uses subclasses created at runtime but doesn't check for additional overrides.
23 |     /// Adding a hook eventually crashes the KVO management code so we reject hooking altogether in this case.
24 |     case keyValueObservationDetected(AnyObject)
   |          `- warning: associated value 'keyValueObservationDetected' of 'Sendable'-conforming enum 'InterposeError' has non-sendable type 'AnyObject'; this is an error in the Swift 6 language mode
25 |
26 |     /// Object is lying about it's actual class metadata.
/host/spi-builder-workspace/Sources/InterposeKit/InterposeError.swift:32:10: warning: associated value 'objectPosingAsDifferentClass(_:actualClass:)' of 'Sendable'-conforming enum 'InterposeError' has non-sendable type 'AnyObject'; this is an error in the Swift 6 language mode
30 |     /// @note Printing classes in Swift uses the class posing mechanism.
31 |     /// Use `NSClassFromString` to get the correct name.
32 |     case objectPosingAsDifferentClass(AnyObject, actualClass: AnyClass)
   |          `- warning: associated value 'objectPosingAsDifferentClass(_:actualClass:)' of 'Sendable'-conforming enum 'InterposeError' has non-sendable type 'AnyObject'; this is an error in the Swift 6 language mode
33 |
34 |     /// Can't revert or apply if already done so.
/host/spi-builder-workspace/Sources/InterposeKit/InterposeError.swift:35:10: warning: associated value 'invalidState(expectedState:)' of 'Sendable'-conforming enum 'InterposeError' has non-sendable type 'AnyHook.State'; this is an error in the Swift 6 language mode
33 |
34 |     /// Can't revert or apply if already done so.
35 |     case invalidState(expectedState: AnyHook.State)
   |          `- warning: associated value 'invalidState(expectedState:)' of 'Sendable'-conforming enum 'InterposeError' has non-sendable type 'AnyHook.State'; this is an error in the Swift 6 language mode
36 |
37 |     /// Unable to remove hook.
/host/spi-builder-workspace/Sources/InterposeKit/AnyHook.swift:21:17: note: consider making enum 'State' conform to the 'Sendable' protocol
 19 |
 20 |     /// The possible task states
 21 |     public enum State: Equatable {
    |                 `- note: consider making enum 'State' conform to the 'Sendable' protocol
 22 |         /// The task is prepared to be nterposed.
 23 |         case prepared
error: emit-module command failed with exit code 1 (use -v to see invocation)
[5/13] Compiling InterposeKit HookFinder.swift
/host/spi-builder-workspace/Sources/InterposeKit/HookFinder.swift:6:20: warning: static property 'hookForBlock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 4 |
 5 |     private struct AssociatedKeys {
 6 |         static var hookForBlock: UInt8 = 0
   |                    |- warning: static property 'hookForBlock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: convert 'hookForBlock' to a 'let' constant to make 'Sendable' shared state immutable
   |                    |- note: add '@MainActor' to make static property 'hookForBlock' part of global actor 'MainActor'
   |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 7 |     }
 8 |
[6/13] Compiling InterposeKit AnyHook.swift
[7/13] Compiling InterposeKit ClassHook.swift
[8/13] Emitting module InterposeKit
/host/spi-builder-workspace/Sources/InterposeKit/HookFinder.swift:6:20: warning: static property 'hookForBlock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 4 |
 5 |     private struct AssociatedKeys {
 6 |         static var hookForBlock: UInt8 = 0
   |                    |- warning: static property 'hookForBlock' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: convert 'hookForBlock' to a 'let' constant to make 'Sendable' shared state immutable
   |                    |- note: add '@MainActor' to make static property 'hookForBlock' part of global actor 'MainActor'
   |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 7 |     }
 8 |
/host/spi-builder-workspace/Sources/InterposeKit/InterposeError.swift:6:10: warning: associated value 'methodNotFound' of 'Sendable'-conforming enum 'InterposeError' has non-sendable type 'Selector'; this is an error in the Swift 6 language mode
 4 | public enum InterposeError: LocalizedError {
 5 |     /// The method couldn't be found. Usually happens for when you use stringified selectors that do not exist.
 6 |     case methodNotFound(AnyClass, Selector)
   |          `- warning: associated value 'methodNotFound' of 'Sendable'-conforming enum 'InterposeError' has non-sendable type 'Selector'; this is an error in the Swift 6 language mode
 7 |
 8 |     /// The implementation could not be found. Class must be in a weird state for this to happen.
/host/spi-builder-workspace/Sources/InterposeKit/LinuxCompileSupport.swift:6:15: note: consider making struct 'Selector' conform to the 'Sendable' protocol
 4 | #if os(Linux)
 5 | /// :nodoc: Selector
 6 | public struct Selector: Equatable {
   |               `- note: consider making struct 'Selector' conform to the 'Sendable' protocol
 7 |     var name: String?
 8 |     init(_ name: String) { self.name = name }
/host/spi-builder-workspace/Sources/InterposeKit/InterposeError.swift:9:10: warning: associated value 'nonExistingImplementation' of 'Sendable'-conforming enum 'InterposeError' has non-sendable type 'Selector'; this is an error in the Swift 6 language mode
 7 |
 8 |     /// The implementation could not be found. Class must be in a weird state for this to happen.
 9 |     case nonExistingImplementation(AnyClass, Selector)
   |          `- warning: associated value 'nonExistingImplementation' of 'Sendable'-conforming enum 'InterposeError' has non-sendable type 'Selector'; this is an error in the Swift 6 language mode
10 |
11 |     /// Someone else changed the implementation; reverting removed this implementation.
/host/spi-builder-workspace/Sources/InterposeKit/LinuxCompileSupport.swift:6:15: note: consider making struct 'Selector' conform to the 'Sendable' protocol
 4 | #if os(Linux)
 5 | /// :nodoc: Selector
 6 | public struct Selector: Equatable {
   |               `- note: consider making struct 'Selector' conform to the 'Sendable' protocol
 7 |     var name: String?
 8 |     init(_ name: String) { self.name = name }
/host/spi-builder-workspace/Sources/InterposeKit/InterposeError.swift:13:10: warning: associated value 'unexpectedImplementation' of 'Sendable'-conforming enum 'InterposeError' has non-sendable type 'Selector'; this is an error in the Swift 6 language mode
11 |     /// Someone else changed the implementation; reverting removed this implementation.
12 |     /// This is bad, likely someone else also hooked this method. If you are in such a codebase, do not use revert.
13 |     case unexpectedImplementation(AnyClass, Selector, IMP?)
   |          `- warning: associated value 'unexpectedImplementation' of 'Sendable'-conforming enum 'InterposeError' has non-sendable type 'Selector'; this is an error in the Swift 6 language mode
14 |
15 |     /// Unable to register subclass for object-based interposing.
/host/spi-builder-workspace/Sources/InterposeKit/LinuxCompileSupport.swift:6:15: note: consider making struct 'Selector' conform to the 'Sendable' protocol
 4 | #if os(Linux)
 5 | /// :nodoc: Selector
 6 | public struct Selector: Equatable {
   |               `- note: consider making struct 'Selector' conform to the 'Sendable' protocol
 7 |     var name: String?
 8 |     init(_ name: String) { self.name = name }
/host/spi-builder-workspace/Sources/InterposeKit/InterposeError.swift:13:10: warning: associated value 'unexpectedImplementation' of 'Sendable'-conforming enum 'InterposeError' has non-sendable type 'IMP'; this is an error in the Swift 6 language mode
11 |     /// Someone else changed the implementation; reverting removed this implementation.
12 |     /// This is bad, likely someone else also hooked this method. If you are in such a codebase, do not use revert.
13 |     case unexpectedImplementation(AnyClass, Selector, IMP?)
   |          `- warning: associated value 'unexpectedImplementation' of 'Sendable'-conforming enum 'InterposeError' has non-sendable type 'IMP'; this is an error in the Swift 6 language mode
14 |
15 |     /// Unable to register subclass for object-based interposing.
/host/spi-builder-workspace/Sources/InterposeKit/LinuxCompileSupport.swift:11:15: note: consider making struct 'IMP' conform to the 'Sendable' protocol
 9 | }
10 | /// :nodoc: IMP
11 | public struct IMP: Equatable {}
   |               `- note: consider making struct 'IMP' conform to the 'Sendable' protocol
12 | /// :nodoc: Method
13 | public struct Method {}
/host/spi-builder-workspace/Sources/InterposeKit/InterposeError.swift:19:10: warning: associated value 'unableToAddMethod' of 'Sendable'-conforming enum 'InterposeError' has non-sendable type 'Selector'; this is an error in the Swift 6 language mode
17 |
18 |     /// Unable to add method  for object-based interposing.
19 |     case unableToAddMethod(AnyClass, Selector)
   |          `- warning: associated value 'unableToAddMethod' of 'Sendable'-conforming enum 'InterposeError' has non-sendable type 'Selector'; this is an error in the Swift 6 language mode
20 |
21 |     /// Object-based hooking does not work if an object is using KVO.
/host/spi-builder-workspace/Sources/InterposeKit/LinuxCompileSupport.swift:6:15: note: consider making struct 'Selector' conform to the 'Sendable' protocol
 4 | #if os(Linux)
 5 | /// :nodoc: Selector
 6 | public struct Selector: Equatable {
   |               `- note: consider making struct 'Selector' conform to the 'Sendable' protocol
 7 |     var name: String?
 8 |     init(_ name: String) { self.name = name }
/host/spi-builder-workspace/Sources/InterposeKit/InterposeError.swift:24:10: warning: associated value 'keyValueObservationDetected' of 'Sendable'-conforming enum 'InterposeError' has non-sendable type 'AnyObject'; this is an error in the Swift 6 language mode
22 |     /// The KVO mechanism also uses subclasses created at runtime but doesn't check for additional overrides.
23 |     /// Adding a hook eventually crashes the KVO management code so we reject hooking altogether in this case.
24 |     case keyValueObservationDetected(AnyObject)
   |          `- warning: associated value 'keyValueObservationDetected' of 'Sendable'-conforming enum 'InterposeError' has non-sendable type 'AnyObject'; this is an error in the Swift 6 language mode
25 |
26 |     /// Object is lying about it's actual class metadata.
/host/spi-builder-workspace/Sources/InterposeKit/InterposeError.swift:32:10: warning: associated value 'objectPosingAsDifferentClass(_:actualClass:)' of 'Sendable'-conforming enum 'InterposeError' has non-sendable type 'AnyObject'; this is an error in the Swift 6 language mode
30 |     /// @note Printing classes in Swift uses the class posing mechanism.
31 |     /// Use `NSClassFromString` to get the correct name.
32 |     case objectPosingAsDifferentClass(AnyObject, actualClass: AnyClass)
   |          `- warning: associated value 'objectPosingAsDifferentClass(_:actualClass:)' of 'Sendable'-conforming enum 'InterposeError' has non-sendable type 'AnyObject'; this is an error in the Swift 6 language mode
33 |
34 |     /// Can't revert or apply if already done so.
/host/spi-builder-workspace/Sources/InterposeKit/InterposeError.swift:35:10: warning: associated value 'invalidState(expectedState:)' of 'Sendable'-conforming enum 'InterposeError' has non-sendable type 'AnyHook.State'; this is an error in the Swift 6 language mode
33 |
34 |     /// Can't revert or apply if already done so.
35 |     case invalidState(expectedState: AnyHook.State)
   |          `- warning: associated value 'invalidState(expectedState:)' of 'Sendable'-conforming enum 'InterposeError' has non-sendable type 'AnyHook.State'; this is an error in the Swift 6 language mode
36 |
37 |     /// Unable to remove hook.
/host/spi-builder-workspace/Sources/InterposeKit/AnyHook.swift:21:17: note: consider making enum 'State' conform to the 'Sendable' protocol
 19 |
 20 |     /// The possible task states
 21 |     public enum State: Equatable {
    |                 `- note: consider making enum 'State' conform to the 'Sendable' protocol
 22 |         /// The task is prepared to be nterposed.
 23 |         case prepared
/host/spi-builder-workspace/Sources/InterposeKit/InterposeKit.swift:168:23: warning: static property 'isLoggingEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
166 | extension Interpose {
167 |     /// Logging uses print and is minimal.
168 |     public static var isLoggingEnabled = false
    |                       |- warning: static property 'isLoggingEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'isLoggingEnabled' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: add '@MainActor' to make static property 'isLoggingEnabled' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
169 |
170 |     /// Simple log wrapper for print.
/host/spi-builder-workspace/Sources/InterposeKit/InterposeKit.swift:11:29: warning: cast from 'NSObject' to unrelated type 'AnyClass' (aka 'any AnyObject.Type') always fails
  9 |         _ implementation: (TypedHook<MethodSignature, HookSignature>) -> HookSignature?) throws -> AnyHook {
 10 |
 11 |         if let klass = self as? AnyClass {
    |                             `- warning: cast from 'NSObject' to unrelated type 'AnyClass' (aka 'any AnyObject.Type') always fails
 12 |             return try Interpose.ClassHook(class: klass, selector: selector, implementation: implementation).apply()
 13 |         } else {
/host/spi-builder-workspace/Sources/InterposeKit/InterposeSubclass.swift:10:20: warning: static property 'getClass' is not concurrency-safe because non-'Sendable' type 'Selector' may have shared mutable state; this is an error in the Swift 6 language mode
  8 |
  9 |     enum ObjCSelector {
 10 |         static let getClass = Selector((("class")))
    |                    |- warning: static property 'getClass' is not concurrency-safe because non-'Sendable' type 'Selector' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: add '@MainActor' to make static property 'getClass' part of global actor 'MainActor'
    |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 11 |     }
 12 |
/host/spi-builder-workspace/Sources/InterposeKit/LinuxCompileSupport.swift:6:15: note: consider making struct 'Selector' conform to the 'Sendable' protocol
 4 | #if os(Linux)
 5 | /// :nodoc: Selector
 6 | public struct Selector: Equatable {
   |               `- note: consider making struct 'Selector' conform to the 'Sendable' protocol
 7 |     var name: String?
 8 |     init(_ name: String) { self.name = name }
/host/spi-builder-workspace/Sources/InterposeKit/InterposeSubclass.swift:14:20: warning: static property 'getClass' is not concurrency-safe because non-'Sendable' type 'UnsafePointer<CChar>' (aka 'UnsafePointer<Int8>') may have shared mutable state; this is an error in the Swift 6 language mode
 12 |
 13 |     enum ObjCMethodEncoding {
 14 |         static let getClass = extract("#@:")
    |                    |- warning: static property 'getClass' is not concurrency-safe because non-'Sendable' type 'UnsafePointer<CChar>' (aka 'UnsafePointer<Int8>') may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: add '@MainActor' to make static property 'getClass' part of global actor 'MainActor'
    |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 15 |
 16 |         private static func extract(_ string: StaticString) -> UnsafePointer<CChar> {
Swift.UnsafePointer:1:23: note: generic struct 'UnsafePointer' does not conform to the 'Sendable' protocol
1 | @frozen public struct UnsafePointer<Pointee> : Copyable where Pointee : ~Copyable {
  |                       `- note: generic struct 'UnsafePointer' does not conform to the 'Sendable' protocol
2 |     public let _rawValue: Builtin.RawPointer
3 |     public init(_ _rawValue: Builtin.RawPointer)
/host/spi-builder-workspace/Sources/InterposeKit/LinuxCompileSupport.swift:40:2: error: Objective-C interoperability is disabled
38 | func imp_getBlock(_ anImp: IMP) -> Any? { return nil }
39 | @discardableResult func imp_removeBlock(_ anImp: IMP) -> Bool { false }
40 | @objc class NSError: NSObject {}
   |  `- error: Objective-C interoperability is disabled
41 | // AutoreleasingUnsafeMutablePointer is not available on Linux.
42 | typealias NSErrorPointer = UnsafeMutablePointer<NSError?>?
/host/spi-builder-workspace/Sources/InterposeKit/LinuxCompileSupport.swift:45:5: warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
43 | extension NSObject {
44 |     /// :nodoc: value
45 |     open func value(forKey key: String) -> Any? { return nil }
   |     `- warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
46 | }
47 | /// :nodoc: objc_AssociationPolicy
/host/spi-builder-workspace/Sources/InterposeKit/Watcher.swift:72:24: warning: static property 'globalWatchers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 70 | private struct InterposeWatcher {
 71 |     // Global list of waiters; can be multiple per class
 72 |     private static var globalWatchers: [Interpose.Waiter] = {
    |                        |- warning: static property 'globalWatchers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                        |- note: convert 'globalWatchers' to a 'let' constant to make 'Sendable' shared state immutable
    |                        |- note: add '@MainActor' to make static property 'globalWatchers' part of global actor 'MainActor'
    |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 73 |         // Register after Swift global registers to not deadlock
 74 |         DispatchQueue.main.async { InterposeWatcher.installGlobalImageLoadWatcher() }
[9/13] Compiling InterposeKit ObjectHook.swift
[10/13] Compiling InterposeKit InterposeSubclass.swift
/host/spi-builder-workspace/Sources/InterposeKit/InterposeSubclass.swift:10:20: warning: static property 'getClass' is not concurrency-safe because non-'Sendable' type 'Selector' may have shared mutable state; this is an error in the Swift 6 language mode
  8 |
  9 |     enum ObjCSelector {
 10 |         static let getClass = Selector((("class")))
    |                    |- warning: static property 'getClass' is not concurrency-safe because non-'Sendable' type 'Selector' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: add '@MainActor' to make static property 'getClass' part of global actor 'MainActor'
    |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 11 |     }
 12 |
/host/spi-builder-workspace/Sources/InterposeKit/LinuxCompileSupport.swift:6:15: note: consider making struct 'Selector' conform to the 'Sendable' protocol
 4 | #if os(Linux)
 5 | /// :nodoc: Selector
 6 | public struct Selector: Equatable {
   |               `- note: consider making struct 'Selector' conform to the 'Sendable' protocol
 7 |     var name: String?
 8 |     init(_ name: String) { self.name = name }
/host/spi-builder-workspace/Sources/InterposeKit/InterposeSubclass.swift:14:20: warning: static property 'getClass' is not concurrency-safe because non-'Sendable' type 'UnsafePointer<CChar>' (aka 'UnsafePointer<Int8>') may have shared mutable state; this is an error in the Swift 6 language mode
 12 |
 13 |     enum ObjCMethodEncoding {
 14 |         static let getClass = extract("#@:")
    |                    |- warning: static property 'getClass' is not concurrency-safe because non-'Sendable' type 'UnsafePointer<CChar>' (aka 'UnsafePointer<Int8>') may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: add '@MainActor' to make static property 'getClass' part of global actor 'MainActor'
    |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 15 |
 16 |         private static func extract(_ string: StaticString) -> UnsafePointer<CChar> {
Swift.UnsafePointer:1:23: note: generic struct 'UnsafePointer' does not conform to the 'Sendable' protocol
1 | @frozen public struct UnsafePointer<Pointee> : Copyable where Pointee : ~Copyable {
  |                       `- note: generic struct 'UnsafePointer' does not conform to the 'Sendable' protocol
2 |     public let _rawValue: Builtin.RawPointer
3 |     public init(_ _rawValue: Builtin.RawPointer)
[11/13] Compiling InterposeKit InterposeKit.swift
/host/spi-builder-workspace/Sources/InterposeKit/InterposeKit.swift:168:23: warning: static property 'isLoggingEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
166 | extension Interpose {
167 |     /// Logging uses print and is minimal.
168 |     public static var isLoggingEnabled = false
    |                       |- warning: static property 'isLoggingEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'isLoggingEnabled' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: add '@MainActor' to make static property 'isLoggingEnabled' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
169 |
170 |     /// Simple log wrapper for print.
/host/spi-builder-workspace/Sources/InterposeKit/InterposeKit.swift:11:29: warning: cast from 'NSObject' to unrelated type 'AnyClass' (aka 'any AnyObject.Type') always fails
  9 |         _ implementation: (TypedHook<MethodSignature, HookSignature>) -> HookSignature?) throws -> AnyHook {
 10 |
 11 |         if let klass = self as? AnyClass {
    |                             `- warning: cast from 'NSObject' to unrelated type 'AnyClass' (aka 'any AnyObject.Type') always fails
 12 |             return try Interpose.ClassHook(class: klass, selector: selector, implementation: implementation).apply()
 13 |         } else {
[12/13] Compiling InterposeKit LinuxCompileSupport.swift
/host/spi-builder-workspace/Sources/InterposeKit/LinuxCompileSupport.swift:40:2: error: Objective-C interoperability is disabled
38 | func imp_getBlock(_ anImp: IMP) -> Any? { return nil }
39 | @discardableResult func imp_removeBlock(_ anImp: IMP) -> Bool { false }
40 | @objc class NSError: NSObject {}
   |  `- error: Objective-C interoperability is disabled
41 | // AutoreleasingUnsafeMutablePointer is not available on Linux.
42 | typealias NSErrorPointer = UnsafeMutablePointer<NSError?>?
/host/spi-builder-workspace/Sources/InterposeKit/LinuxCompileSupport.swift:45:5: warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
43 | extension NSObject {
44 |     /// :nodoc: value
45 |     open func value(forKey key: String) -> Any? { return nil }
   |     `- warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
46 | }
47 | /// :nodoc: objc_AssociationPolicy
[13/13] Compiling InterposeKit Watcher.swift
/host/spi-builder-workspace/Sources/InterposeKit/Watcher.swift:72:24: warning: static property 'globalWatchers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 70 | private struct InterposeWatcher {
 71 |     // Global list of waiters; can be multiple per class
 72 |     private static var globalWatchers: [Interpose.Waiter] = {
    |                        |- warning: static property 'globalWatchers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                        |- note: convert 'globalWatchers' to a 'let' constant to make 'Sendable' shared state immutable
    |                        |- note: add '@MainActor' to make static property 'globalWatchers' part of global actor 'MainActor'
    |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 73 |         // Register after Swift global registers to not deadlock
 74 |         DispatchQueue.main.async { InterposeWatcher.installGlobalImageLoadWatcher() }
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-1":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/finestructure/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu 2>&1
basic-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:4d72617259f6eef9908440c49a67b79bc4f973ae19f78187418ddfb5b178d4ec
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.1-latest
[0/1] Planning build
Building for debugging...
[0/1] Write swift-version-24593BA9C3E375BF.txt
[2/10] Compiling InterposeKit InterposeError.swift
[3/10] Compiling InterposeKit InterposeKit.swift
/host/spi-builder-workspace/Sources/InterposeKit/InterposeKit.swift:11:29: warning: cast from 'NSObject' to unrelated type 'AnyClass' (aka 'any AnyObject.Type') always fails
  9 |         _ implementation: (TypedHook<MethodSignature, HookSignature>) -> HookSignature?) throws -> AnyHook {
 10 |
 11 |         if let klass = self as? AnyClass {
    |                             `- warning: cast from 'NSObject' to unrelated type 'AnyClass' (aka 'any AnyObject.Type') always fails
 12 |             return try Interpose.ClassHook(class: klass, selector: selector, implementation: implementation).apply()
 13 |         } else {
[4/11] Compiling InterposeKit InterposeSubclass.swift
[5/11] Compiling InterposeKit ObjectHook.swift
[6/11] Compiling InterposeKit LinuxCompileSupport.swift
/host/spi-builder-workspace/Sources/InterposeKit/LinuxCompileSupport.swift:40:2: error: Objective-C interoperability is disabled
38 | func imp_getBlock(_ anImp: IMP) -> Any? { return nil }
39 | @discardableResult func imp_removeBlock(_ anImp: IMP) -> Bool { false }
40 | @objc class NSError: NSObject {}
   |  `- error: Objective-C interoperability is disabled
41 | // AutoreleasingUnsafeMutablePointer is not available on Linux.
42 | typealias NSErrorPointer = UnsafeMutablePointer<NSError?>?
/host/spi-builder-workspace/Sources/InterposeKit/LinuxCompileSupport.swift:45:5: warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
43 | extension NSObject {
44 |     /// :nodoc: value
45 |     open func value(forKey key: String) -> Any? { return nil }
   |     `- warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
46 | }
47 | /// :nodoc: objc_AssociationPolicy
[7/11] Compiling InterposeKit HookFinder.swift
error: emit-module command failed with exit code 1 (use -v to see invocation)
[8/11] Emitting module InterposeKit
/host/spi-builder-workspace/Sources/InterposeKit/InterposeKit.swift:11:29: warning: cast from 'NSObject' to unrelated type 'AnyClass' (aka 'any AnyObject.Type') always fails
  9 |         _ implementation: (TypedHook<MethodSignature, HookSignature>) -> HookSignature?) throws -> AnyHook {
 10 |
 11 |         if let klass = self as? AnyClass {
    |                             `- warning: cast from 'NSObject' to unrelated type 'AnyClass' (aka 'any AnyObject.Type') always fails
 12 |             return try Interpose.ClassHook(class: klass, selector: selector, implementation: implementation).apply()
 13 |         } else {
/host/spi-builder-workspace/Sources/InterposeKit/LinuxCompileSupport.swift:40:2: error: Objective-C interoperability is disabled
38 | func imp_getBlock(_ anImp: IMP) -> Any? { return nil }
39 | @discardableResult func imp_removeBlock(_ anImp: IMP) -> Bool { false }
40 | @objc class NSError: NSObject {}
   |  `- error: Objective-C interoperability is disabled
41 | // AutoreleasingUnsafeMutablePointer is not available on Linux.
42 | typealias NSErrorPointer = UnsafeMutablePointer<NSError?>?
/host/spi-builder-workspace/Sources/InterposeKit/LinuxCompileSupport.swift:45:5: warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
43 | extension NSObject {
44 |     /// :nodoc: value
45 |     open func value(forKey key: String) -> Any? { return nil }
   |     `- warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
46 | }
47 | /// :nodoc: objc_AssociationPolicy
[9/11] Compiling InterposeKit AnyHook.swift
[10/11] Compiling InterposeKit ClassHook.swift
[11/11] Compiling InterposeKit Watcher.swift
BUILD FAILURE 6.1 linux