Build Information
Successful build of swift-jni, reference main (90d863), with Swift 6.1 for macOS (SPM) on 21 Apr 2026 03:17:00 UTC.
Swift 6 data race errors: 2
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -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 InferSendableFromCapturesBuild Log
========================================
RunAll
========================================
Builder version: 4.70.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/skiptools/swift-jni.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/skiptools/swift-jni
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at 90d8639 Update CI to use Swift 6.3.1
Cloned https://github.com/skiptools/swift-jni.git
Revision (git rev-parse @):
90d8639e261a8e23f2621897e3ad61ac14f81d12
SUCCESS checkout https://github.com/skiptools/swift-jni.git at main
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.1
Building package at path: $PWD
https://github.com/skiptools/swift-jni.git
https://github.com/skiptools/swift-jni.git
{
"dependencies" : [
],
"manifest_display_name" : "swift-jni",
"name" : "swift-jni",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
],
"products" : [
{
"name" : "SwiftJNI",
"targets" : [
"SwiftJNI"
],
"type" : {
"library" : [
"dynamic"
]
}
}
],
"targets" : [
{
"c99name" : "SwiftJNITests",
"module_type" : "SwiftTarget",
"name" : "SwiftJNITests",
"path" : "Tests/SwiftJNITests",
"sources" : [
"SwiftJNITests.swift"
],
"target_dependencies" : [
"SwiftJNI"
],
"type" : "test"
},
{
"c99name" : "SwiftJNI",
"module_type" : "SwiftTarget",
"name" : "SwiftJNI",
"path" : "Sources/SwiftJNI",
"product_memberships" : [
"SwiftJNI"
],
"sources" : [
"SwiftJNI.swift"
],
"target_dependencies" : [
"CJNI"
],
"type" : "library"
},
{
"c99name" : "CJNI",
"module_type" : "ClangTarget",
"name" : "CJNI",
"path" : "Sources/CJNI",
"product_memberships" : [
"SwiftJNI"
],
"sources" : [
"cjni.c"
],
"type" : "library"
}
],
"tools_version" : "5.9"
}
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -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
Building for debugging...
[0/5] Write sources
[1/5] Compiling CJNI cjni.c
[2/5] Write swift-version-2F0A5646E1D333AE.txt
[4/7] Emitting module SwiftJNI
/Users/admin/builder/spi-builder-workspace/Sources/SwiftJNI/SwiftJNI.swift:141:23: warning: static property 'jni' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
139 | public class JNI {
140 | /// The single shared singleton JNI instance for the process.
141 | public static var jni: JNI! { // this should be set in "OnLoad" and so should always exist
| |- warning: static property 'jni' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'jni' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'jni' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
142 | didSet {
143 | jniContext {
/Users/admin/builder/spi-builder-workspace/Sources/SwiftJNI/SwiftJNI.swift:753:40: warning: static property 'globalClassLoader' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
751 | private static let loadClassID = javaClass.getMethodID(name: "loadClass", sig: "(Ljava/lang/String;)Ljava/lang/Class;")!
752 |
753 | public fileprivate(set) static var globalClassLoader: JClassLoader?
| |- warning: static property 'globalClassLoader' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'globalClassLoader' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'globalClassLoader' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
754 |
755 | /// Sets the current thread's ClassLoader to be the single global classLoader
[5/7] Compiling SwiftJNI SwiftJNI.swift
/Users/admin/builder/spi-builder-workspace/Sources/SwiftJNI/SwiftJNI.swift:141:23: warning: static property 'jni' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
139 | public class JNI {
140 | /// The single shared singleton JNI instance for the process.
141 | public static var jni: JNI! { // this should be set in "OnLoad" and so should always exist
| |- warning: static property 'jni' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'jni' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'jni' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
142 | didSet {
143 | jniContext {
/Users/admin/builder/spi-builder-workspace/Sources/SwiftJNI/SwiftJNI.swift:753:40: warning: static property 'globalClassLoader' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
751 | private static let loadClassID = javaClass.getMethodID(name: "loadClass", sig: "(Ljava/lang/String;)Ljava/lang/Class;")!
752 |
753 | public fileprivate(set) static var globalClassLoader: JClassLoader?
| |- warning: static property 'globalClassLoader' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'globalClassLoader' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'globalClassLoader' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
754 |
755 | /// Sets the current thread's ClassLoader to be the single global classLoader
[5/7] Write Objects.LinkFileList
[6/7] Linking libSwiftJNI.dylib
Build complete! (5.68s)
Build complete.
{
"dependencies" : [
],
"manifest_display_name" : "swift-jni",
"name" : "swift-jni",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
],
"products" : [
{
"name" : "SwiftJNI",
"targets" : [
"SwiftJNI"
],
"type" : {
"library" : [
"dynamic"
]
}
}
],
"targets" : [
{
"c99name" : "SwiftJNITests",
"module_type" : "SwiftTarget",
"name" : "SwiftJNITests",
"path" : "Tests/SwiftJNITests",
"sources" : [
"SwiftJNITests.swift"
],
"target_dependencies" : [
"SwiftJNI"
],
"type" : "test"
},
{
"c99name" : "SwiftJNI",
"module_type" : "SwiftTarget",
"name" : "SwiftJNI",
"path" : "Sources/SwiftJNI",
"product_memberships" : [
"SwiftJNI"
],
"sources" : [
"SwiftJNI.swift"
],
"target_dependencies" : [
"CJNI"
],
"type" : "library"
},
{
"c99name" : "CJNI",
"module_type" : "ClangTarget",
"name" : "CJNI",
"path" : "Sources/CJNI",
"product_memberships" : [
"SwiftJNI"
],
"sources" : [
"cjni.c"
],
"type" : "library"
}
],
"tools_version" : "5.9"
}
Done.