The Swift Package Index logo.Swift Package Index

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