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 Upstash 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/swift-cloud/Upstash.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/swift-cloud/Upstash
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at 2a548ea Refactor redis file
Cloned https://github.com/swift-cloud/Upstash.git
Revision (git rev-parse @):
2a548ea6f3474777606ed65a5d7d4bcf83c83f5b
SPI manifest file found: $workDir/.spi.yml
SUCCESS checkout https://github.com/swift-cloud/Upstash.git at main
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.0
Building package at path:  $workDir
https://github.com/swift-cloud/Upstash.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
[4/6] Write swift-version-6F35C1178C84523A.txt
[5/72] Compiling ComputeRuntime ComputeRuntime.c
[7/72] Compiling Crypto MessageAuthenticationCode.swift
[8/72] Compiling Crypto AES.swift
[9/72] Compiling Crypto ECDSASignature_boring.swift
[10/72] Compiling Crypto ECDSA_boring.swift
[11/72] Compiling Crypto EdDSA_boring.swift
[12/72] Compiling Crypto ECDSA.swift
[13/72] Compiling Crypto EdDSA.swift
[14/72] Compiling Crypto Signature.swift
[15/72] Compiling Crypto ArbitraryPrecisionInteger_boring.swift
[16/72] Compiling Crypto CryptoKitErrors_boring.swift
[17/72] Compiling Crypto FiniteFieldArithmeticContext_boring.swift
[18/72] Compiling Crypto RNG_boring.swift
[19/72] Compiling Crypto AES-GCM.swift
[20/72] Compiling Crypto AES-GCM_boring.swift
[21/72] Compiling Crypto ChaChaPoly_boring.swift
[22/72] Compiling Crypto ChaChaPoly.swift
[23/72] Compiling Crypto Cipher.swift
[24/72] Compiling Crypto Nonces.swift
[25/72] Compiling Crypto ASN1.swift
[26/72] Emitting module Crypto
[27/72] Compiling Crypto AESWrap.swift
[28/72] Compiling Crypto AESWrap_boring.swift
[29/72] Compiling Crypto Ed25519_boring.swift
[30/72] Compiling Crypto EllipticCurvePoint_boring.swift
[31/72] Compiling Crypto EllipticCurve_boring.swift
[32/72] Compiling Crypto NISTCurvesKeys_boring.swift
[33/72] Compiling Crypto X25519Keys_boring.swift
[34/72] Compiling Crypto HashFunctions_SHA2.swift
[35/72] Compiling Crypto Insecure.swift
[36/72] Compiling Crypto Insecure_HashFunctions.swift
[37/72] Compiling Crypto ECDH_boring.swift
[38/72] Compiling Crypto DH.swift
[39/72] Compiling Crypto ECDH.swift
[40/72] Compiling Crypto HKDF.swift
[41/72] Compiling Crypto ASN1Strings.swift
[42/72] Compiling Crypto ArraySliceBigint.swift
[43/72] Compiling Crypto GeneralizedTime.swift
[44/72] Compiling Crypto ObjectIdentifier.swift
[45/72] Compiling Crypto ECDSASignature.swift
[46/72] Compiling Crypto PEMDocument.swift
[47/72] Compiling Crypto PKCS8PrivateKey.swift
[48/72] Compiling Crypto SEC1PrivateKey.swift
[49/72] Compiling Crypto SubjectPublicKeyInfo.swift
[50/72] Compiling Crypto CryptoKitErrors.swift
[51/72] Compiling Crypto Digest_boring.swift
[52/72] Compiling Crypto Digest.swift
[53/72] Compiling Crypto Digests.swift
[54/72] Compiling Crypto HashFunctions.swift
[55/78] Compiling Crypto ASN1Any.swift
[56/78] Compiling Crypto ASN1BitString.swift
[57/78] Compiling Crypto ASN1Boolean.swift
[58/78] Compiling Crypto ASN1Identifier.swift
[59/78] Compiling Crypto ASN1Integer.swift
[60/78] Compiling Crypto ASN1Null.swift
[61/78] Compiling Crypto ASN1OctetString.swift
[62/78] Compiling AnyCodable AnyCodable.swift
[63/78] Compiling AnyCodable AnyDecodable.swift
[64/78] Compiling AnyCodable AnyEncodable.swift
[65/78] Emitting module AnyCodable
[66/78] Compiling Crypto Curve25519.swift
[67/78] Compiling Crypto Ed25519.swift
[68/78] Compiling Crypto NISTCurvesKeys.swift
[69/78] Compiling Crypto X25519Keys.swift
[70/78] Compiling Crypto SymmetricKeys.swift
[71/78] Compiling Crypto HMAC.swift
[72/78] Compiling Crypto MACFunctions.swift
[73/78] Compiling Crypto SafeCompare_boring.swift
[74/78] Compiling Crypto Zeroization_boring.swift
[75/78] Compiling Crypto PrettyBytes.swift
[76/78] Compiling Crypto SafeCompare.swift
[77/78] Compiling Crypto SecureBytes.swift
[78/78] Compiling Crypto Zeroization.swift
[79/123] Compiling Compute Fetch+URLSession.swift
[80/123] Compiling Compute Fetch+Wasi.swift
[81/123] Compiling Compute Fetch.swift
[82/123] Compiling Compute FetchRequest.swift
[83/123] Compiling Compute FetchResponse.swift
[84/123] Compiling Compute FanoutClient.swift
[85/123] Compiling Compute FanoutMessage.swift
[86/123] Compiling Compute IncomingRequest+Fanout.swift
[87/123] Compiling Compute OutgoingResponse+Fanout.swift
[88/123] Compiling Compute Fastly.swift
[89/127] Compiling Compute FastlyABI.swift
[90/127] Compiling Compute FastlyBody.swift
[91/127] Compiling Compute FastlyConfigStore.swift
[92/127] Compiling Compute FastlyEnvironment.swift
[93/127] Compiling Compute FastlyError.swift
[94/127] Compiling Compute ReadableBody.swift
[95/127] Compiling Compute Parameters.swift
[96/127] Compiling Compute PathComponent.swift
[97/127] Compiling Compute Routable.swift
[98/127] Compiling Compute Compute.swift
[99/127] Compiling Compute Concurrency.swift
[100/127] Compiling Compute ConfigStore.swift
[101/127] Compiling Compute Console.swift
[102/127] Compiling Compute Crypto.swift
[103/127] Compiling Compute KVStore.swift
[104/127] Compiling Compute OutgoingResponse.swift
[105/127] Compiling Compute Range.swift
[106/127] Compiling Compute ReadableBody+Data.swift
[107/127] Compiling Compute ReadableBody+Wasi.swift
[108/127] Compiling Compute Headers.swift
[109/127] Compiling Compute IncomingRequest.swift
[110/127] Compiling Compute JWT.swift
[111/127] Compiling Compute JWTClaim.swift
[112/127] Compiling Compute JWTError.swift
[113/127] Compiling Compute FastlyGeoLocation.swift
[114/127] Compiling Compute FastlyKVStore.swift
[115/127] Compiling Compute FastlyLogger.swift
[116/127] Compiling Compute FastlyPendingRequest.swift
[117/127] Compiling Compute FastlyRequest.swift
[118/127] Emitting module Compute
[119/127] Compiling Compute FastlyResponse.swift
[120/127] Compiling Compute FastlySecretStore.swift
[121/127] Compiling Compute FastlyStubs.swift
[122/127] Compiling Compute FastlyTypes.swift
[123/127] Compiling Compute FastlyUtils.swift
[124/127] Compiling Compute Router.swift
[125/127] Compiling Compute TrieRouter.swift
[126/127] Compiling Compute SecretStore.swift
[127/127] Compiling Compute WritableBody.swift
[128/133] Compiling Upstash RedisResult.swift
[129/133] Compiling Upstash RedisResponse.swift
[130/133] Compiling Upstash RedisError.swift
[131/133] Compiling Upstash RedisCommand.swift
[132/133] Emitting module Upstash
[133/133] Compiling Upstash RedisClient.swift
/Users/admin/builder/spi-builder-workspace/Sources/Upstash/Redis/RedisClient.swift:48:30: warning: type 'RedisResult' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 46 |             throw error
 47 |         }
 48 |         return try await res.decode()
    |                              `- warning: type 'RedisResult' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 49 |     }
 50 | }
/Users/admin/builder/spi-builder-workspace/Sources/Upstash/Redis/RedisResult.swift:11:15: note: consider making struct 'RedisResult' conform to the 'Sendable' protocol
 9 | import Foundation
10 |
11 | public struct RedisResult: Decodable {
   |               `- note: consider making struct 'RedisResult' conform to the 'Sendable' protocol
