The Swift Package Index logo.Swift Package Index

Build Information

Successful build of VIZ, reference master (f892ef), with Swift 6.1 for macOS (SPM) on 31 Jan 2026 22:54:49 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 InferSendableFromCaptures

Build Log

========================================
RunAll
========================================
Builder version: 4.68.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/viz-blockchain/viz-swift-lib.git
Reference: master
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/viz-blockchain/viz-swift-lib
 * branch            master     -> FETCH_HEAD
 * [new branch]      master     -> origin/master
HEAD is now at f892ef4 Update platform targets to support Swift Concurrency
Cloned https://github.com/viz-blockchain/viz-swift-lib.git
Revision (git rev-parse @):
f892ef4d3173d448e573a8903ca21624bf90569c
SUCCESS checkout https://github.com/viz-blockchain/viz-swift-lib.git at master
========================================
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" : [
    {
      "name" : "ios",
      "version" : "13.0"
    },
    {
      "name" : "macos",
      "version" : "10.15"
    }
  ],
  "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+Deprecated.swift
[11/15] Compiling OrderedDictionary OrderedDictionary+Codable.swift
[12/15] Compiling OrderedDictionary Dictionary+OrderedDictionary.swift
[13/15] Emitting module OrderedDictionary
[14/15] Compiling OrderedDictionary OrderedDictionary.swift
[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/38] Compiling VIZ Signature.swift
[18/38] Compiling VIZ Transaction.swift
[19/38] Compiling VIZ VIZEncoder.swift
[20/38] Compiling VIZ VIZURL.swift
[21/38] Compiling VIZ AnyEncodable.swift
[22/38] Compiling VIZ Data+Base58Encoding.swift
[23/38] Compiling VIZ API.swift
[24/38] Compiling VIZ Asset.swift
[25/38] Compiling VIZ Authority.swift
[26/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))
[27/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))
[28/38] Compiling VIZ Data+SHA2.swift
[29/38] Compiling VIZ Pointers+Convenience.swift
[30/38] Compiling VIZ Hex.swift
[31/38] Compiling VIZ Misc.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! (10.87s)
Fetching https://github.com/greymass/secp256k1.git
[1/7003] Fetching secp256k1
Fetched https://github.com/greymass/secp256k1.git from cache (1.29s)
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.90s)
Creating working copy for https://github.com/greymass/secp256k1.git
Working copy of https://github.com/greymass/secp256k1.git resolved at master (f5babfb)
Creating working copy for https://github.com/lukaskubanek/OrderedDictionary.git
Working copy of https://github.com/lukaskubanek/OrderedDictionary.git resolved at 4.0.2
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" : [
    {
      "name" : "ios",
      "version" : "13.0"
    },
    {
      "name" : "macos",
      "version" : "10.15"
    }
  ],
  "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.