Build Information
Successful build of VIZ, reference 0.1.0 (8d2ca3), with Swift 6.1 for macOS (SPM) on 27 Dec 2025 08:43:38 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.68.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/viz-blockchain/viz-swift-lib.git
Reference: 0.1.0
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/viz-blockchain/viz-swift-lib
* tag 0.1.0 -> FETCH_HEAD
HEAD is now at 8d2ca38 Improve README
Cloned https://github.com/viz-blockchain/viz-swift-lib.git
Revision (git rev-parse @):
8d2ca38e5e58e579a292eb1e2cac032984a58dba
SUCCESS checkout https://github.com/viz-blockchain/viz-swift-lib.git at 0.1.0
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.1
Building package at path: $PWD
https://github.com/viz-blockchain/viz-swift-lib.git
https://github.com/viz-blockchain/viz-swift-lib.git
{
"dependencies" : [
{
"identity" : "ordereddictionary",
"requirement" : {
"range" : [
{
"lower_bound" : "4.0.0",
"upper_bound" : "5.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/lukaskubanek/OrderedDictionary.git"
},
{
"identity" : "secp256k1",
"requirement" : {
"branch" : [
"master"
]
},
"type" : "sourceControl",
"url" : "https://github.com/greymass/secp256k1.git"
}
],
"manifest_display_name" : "VIZ",
"name" : "VIZ",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
],
"products" : [
{
"name" : "VIZ",
"targets" : [
"VIZ"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "VIZ",
"module_type" : "SwiftTarget",
"name" : "VIZ",
"path" : "Sources/VIZ",
"product_dependencies" : [
"OrderedDictionary",
"secp256k1gm"
],
"product_memberships" : [
"VIZ"
],
"sources" : [
"API.swift",
"Asset.swift",
"Authority.swift",
"Block.swift",
"ChainId.swift",
"Client.swift",
"Extensions/AnyEncodable.swift",
"Extensions/Data+Base58Encoding.swift",
"Extensions/Data+RIPEMD160.swift",
"Extensions/Data+Random.swift",
"Extensions/Data+SHA2.swift",
"Extensions/Pointers+Convenience.swift",
"Hex.swift",
"Misc.swift",
"Operation.swift",
"PrivateKey.swift",
"PublicKey.swift",
"Secp256k1.swift",
"Signature.swift",
"Transaction.swift",
"VIZEncoder.swift",
"VIZURL.swift"
],
"target_dependencies" : [
"Crypto"
],
"type" : "library"
},
{
"c99name" : "UnitTests",
"module_type" : "SwiftTarget",
"name" : "UnitTests",
"path" : "Tests/UnitTests",
"sources" : [
"API.swift",
"Asset.swift",
"Base58.swift",
"Block.swift",
"ChainIdTests.swift",
"Client.swift",
"Common.swift",
"Operation.swift",
"PrivateKey.swift",
"PublicKey.swift",
"Secp256k1.swift",
"Sha2.swift",
"Signature.swift",
"Transaction.swift",
"VIZEncoder.swift",
"VIZURL.swift",
"XCTestManifests.swift"
],
"target_dependencies" : [
"VIZ"
],
"type" : "test"
},
{
"c99name" : "IntegrationTests",
"module_type" : "SwiftTarget",
"name" : "IntegrationTests",
"path" : "Tests/IntegrationTests",
"sources" : [
"API.swift",
"Performance.swift",
"XCTestManifests.swift"
],
"target_dependencies" : [
"VIZ"
],
"type" : "test"
},
{
"c99name" : "Crypto",
"module_type" : "ClangTarget",
"name" : "Crypto",
"path" : "Sources/Crypto",
"product_memberships" : [
"VIZ"
],
"sources" : [
"base58.c",
"memzero.c",
"ripemd160.c",
"sha2.c"
],
"type" : "library"
}
],
"tools_version" : "5.5"
}
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/8] Write sources
[2/8] Write swift-version-2F0A5646E1D333AE.txt
[3/15] Compiling Crypto memzero.c
[4/15] Compiling Crypto ripemd160.c
[5/15] Compiling Crypto sha2.c
[6/15] Compiling Crypto base58.c
[8/15] Compiling OrderedDictionary OrderedDictionary+Description.swift
[9/15] Compiling OrderedDictionary OrderedDictionarySlice.swift
[10/15] Compiling OrderedDictionary OrderedDictionary+Codable.swift
[11/15] Compiling OrderedDictionary OrderedDictionary.swift
[12/15] Compiling OrderedDictionary OrderedDictionary+Deprecated.swift
[13/15] Compiling OrderedDictionary Dictionary+OrderedDictionary.swift
[14/15] Emitting module OrderedDictionary
[14/15] Compiling secp256k1.c
[16/36] Emitting module VIZ
/Users/admin/builder/spi-builder-workspace/Sources/VIZ/PrivateKey.swift:11:25: warning: static property 'determenisticSignatures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
9 |
10 | /// For testing, wether to use a counter or random value for ndata when signing.
11 | internal static var determenisticSignatures: Bool = false
| |- warning: static property 'determenisticSignatures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'determenisticSignatures' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'determenisticSignatures' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
12 |
13 | /// Create a new private key instance from a byte buffer.
/Users/admin/builder/spi-builder-workspace/Sources/VIZ/Secp256k1.swift:40:16: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'Secp256k1' may have shared mutable state; this is an error in the Swift 6 language mode
7 |
8 | /// Class representing a libsecp256k1 context.
9 | internal class Secp256k1 {
| `- note: class 'Secp256k1' does not conform to the 'Sendable' protocol
10 | struct Flags: OptionSet {
11 | let rawValue: Int32
:
38 | /// Shared context is thread-safe and should be used in most cases since creating a new
39 | /// context is 100 times more expensive than a signing or verifying operation.
40 | static let shared: Secp256k1 = {
| |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'Secp256k1' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
41 | let ctx = Secp256k1(flags: [.sign, .verify])
42 | try? ctx.randomize(using: Data.random(32))
[17/36] Compiling VIZ API.swift
[18/36] Compiling VIZ Asset.swift
[19/36] Compiling VIZ Authority.swift
[20/38] Compiling VIZ Data+SHA2.swift
[21/38] Compiling VIZ Pointers+Convenience.swift
[22/38] Compiling VIZ Signature.swift
[23/38] Compiling VIZ Transaction.swift
[24/38] Compiling VIZ Hex.swift
[25/38] Compiling VIZ Misc.swift
[26/38] Compiling VIZ AnyEncodable.swift
[27/38] Compiling VIZ Data+Base58Encoding.swift
[28/38] Compiling VIZ PublicKey.swift
/Users/admin/builder/spi-builder-workspace/Sources/VIZ/Secp256k1.swift:40:16: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'Secp256k1' may have shared mutable state; this is an error in the Swift 6 language mode
7 |
8 | /// Class representing a libsecp256k1 context.
9 | internal class Secp256k1 {
| `- note: class 'Secp256k1' does not conform to the 'Sendable' protocol
10 | struct Flags: OptionSet {
11 | let rawValue: Int32
:
38 | /// Shared context is thread-safe and should be used in most cases since creating a new
39 | /// context is 100 times more expensive than a signing or verifying operation.
40 | static let shared: Secp256k1 = {
| |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'Secp256k1' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
41 | let ctx = Secp256k1(flags: [.sign, .verify])
42 | try? ctx.randomize(using: Data.random(32))
[29/38] Compiling VIZ Secp256k1.swift
/Users/admin/builder/spi-builder-workspace/Sources/VIZ/Secp256k1.swift:40:16: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'Secp256k1' may have shared mutable state; this is an error in the Swift 6 language mode
7 |
8 | /// Class representing a libsecp256k1 context.
9 | internal class Secp256k1 {
| `- note: class 'Secp256k1' does not conform to the 'Sendable' protocol
10 | struct Flags: OptionSet {
11 | let rawValue: Int32
:
38 | /// Shared context is thread-safe and should be used in most cases since creating a new
39 | /// context is 100 times more expensive than a signing or verifying operation.
40 | static let shared: Secp256k1 = {
| |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'Secp256k1' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
41 | let ctx = Secp256k1(flags: [.sign, .verify])
42 | try? ctx.randomize(using: Data.random(32))
[30/38] Compiling VIZ VIZEncoder.swift
[31/38] Compiling VIZ VIZURL.swift
[32/38] Compiling VIZ Block.swift
[33/38] Compiling VIZ ChainId.swift
[34/38] Compiling VIZ Client.swift
[35/38] Compiling VIZ Data+RIPEMD160.swift
[36/38] Compiling VIZ Data+Random.swift
[37/38] Compiling VIZ Operation.swift
/Users/admin/builder/spi-builder-workspace/Sources/VIZ/PrivateKey.swift:11:25: warning: static property 'determenisticSignatures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
9 |
10 | /// For testing, wether to use a counter or random value for ndata when signing.
11 | internal static var determenisticSignatures: Bool = false
| |- warning: static property 'determenisticSignatures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'determenisticSignatures' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'determenisticSignatures' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
12 |
13 | /// Create a new private key instance from a byte buffer.
[38/38] Compiling VIZ PrivateKey.swift
/Users/admin/builder/spi-builder-workspace/Sources/VIZ/PrivateKey.swift:11:25: warning: static property 'determenisticSignatures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
9 |
10 | /// For testing, wether to use a counter or random value for ndata when signing.
11 | internal static var determenisticSignatures: Bool = false
| |- warning: static property 'determenisticSignatures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'determenisticSignatures' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'determenisticSignatures' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
12 |
13 | /// Create a new private key instance from a byte buffer.
Build complete! (11.33s)
Fetching https://github.com/greymass/secp256k1.git
[1/7003] Fetching secp256k1
Fetched https://github.com/greymass/secp256k1.git from cache (1.32s)
Fetching https://github.com/lukaskubanek/OrderedDictionary.git
[1/1700] Fetching ordereddictionary
Fetched https://github.com/lukaskubanek/OrderedDictionary.git from cache (1.28s)
Computing version for https://github.com/lukaskubanek/OrderedDictionary.git
Computed https://github.com/lukaskubanek/OrderedDictionary.git at 4.0.2 (1.88s)
Creating working copy for https://github.com/lukaskubanek/OrderedDictionary.git
Working copy of https://github.com/lukaskubanek/OrderedDictionary.git resolved at 4.0.2
Creating working copy for https://github.com/greymass/secp256k1.git
Working copy of https://github.com/greymass/secp256k1.git resolved at master (f5babfb)
Build complete.
{
"dependencies" : [
{
"identity" : "ordereddictionary",
"requirement" : {
"range" : [
{
"lower_bound" : "4.0.0",
"upper_bound" : "5.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/lukaskubanek/OrderedDictionary.git"
},
{
"identity" : "secp256k1",
"requirement" : {
"branch" : [
"master"
]
},
"type" : "sourceControl",
"url" : "https://github.com/greymass/secp256k1.git"
}
],
"manifest_display_name" : "VIZ",
"name" : "VIZ",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
],
"products" : [
{
"name" : "VIZ",
"targets" : [
"VIZ"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "VIZ",
"module_type" : "SwiftTarget",
"name" : "VIZ",
"path" : "Sources/VIZ",
"product_dependencies" : [
"OrderedDictionary",
"secp256k1gm"
],
"product_memberships" : [
"VIZ"
],
"sources" : [
"API.swift",
"Asset.swift",
"Authority.swift",
"Block.swift",
"ChainId.swift",
"Client.swift",
"Extensions/AnyEncodable.swift",
"Extensions/Data+Base58Encoding.swift",
"Extensions/Data+RIPEMD160.swift",
"Extensions/Data+Random.swift",
"Extensions/Data+SHA2.swift",
"Extensions/Pointers+Convenience.swift",
"Hex.swift",
"Misc.swift",
"Operation.swift",
"PrivateKey.swift",
"PublicKey.swift",
"Secp256k1.swift",
"Signature.swift",
"Transaction.swift",
"VIZEncoder.swift",
"VIZURL.swift"
],
"target_dependencies" : [
"Crypto"
],
"type" : "library"
},
{
"c99name" : "UnitTests",
"module_type" : "SwiftTarget",
"name" : "UnitTests",
"path" : "Tests/UnitTests",
"sources" : [
"API.swift",
"Asset.swift",
"Base58.swift",
"Block.swift",
"ChainIdTests.swift",
"Client.swift",
"Common.swift",
"Operation.swift",
"PrivateKey.swift",
"PublicKey.swift",
"Secp256k1.swift",
"Sha2.swift",
"Signature.swift",
"Transaction.swift",
"VIZEncoder.swift",
"VIZURL.swift",
"XCTestManifests.swift"
],
"target_dependencies" : [
"VIZ"
],
"type" : "test"
},
{
"c99name" : "IntegrationTests",
"module_type" : "SwiftTarget",
"name" : "IntegrationTests",
"path" : "Tests/IntegrationTests",
"sources" : [
"API.swift",
"Performance.swift",
"XCTestManifests.swift"
],
"target_dependencies" : [
"VIZ"
],
"type" : "test"
},
{
"c99name" : "Crypto",
"module_type" : "ClangTarget",
"name" : "Crypto",
"path" : "Sources/Crypto",
"product_memberships" : [
"VIZ"
],
"sources" : [
"base58.c",
"memzero.c",
"ripemd160.c",
"sha2.c"
],
"type" : "library"
}
],
"tools_version" : "5.5"
}
Done.