12 |     private var result: AnyDecodable
13 |
/Users/admin/builder/spi-builder-workspace/Sources/Upstash/Redis/RedisClient.swift:67:30: warning: type 'RedisResult' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 65 |             throw error
 66 |         }
 67 |         return try await res.decode()
    |                              `- warning: type 'RedisResult' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 68 |     }
 69 | }
/Users/admin/builder/spi-builder-workspace/Sources/Upstash/Redis/RedisResult.swift:11:15: note: consider making struct 'RedisResult' conform to the 'Sendable' protocol
 9 | import Foundation
10 |
11 | public struct RedisResult: Decodable {
   |               `- note: consider making struct 'RedisResult' conform to the 'Sendable' protocol
12 |     private var result: AnyDecodable
13 |
/Users/admin/builder/spi-builder-workspace/Sources/Upstash/Redis/RedisClient.swift:140:30: warning: type 'RedisResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
138 |             throw error
139 |         }
140 |         return try await res.decode()
    |                              `- warning: type 'RedisResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
141 |     }
142 | }
/Users/admin/builder/spi-builder-workspace/Sources/Upstash/Redis/RedisResponse.swift:8:13: note: consider making enum 'RedisResponse' conform to the 'Sendable' protocol
 6 | //
 7 |
 8 | public enum RedisResponse: Decodable {
   |             `- note: consider making enum 'RedisResponse' conform to the 'Sendable' protocol
 9 |     case success(_ response: RedisResult)
