This is a staging environment. For live and up-to-date package information, visit swiftpackageindex.com.

The Swift Package Index logo.Swift Package Index

Track the adoption of Swift 6 strict concurrency checks for data race safety. How many packages are Ready for Swift 6?

Build Information

Successful build of Base58Swift with Swift 6.0 for macOS (SPM).

Swift 6 data race errors: 2

Build Command

env DEVELOPER_DIR=/Applications/Xcode-15.3.0.app xcrun --toolchain org.swift.600202405261a swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete

Build Log

========================================
RunAll
========================================
Builder version: 4.40.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/heckj/Base58Swift.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/heckj/Base58Swift
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at 3ba16c0 update README to explain fork
Cloned https://github.com/heckj/Base58Swift.git
Revision (git rev-parse @):
3ba16c02089401c817b631ffc33ca8f022a41538
SUCCESS checkout https://github.com/heckj/Base58Swift.git at main
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.0
Building package at path:  $workDir
https://github.com/heckj/Base58Swift.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-15.3.0.app xcrun --toolchain org.swift.600202405261a swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Building for debugging...
[0/3] Write sources
[2/3] Write swift-version-6F35C1178C84523A.txt
[4/24] Emitting module BigInt
[5/26] Compiling BigInt GCD.swift
[6/26] Compiling BigInt Hashable.swift
[7/26] Compiling BigInt Subtraction.swift
[8/26] Compiling BigInt Words and Bits.swift
[9/26] Compiling BigInt Addition.swift
[10/26] Compiling BigInt BigInt.swift
[11/26] Compiling BigInt BigUInt.swift
[12/26] Compiling BigInt Exponentiation.swift
[13/26] Compiling BigInt Floating Point Conversion.swift
[14/26] Compiling BigInt Integer Conversion.swift
[15/26] Compiling BigInt Multiplication.swift
[16/26] Compiling BigInt Strideable.swift
[17/26] Compiling BigInt String Conversion.swift
[18/26] Compiling BigInt Data Conversion.swift
[19/26] Compiling BigInt Division.swift
[20/26] Compiling BigInt Prime Test.swift
[21/26] Compiling BigInt Random.swift
[22/26] Compiling BigInt Bitwise Ops.swift
[23/26] Compiling BigInt Codable.swift
[24/26] Compiling BigInt Comparable.swift
[25/26] Compiling BigInt Shifts.swift
[26/26] Compiling BigInt Square Root.swift
[27/28] Compiling Base58Swift Base58.swift
/Users/admin/builder/spi-builder-workspace/Base58Swift/Base58.swift:13:22: warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'BigUInt' may have shared mutable state; this is an error in the Swift 6 language mode
 11 |
 12 |   private static let alphabet = [UInt8]("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz".utf8)
 13 |   private static let zero = BigUInt(0)
    |                      `- warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'BigUInt' may have shared mutable state; this is an error in the Swift 6 language mode
 14 |   private static let radix = BigUInt(alphabet.count)
 15 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/BigInt/Sources/BigUInt.swift:16:15: note: struct 'BigUInt' does not conform to the 'Sendable' protocol
 14 | /// This particular big integer type uses base-2^64 digits to represent integers; you can think of it as a wrapper
 15 | /// around `Array<UInt64>`. (In fact, `BigUInt` only uses an array if there are more than two digits.)
 16 | public struct BigUInt: UnsignedInteger {
    |               `- note: struct 'BigUInt' does not conform to the 'Sendable' protocol
 17 |     /// The type representing a digit in `BigUInt`'s underlying number system.
 18 |     public typealias Word = UInt
/Users/admin/builder/spi-builder-workspace/Base58Swift/Base58.swift:3:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'BigInt'
  1 | // Copyright Keefer Taylor, 2019.
  2 |
  3 | import BigInt
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'BigInt'
  4 | import CommonCrypto
  5 | import Foundation
    :
 11 |
 12 |   private static let alphabet = [UInt8]("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz".utf8)
 13 |   private static let zero = BigUInt(0)
    |                      |- note: annotate 'zero' with '@MainActor' if property should only be accessed from the main actor
    |                      `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 14 |   private static let radix = BigUInt(alphabet.count)
 15 |
/Users/admin/builder/spi-builder-workspace/Base58Swift/Base58.swift:14:22: warning: static property 'radix' is not concurrency-safe because non-'Sendable' type 'BigUInt' may have shared mutable state; this is an error in the Swift 6 language mode
 12 |   private static let alphabet = [UInt8]("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz".utf8)
 13 |   private static let zero = BigUInt(0)
 14 |   private static let radix = BigUInt(alphabet.count)
    |                      |- warning: static property 'radix' is not concurrency-safe because non-'Sendable' type 'BigUInt' may have shared mutable state; this is an error in the Swift 6 language mode
    |                      |- note: annotate 'radix' with '@MainActor' if property should only be accessed from the main actor
    |                      `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 15 |
 16 |   /// Encode the given bytes into a Base58Check encoded string.
