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

Failed to build open-crypto, reference master (b91489), with Swift 6.1 for Linux on 25 Apr 2025 22:40:58 UTC.

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4609320-3":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu 2>&1

Build Log

========================================
RunAll
========================================
Builder version: 4.61.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/vapor/open-crypto.git
Reference: master
Initialized empty Git repository in /host/spi-builder-workspace/.git/
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: 	git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: 	git branch -m <name>
From https://github.com/vapor/open-crypto
 * branch            master     -> FETCH_HEAD
 * [new branch]      master     -> origin/master
HEAD is now at b91489b Update README.md
Cloned https://github.com/vapor/open-crypto.git
Revision (git rev-parse @):
b91489b865867c8510486faba439bd1e91a60b61
SUCCESS checkout https://github.com/vapor/open-crypto.git at master
========================================
Build
========================================
Selected platform:         linux
Swift version:             6.1
Building package at path:  $PWD
https://github.com/vapor/open-crypto.git
https://github.com/vapor/open-crypto.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
{
  "dependencies" : [
  ],
  "manifest_display_name" : "open-crypto",
  "name" : "open-crypto",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "10.14"
    }
  ],
  "products" : [
    {
      "name" : "OpenCrypto",
      "targets" : [
        "OpenCrypto"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "OpenCryptoTests",
      "module_type" : "SwiftTarget",
      "name" : "OpenCryptoTests",
      "path" : "Tests/OpenCryptoTests",
      "sources" : [
        "CipherTests.swift",
        "DigestTests.swift",
        "MACTests.swift"
      ],
      "target_dependencies" : [
        "OpenCrypto"
      ],
      "type" : "test"
    },
    {
      "c99name" : "OpenCrypto",
      "module_type" : "SwiftTarget",
      "name" : "OpenCrypto",
      "path" : "Sources/OpenCrypto",
      "product_memberships" : [
        "OpenCrypto"
      ],
      "sources" : [
        "AES.swift",
        "ChaChaPoly.swift",
        "Digest.swift",
        "Errors.swift",
        "Exports.swift",
        "HMAC.swift",
        "HashFunction.swift",
        "HashedAuthenticationCode.swift",
        "HexEncoding.swift",
        "Insecure.swift",
        "MD5.swift",
        "MessageAuthenticationCode.swift",
        "OpenSSLCipherFunction.swift",
        "OpenSSLHashFunction.swift",
        "SHA1.swift",
        "SHA2.swift",
        "SymmetricKey.swift",
        "Utilities.swift"
      ],
      "target_dependencies" : [
        "COpenCrypto"
      ],
      "type" : "library"
    },
    {
      "c99name" : "COpenCryptoOpenSSL",
      "module_type" : "SystemLibraryTarget",
      "name" : "COpenCryptoOpenSSL",
      "path" : "Sources/COpenCryptoOpenSSL",
      "product_memberships" : [
        "OpenCrypto"
      ],
      "sources" : [
      ],
      "type" : "system-target"
    },
    {
      "c99name" : "COpenCrypto",
      "module_type" : "ClangTarget",
      "name" : "COpenCrypto",
      "path" : "Sources/COpenCrypto",
      "product_memberships" : [
        "OpenCrypto"
      ],
      "sources" : [
        "c_open_crypto.c"
      ],
      "target_dependencies" : [
        "COpenCryptoOpenSSL"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.1"
}
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-3":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu -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 2>&1
basic-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:3bdcac04179f4ed3e5b8e9dbd6e74bbf5ebc0f4fde48bbaad7d1e5c757e65bcb
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.1-latest
Building for debugging...
[0/3] Write sources
[1/3] Compiling COpenCrypto c_open_crypto.c
[2/3] Write swift-version-24593BA9C3E375BF.txt
[4/20] Compiling OpenCrypto HashFunction.swift
/host/spi-builder-workspace/Sources/OpenCrypto/HashFunction.swift:20:17: warning: variable 'buffer' was never mutated; consider changing to 'let' constant
18 |             return digest
19 |         } else {
20 |             var buffer = UnsafeMutableBufferPointer<UInt8>.allocate(capacity: data.count)
   |                 `- warning: variable 'buffer' was never mutated; consider changing to 'let' constant
21 |             data.copyBytes(to: buffer)
22 |             defer { buffer.deallocate() }
[5/20] Compiling OpenCrypto HashedAuthenticationCode.swift
/host/spi-builder-workspace/Sources/OpenCrypto/HashFunction.swift:20:17: warning: variable 'buffer' was never mutated; consider changing to 'let' constant
18 |             return digest
19 |         } else {
20 |             var buffer = UnsafeMutableBufferPointer<UInt8>.allocate(capacity: data.count)
   |                 `- warning: variable 'buffer' was never mutated; consider changing to 'let' constant
21 |             data.copyBytes(to: buffer)
22 |             defer { buffer.deallocate() }
[6/22] Compiling OpenCrypto SymmetricKey.swift
/host/spi-builder-workspace/Sources/OpenCrypto/Utilities.swift:25:13: warning: variable 'buffer' was never mutated; consider changing to 'let' constant
23 | extension DataProtocol {
24 |     func copyBytes() -> [UInt8] {
25 |         var buffer = UnsafeMutableBufferPointer<UInt8>.allocate(capacity: self.count)
   |             `- warning: variable 'buffer' was never mutated; consider changing to 'let' constant
26 |         self.copyBytes(to: buffer)
27 |         defer { buffer.deallocate() }
[7/22] Compiling OpenCrypto Utilities.swift
/host/spi-builder-workspace/Sources/OpenCrypto/Utilities.swift:25:13: warning: variable 'buffer' was never mutated; consider changing to 'let' constant
23 | extension DataProtocol {
24 |     func copyBytes() -> [UInt8] {
25 |         var buffer = UnsafeMutableBufferPointer<UInt8>.allocate(capacity: self.count)
   |             `- warning: variable 'buffer' was never mutated; consider changing to 'let' constant
26 |         self.copyBytes(to: buffer)
27 |         defer { buffer.deallocate() }
[8/22] Compiling OpenCrypto SHA1.swift
/host/spi-builder-workspace/Sources/OpenCrypto/SHA1.swift:10:20: warning: static property 'algorithm' is not concurrency-safe because non-'Sendable' type 'OpaquePointer' may have shared mutable state; this is an error in the Swift 6 language mode
 8 |
 9 |     public struct SHA1Digest : OpenSSLDigest {
10 |         static let algorithm: OpaquePointer = convert(EVP_sha1())
   |                    |- warning: static property 'algorithm' is not concurrency-safe because non-'Sendable' type 'OpaquePointer' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: add '@MainActor' to make static property 'algorithm' part of global actor 'MainActor'
   |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
11 |         let bytes: [UInt8]
12 |     }
Swift.OpaquePointer:1:23: note: struct 'OpaquePointer' does not conform to the 'Sendable' protocol
1 | @frozen public struct OpaquePointer {
  |                       `- note: struct 'OpaquePointer' does not conform to the 'Sendable' protocol
2 | }
/host/spi-builder-workspace/Sources/OpenCrypto/SHA2.swift:9:16: warning: static property 'algorithm' is not concurrency-safe because non-'Sendable' type 'OpaquePointer' may have shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 | public struct SHA256Digest : OpenSSLDigest {
 9 |     static let algorithm: OpaquePointer = convert(EVP_sha256())
   |                |- warning: static property 'algorithm' is not concurrency-safe because non-'Sendable' type 'OpaquePointer' may have shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: add '@MainActor' to make static property 'algorithm' part of global actor 'MainActor'
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
10 |     let bytes: [UInt8]
11 | }
Swift.OpaquePointer:1:23: note: struct 'OpaquePointer' does not conform to the 'Sendable' protocol
1 | @frozen public struct OpaquePointer {
  |                       `- note: struct 'OpaquePointer' does not conform to the 'Sendable' protocol
2 | }
/host/spi-builder-workspace/Sources/OpenCrypto/SHA2.swift:19:16: warning: static property 'algorithm' is not concurrency-safe because non-'Sendable' type 'OpaquePointer' may have shared mutable state; this is an error in the Swift 6 language mode
17 |
18 | public struct SHA384Digest : OpenSSLDigest {
19 |     static let algorithm: OpaquePointer = convert(EVP_sha384())
   |                |- warning: static property 'algorithm' is not concurrency-safe because non-'Sendable' type 'OpaquePointer' may have shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: add '@MainActor' to make static property 'algorithm' part of global actor 'MainActor'
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
20 |     let bytes: [UInt8]
21 | }
Swift.OpaquePointer:1:23: note: struct 'OpaquePointer' does not conform to the 'Sendable' protocol
1 | @frozen public struct OpaquePointer {
  |                       `- note: struct 'OpaquePointer' does not conform to the 'Sendable' protocol
2 | }
/host/spi-builder-workspace/Sources/OpenCrypto/SHA2.swift:29:16: warning: static property 'algorithm' is not concurrency-safe because non-'Sendable' type 'OpaquePointer' may have shared mutable state; this is an error in the Swift 6 language mode
27 |
28 | public struct SHA512Digest : OpenSSLDigest {
29 |     static let algorithm: OpaquePointer = convert(EVP_sha512())
   |                |- warning: static property 'algorithm' is not concurrency-safe because non-'Sendable' type 'OpaquePointer' may have shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: add '@MainActor' to make static property 'algorithm' part of global actor 'MainActor'
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
30 |     let bytes: [UInt8]
31 | }
Swift.OpaquePointer:1:23: note: struct 'OpaquePointer' does not conform to the 'Sendable' protocol
1 | @frozen public struct OpaquePointer {
  |                       `- note: struct 'OpaquePointer' does not conform to the 'Sendable' protocol
2 | }
[9/22] Compiling OpenCrypto SHA2.swift
/host/spi-builder-workspace/Sources/OpenCrypto/SHA1.swift:10:20: warning: static property 'algorithm' is not concurrency-safe because non-'Sendable' type 'OpaquePointer' may have shared mutable state; this is an error in the Swift 6 language mode
 8 |
 9 |     public struct SHA1Digest : OpenSSLDigest {
10 |         static let algorithm: OpaquePointer = convert(EVP_sha1())
   |                    |- warning: static property 'algorithm' is not concurrency-safe because non-'Sendable' type 'OpaquePointer' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: add '@MainActor' to make static property 'algorithm' part of global actor 'MainActor'
   |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
11 |         let bytes: [UInt8]
12 |     }
Swift.OpaquePointer:1:23: note: struct 'OpaquePointer' does not conform to the 'Sendable' protocol
1 | @frozen public struct OpaquePointer {
  |                       `- note: struct 'OpaquePointer' does not conform to the 'Sendable' protocol
2 | }
/host/spi-builder-workspace/Sources/OpenCrypto/SHA2.swift:9:16: warning: static property 'algorithm' is not concurrency-safe because non-'Sendable' type 'OpaquePointer' may have shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 | public struct SHA256Digest : OpenSSLDigest {
 9 |     static let algorithm: OpaquePointer = convert(EVP_sha256())
   |                |- warning: static property 'algorithm' is not concurrency-safe because non-'Sendable' type 'OpaquePointer' may have shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: add '@MainActor' to make static property 'algorithm' part of global actor 'MainActor'
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
10 |     let bytes: [UInt8]
11 | }
Swift.OpaquePointer:1:23: note: struct 'OpaquePointer' does not conform to the 'Sendable' protocol
1 | @frozen public struct OpaquePointer {
  |                       `- note: struct 'OpaquePointer' does not conform to the 'Sendable' protocol
2 | }
/host/spi-builder-workspace/Sources/OpenCrypto/SHA2.swift:19:16: warning: static property 'algorithm' is not concurrency-safe because non-'Sendable' type 'OpaquePointer' may have shared mutable state; this is an error in the Swift 6 language mode
17 |
18 | public struct SHA384Digest : OpenSSLDigest {
19 |     static let algorithm: OpaquePointer = convert(EVP_sha384())
   |                |- warning: static property 'algorithm' is not concurrency-safe because non-'Sendable' type 'OpaquePointer' may have shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: add '@MainActor' to make static property 'algorithm' part of global actor 'MainActor'
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
20 |     let bytes: [UInt8]
21 | }
Swift.OpaquePointer:1:23: note: struct 'OpaquePointer' does not conform to the 'Sendable' protocol
1 | @frozen public struct OpaquePointer {
  |                       `- note: struct 'OpaquePointer' does not conform to the 'Sendable' protocol
2 | }
/host/spi-builder-workspace/Sources/OpenCrypto/SHA2.swift:29:16: warning: static property 'algorithm' is not concurrency-safe because non-'Sendable' type 'OpaquePointer' may have shared mutable state; this is an error in the Swift 6 language mode
27 |
28 | public struct SHA512Digest : OpenSSLDigest {
29 |     static let algorithm: OpaquePointer = convert(EVP_sha512())
   |                |- warning: static property 'algorithm' is not concurrency-safe because non-'Sendable' type 'OpaquePointer' may have shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: add '@MainActor' to make static property 'algorithm' part of global actor 'MainActor'
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
30 |     let bytes: [UInt8]
31 | }
Swift.OpaquePointer:1:23: note: struct 'OpaquePointer' does not conform to the 'Sendable' protocol
1 | @frozen public struct OpaquePointer {
  |                       `- note: struct 'OpaquePointer' does not conform to the 'Sendable' protocol
2 | }
[10/22] Compiling OpenCrypto OpenSSLCipherFunction.swift
/host/spi-builder-workspace/Sources/OpenCrypto/OpenSSLCipherFunction.swift:101:43: error: cannot find 'EVP_CIPHER_key_length' in scope
 99 |         where IV: DataProtocol
100 |     {
101 |         guard key.bitCount == numericCast(EVP_CIPHER_key_length(convert(algorithm))) * 8 else {
    |                                           `- error: cannot find 'EVP_CIPHER_key_length' in scope
102 |             throw CryptoKitError.incorrectKeySize
103 |         }
/host/spi-builder-workspace/Sources/OpenCrypto/OpenSSLCipherFunction.swift:104:39: error: cannot find 'EVP_CIPHER_iv_length' in scope
102 |             throw CryptoKitError.incorrectKeySize
103 |         }
104 |         guard iv.count == numericCast(EVP_CIPHER_iv_length(convert(algorithm))) else {
    |                                       `- error: cannot find 'EVP_CIPHER_iv_length' in scope
105 |             throw CryptoKitError.incorrectParameterSize
106 |         }
/host/spi-builder-workspace/Sources/OpenCrypto/OpenSSLCipherFunction.swift:129:75: error: cannot find 'EVP_CIPHER_block_size' in scope
127 |     {
128 |         let data = data.copyBytes()
129 |         var chunk = [UInt8](repeating: 0, count: data.count + numericCast(EVP_CIPHER_block_size(convert(algorithm))) - 1)
    |                                                                           `- error: cannot find 'EVP_CIPHER_block_size' in scope
130 |         var chunkLength: Int32 = 0
131 |
/host/spi-builder-workspace/Sources/OpenCrypto/OpenSSLCipherFunction.swift:149:62: error: cannot find 'EVP_CIPHER_block_size' in scope
147 |         into buffer: inout [UInt8]
148 |     ) throws {
149 |         var chunk = [UInt8](repeating: 0, count: numericCast(EVP_CIPHER_block_size(convert(algorithm))))
    |                                                              `- error: cannot find 'EVP_CIPHER_block_size' in scope
150 |         var chunkLength: Int32 = 0
151 |
/host/spi-builder-workspace/Sources/OpenCrypto/OpenSSLHashFunction.swift:15:28: error: cannot find 'EVP_MD_size' in scope
13 | extension OpenSSLDigest {
14 |     public static var byteCount: Int {
15 |         return numericCast(EVP_MD_size(convert(self.algorithm)))
   |                            `- error: cannot find 'EVP_MD_size' in scope
16 |     }
17 |
[11/22] Compiling OpenCrypto OpenSSLHashFunction.swift
/host/spi-builder-workspace/Sources/OpenCrypto/OpenSSLCipherFunction.swift:101:43: error: cannot find 'EVP_CIPHER_key_length' in scope
 99 |         where IV: DataProtocol
100 |     {
101 |         guard key.bitCount == numericCast(EVP_CIPHER_key_length(convert(algorithm))) * 8 else {
    |                                           `- error: cannot find 'EVP_CIPHER_key_length' in scope
102 |             throw CryptoKitError.incorrectKeySize
103 |         }
/host/spi-builder-workspace/Sources/OpenCrypto/OpenSSLCipherFunction.swift:104:39: error: cannot find 'EVP_CIPHER_iv_length' in scope
102 |             throw CryptoKitError.incorrectKeySize
103 |         }
104 |         guard iv.count == numericCast(EVP_CIPHER_iv_length(convert(algorithm))) else {
    |                                       `- error: cannot find 'EVP_CIPHER_iv_length' in scope
105 |             throw CryptoKitError.incorrectParameterSize
106 |         }
/host/spi-builder-workspace/Sources/OpenCrypto/OpenSSLCipherFunction.swift:129:75: error: cannot find 'EVP_CIPHER_block_size' in scope
127 |     {
128 |         let data = data.copyBytes()
129 |         var chunk = [UInt8](repeating: 0, count: data.count + numericCast(EVP_CIPHER_block_size(convert(algorithm))) - 1)
    |                                                                           `- error: cannot find 'EVP_CIPHER_block_size' in scope
130 |         var chunkLength: Int32 = 0
131 |
/host/spi-builder-workspace/Sources/OpenCrypto/OpenSSLCipherFunction.swift:149:62: error: cannot find 'EVP_CIPHER_block_size' in scope
147 |         into buffer: inout [UInt8]
148 |     ) throws {
149 |         var chunk = [UInt8](repeating: 0, count: numericCast(EVP_CIPHER_block_size(convert(algorithm))))
    |                                                              `- error: cannot find 'EVP_CIPHER_block_size' in scope
150 |         var chunkLength: Int32 = 0
151 |
/host/spi-builder-workspace/Sources/OpenCrypto/OpenSSLHashFunction.swift:15:28: error: cannot find 'EVP_MD_size' in scope
13 | extension OpenSSLDigest {
14 |     public static var byteCount: Int {
15 |         return numericCast(EVP_MD_size(convert(self.algorithm)))
   |                            `- error: cannot find 'EVP_MD_size' in scope
16 |     }
17 |
[12/22] Compiling OpenCrypto HexEncoding.swift
[13/22] Compiling OpenCrypto Insecure.swift
[14/22] Compiling OpenCrypto MD5.swift
/host/spi-builder-workspace/Sources/OpenCrypto/MD5.swift:10:20: warning: static property 'algorithm' is not concurrency-safe because non-'Sendable' type 'OpaquePointer' may have shared mutable state; this is an error in the Swift 6 language mode
 8 |
 9 |     public struct MD5Digest : OpenSSLDigest {
10 |         static let algorithm: OpaquePointer = convert(EVP_md5())
   |                    |- warning: static property 'algorithm' is not concurrency-safe because non-'Sendable' type 'OpaquePointer' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: add '@MainActor' to make static property 'algorithm' part of global actor 'MainActor'
   |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
11 |         let bytes: [UInt8]
12 |     }
Swift.OpaquePointer:1:23: note: struct 'OpaquePointer' does not conform to the 'Sendable' protocol
1 | @frozen public struct OpaquePointer {
  |                       `- note: struct 'OpaquePointer' does not conform to the 'Sendable' protocol
2 | }
[15/22] Compiling OpenCrypto MessageAuthenticationCode.swift
/host/spi-builder-workspace/Sources/OpenCrypto/MD5.swift:10:20: warning: static property 'algorithm' is not concurrency-safe because non-'Sendable' type 'OpaquePointer' may have shared mutable state; this is an error in the Swift 6 language mode
 8 |
 9 |     public struct MD5Digest : OpenSSLDigest {
10 |         static let algorithm: OpaquePointer = convert(EVP_md5())
   |                    |- warning: static property 'algorithm' is not concurrency-safe because non-'Sendable' type 'OpaquePointer' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: add '@MainActor' to make static property 'algorithm' part of global actor 'MainActor'
   |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
11 |         let bytes: [UInt8]
12 |     }
Swift.OpaquePointer:1:23: note: struct 'OpaquePointer' does not conform to the 'Sendable' protocol
1 | @frozen public struct OpaquePointer {
  |                       `- note: struct 'OpaquePointer' does not conform to the 'Sendable' protocol
2 | }
[16/22] Compiling OpenCrypto AES.swift
[17/22] Compiling OpenCrypto ChaChaPoly.swift
[18/22] Compiling OpenCrypto Digest.swift
[19/22] Compiling OpenCrypto Errors.swift
/host/spi-builder-workspace/Sources/OpenCrypto/HMAC.swift:57:32: warning: 'HMAC_CTX_new()' is deprecated
 55 |     public init(key: SymmetricKey) {
 56 |         self.key = key
 57 |         self.context = convert(HMAC_CTX_new())
    |                                `- warning: 'HMAC_CTX_new()' is deprecated
 58 |         self.initialize()
 59 |     }
/host/spi-builder-workspace/Sources/OpenCrypto/HMAC.swift:69:17: warning: variable 'buffer' was never mutated; consider changing to 'let' constant
 67 |             return digest
 68 |         } else {
 69 |             var buffer = UnsafeMutableBufferPointer<UInt8>.allocate(capacity: data.count)
    |                 `- warning: variable 'buffer' was never mutated; consider changing to 'let' constant
 70 |             data.copyBytes(to: buffer)
 71 |             defer { buffer.deallocate() }
/host/spi-builder-workspace/Sources/OpenCrypto/HMAC.swift:78:20: warning: 'HMAC_Update' is deprecated
 76 |     private mutating func update(bufferPointer: UnsafeRawBufferPointer) {
 77 |         guard bufferPointer.withUnsafeBytes({
 78 |             return HMAC_Update(convert(self.context), $0.baseAddress?.assumingMemoryBound(to: UInt8.self), $0.count)
    |                    `- warning: 'HMAC_Update' is deprecated
 79 |         }) == 1 else {
 80 |             fatalError("Failed updating HMAC digest")
/host/spi-builder-workspace/Sources/OpenCrypto/HMAC.swift:89:20: warning: 'HMAC_Final' is deprecated
 87 |
 88 |         guard hash.withUnsafeMutableBytes({
 89 |             return HMAC_Final(convert(self.context), $0.baseAddress?.assumingMemoryBound(to: UInt8.self), &count)
    |                    `- warning: 'HMAC_Final' is deprecated
 90 |         }) == 1 else {
 91 |             fatalError("Failed finalizing HMAC digest")
/host/spi-builder-workspace/Sources/OpenCrypto/HMAC.swift:100:20: warning: 'HMAC_Init_ex' is deprecated
 98 |     private func initialize() {
 99 |         guard self.key.withUnsafeBytes({
100 |             return HMAC_Init_ex(convert(self.context), $0.baseAddress?.assumingMemoryBound(to: UInt8.self), Int32($0.count), convert(type(of: self).algorithm), nil)
    |                    `- warning: 'HMAC_Init_ex' is deprecated
101 |         }) == 1 else {
102 |             fatalError("Failed initializing HMAC context")
/host/spi-builder-workspace/Sources/OpenCrypto/HMAC.swift:107:9: warning: 'HMAC_CTX_free' is deprecated
105 |
106 |     private func free() {
107 |         HMAC_CTX_free(convert(self.context))
    |         `- warning: 'HMAC_CTX_free' is deprecated
108 |     }
109 | }
[20/22] Compiling OpenCrypto Exports.swift
/host/spi-builder-workspace/Sources/OpenCrypto/HMAC.swift:57:32: warning: 'HMAC_CTX_new()' is deprecated
 55 |     public init(key: SymmetricKey) {
 56 |         self.key = key
 57 |         self.context = convert(HMAC_CTX_new())
    |                                `- warning: 'HMAC_CTX_new()' is deprecated
 58 |         self.initialize()
 59 |     }
/host/spi-builder-workspace/Sources/OpenCrypto/HMAC.swift:69:17: warning: variable 'buffer' was never mutated; consider changing to 'let' constant
 67 |             return digest
 68 |         } else {
 69 |             var buffer = UnsafeMutableBufferPointer<UInt8>.allocate(capacity: data.count)
    |                 `- warning: variable 'buffer' was never mutated; consider changing to 'let' constant
 70 |             data.copyBytes(to: buffer)
 71 |             defer { buffer.deallocate() }
/host/spi-builder-workspace/Sources/OpenCrypto/HMAC.swift:78:20: warning: 'HMAC_Update' is deprecated
 76 |     private mutating func update(bufferPointer: UnsafeRawBufferPointer) {
 77 |         guard bufferPointer.withUnsafeBytes({
 78 |             return HMAC_Update(convert(self.context), $0.baseAddress?.assumingMemoryBound(to: UInt8.self), $0.count)
    |                    `- warning: 'HMAC_Update' is deprecated
 79 |         }) == 1 else {
 80 |             fatalError("Failed updating HMAC digest")
/host/spi-builder-workspace/Sources/OpenCrypto/HMAC.swift:89:20: warning: 'HMAC_Final' is deprecated
 87 |
 88 |         guard hash.withUnsafeMutableBytes({
 89 |             return HMAC_Final(convert(self.context), $0.baseAddress?.assumingMemoryBound(to: UInt8.self), &count)
    |                    `- warning: 'HMAC_Final' is deprecated
 90 |         }) == 1 else {
 91 |             fatalError("Failed finalizing HMAC digest")
/host/spi-builder-workspace/Sources/OpenCrypto/HMAC.swift:100:20: warning: 'HMAC_Init_ex' is deprecated
 98 |     private func initialize() {
 99 |         guard self.key.withUnsafeBytes({
100 |             return HMAC_Init_ex(convert(self.context), $0.baseAddress?.assumingMemoryBound(to: UInt8.self), Int32($0.count), convert(type(of: self).algorithm), nil)
    |                    `- warning: 'HMAC_Init_ex' is deprecated
101 |         }) == 1 else {
102 |             fatalError("Failed initializing HMAC context")
/host/spi-builder-workspace/Sources/OpenCrypto/HMAC.swift:107:9: warning: 'HMAC_CTX_free' is deprecated
105 |
106 |     private func free() {
107 |         HMAC_CTX_free(convert(self.context))
    |         `- warning: 'HMAC_CTX_free' is deprecated
108 |     }
109 | }
[21/22] Compiling OpenCrypto HMAC.swift
/host/spi-builder-workspace/Sources/OpenCrypto/HMAC.swift:57:32: warning: 'HMAC_CTX_new()' is deprecated
 55 |     public init(key: SymmetricKey) {
 56 |         self.key = key
 57 |         self.context = convert(HMAC_CTX_new())
    |                                `- warning: 'HMAC_CTX_new()' is deprecated
 58 |         self.initialize()
 59 |     }
/host/spi-builder-workspace/Sources/OpenCrypto/HMAC.swift:69:17: warning: variable 'buffer' was never mutated; consider changing to 'let' constant
 67 |             return digest
 68 |         } else {
 69 |             var buffer = UnsafeMutableBufferPointer<UInt8>.allocate(capacity: data.count)
    |                 `- warning: variable 'buffer' was never mutated; consider changing to 'let' constant
 70 |             data.copyBytes(to: buffer)
 71 |             defer { buffer.deallocate() }
/host/spi-builder-workspace/Sources/OpenCrypto/HMAC.swift:78:20: warning: 'HMAC_Update' is deprecated
 76 |     private mutating func update(bufferPointer: UnsafeRawBufferPointer) {
 77 |         guard bufferPointer.withUnsafeBytes({
 78 |             return HMAC_Update(convert(self.context), $0.baseAddress?.assumingMemoryBound(to: UInt8.self), $0.count)
    |                    `- warning: 'HMAC_Update' is deprecated
 79 |         }) == 1 else {
 80 |             fatalError("Failed updating HMAC digest")
/host/spi-builder-workspace/Sources/OpenCrypto/HMAC.swift:89:20: warning: 'HMAC_Final' is deprecated
 87 |
 88 |         guard hash.withUnsafeMutableBytes({
 89 |             return HMAC_Final(convert(self.context), $0.baseAddress?.assumingMemoryBound(to: UInt8.self), &count)
    |                    `- warning: 'HMAC_Final' is deprecated
 90 |         }) == 1 else {
 91 |             fatalError("Failed finalizing HMAC digest")
/host/spi-builder-workspace/Sources/OpenCrypto/HMAC.swift:100:20: warning: 'HMAC_Init_ex' is deprecated
 98 |     private func initialize() {
 99 |         guard self.key.withUnsafeBytes({
100 |             return HMAC_Init_ex(convert(self.context), $0.baseAddress?.assumingMemoryBound(to: UInt8.self), Int32($0.count), convert(type(of: self).algorithm), nil)
    |                    `- warning: 'HMAC_Init_ex' is deprecated
101 |         }) == 1 else {
102 |             fatalError("Failed initializing HMAC context")
/host/spi-builder-workspace/Sources/OpenCrypto/HMAC.swift:107:9: warning: 'HMAC_CTX_free' is deprecated
105 |
106 |     private func free() {
107 |         HMAC_CTX_free(convert(self.context))
    |         `- warning: 'HMAC_CTX_free' is deprecated
108 |     }
109 | }
[22/22] Emitting module OpenCrypto
/host/spi-builder-workspace/Sources/OpenCrypto/MD5.swift:10:20: warning: static property 'algorithm' is not concurrency-safe because non-'Sendable' type 'OpaquePointer' may have shared mutable state; this is an error in the Swift 6 language mode
 8 |
 9 |     public struct MD5Digest : OpenSSLDigest {
10 |         static let algorithm: OpaquePointer = convert(EVP_md5())
   |                    |- warning: static property 'algorithm' is not concurrency-safe because non-'Sendable' type 'OpaquePointer' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: add '@MainActor' to make static property 'algorithm' part of global actor 'MainActor'
   |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
11 |         let bytes: [UInt8]
12 |     }
Swift.OpaquePointer:1:23: note: struct 'OpaquePointer' does not conform to the 'Sendable' protocol
1 | @frozen public struct OpaquePointer {
  |                       `- note: struct 'OpaquePointer' does not conform to the 'Sendable' protocol
2 | }
/host/spi-builder-workspace/Sources/OpenCrypto/SHA1.swift:10:20: warning: static property 'algorithm' is not concurrency-safe because non-'Sendable' type 'OpaquePointer' may have shared mutable state; this is an error in the Swift 6 language mode
 8 |
 9 |     public struct SHA1Digest : OpenSSLDigest {
10 |         static let algorithm: OpaquePointer = convert(EVP_sha1())
   |                    |- warning: static property 'algorithm' is not concurrency-safe because non-'Sendable' type 'OpaquePointer' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: add '@MainActor' to make static property 'algorithm' part of global actor 'MainActor'
   |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
11 |         let bytes: [UInt8]
12 |     }
Swift.OpaquePointer:1:23: note: struct 'OpaquePointer' does not conform to the 'Sendable' protocol
1 | @frozen public struct OpaquePointer {
  |                       `- note: struct 'OpaquePointer' does not conform to the 'Sendable' protocol
2 | }
/host/spi-builder-workspace/Sources/OpenCrypto/SHA2.swift:9:16: warning: static property 'algorithm' is not concurrency-safe because non-'Sendable' type 'OpaquePointer' may have shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 | public struct SHA256Digest : OpenSSLDigest {
 9 |     static let algorithm: OpaquePointer = convert(EVP_sha256())
   |                |- warning: static property 'algorithm' is not concurrency-safe because non-'Sendable' type 'OpaquePointer' may have shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: add '@MainActor' to make static property 'algorithm' part of global actor 'MainActor'
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
10 |     let bytes: [UInt8]
11 | }
Swift.OpaquePointer:1:23: note: struct 'OpaquePointer' does not conform to the 'Sendable' protocol
1 | @frozen public struct OpaquePointer {
  |                       `- note: struct 'OpaquePointer' does not conform to the 'Sendable' protocol
2 | }
/host/spi-builder-workspace/Sources/OpenCrypto/SHA2.swift:19:16: warning: static property 'algorithm' is not concurrency-safe because non-'Sendable' type 'OpaquePointer' may have shared mutable state; this is an error in the Swift 6 language mode
17 |
18 | public struct SHA384Digest : OpenSSLDigest {
19 |     static let algorithm: OpaquePointer = convert(EVP_sha384())
   |                |- warning: static property 'algorithm' is not concurrency-safe because non-'Sendable' type 'OpaquePointer' may have shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: add '@MainActor' to make static property 'algorithm' part of global actor 'MainActor'
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
20 |     let bytes: [UInt8]
21 | }
Swift.OpaquePointer:1:23: note: struct 'OpaquePointer' does not conform to the 'Sendable' protocol
1 | @frozen public struct OpaquePointer {
  |                       `- note: struct 'OpaquePointer' does not conform to the 'Sendable' protocol
2 | }
/host/spi-builder-workspace/Sources/OpenCrypto/SHA2.swift:29:16: warning: static property 'algorithm' is not concurrency-safe because non-'Sendable' type 'OpaquePointer' may have shared mutable state; this is an error in the Swift 6 language mode
27 |
28 | public struct SHA512Digest : OpenSSLDigest {
29 |     static let algorithm: OpaquePointer = convert(EVP_sha512())
   |                |- warning: static property 'algorithm' is not concurrency-safe because non-'Sendable' type 'OpaquePointer' may have shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: add '@MainActor' to make static property 'algorithm' part of global actor 'MainActor'
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
30 |     let bytes: [UInt8]
31 | }
Swift.OpaquePointer:1:23: note: struct 'OpaquePointer' does not conform to the 'Sendable' protocol
1 | @frozen public struct OpaquePointer {
  |                       `- note: struct 'OpaquePointer' does not conform to the 'Sendable' protocol
2 | }
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-3":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu 2>&1
basic-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:3bdcac04179f4ed3e5b8e9dbd6e74bbf5ebc0f4fde48bbaad7d1e5c757e65bcb
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.1-latest
[0/1] Planning build
Building for debugging...
[0/1] Write swift-version-24593BA9C3E375BF.txt
[2/18] Compiling OpenCrypto SHA1.swift
[3/18] Compiling OpenCrypto SHA2.swift
[4/20] Emitting module OpenCrypto
[5/20] Compiling OpenCrypto MD5.swift
[6/20] Compiling OpenCrypto MessageAuthenticationCode.swift
[7/20] Compiling OpenCrypto HexEncoding.swift
[8/20] Compiling OpenCrypto Insecure.swift
[9/20] Compiling OpenCrypto HashFunction.swift
/host/spi-builder-workspace/Sources/OpenCrypto/HashFunction.swift:20:17: warning: variable 'buffer' was never mutated; consider changing to 'let' constant
18 |             return digest
19 |         } else {
20 |             var buffer = UnsafeMutableBufferPointer<UInt8>.allocate(capacity: data.count)
   |                 `- warning: variable 'buffer' was never mutated; consider changing to 'let' constant
21 |             data.copyBytes(to: buffer)
22 |             defer { buffer.deallocate() }
[10/20] Compiling OpenCrypto HashedAuthenticationCode.swift
/host/spi-builder-workspace/Sources/OpenCrypto/HashFunction.swift:20:17: warning: variable 'buffer' was never mutated; consider changing to 'let' constant
18 |             return digest
19 |         } else {
20 |             var buffer = UnsafeMutableBufferPointer<UInt8>.allocate(capacity: data.count)
   |                 `- warning: variable 'buffer' was never mutated; consider changing to 'let' constant
21 |             data.copyBytes(to: buffer)
22 |             defer { buffer.deallocate() }
[11/20] Compiling OpenCrypto Errors.swift
/host/spi-builder-workspace/Sources/OpenCrypto/HMAC.swift:57:32: warning: 'HMAC_CTX_new()' is deprecated
 55 |     public init(key: SymmetricKey) {
 56 |         self.key = key
 57 |         self.context = convert(HMAC_CTX_new())
    |                                `- warning: 'HMAC_CTX_new()' is deprecated
 58 |         self.initialize()
 59 |     }
/host/spi-builder-workspace/Sources/OpenCrypto/HMAC.swift:69:17: warning: variable 'buffer' was never mutated; consider changing to 'let' constant
 67 |             return digest
 68 |         } else {
 69 |             var buffer = UnsafeMutableBufferPointer<UInt8>.allocate(capacity: data.count)
    |                 `- warning: variable 'buffer' was never mutated; consider changing to 'let' constant
 70 |             data.copyBytes(to: buffer)
 71 |             defer { buffer.deallocate() }
/host/spi-builder-workspace/Sources/OpenCrypto/HMAC.swift:78:20: warning: 'HMAC_Update' is deprecated
 76 |     private mutating func update(bufferPointer: UnsafeRawBufferPointer) {
 77 |         guard bufferPointer.withUnsafeBytes({
 78 |             return HMAC_Update(convert(self.context), $0.baseAddress?.assumingMemoryBound(to: UInt8.self), $0.count)
    |                    `- warning: 'HMAC_Update' is deprecated
 79 |         }) == 1 else {
 80 |             fatalError("Failed updating HMAC digest")
/host/spi-builder-workspace/Sources/OpenCrypto/HMAC.swift:89:20: warning: 'HMAC_Final' is deprecated
 87 |
 88 |         guard hash.withUnsafeMutableBytes({
 89 |             return HMAC_Final(convert(self.context), $0.baseAddress?.assumingMemoryBound(to: UInt8.self), &count)
    |                    `- warning: 'HMAC_Final' is deprecated
 90 |         }) == 1 else {
 91 |             fatalError("Failed finalizing HMAC digest")
/host/spi-builder-workspace/Sources/OpenCrypto/HMAC.swift:100:20: warning: 'HMAC_Init_ex' is deprecated
 98 |     private func initialize() {
 99 |         guard self.key.withUnsafeBytes({
100 |             return HMAC_Init_ex(convert(self.context), $0.baseAddress?.assumingMemoryBound(to: UInt8.self), Int32($0.count), convert(type(of: self).algorithm), nil)
    |                    `- warning: 'HMAC_Init_ex' is deprecated
101 |         }) == 1 else {
102 |             fatalError("Failed initializing HMAC context")
/host/spi-builder-workspace/Sources/OpenCrypto/HMAC.swift:107:9: warning: 'HMAC_CTX_free' is deprecated
105 |
106 |     private func free() {
107 |         HMAC_CTX_free(convert(self.context))
    |         `- warning: 'HMAC_CTX_free' is deprecated
108 |     }
109 | }
[12/20] Compiling OpenCrypto Exports.swift
/host/spi-builder-workspace/Sources/OpenCrypto/HMAC.swift:57:32: warning: 'HMAC_CTX_new()' is deprecated
 55 |     public init(key: SymmetricKey) {
 56 |         self.key = key
 57 |         self.context = convert(HMAC_CTX_new())
    |                                `- warning: 'HMAC_CTX_new()' is deprecated
 58 |         self.initialize()
 59 |     }
/host/spi-builder-workspace/Sources/OpenCrypto/HMAC.swift:69:17: warning: variable 'buffer' was never mutated; consider changing to 'let' constant
 67 |             return digest
 68 |         } else {
 69 |             var buffer = UnsafeMutableBufferPointer<UInt8>.allocate(capacity: data.count)
    |                 `- warning: variable 'buffer' was never mutated; consider changing to 'let' constant
 70 |             data.copyBytes(to: buffer)
 71 |             defer { buffer.deallocate() }
/host/spi-builder-workspace/Sources/OpenCrypto/HMAC.swift:78:20: warning: 'HMAC_Update' is deprecated
 76 |     private mutating func update(bufferPointer: UnsafeRawBufferPointer) {
 77 |         guard bufferPointer.withUnsafeBytes({
 78 |             return HMAC_Update(convert(self.context), $0.baseAddress?.assumingMemoryBound(to: UInt8.self), $0.count)
    |                    `- warning: 'HMAC_Update' is deprecated
 79 |         }) == 1 else {
 80 |             fatalError("Failed updating HMAC digest")
/host/spi-builder-workspace/Sources/OpenCrypto/HMAC.swift:89:20: warning: 'HMAC_Final' is deprecated
 87 |
 88 |         guard hash.withUnsafeMutableBytes({
 89 |             return HMAC_Final(convert(self.context), $0.baseAddress?.assumingMemoryBound(to: UInt8.self), &count)
    |                    `- warning: 'HMAC_Final' is deprecated
 90 |         }) == 1 else {
 91 |             fatalError("Failed finalizing HMAC digest")
/host/spi-builder-workspace/Sources/OpenCrypto/HMAC.swift:100:20: warning: 'HMAC_Init_ex' is deprecated
 98 |     private func initialize() {
 99 |         guard self.key.withUnsafeBytes({
100 |             return HMAC_Init_ex(convert(self.context), $0.baseAddress?.assumingMemoryBound(to: UInt8.self), Int32($0.count), convert(type(of: self).algorithm), nil)
    |                    `- warning: 'HMAC_Init_ex' is deprecated
101 |         }) == 1 else {
102 |             fatalError("Failed initializing HMAC context")
/host/spi-builder-workspace/Sources/OpenCrypto/HMAC.swift:107:9: warning: 'HMAC_CTX_free' is deprecated
105 |
106 |     private func free() {
107 |         HMAC_CTX_free(convert(self.context))
    |         `- warning: 'HMAC_CTX_free' is deprecated
108 |     }
109 | }
[13/20] Compiling OpenCrypto HMAC.swift
/host/spi-builder-workspace/Sources/OpenCrypto/HMAC.swift:57:32: warning: 'HMAC_CTX_new()' is deprecated
 55 |     public init(key: SymmetricKey) {
 56 |         self.key = key
 57 |         self.context = convert(HMAC_CTX_new())
    |                                `- warning: 'HMAC_CTX_new()' is deprecated
 58 |         self.initialize()
 59 |     }
/host/spi-builder-workspace/Sources/OpenCrypto/HMAC.swift:69:17: warning: variable 'buffer' was never mutated; consider changing to 'let' constant
 67 |             return digest
 68 |         } else {
 69 |             var buffer = UnsafeMutableBufferPointer<UInt8>.allocate(capacity: data.count)
    |                 `- warning: variable 'buffer' was never mutated; consider changing to 'let' constant
 70 |             data.copyBytes(to: buffer)
 71 |             defer { buffer.deallocate() }
/host/spi-builder-workspace/Sources/OpenCrypto/HMAC.swift:78:20: warning: 'HMAC_Update' is deprecated
 76 |     private mutating func update(bufferPointer: UnsafeRawBufferPointer) {
 77 |         guard bufferPointer.withUnsafeBytes({
 78 |             return HMAC_Update(convert(self.context), $0.baseAddress?.assumingMemoryBound(to: UInt8.self), $0.count)
    |                    `- warning: 'HMAC_Update' is deprecated
 79 |         }) == 1 else {
 80 |             fatalError("Failed updating HMAC digest")
/host/spi-builder-workspace/Sources/OpenCrypto/HMAC.swift:89:20: warning: 'HMAC_Final' is deprecated
 87 |
 88 |         guard hash.withUnsafeMutableBytes({
 89 |             return HMAC_Final(convert(self.context), $0.baseAddress?.assumingMemoryBound(to: UInt8.self), &count)
    |                    `- warning: 'HMAC_Final' is deprecated
 90 |         }) == 1 else {
 91 |             fatalError("Failed finalizing HMAC digest")
/host/spi-builder-workspace/Sources/OpenCrypto/HMAC.swift:100:20: warning: 'HMAC_Init_ex' is deprecated
 98 |     private func initialize() {
 99 |         guard self.key.withUnsafeBytes({
100 |             return HMAC_Init_ex(convert(self.context), $0.baseAddress?.assumingMemoryBound(to: UInt8.self), Int32($0.count), convert(type(of: self).algorithm), nil)
    |                    `- warning: 'HMAC_Init_ex' is deprecated
101 |         }) == 1 else {
102 |             fatalError("Failed initializing HMAC context")
/host/spi-builder-workspace/Sources/OpenCrypto/HMAC.swift:107:9: warning: 'HMAC_CTX_free' is deprecated
105 |
106 |     private func free() {
107 |         HMAC_CTX_free(convert(self.context))
    |         `- warning: 'HMAC_CTX_free' is deprecated
108 |     }
109 | }
[14/20] Compiling OpenCrypto OpenSSLCipherFunction.swift
/host/spi-builder-workspace/Sources/OpenCrypto/OpenSSLCipherFunction.swift:101:43: error: cannot find 'EVP_CIPHER_key_length' in scope
 99 |         where IV: DataProtocol
100 |     {
101 |         guard key.bitCount == numericCast(EVP_CIPHER_key_length(convert(algorithm))) * 8 else {
    |                                           `- error: cannot find 'EVP_CIPHER_key_length' in scope
102 |             throw CryptoKitError.incorrectKeySize
103 |         }
/host/spi-builder-workspace/Sources/OpenCrypto/OpenSSLCipherFunction.swift:104:39: error: cannot find 'EVP_CIPHER_iv_length' in scope
102 |             throw CryptoKitError.incorrectKeySize
103 |         }
104 |         guard iv.count == numericCast(EVP_CIPHER_iv_length(convert(algorithm))) else {
    |                                       `- error: cannot find 'EVP_CIPHER_iv_length' in scope
105 |             throw CryptoKitError.incorrectParameterSize
106 |         }
/host/spi-builder-workspace/Sources/OpenCrypto/OpenSSLCipherFunction.swift:129:75: error: cannot find 'EVP_CIPHER_block_size' in scope
127 |     {
128 |         let data = data.copyBytes()
129 |         var chunk = [UInt8](repeating: 0, count: data.count + numericCast(EVP_CIPHER_block_size(convert(algorithm))) - 1)
    |                                                                           `- error: cannot find 'EVP_CIPHER_block_size' in scope
130 |         var chunkLength: Int32 = 0
131 |
/host/spi-builder-workspace/Sources/OpenCrypto/OpenSSLCipherFunction.swift:149:62: error: cannot find 'EVP_CIPHER_block_size' in scope
147 |         into buffer: inout [UInt8]
148 |     ) throws {
149 |         var chunk = [UInt8](repeating: 0, count: numericCast(EVP_CIPHER_block_size(convert(algorithm))))
    |                                                              `- error: cannot find 'EVP_CIPHER_block_size' in scope
150 |         var chunkLength: Int32 = 0
151 |
/host/spi-builder-workspace/Sources/OpenCrypto/OpenSSLHashFunction.swift:15:28: error: cannot find 'EVP_MD_size' in scope
13 | extension OpenSSLDigest {
14 |     public static var byteCount: Int {
15 |         return numericCast(EVP_MD_size(convert(self.algorithm)))
   |                            `- error: cannot find 'EVP_MD_size' in scope
16 |     }
17 |
[15/20] Compiling OpenCrypto OpenSSLHashFunction.swift
/host/spi-builder-workspace/Sources/OpenCrypto/OpenSSLCipherFunction.swift:101:43: error: cannot find 'EVP_CIPHER_key_length' in scope
 99 |         where IV: DataProtocol
100 |     {
101 |         guard key.bitCount == numericCast(EVP_CIPHER_key_length(convert(algorithm))) * 8 else {
    |                                           `- error: cannot find 'EVP_CIPHER_key_length' in scope
102 |             throw CryptoKitError.incorrectKeySize
103 |         }
/host/spi-builder-workspace/Sources/OpenCrypto/OpenSSLCipherFunction.swift:104:39: error: cannot find 'EVP_CIPHER_iv_length' in scope
102 |             throw CryptoKitError.incorrectKeySize
103 |         }
104 |         guard iv.count == numericCast(EVP_CIPHER_iv_length(convert(algorithm))) else {
    |                                       `- error: cannot find 'EVP_CIPHER_iv_length' in scope
105 |             throw CryptoKitError.incorrectParameterSize
106 |         }
/host/spi-builder-workspace/Sources/OpenCrypto/OpenSSLCipherFunction.swift:129:75: error: cannot find 'EVP_CIPHER_block_size' in scope
127 |     {
128 |         let data = data.copyBytes()
129 |         var chunk = [UInt8](repeating: 0, count: data.count + numericCast(EVP_CIPHER_block_size(convert(algorithm))) - 1)
    |                                                                           `- error: cannot find 'EVP_CIPHER_block_size' in scope
130 |         var chunkLength: Int32 = 0
131 |
/host/spi-builder-workspace/Sources/OpenCrypto/OpenSSLCipherFunction.swift:149:62: error: cannot find 'EVP_CIPHER_block_size' in scope
147 |         into buffer: inout [UInt8]
148 |     ) throws {
149 |         var chunk = [UInt8](repeating: 0, count: numericCast(EVP_CIPHER_block_size(convert(algorithm))))
    |                                                              `- error: cannot find 'EVP_CIPHER_block_size' in scope
150 |         var chunkLength: Int32 = 0
151 |
/host/spi-builder-workspace/Sources/OpenCrypto/OpenSSLHashFunction.swift:15:28: error: cannot find 'EVP_MD_size' in scope
13 | extension OpenSSLDigest {
14 |     public static var byteCount: Int {
15 |         return numericCast(EVP_MD_size(convert(self.algorithm)))
   |                            `- error: cannot find 'EVP_MD_size' in scope
16 |     }
17 |
[16/20] Compiling OpenCrypto AES.swift
[17/20] Compiling OpenCrypto ChaChaPoly.swift
[18/20] Compiling OpenCrypto Digest.swift
[19/20] Compiling OpenCrypto SymmetricKey.swift
/host/spi-builder-workspace/Sources/OpenCrypto/Utilities.swift:25:13: warning: variable 'buffer' was never mutated; consider changing to 'let' constant
23 | extension DataProtocol {
24 |     func copyBytes() -> [UInt8] {
25 |         var buffer = UnsafeMutableBufferPointer<UInt8>.allocate(capacity: self.count)
   |             `- warning: variable 'buffer' was never mutated; consider changing to 'let' constant
26 |         self.copyBytes(to: buffer)
27 |         defer { buffer.deallocate() }
[20/20] Compiling OpenCrypto Utilities.swift
/host/spi-builder-workspace/Sources/OpenCrypto/Utilities.swift:25:13: warning: variable 'buffer' was never mutated; consider changing to 'let' constant
23 | extension DataProtocol {
24 |     func copyBytes() -> [UInt8] {
25 |         var buffer = UnsafeMutableBufferPointer<UInt8>.allocate(capacity: self.count)
   |             `- warning: variable 'buffer' was never mutated; consider changing to 'let' constant
26 |         self.copyBytes(to: buffer)
27 |         defer { buffer.deallocate() }
BUILD FAILURE 6.1 linux