10 |     case error(_ error: RedisError)
/Users/admin/builder/spi-builder-workspace/Sources/Upstash/Redis/RedisClient.swift:159:30: warning: type 'RedisResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
157 |             throw error
158 |         }
159 |         return try await res.decode()
    |                              `- warning: type 'RedisResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
160 |     }
161 | }
/Users/admin/builder/spi-builder-workspace/Sources/Upstash/Redis/RedisResponse.swift:8:13: note: consider making enum 'RedisResponse' conform to the 'Sendable' protocol
 6 | //
 7 |
 8 | public enum RedisResponse: Decodable {
   |             `- note: consider making enum 'RedisResponse' conform to the 'Sendable' protocol
 9 |     case success(_ response: RedisResult)
10 |     case error(_ error: RedisError)
Build complete! (37.26s)
Fetching https://github.com/flight-school/anycodable
Fetching https://github.com/swift-cloud/Compute
Fetching https://github.com/apple/swift-crypto
[1/7854] Fetching swift-crypto
[2/8618] Fetching swift-crypto, anycodable
[172/25571] Fetching swift-crypto, anycodable, compute
Fetched https://github.com/apple/swift-crypto from cache (1.65s)
Fetched https://github.com/flight-school/anycodable from cache (1.65s)
Fetched https://github.com/swift-cloud/Compute from cache (1.65s)
Computing version for https://github.com/flight-school/anycodable
Computed https://github.com/flight-school/anycodable at 0.6.7 (0.69s)
Computing version for https://github.com/swift-cloud/Compute
Computed https://github.com/swift-cloud/Compute at 2.17.0 (0.68s)
Computing version for https://github.com/apple/swift-crypto
Computed https://github.com/apple/swift-crypto at 2.5.0 (0.71s)
Creating working copy for https://github.com/flight-school/anycodable
Working copy of https://github.com/flight-school/anycodable resolved at 0.6.7
Creating working copy for https://github.com/swift-cloud/Compute
Working copy of https://github.com/swift-cloud/Compute resolved at 2.17.0
Creating working copy for https://github.com/apple/swift-crypto
Working copy of https://github.com/apple/swift-crypto resolved at 2.5.0
Build complete.
{
  "dependencies" : [
    {
      "identity" : "compute",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "2.0.0",
            "upper_bound" : "3.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/swift-cloud/Compute"
    },
    {
      "identity" : "anycodable",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "0.6.7",
            "upper_bound" : "1.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/flight-school/anycodable"
    }
  ],
  "manifest_display_name" : "Upstash",
  "name" : "Upstash",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "11.0"
    },
    {
      "name" : "ios",
      "version" : "14.0"
    },
    {
      "name" : "tvos",
      "version" : "14.0"
    },
    {
      "name" : "watchos",
      "version" : "7.0"
    }
  ],
  "products" : [
    {
      "name" : "Upstash",
      "targets" : [
        "Upstash"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "Upstash",
      "module_type" : "SwiftTarget",
      "name" : "Upstash",
      "path" : "Sources/Upstash",
      "product_dependencies" : [
        "Compute",
        "AnyCodable"
      ],
      "product_memberships" : [
        "Upstash"
      ],
      "sources" : [
        "Redis/RedisClient.swift",
        "Redis/RedisCommand.swift",
        "Redis/RedisError.swift",
        "Redis/RedisResponse.swift",
        "Redis/RedisResult.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.6"
}
Done.
This is a staging environment. For live and up-to-date package information, visit swiftpackageindex.com.