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 ServerCrypto, reference 1.0.0 (4ee876), with Swift 6.0 for Linux on 6 Jan 2025 19:32:13 UTC.

Build Command

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

Build Log

========================================
RunAll
========================================
Builder version: 4.60.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/alexaubry/ServerCrypto.git
Reference: 1.0.0
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/alexaubry/ServerCrypto
 * tag               1.0.0      -> FETCH_HEAD
HEAD is now at 4ee8761 Fix Linux pointer type errors
Cloned https://github.com/alexaubry/ServerCrypto.git
Revision (git rev-parse @):
4ee87617153c84d6ca2ca6e8b3181848d6b3277a
SUCCESS checkout https://github.com/alexaubry/ServerCrypto.git at 1.0.0
========================================
Build
========================================
Selected platform:         linux
Swift version:             6.0
Building package at path:  $PWD
https://github.com/alexaubry/ServerCrypto.git
https://github.com/alexaubry/ServerCrypto.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
{
  "dependencies" : [
    {
      "identity" : "ctls",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.1.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/vapor/ctls"
    }
  ],
  "manifest_display_name" : "ServerCrypto",
  "name" : "ServerCrypto",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "CryptoSupport",
      "targets" : [
        "CryptoSupport"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "Hash",
      "targets" : [
        "Hash"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "Signature",
      "targets" : [
        "Signature"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "Signature",
      "module_type" : "SwiftTarget",
      "name" : "Signature",
      "path" : "Sources/Signature",
      "product_memberships" : [
        "Signature"
      ],
      "sources" : [
        "AsymmetricKey.swift",
        "Exports.swift",
        "HMACKey.swift",
        "Signer.swift"
      ],
      "target_dependencies" : [
        "CryptoSupport",
        "Hash"
      ],
      "type" : "library"
    },
    {
      "c99name" : "ServerCryptoTests",
      "module_type" : "SwiftTarget",
      "name" : "ServerCryptoTests",
      "path" : "Tests/ServerCryptoTests",
      "sources" : [
        "CryptoSupport/CryptoErrorTests.swift",
        "CryptoSupport/HexTests.swift",
        "Hash/HashTestData.swift",
        "Hash/HashTests.swift",
        "Signature/ECDSA/ECDSASignatures.swift",
        "Signature/ECDSA/ECDSATests.swift",
        "Signature/HMAC/HMACSignatures.swift",
        "Signature/HMAC/HMACTests.swift",
        "Signature/RSA/RSATestVectors.swift",
        "Signature/RSA/RSATests.swift",
        "Signature/SignatureTestsCoordinator.swift"
      ],
      "target_dependencies" : [
        "CryptoSupport",
        "Hash",
        "Signature"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Hash",
      "module_type" : "SwiftTarget",
      "name" : "Hash",
      "path" : "Sources/Hash",
      "product_memberships" : [
        "Hash",
        "Signature"
      ],
      "sources" : [
        "Exports.swift",
        "Hasher.swift"
      ],
      "target_dependencies" : [
        "CryptoSupport"
      ],
      "type" : "library"
    },
    {
      "c99name" : "CryptoSupport",
      "module_type" : "SwiftTarget",
      "name" : "CryptoSupport",
      "path" : "Sources/CryptoSupport",
      "product_memberships" : [
        "CryptoSupport",
        "Hash",
        "Signature"
      ],
      "sources" : [
        "CryptoError.swift",
        "CryptoProvider.swift",
        "Hex.swift",
        "Protocols.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "4.0"
}
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-1":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.0-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.0-latest: Pulling from finestructure/spi-images
Digest: sha256:081dcf4fb829aea9d08447f4790431afbdfbcc335bfeed728ca69c6f181ae2aa
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.0-latest
Fetching https://github.com/vapor/ctls
[1/71] Fetching ctls
Fetched https://github.com/vapor/ctls from cache (0.21s)
Computing version for https://github.com/vapor/ctls
Computed https://github.com/vapor/ctls at 1.1.3 (0.93s)
Creating working copy for https://github.com/vapor/ctls
Working copy of https://github.com/vapor/ctls resolved at 1.1.3
warning: 'ctls': ignoring declared target(s) 'CTLS' in the system package
warning: 'spi-builder-workspace': dependency 'ctls' is not used by any target
warning: you may be able to install ctls using your system-packager:
    apt-get install libssl-dev
Building for debugging...
[0/4] Write sources
[3/4] Write swift-version-24593BA9C3E375BF.txt
[5/9] Compiling CryptoSupport Protocols.swift
/host/spi-builder-workspace/Sources/CryptoSupport/Protocols.swift:65:26: warning: initialization of 'UnsafeRawPointer' results in a dangling pointer
63 |
64 |     public func withUnsafeRawBytes<ResultType>(_ body: (UnsafeRawPointer) throws -> ResultType) rethrows -> ResultType {
65 |         let rawPointer = UnsafeRawPointer(self)
   |                          |                |- note: implicit argument conversion from 'Array<Element>' to 'UnsafeRawPointer' produces a pointer valid only for the duration of the call to 'init(_:)'
   |                          |                `- note: use the 'withUnsafeBytes' method on Array in order to explicitly convert argument to buffer pointer valid for a defined scope
   |                          `- warning: initialization of 'UnsafeRawPointer' results in a dangling pointer
66 |         return try body(rawPointer)
67 |     }
/host/spi-builder-workspace/Sources/CryptoSupport/Protocols.swift:70:26: warning: initialization of 'UnsafeMutableRawPointer' results in a dangling pointer
68 |
69 |     public func withUnsafeRawBytes<ResultType>(_ body: (UnsafeMutableRawPointer) throws -> ResultType) rethrows -> ResultType {
70 |         let rawPointer = UnsafeMutableRawPointer(mutating: self)
   |                          |                                 |- note: implicit argument conversion from 'Array<Element>' to 'UnsafeRawPointer' produces a pointer valid only for the duration of the call to 'init(mutating:)'
   |                          |                                 `- note: use the 'withUnsafeBytes' method on Array in order to explicitly convert argument to buffer pointer valid for a defined scope
   |                          `- warning: initialization of 'UnsafeMutableRawPointer' results in a dangling pointer
71 |         return try body(rawPointer)
72 |     }
/host/spi-builder-workspace/Sources/CryptoSupport/Protocols.swift:65:43: warning: forming 'UnsafeRawPointer' to a variable of type 'Array<Element>'; this is likely incorrect because 'Element' may contain an object reference.
63 |
64 |     public func withUnsafeRawBytes<ResultType>(_ body: (UnsafeRawPointer) throws -> ResultType) rethrows -> ResultType {
65 |         let rawPointer = UnsafeRawPointer(self)
   |                                           `- warning: forming 'UnsafeRawPointer' to a variable of type 'Array<Element>'; this is likely incorrect because 'Element' may contain an object reference.
66 |         return try body(rawPointer)
67 |     }
/host/spi-builder-workspace/Sources/CryptoSupport/Protocols.swift:70:60: warning: forming 'UnsafeRawPointer' to a variable of type 'Array<Element>'; this is likely incorrect because 'Element' may contain an object reference.
68 |
69 |     public func withUnsafeRawBytes<ResultType>(_ body: (UnsafeMutableRawPointer) throws -> ResultType) rethrows -> ResultType {
70 |         let rawPointer = UnsafeMutableRawPointer(mutating: self)
   |                                                            `- warning: forming 'UnsafeRawPointer' to a variable of type 'Array<Element>'; this is likely incorrect because 'Element' may contain an object reference.
71 |         return try body(rawPointer)
72 |     }
[6/9] Emitting module CryptoSupport
/host/spi-builder-workspace/Sources/CryptoSupport/CryptoProvider.swift:38:24: warning: static property 'loadedComponents' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
36 |     }
37 |
38 |     private static var loadedComponents: Set<Component> = []
   |                        |- warning: static property 'loadedComponents' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert 'loadedComponents' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate 'loadedComponents' 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
39 |
40 |     /**
[7/9] Compiling CryptoSupport CryptoError.swift
[8/9] Compiling CryptoSupport CryptoProvider.swift
/host/spi-builder-workspace/Sources/CryptoSupport/CryptoProvider.swift:38:24: warning: static property 'loadedComponents' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
36 |     }
37 |
38 |     private static var loadedComponents: Set<Component> = []
   |                        |- warning: static property 'loadedComponents' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert 'loadedComponents' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate 'loadedComponents' 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
39 |
40 |     /**
/host/spi-builder-workspace/Sources/CryptoSupport/CryptoProvider.swift:29:28: error: cannot find 'OpenSSL_add_all_digests' in scope
27 |
28 |             switch self {
29 |             case .digests: OpenSSL_add_all_digests()
   |                            `- error: cannot find 'OpenSSL_add_all_digests' in scope
30 |             case .ciphers: OpenSSL_add_all_ciphers()
31 |             case .cryptoErrorStrings: ERR_load_crypto_strings()
/usr/include/openssl/evp.h:1162:11: note: macro 'OpenSSL_add_all_digests' unavailable: function like macros not supported
1160 | #  define OpenSSL_add_all_ciphers() \
1161 |     OPENSSL_init_crypto(OPENSSL_INIT_ADD_ALL_CIPHERS, NULL)
1162 | #  define OpenSSL_add_all_digests() \
     |           `- note: macro 'OpenSSL_add_all_digests' unavailable: function like macros not supported
1163 |     OPENSSL_init_crypto(OPENSSL_INIT_ADD_ALL_DIGESTS, NULL)
1164 |
/host/spi-builder-workspace/Sources/CryptoSupport/CryptoProvider.swift:30:28: error: cannot find 'OpenSSL_add_all_ciphers' in scope
28 |             switch self {
29 |             case .digests: OpenSSL_add_all_digests()
30 |             case .ciphers: OpenSSL_add_all_ciphers()
   |                            `- error: cannot find 'OpenSSL_add_all_ciphers' in scope
31 |             case .cryptoErrorStrings: ERR_load_crypto_strings()
32 |             }
/usr/include/openssl/evp.h:1160:11: note: macro 'OpenSSL_add_all_ciphers' unavailable: function like macros not supported
1158 | #  endif
1159 |
1160 | #  define OpenSSL_add_all_ciphers() \
     |           `- note: macro 'OpenSSL_add_all_ciphers' unavailable: function like macros not supported
1161 |     OPENSSL_init_crypto(OPENSSL_INIT_ADD_ALL_CIPHERS, NULL)
1162 | #  define OpenSSL_add_all_digests() \
/host/spi-builder-workspace/Sources/CryptoSupport/CryptoProvider.swift:31:39: error: cannot find 'ERR_load_crypto_strings' in scope
29 |             case .digests: OpenSSL_add_all_digests()
30 |             case .ciphers: OpenSSL_add_all_ciphers()
31 |             case .cryptoErrorStrings: ERR_load_crypto_strings()
   |                                       `- error: cannot find 'ERR_load_crypto_strings' in scope
32 |             }
33 |
/usr/include/openssl/err.h:468:10: note: macro 'ERR_load_crypto_strings' unavailable: function like macros not supported
466 |
467 | #ifndef OPENSSL_NO_DEPRECATED_1_1_0
468 | # define ERR_load_crypto_strings() \
    |          `- note: macro 'ERR_load_crypto_strings' unavailable: function like macros not supported
469 |     OPENSSL_init_crypto(OPENSSL_INIT_LOAD_CRYPTO_STRINGS, NULL)
470 | # define ERR_free_strings() while(0) continue
[9/9] Compiling CryptoSupport Hex.swift
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-1":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu 2>&1
basic-6.0-latest: Pulling from finestructure/spi-images
Digest: sha256:081dcf4fb829aea9d08447f4790431afbdfbcc335bfeed728ca69c6f181ae2aa
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.0-latest
warning: 'ctls': ignoring declared target(s) 'CTLS' in the system package
warning: 'spi-builder-workspace': dependency 'ctls' is not used by any target
warning: you may be able to install ctls using your system-packager:
    apt-get install libssl-dev
[0/1] Planning build
Building for debugging...
[0/1] Write swift-version-24593BA9C3E375BF.txt
[2/6] Emitting module CryptoSupport
[3/6] Compiling CryptoSupport Protocols.swift
/host/spi-builder-workspace/Sources/CryptoSupport/Protocols.swift:65:26: warning: initialization of 'UnsafeRawPointer' results in a dangling pointer
63 |
64 |     public func withUnsafeRawBytes<ResultType>(_ body: (UnsafeRawPointer) throws -> ResultType) rethrows -> ResultType {
65 |         let rawPointer = UnsafeRawPointer(self)
   |                          |                |- note: implicit argument conversion from 'Array<Element>' to 'UnsafeRawPointer' produces a pointer valid only for the duration of the call to 'init(_:)'
   |                          |                `- note: use the 'withUnsafeBytes' method on Array in order to explicitly convert argument to buffer pointer valid for a defined scope
   |                          `- warning: initialization of 'UnsafeRawPointer' results in a dangling pointer
66 |         return try body(rawPointer)
67 |     }
/host/spi-builder-workspace/Sources/CryptoSupport/Protocols.swift:70:26: warning: initialization of 'UnsafeMutableRawPointer' results in a dangling pointer
68 |
69 |     public func withUnsafeRawBytes<ResultType>(_ body: (UnsafeMutableRawPointer) throws -> ResultType) rethrows -> ResultType {
70 |         let rawPointer = UnsafeMutableRawPointer(mutating: self)
   |                          |                                 |- note: implicit argument conversion from 'Array<Element>' to 'UnsafeRawPointer' produces a pointer valid only for the duration of the call to 'init(mutating:)'
   |                          |                                 `- note: use the 'withUnsafeBytes' method on Array in order to explicitly convert argument to buffer pointer valid for a defined scope
   |                          `- warning: initialization of 'UnsafeMutableRawPointer' results in a dangling pointer
71 |         return try body(rawPointer)
72 |     }
/host/spi-builder-workspace/Sources/CryptoSupport/Protocols.swift:65:43: warning: forming 'UnsafeRawPointer' to a variable of type 'Array<Element>'; this is likely incorrect because 'Element' may contain an object reference.
63 |
64 |     public func withUnsafeRawBytes<ResultType>(_ body: (UnsafeRawPointer) throws -> ResultType) rethrows -> ResultType {
65 |         let rawPointer = UnsafeRawPointer(self)
   |                                           `- warning: forming 'UnsafeRawPointer' to a variable of type 'Array<Element>'; this is likely incorrect because 'Element' may contain an object reference.
66 |         return try body(rawPointer)
67 |     }
/host/spi-builder-workspace/Sources/CryptoSupport/Protocols.swift:70:60: warning: forming 'UnsafeRawPointer' to a variable of type 'Array<Element>'; this is likely incorrect because 'Element' may contain an object reference.
68 |
69 |     public func withUnsafeRawBytes<ResultType>(_ body: (UnsafeMutableRawPointer) throws -> ResultType) rethrows -> ResultType {
70 |         let rawPointer = UnsafeMutableRawPointer(mutating: self)
   |                                                            `- warning: forming 'UnsafeRawPointer' to a variable of type 'Array<Element>'; this is likely incorrect because 'Element' may contain an object reference.
71 |         return try body(rawPointer)
72 |     }
[4/6] Compiling CryptoSupport CryptoProvider.swift
/host/spi-builder-workspace/Sources/CryptoSupport/CryptoProvider.swift:29:28: error: cannot find 'OpenSSL_add_all_digests' in scope
27 |
28 |             switch self {
29 |             case .digests: OpenSSL_add_all_digests()
   |                            `- error: cannot find 'OpenSSL_add_all_digests' in scope
30 |             case .ciphers: OpenSSL_add_all_ciphers()
31 |             case .cryptoErrorStrings: ERR_load_crypto_strings()
/usr/include/openssl/evp.h:1162:11: note: macro 'OpenSSL_add_all_digests' unavailable: function like macros not supported
1160 | #  define OpenSSL_add_all_ciphers() \
1161 |     OPENSSL_init_crypto(OPENSSL_INIT_ADD_ALL_CIPHERS, NULL)
1162 | #  define OpenSSL_add_all_digests() \
     |           `- note: macro 'OpenSSL_add_all_digests' unavailable: function like macros not supported
1163 |     OPENSSL_init_crypto(OPENSSL_INIT_ADD_ALL_DIGESTS, NULL)
1164 |
/host/spi-builder-workspace/Sources/CryptoSupport/CryptoProvider.swift:30:28: error: cannot find 'OpenSSL_add_all_ciphers' in scope
28 |             switch self {
29 |             case .digests: OpenSSL_add_all_digests()
30 |             case .ciphers: OpenSSL_add_all_ciphers()
   |                            `- error: cannot find 'OpenSSL_add_all_ciphers' in scope
31 |             case .cryptoErrorStrings: ERR_load_crypto_strings()
32 |             }
/usr/include/openssl/evp.h:1160:11: note: macro 'OpenSSL_add_all_ciphers' unavailable: function like macros not supported
1158 | #  endif
1159 |
1160 | #  define OpenSSL_add_all_ciphers() \
     |           `- note: macro 'OpenSSL_add_all_ciphers' unavailable: function like macros not supported
1161 |     OPENSSL_init_crypto(OPENSSL_INIT_ADD_ALL_CIPHERS, NULL)
1162 | #  define OpenSSL_add_all_digests() \
/host/spi-builder-workspace/Sources/CryptoSupport/CryptoProvider.swift:31:39: error: cannot find 'ERR_load_crypto_strings' in scope
29 |             case .digests: OpenSSL_add_all_digests()
30 |             case .ciphers: OpenSSL_add_all_ciphers()
31 |             case .cryptoErrorStrings: ERR_load_crypto_strings()
   |                                       `- error: cannot find 'ERR_load_crypto_strings' in scope
32 |             }
33 |
/usr/include/openssl/err.h:468:10: note: macro 'ERR_load_crypto_strings' unavailable: function like macros not supported
466 |
467 | #ifndef OPENSSL_NO_DEPRECATED_1_1_0
468 | # define ERR_load_crypto_strings() \
    |          `- note: macro 'ERR_load_crypto_strings' unavailable: function like macros not supported
469 |     OPENSSL_init_crypto(OPENSSL_INIT_LOAD_CRYPTO_STRINGS, NULL)
470 | # define ERR_free_strings() while(0) continue
[5/6] Compiling CryptoSupport CryptoError.swift
[6/6] Compiling CryptoSupport Hex.swift
BUILD FAILURE 6.0 linux