/Users/admin/builder/spi-builder-workspace/.build/checkouts/BigInt/Sources/BigUInt.swift:16:15: note: struct 'BigUInt' does not conform to the 'Sendable' protocol
 14 | /// This particular big integer type uses base-2^64 digits to represent integers; you can think of it as a wrapper
 15 | /// around `Array<UInt64>`. (In fact, `BigUInt` only uses an array if there are more than two digits.)
 16 | public struct BigUInt: UnsignedInteger {
    |               `- note: struct 'BigUInt' does not conform to the 'Sendable' protocol
 17 |     /// The type representing a digit in `BigUInt`'s underlying number system.
 18 |     public typealias Word = UInt
[28/28] Emitting module Base58Swift
/Users/admin/builder/spi-builder-workspace/Base58Swift/Base58.swift:13:22: warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'BigUInt' may have shared mutable state; this is an error in the Swift 6 language mode
 11 |
 12 |   private static let alphabet = [UInt8]("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz".utf8)
 13 |   private static let zero = BigUInt(0)
    |                      `- warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'BigUInt' may have shared mutable state; this is an error in the Swift 6 language mode
 14 |   private static let radix = BigUInt(alphabet.count)
 15 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/BigInt/Sources/BigUInt.swift:16:15: note: struct 'BigUInt' does not conform to the 'Sendable' protocol
 14 | /// This particular big integer type uses base-2^64 digits to represent integers; you can think of it as a wrapper
 15 | /// around `Array<UInt64>`. (In fact, `BigUInt` only uses an array if there are more than two digits.)
 16 | public struct BigUInt: UnsignedInteger {
    |               `- note: struct 'BigUInt' does not conform to the 'Sendable' protocol
 17 |     /// The type representing a digit in `BigUInt`'s underlying number system.
 18 |     public typealias Word = UInt
/Users/admin/builder/spi-builder-workspace/Base58Swift/Base58.swift:3:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'BigInt'
  1 | // Copyright Keefer Taylor, 2019.
  2 |
  3 | import BigInt
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'BigInt'
  4 | import CommonCrypto
  5 | import Foundation
    :
 11 |
 12 |   private static let alphabet = [UInt8]("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz".utf8)
 13 |   private static let zero = BigUInt(0)
    |                      |- note: annotate 'zero' with '@MainActor' if property should only be accessed from the main actor
    |                      `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 14 |   private static let radix = BigUInt(alphabet.count)
 15 |
/Users/admin/builder/spi-builder-workspace/Base58Swift/Base58.swift:14:22: warning: static property 'radix' is not concurrency-safe because non-'Sendable' type 'BigUInt' may have shared mutable state; this is an error in the Swift 6 language mode
 12 |   private static let alphabet = [UInt8]("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz".utf8)
 13 |   private static let zero = BigUInt(0)
 14 |   private static let radix = BigUInt(alphabet.count)
    |                      |- warning: static property 'radix' is not concurrency-safe because non-'Sendable' type 'BigUInt' may have shared mutable state; this is an error in the Swift 6 language mode
    |                      |- note: annotate 'radix' with '@MainActor' if property should only be accessed from the main actor
    |                      `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 15 |
 16 |   /// Encode the given bytes into a Base58Check encoded string.
/Users/admin/builder/spi-builder-workspace/.build/checkouts/BigInt/Sources/BigUInt.swift:16:15: note: struct 'BigUInt' does not conform to the 'Sendable' protocol
 14 | /// This particular big integer type uses base-2^64 digits to represent integers; you can think of it as a wrapper
 15 | /// around `Array<UInt64>`. (In fact, `BigUInt` only uses an array if there are more than two digits.)
 16 | public struct BigUInt: UnsignedInteger {
    |               `- note: struct 'BigUInt' does not conform to the 'Sendable' protocol
 17 |     /// The type representing a digit in `BigUInt`'s underlying number system.
 18 |     public typealias Word = UInt
Build complete! (25.02s)
Fetching https://github.com/attaswift/BigInt.git
[1/3097] Fetching bigint
Fetched https://github.com/attaswift/BigInt.git from cache (1.33s)
Computing version for https://github.com/attaswift/BigInt.git
Computed https://github.com/attaswift/BigInt.git at 5.2.1 (0.65s)
Creating working copy for https://github.com/attaswift/BigInt.git
Working copy of https://github.com/attaswift/BigInt.git resolved at 5.2.1
Build complete.
{
  "dependencies" : [
    {
      "identity" : "bigint",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "5.0.0",
            "upper_bound" : "6.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/attaswift/BigInt.git"
    }
  ],
  "manifest_display_name" : "Base58Swift",
  "name" : "Base58Swift",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "Base58Swift",
      "targets" : [
        "Base58Swift"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "base58swiftTests",
      "module_type" : "SwiftTarget",
      "name" : "base58swiftTests",
      "path" : "Base58SwiftTests",
      "sources" : [
        "Base58Tests.swift"
      ],
      "target_dependencies" : [
        "Base58Swift"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Base58Swift",
      "module_type" : "SwiftTarget",
      "name" : "Base58Swift",
      "path" : "Base58Swift",
      "product_dependencies" : [
        "BigInt"
      ],
      "product_memberships" : [
        "Base58Swift"
      ],
      "sources" : [
        "Base58.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.0"
}
Done.
This is a staging environment. For live and up-to-date package information, visit swiftpackageindex.com.