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 Solana with Swift 6.0 for macOS (SPM).

Swift 6 data race errors: 0

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/crewshin/solana-swift.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/crewshin/solana-swift
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at 61a53de Merge pull request #5 from crewshin/feature/get-identity
Cloned https://github.com/crewshin/solana-swift.git
Revision (git rev-parse @):
61a53dee2a371127bb1998a62a5ec9aa9c419acb
SUCCESS checkout https://github.com/crewshin/solana-swift.git at main
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.0
Building package at path:  $workDir
https://github.com/crewshin/solana-swift.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/6] Write sources
[5/6] Write swift-version-6F35C1178C84523A.txt
[7/97] Compiling CryptoSwift Poly1305.swift
[8/97] Compiling CryptoSwift Rabbit.swift
[9/97] Compiling CryptoSwift AEAD.swift
[10/97] Compiling CryptoSwift AEADChaCha20Poly1305.swift
[11/97] Compiling CryptoSwift SHA1.swift
[12/97] Compiling CryptoSwift SHA2.swift
[13/99] Compiling CryptoSwift Int+Extension.swift
[14/99] Compiling CryptoSwift MD5.swift
[15/99] Compiling CryptoSwift NoPadding.swift
[16/99] Compiling CryptoSwift Operators.swift
[17/99] Compiling CryptoSwift PBKDF1.swift
[18/99] Compiling CryptoSwift PBKDF2.swift
[19/99] Compiling CryptoSwift PKCS5.swift
[20/106] Emitting module CryptoSwift
[21/106] Compiling CryptoSwift CTR.swift
[22/106] Compiling CryptoSwift CipherModeWorker.swift
[23/106] Compiling CryptoSwift ECB.swift
[24/106] Compiling CryptoSwift GCM.swift
[25/106] Compiling CryptoSwift OCB.swift
[26/106] Compiling CryptoSwift OFB.swift
[27/106] Compiling CryptoSwift PCBC.swift
[28/106] Compiling CryptoSwift Blowfish.swift
[29/106] Compiling BigInt Subtraction.swift
[30/106] Compiling BigInt Words and Bits.swift
[31/106] Compiling CryptoSwift BlockCipher.swift
[32/106] Compiling CryptoSwift BlockDecryptor.swift
[33/106] Compiling CryptoSwift BlockEncryptor.swift
[34/106] Compiling CryptoSwift BlockMode.swift
[35/106] Compiling CryptoSwift BlockModeOptions.swift
[36/106] Compiling CryptoSwift CBC.swift
[37/106] Compiling CryptoSwift CCM.swift
[38/106] Compiling CryptoSwift CFB.swift
[39/106] Compiling CryptoSwift PKCS7.swift
[40/106] Compiling CryptoSwift PKCS7Padding.swift
[41/106] Compiling CryptoSwift Padding.swift
[48/106] Compiling CryptoSwift AES.Cryptors.swift
[49/106] Compiling CryptoSwift AES.swift
[50/106] Compiling CryptoSwift Array+Extension.swift
[53/106] Compiling CryptoSwift Bit.swift
[54/106] Compiling CryptoSwift UInt16+Extension.swift
[55/106] Compiling CryptoSwift UInt32+Extension.swift
[56/106] Compiling CryptoSwift UInt64+Extension.swift
[57/106] Compiling CryptoSwift UInt8+Extension.swift
[58/106] Compiling CryptoSwift Updatable.swift
[59/106] Compiling CryptoSwift Utils.swift
[60/106] Compiling CryptoSwift ZeroPadding.swift
[61/106] Emitting module BigInt
[76/106] Compiling CryptoSwift CBCMAC.swift
[77/106] Compiling CryptoSwift CMAC.swift
[78/106] Compiling CryptoSwift ChaCha20.swift
[79/106] Compiling CryptoSwift Checksum.swift
[80/106] Compiling CryptoSwift Cipher.swift
[81/106] Compiling CryptoSwift Collection+Extension.swift
[82/106] Compiling CryptoSwift CompactMap.swift
[83/106] Compiling CryptoSwift Cryptor.swift
[84/106] Compiling CryptoSwift SHA3.swift
[85/106] Compiling CryptoSwift Scrypt.swift
[86/106] Compiling CryptoSwift SecureBytes.swift
[87/106] Compiling CryptoSwift StreamDecryptor.swift
[88/106] Compiling CryptoSwift StreamEncryptor.swift
[89/106] Compiling CryptoSwift String+Extension.swift
[90/106] Compiling CryptoSwift UInt128.swift
[91/106] Compiling CryptoSwift Cryptors.swift
[92/106] Compiling CryptoSwift Digest.swift
[93/106] Compiling CryptoSwift DigestType.swift
[94/106] Compiling CryptoSwift AES+Foundation.swift
[95/106] Compiling CryptoSwift Array+Foundation.swift
[96/106] Compiling CryptoSwift Blowfish+Foundation.swift
[97/106] Compiling CryptoSwift ChaCha20+Foundation.swift
[98/106] Compiling CryptoSwift Data+Extension.swift
[99/106] Compiling CryptoSwift HMAC+Foundation.swift
[100/106] Compiling CryptoSwift Rabbit+Foundation.swift
[101/106] Compiling CryptoSwift String+FoundationExtension.swift
[102/106] Compiling CryptoSwift Utils+Foundation.swift
[103/106] Compiling CryptoSwift Generics.swift
[104/106] Compiling CryptoSwift HKDF.swift
[105/106] Compiling CryptoSwift HMAC.swift
[106/106] Compiling CryptoSwift ISO78164Padding.swift
[107/115] Emitting module Base58Swift
[108/115] Compiling Base58Swift Base58.swift
[109/115] Compiling ed25519swift ed25519_verify.swift
[110/115] Compiling ed25519swift ed25519_utility.swift
[111/115] Compiling ed25519swift ed25519_sc.swift
[112/115] Compiling ed25519swift ed25519_sign.swift
[113/115] Compiling ed25519swift ed25519_fe.swift
[114/115] Compiling ed25519swift ed25519_ge.swift
[115/115] Emitting module ed25519swift
[116/157] Compiling Solana Double+.swift
[117/157] Compiling Solana Int+.swift
[118/157] Compiling Solana JSON+.swift
[119/157] Compiling Solana String+.swift
[120/157] Compiling Solana Account.swift
[121/161] Compiling Solana ProgramSubscribe.swift
/Users/admin/builder/spi-builder-workspace/Sources/Solana/Networking.swift:36:17: warning: capture of 'completion' with non-sendable type '(Result<Networking.Response<T>, any Error>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
34 |         URLSession.shared.dataTask(with: tmpRequest) { (data, response, error) in
35 |             guard let data = data, error == nil, let response = response else {
36 |                 completion(.failure(SolanaAPIError.generic(message: "API Call guard failed.")))
   |                 |- warning: capture of 'completion' with non-sendable type '(Result<Networking.Response<T>, any Error>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
   |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
37 |                 return
38 |             }
[122/161] Compiling Solana Network.swift
/Users/admin/builder/spi-builder-workspace/Sources/Solana/Networking.swift:36:17: warning: capture of 'completion' with non-sendable type '(Result<Networking.Response<T>, any Error>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
34 |         URLSession.shared.dataTask(with: tmpRequest) { (data, response, error) in
35 |             guard let data = data, error == nil, let response = response else {
36 |                 completion(.failure(SolanaAPIError.generic(message: "API Call guard failed.")))
   |                 |- warning: capture of 'completion' with non-sendable type '(Result<Networking.Response<T>, any Error>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
   |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
37 |                 return
38 |             }
[123/161] Compiling Solana NetworkRequestType.swift
/Users/admin/builder/spi-builder-workspace/Sources/Solana/Networking.swift:36:17: warning: capture of 'completion' with non-sendable type '(Result<Networking.Response<T>, any Error>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
34 |         URLSession.shared.dataTask(with: tmpRequest) { (data, response, error) in
35 |             guard let data = data, error == nil, let response = response else {
36 |                 completion(.failure(SolanaAPIError.generic(message: "API Call guard failed.")))
   |                 |- warning: capture of 'completion' with non-sendable type '(Result<Networking.Response<T>, any Error>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
   |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
37 |                 return
38 |             }
[124/161] Compiling Solana Networking.swift
/Users/admin/builder/spi-builder-workspace/Sources/Solana/Networking.swift:36:17: warning: capture of 'completion' with non-sendable type '(Result<Networking.Response<T>, any Error>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
34 |         URLSession.shared.dataTask(with: tmpRequest) { (data, response, error) in
35 |             guard let data = data, error == nil, let response = response else {
36 |                 completion(.failure(SolanaAPIError.generic(message: "API Call guard failed.")))
   |                 |- warning: capture of 'completion' with non-sendable type '(Result<Networking.Response<T>, any Error>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
   |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
37 |                 return
38 |             }
[125/161] Compiling Solana Block.swift
[126/161] Compiling Solana Commitment.swift
[127/161] Compiling Solana Encoding.swift
[128/161] Compiling Solana Filter.swift
[129/161] Compiling Solana Hash.swift
[130/161] Compiling Solana GetConfirmedBlocksWithLimit.swift
[131/161] Compiling Solana GetConfirmedSignaturesForAddress.swift
[132/161] Compiling Solana GetConfirmedSignaturesForAddress2.swift
[133/161] Compiling Solana GetConfirmedTransaction.swift
[134/161] Compiling Solana GetEpochInfo.swift
[135/161] Compiling Solana GetEpochSchedule.swift
[136/161] Compiling Solana GetFeeCalculatorForBlockhash.swift
[137/161] Compiling Solana GetFeeRateGovernor.swift
[138/161] Compiling Solana GetFees.swift
[139/161] Compiling Solana SlotRange.swift
[140/161] Compiling Solana TokenBalance.swift
[141/161] Compiling Solana Transaction.swift
[142/161] Compiling Solana TransactionError.swift
[143/161] Compiling Solana GetBlockProduction.swift
[144/161] Compiling Solana GetBlockTime.swift
[145/161] Compiling Solana GetClusterNodes.swift
[146/161] Compiling Solana GetConfirmedBlock.swift
[147/161] Compiling Solana GetConfirmedBlocks.swift
[148/161] Emitting module Solana
[149/161] Compiling Solana RPCResponse.swift
[150/161] Compiling Solana SimulateTransaction.swift
[151/161] Compiling Solana RewardType.swift
[152/161] Compiling Solana RpcError.swift
[153/161] Compiling Solana Identity.swift
[154/161] Compiling Solana Instruction.swift
[155/161] Compiling Solana GetAccountInfo.swift
[156/161] Compiling Solana GetBalanace.swift
[157/161] Compiling Solana GetBlockCommitment.swift
[158/161] Compiling Solana Solana.swift
[159/161] Compiling Solana SolanaErrors.swift
[160/161] Compiling Solana SolanaSockets.swift
[161/161] Compiling Solana WebSockets.swift
Build complete! (52.84s)
Fetching https://github.com/crewshin/ed25519swift
Fetching https://github.com/attaswift/BigInt.git
Fetching https://github.com/keefertaylor/Base58Swift
Fetching https://github.com/krzyzanowskim/CryptoSwift.git
[1/952] Fetching ed25519swift
[125/4049] Fetching ed25519swift, bigint
[218/4568] Fetching ed25519swift, bigint, base58swift
[777/17222] Fetching ed25519swift, bigint, base58swift, cryptoswift
Fetched https://github.com/keefertaylor/Base58Swift from cache (1.93s)
Fetched https://github.com/attaswift/BigInt.git from cache (1.93s)
Fetched https://github.com/krzyzanowskim/CryptoSwift.git from cache (1.93s)
Fetched https://github.com/crewshin/ed25519swift from cache (1.93s)
Computing version for https://github.com/crewshin/ed25519swift
Computed https://github.com/crewshin/ed25519swift at 1.2.6 (0.68s)
Computing version for https://github.com/keefertaylor/Base58Swift
Computed https://github.com/keefertaylor/Base58Swift at 2.1.14 (0.67s)
Computing version for https://github.com/krzyzanowskim/CryptoSwift.git
Computed https://github.com/krzyzanowskim/CryptoSwift.git at 1.3.8 (0.69s)
Computing version for https://github.com/attaswift/BigInt.git
Computed https://github.com/attaswift/BigInt.git at 5.2.1 (0.69s)
Creating working copy for https://github.com/crewshin/ed25519swift
Working copy of https://github.com/crewshin/ed25519swift resolved at 1.2.6
Creating working copy for https://github.com/attaswift/BigInt.git
Working copy of https://github.com/attaswift/BigInt.git resolved at 5.2.1
Creating working copy for https://github.com/keefertaylor/Base58Swift
Working copy of https://github.com/keefertaylor/Base58Swift resolved at 2.1.14
Creating working copy for https://github.com/krzyzanowskim/CryptoSwift.git
Working copy of https://github.com/krzyzanowskim/CryptoSwift.git resolved at 1.3.8
Build complete.
{
  "dependencies" : [
    {
      "identity" : "base58swift",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "2.1.14",
            "upper_bound" : "3.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/keefertaylor/Base58Swift"
    },
    {
      "identity" : "ed25519swift",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.2.6",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/crewshin/ed25519swift"
    }
  ],
  "manifest_display_name" : "Solana",
  "name" : "Solana",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "13.0"
    },
    {
      "name" : "macos",
      "version" : "10.15"
    }
  ],
  "products" : [
    {
      "name" : "Solana",
      "targets" : [
        "Solana"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "swift_languages_versions" : [
    "5"
  ],
  "targets" : [
    {
      "c99name" : "SolanaTests",
      "module_type" : "SwiftTarget",
      "name" : "SolanaTests",
      "path" : "Tests/SolanaTests",
      "sources" : [
        "SolanaTests.swift",
        "XCTestManifests.swift"
      ],
      "target_dependencies" : [
        "Solana"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Solana",
      "module_type" : "SwiftTarget",
      "name" : "Solana",
      "path" : "Sources/Solana",
      "product_dependencies" : [
        "Base58Swift",
        "ed25519swift"
      ],
      "product_memberships" : [
        "Solana"
      ],
      "sources" : [
        "Extensions/Double+.swift",
        "Extensions/Int+.swift",
        "Extensions/JSON+.swift",
        "Extensions/String+.swift",
        "Models/Account.swift",
        "Models/Block.swift",
        "Models/Commitment.swift",
        "Models/Encoding.swift",
        "Models/Filter.swift",
        "Models/Hash.swift",
        "Models/Identity.swift",
        "Models/Instruction.swift",
        "Models/Requests and Responses/GetAccountInfo.swift",
        "Models/Requests and Responses/GetBalanace.swift",
        "Models/Requests and Responses/GetBlockCommitment.swift",
        "Models/Requests and Responses/GetBlockProduction.swift",
        "Models/Requests and Responses/GetBlockTime.swift",
        "Models/Requests and Responses/GetClusterNodes.swift",
        "Models/Requests and Responses/GetConfirmedBlock.swift",
        "Models/Requests and Responses/GetConfirmedBlocks.swift",
        "Models/Requests and Responses/GetConfirmedBlocksWithLimit.swift",
        "Models/Requests and Responses/GetConfirmedSignaturesForAddress.swift",
        "Models/Requests and Responses/GetConfirmedSignaturesForAddress2.swift",
        "Models/Requests and Responses/GetConfirmedTransaction.swift",
        "Models/Requests and Responses/GetEpochInfo.swift",
        "Models/Requests and Responses/GetEpochSchedule.swift",
        "Models/Requests and Responses/GetFeeCalculatorForBlockhash.swift",
        "Models/Requests and Responses/GetFeeRateGovernor.swift",
        "Models/Requests and Responses/GetFees.swift",
        "Models/Requests and Responses/RPCResponse.swift",
        "Models/Requests and Responses/SimulateTransaction.swift",
        "Models/RewardType.swift",
        "Models/RpcError.swift",
        "Models/SlotRange.swift",
        "Models/TokenBalance.swift",
        "Models/Transaction.swift",
        "Models/TransactionError.swift",
        "Models/WebSockets/ProgramSubscribe.swift",
        "Network.swift",
        "NetworkRequestType.swift",
        "Networking.swift",
        "Solana.swift",
        "SolanaErrors.swift",
        "SolanaSockets.swift",
        "WebSockets.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.3"
}
Done.
This is a staging environment. For live and up-to-date package information, visit swiftpackageindex.com.