Build Information
Successful build of K1, reference 0.7.1 (142c0c), with Swift 6.1 for macOS (SPM) on 30 Jan 2026 16:56:07 UTC.
Swift 6 data race errors: 2
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -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 InferSendableFromCapturesBuild Log
========================================
RunAll
========================================
Builder version: 4.68.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/Sajjon/K1.git
Reference: 0.7.1
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/Sajjon/K1
* tag 0.7.1 -> FETCH_HEAD
HEAD is now at 142c0c0 Revert usage of unsafeFlags to suppress C warnings (#51)
Submodule path 'Sources/secp256k1/libsecp256k1': checked out '1a53f4961f337b4d166c25fce72ef0dc88806618'
Submodule 'Sources/secp256k1/libsecp256k1' (https://github.com/bitcoin-core/secp256k1.git) registered for path 'Sources/secp256k1/libsecp256k1'
Cloning into '/Users/admin/builder/spi-builder-workspace/Sources/secp256k1/libsecp256k1'...
Cloned https://github.com/Sajjon/K1.git
Revision (git rev-parse @):
142c0c0194a53d249d0bfcb5d7998ea2f2403153
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/Sajjon/K1.git at 0.7.1
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.1
Building package at path: $PWD
https://github.com/Sajjon/K1.git
https://github.com/Sajjon/K1.git
{
"dependencies" : [
],
"manifest_display_name" : "K1",
"name" : "K1",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "13.0"
},
{
"name" : "macos",
"version" : "11.0"
},
{
"name" : "tvos",
"version" : "13.0"
},
{
"name" : "watchos",
"version" : "6.0"
}
],
"products" : [
{
"name" : "K1",
"targets" : [
"K1"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "secp256k1",
"module_type" : "ClangTarget",
"name" : "secp256k1",
"path" : "Sources/secp256k1",
"product_memberships" : [
"K1"
],
"sources" : [
"libsecp256k1/contrib/lax_der_parsing.c",
"libsecp256k1/contrib/lax_der_privatekey_parsing.c",
"libsecp256k1/src/precomputed_ecmult.c",
"libsecp256k1/src/precomputed_ecmult_gen.c",
"libsecp256k1/src/secp256k1.c",
"src/ecdh_variants.c"
],
"type" : "library"
},
{
"c99name" : "K1Tests",
"module_type" : "SwiftTarget",
"name" : "K1Tests",
"path" : "Tests/K1Tests",
"resources" : [
{
"path" : "/Users/admin/builder/spi-builder-workspace/Tests/K1Tests/TestVectors/bip340_schnorr_sign.json",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Tests/K1Tests/TestVectors/bip340_schnorr_verify.json",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Tests/K1Tests/TestVectors/cyon_ecdh_two_variants_with_kdf.json",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Tests/K1Tests/TestVectors/trezor_ecdsa_sign_rfc6979.json",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Tests/K1Tests/TestVectors/warta_cyon_publickey_recovery.json",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Tests/K1Tests/TestVectors/wycheproof_ecdh_ASN1x963.json",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Tests/K1Tests/TestVectors/wycheproof_ecdsa_verify_der.json",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Tests/K1Tests/TestVectors/wycheproof_ecdsa_verify_p1363.json",
"rule" : {
"process" : {
}
}
}
],
"sources" : [
"TestCases/APITest.swift",
"TestCases/ECDH/ECDHTests.swift",
"TestCases/ECDH/ECDHWycheproofTests.swift",
"TestCases/ECDH/TwoVariantsOfECDHWithKDFTests.swift",
"TestCases/ECDSA/ECDSARecoverableSignatureRoundtripTests.swift",
"TestCases/ECDSA/ECDSASignatureTests.swift",
"TestCases/ECDSA/ECDSASignatureTrezorTests.swift",
"TestCases/ECDSA/ECDSAWycheproofASNDEREncodedSignaturesTests.swift",
"TestCases/ECDSA/ECDSAWycheproofIEEEP1364RSEncodedSignaturesTests.swift",
"TestCases/Keys/PrivateKey/PrivateKeyEncodingTests.swift",
"TestCases/Keys/PrivateKey/PrivateKeyGenerationTests.swift",
"TestCases/Keys/PrivateKey/PrivateKeyImportTests.swift",
"TestCases/Keys/PublicKey/PublicKeyEncodingTests.generated.swift",
"TestCases/Keys/PublicKey/PublicKeyGroupOperationsTests.swift",
"TestCases/Keys/PublicKey/PublicKeyImportTests.swift",
"TestCases/Performance/PerformanceTests.swift",
"TestCases/PublicKeyRecovery/ECDASignaturePublicKeyRecoveryTests.swift",
"TestCases/Schnorr/SchnorrSignatureBitcoinCoreTests.swift",
"TestCases/Schnorr/SchnorrSignatureTests.swift",
"TestCases/SecureBytes/SecureBytesTests.swift",
"Util/ECSignature.swift",
"Util/Wycheproof.swift",
"Util/XCTestUtils.swift"
],
"target_dependencies" : [
"K1"
],
"type" : "test"
},
{
"c99name" : "K1",
"module_type" : "SwiftTarget",
"name" : "K1",
"path" : "Sources/K1",
"product_memberships" : [
"K1"
],
"sources" : [
"K1.swift",
"K1/ECDH/KeyAgreement.swift",
"K1/ECDSA/ECDSA.swift",
"K1/ECDSA/ECDSASignatureNonRecoverable.swift",
"K1/ECDSA/ECDSASignatureRecoverable.swift",
"K1/ECDSA/RecoveryID.swift",
"K1/Keys/Keys.generated.swift",
"K1/Keys/PrivateKeyImplementation.swift",
"K1/Keys/PublicKeyImplementation.swift",
"K1/Schnorr/Schnorr+Signature.swift",
"K1/Schnorr/Schnorr.swift",
"K1/Signing/Signing.generated.swift",
"K1/Validation/Validation.generated.swift",
"Support/Extensions/Data+Extensions.swift",
"Support/FFI/API/ECDH/FFI+ECDH.swift",
"Support/FFI/API/ECDSA/FFI+ECDSA.swift",
"Support/FFI/API/ECDSA/NonRecovery/ECDSA+NonRecovery+Wrapped.swift",
"Support/FFI/API/ECDSA/NonRecovery/FFI+ECDSA+NonRecovery.swift",
"Support/FFI/API/ECDSA/Recovery/ECDSA+Recovery+Wrapped.swift",
"Support/FFI/API/ECDSA/Recovery/FFI+ECDSA+Recovery.swift",
"Support/FFI/API/Keys/PrivateKey/PrivateKey+Wrapped.swift",
"Support/FFI/API/Keys/PublicKey/FFI+PublicKey.swift",
"Support/FFI/API/Keys/PublicKey/PublicKey+Wrapped.swift",
"Support/FFI/API/Schnorr/FFI+Schnorr.swift",
"Support/FFI/API/Schnorr/Schnorr+Wrapped.swift",
"Support/FFI/Internals/FFI+Call.swift",
"Support/FFI/Internals/FFI+Context.swift",
"Support/FFI/Internals/FFI+Format.swift",
"Support/FFI/Internals/FFI+Raw.swift",
"Support/Misc/Curve.swift",
"Support/Misc/K1+Error.swift",
"Support/Misc/SharedSecret.swift",
"Support/ThirdyParty/swift-crypto/ASN1/ASN1.swift",
"Support/ThirdyParty/swift-crypto/ASN1/Basic ASN1 Types/ASN1Any.swift",
"Support/ThirdyParty/swift-crypto/ASN1/Basic ASN1 Types/ASN1BitString.swift",
"Support/ThirdyParty/swift-crypto/ASN1/Basic ASN1 Types/ASN1Boolean.swift",
"Support/ThirdyParty/swift-crypto/ASN1/Basic ASN1 Types/ASN1Identifier.swift",
"Support/ThirdyParty/swift-crypto/ASN1/Basic ASN1 Types/ASN1Integer.swift",
"Support/ThirdyParty/swift-crypto/ASN1/Basic ASN1 Types/ASN1Null.swift",
"Support/ThirdyParty/swift-crypto/ASN1/Basic ASN1 Types/ASN1OctetString.swift",
"Support/ThirdyParty/swift-crypto/ASN1/Basic ASN1 Types/ASN1Strings.swift",
"Support/ThirdyParty/swift-crypto/ASN1/Basic ASN1 Types/ArraySliceBigint.swift",
"Support/ThirdyParty/swift-crypto/ASN1/Basic ASN1 Types/GeneralizedTime.swift",
"Support/ThirdyParty/swift-crypto/ASN1/Basic ASN1 Types/ObjectIdentifier.swift",
"Support/ThirdyParty/swift-crypto/ASN1/ECDSASignature.swift",
"Support/ThirdyParty/swift-crypto/ASN1/PEMDocument.swift",
"Support/ThirdyParty/swift-crypto/ASN1/PKCS8PrivateKey.swift",
"Support/ThirdyParty/swift-crypto/ASN1/SEC1PrivateKey.swift",
"Support/ThirdyParty/swift-crypto/ASN1/SubjectPublicKeyInfo.swift",
"Support/ThirdyParty/swift-crypto/ASN1Error.swift",
"Support/ThirdyParty/swift-crypto/BytesUtil.swift",
"Support/ThirdyParty/swift-crypto/RNG_boring.swift",
"Support/ThirdyParty/swift-crypto/SafeCompare_boring.swift",
"Support/ThirdyParty/swift-crypto/SecureBytes.swift"
],
"target_dependencies" : [
"secp256k1"
],
"type" : "library"
}
],
"tools_version" : "5.5"
}
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -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
Building for debugging...
[0/8] Write sources
[1/8] Write swift-version-2F0A5646E1D333AE.txt
[2/8] Compiling lax_der_parsing.c
[3/8] Compiling lax_der_privatekey_parsing.c
[4/8] Compiling ecdh_variants.c
[5/8] Compiling precomputed_ecmult_gen.c
[6/8] Compiling secp256k1.c
[7/8] Compiling precomputed_ecmult.c
[9/58] Emitting module K1
/Users/admin/builder/spi-builder-workspace/Sources/K1/K1/ECDSA/ECDSA.swift:24:20: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'K1.ECDSA.ValidationOptions' may have shared mutable state; this is an error in the Swift 6 language mode
10 | extension K1.ECDSA {
11 | /// Additional parameters used during validation of ECDSA signatures.
12 | public struct ValidationOptions {
| `- note: consider making struct 'ValidationOptions' conform to the 'Sendable' protocol
13 | /// Whether or not to consider malleable signatures valid.
14 | public let malleabilityStrictness: MalleabilityStrictness
:
22 | extension K1.ECDSA.ValidationOptions {
23 | /// The default behavior of ECDSA signature validation.
24 | public static let `default`: Self = .init(
| |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'K1.ECDSA.ValidationOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
25 | malleabilityStrictness: .rejected
26 | )
/Users/admin/builder/spi-builder-workspace/Sources/K1/K1/ECDSA/ECDSASignatureRecoverable.swift:140:21: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'K1.ECDSAWithKeyRecovery.Signature.Compact.SerializationFormat' may have shared mutable state; this is an error in the Swift 6 language mode
131 | /// Controls the order of the three components `R`, `S` and `V` (`RecoveryID`), specifyin
132 | /// either `R || S || V` called `.rsv` or `V || R || S` called `vrs`.
133 | public enum SerializationFormat {
| `- note: consider making enum 'SerializationFormat' conform to the 'Sendable' protocol
134 | /// `R || S || V` - the format `libsecp256k1` v0.3.0 uses as representation
135 | /// This is the default value of this library.
:
138 | /// We use `R || S || V` as default values since `libsecp256k1` v0.7.1
139 | /// uses it as its internal representation.
140 | public static let `default`: Self = .rsv
| |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'K1.ECDSAWithKeyRecovery.Signature.Compact.SerializationFormat' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
141 |
142 | /// `V || R || S`.
[10/63] Compiling K1 ASN1Error.swift
[11/63] Compiling K1 BytesUtil.swift
[12/63] Compiling K1 RNG_boring.swift
[13/63] Compiling K1 SafeCompare_boring.swift
[14/63] Compiling K1 SecureBytes.swift
[15/63] Compiling K1 ASN1BitString.swift
[16/63] Compiling K1 ASN1Boolean.swift
[17/63] Compiling K1 ASN1Identifier.swift
[18/63] Compiling K1 ASN1Integer.swift
[19/63] Compiling K1 ASN1Null.swift
[20/63] Compiling K1 ASN1OctetString.swift
[21/63] Compiling K1 ASN1Strings.swift
[22/63] Compiling K1 ArraySliceBigint.swift
[23/63] Compiling K1 GeneralizedTime.swift
[24/63] Compiling K1 ObjectIdentifier.swift
[25/63] Compiling K1 ECDSASignature.swift
[26/63] Compiling K1 PEMDocument.swift
[27/63] Compiling K1 PKCS8PrivateKey.swift
[28/63] Compiling K1 SEC1PrivateKey.swift
[29/63] Compiling K1 SubjectPublicKeyInfo.swift
[30/63] Compiling K1 ECDSA+Recovery+Wrapped.swift
[31/63] Compiling K1 FFI+ECDSA+Recovery.swift
[32/63] Compiling K1 PrivateKey+Wrapped.swift
[33/63] Compiling K1 FFI+PublicKey.swift
[34/63] Compiling K1 PublicKey+Wrapped.swift
[35/63] Compiling K1 FFI+Schnorr.swift
[36/63] Compiling K1 Curve.swift
[37/63] Compiling K1 K1+Error.swift
[38/63] Compiling K1 SharedSecret.swift
[39/63] Compiling K1 ASN1.swift
[40/63] Compiling K1 ASN1Any.swift
[41/63] Compiling K1 Validation.generated.swift
[42/63] Compiling K1 Data+Extensions.swift
[43/63] Compiling K1 FFI+ECDH.swift
[44/63] Compiling K1 FFI+ECDSA.swift
[45/63] Compiling K1 ECDSA+NonRecovery+Wrapped.swift
[46/63] Compiling K1 FFI+ECDSA+NonRecovery.swift
[47/63] Compiling K1 K1.swift
/Users/admin/builder/spi-builder-workspace/Sources/K1/K1/ECDSA/ECDSA.swift:24:20: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'K1.ECDSA.ValidationOptions' may have shared mutable state; this is an error in the Swift 6 language mode
10 | extension K1.ECDSA {
11 | /// Additional parameters used during validation of ECDSA signatures.
12 | public struct ValidationOptions {
| `- note: consider making struct 'ValidationOptions' conform to the 'Sendable' protocol
13 | /// Whether or not to consider malleable signatures valid.
14 | public let malleabilityStrictness: MalleabilityStrictness
:
22 | extension K1.ECDSA.ValidationOptions {
23 | /// The default behavior of ECDSA signature validation.
24 | public static let `default`: Self = .init(
| |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'K1.ECDSA.ValidationOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
25 | malleabilityStrictness: .rejected
26 | )
/Users/admin/builder/spi-builder-workspace/Sources/K1/K1/ECDSA/ECDSASignatureRecoverable.swift:140:21: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'K1.ECDSAWithKeyRecovery.Signature.Compact.SerializationFormat' may have shared mutable state; this is an error in the Swift 6 language mode
131 | /// Controls the order of the three components `R`, `S` and `V` (`RecoveryID`), specifyin
132 | /// either `R || S || V` called `.rsv` or `V || R || S` called `vrs`.
133 | public enum SerializationFormat {
| `- note: consider making enum 'SerializationFormat' conform to the 'Sendable' protocol
134 | /// `R || S || V` - the format `libsecp256k1` v0.3.0 uses as representation
135 | /// This is the default value of this library.
:
138 | /// We use `R || S || V` as default values since `libsecp256k1` v0.7.1
139 | /// uses it as its internal representation.
140 | public static let `default`: Self = .rsv
| |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'K1.ECDSAWithKeyRecovery.Signature.Compact.SerializationFormat' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
141 |
142 | /// `V || R || S`.
[48/63] Compiling K1 KeyAgreement.swift
/Users/admin/builder/spi-builder-workspace/Sources/K1/K1/ECDSA/ECDSA.swift:24:20: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'K1.ECDSA.ValidationOptions' may have shared mutable state; this is an error in the Swift 6 language mode
10 | extension K1.ECDSA {
11 | /// Additional parameters used during validation of ECDSA signatures.
12 | public struct ValidationOptions {
| `- note: consider making struct 'ValidationOptions' conform to the 'Sendable' protocol
13 | /// Whether or not to consider malleable signatures valid.
14 | public let malleabilityStrictness: MalleabilityStrictness
:
22 | extension K1.ECDSA.ValidationOptions {
23 | /// The default behavior of ECDSA signature validation.
24 | public static let `default`: Self = .init(
| |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'K1.ECDSA.ValidationOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
25 | malleabilityStrictness: .rejected
26 | )
/Users/admin/builder/spi-builder-workspace/Sources/K1/K1/ECDSA/ECDSASignatureRecoverable.swift:140:21: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'K1.ECDSAWithKeyRecovery.Signature.Compact.SerializationFormat' may have shared mutable state; this is an error in the Swift 6 language mode
131 | /// Controls the order of the three components `R`, `S` and `V` (`RecoveryID`), specifyin
132 | /// either `R || S || V` called `.rsv` or `V || R || S` called `vrs`.
133 | public enum SerializationFormat {
| `- note: consider making enum 'SerializationFormat' conform to the 'Sendable' protocol
134 | /// `R || S || V` - the format `libsecp256k1` v0.3.0 uses as representation
135 | /// This is the default value of this library.
:
138 | /// We use `R || S || V` as default values since `libsecp256k1` v0.7.1
139 | /// uses it as its internal representation.
140 | public static let `default`: Self = .rsv
| |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'K1.ECDSAWithKeyRecovery.Signature.Compact.SerializationFormat' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
141 |
142 | /// `V || R || S`.
[49/63] Compiling K1 ECDSA.swift
/Users/admin/builder/spi-builder-workspace/Sources/K1/K1/ECDSA/ECDSA.swift:24:20: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'K1.ECDSA.ValidationOptions' may have shared mutable state; this is an error in the Swift 6 language mode
10 | extension K1.ECDSA {
11 | /// Additional parameters used during validation of ECDSA signatures.
12 | public struct ValidationOptions {
| `- note: consider making struct 'ValidationOptions' conform to the 'Sendable' protocol
13 | /// Whether or not to consider malleable signatures valid.
14 | public let malleabilityStrictness: MalleabilityStrictness
:
22 | extension K1.ECDSA.ValidationOptions {
23 | /// The default behavior of ECDSA signature validation.
24 | public static let `default`: Self = .init(
| |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'K1.ECDSA.ValidationOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
25 | malleabilityStrictness: .rejected
26 | )
/Users/admin/builder/spi-builder-workspace/Sources/K1/K1/ECDSA/ECDSASignatureRecoverable.swift:140:21: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'K1.ECDSAWithKeyRecovery.Signature.Compact.SerializationFormat' may have shared mutable state; this is an error in the Swift 6 language mode
131 | /// Controls the order of the three components `R`, `S` and `V` (`RecoveryID`), specifyin
132 | /// either `R || S || V` called `.rsv` or `V || R || S` called `vrs`.
133 | public enum SerializationFormat {
| `- note: consider making enum 'SerializationFormat' conform to the 'Sendable' protocol
134 | /// `R || S || V` - the format `libsecp256k1` v0.3.0 uses as representation
135 | /// This is the default value of this library.
:
138 | /// We use `R || S || V` as default values since `libsecp256k1` v0.7.1
139 | /// uses it as its internal representation.
140 | public static let `default`: Self = .rsv
| |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'K1.ECDSAWithKeyRecovery.Signature.Compact.SerializationFormat' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
141 |
142 | /// `V || R || S`.
[50/63] Compiling K1 ECDSASignatureNonRecoverable.swift
/Users/admin/builder/spi-builder-workspace/Sources/K1/K1/ECDSA/ECDSA.swift:24:20: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'K1.ECDSA.ValidationOptions' may have shared mutable state; this is an error in the Swift 6 language mode
10 | extension K1.ECDSA {
11 | /// Additional parameters used during validation of ECDSA signatures.
12 | public struct ValidationOptions {
| `- note: consider making struct 'ValidationOptions' conform to the 'Sendable' protocol
13 | /// Whether or not to consider malleable signatures valid.
14 | public let malleabilityStrictness: MalleabilityStrictness
:
22 | extension K1.ECDSA.ValidationOptions {
23 | /// The default behavior of ECDSA signature validation.
24 | public static let `default`: Self = .init(
| |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'K1.ECDSA.ValidationOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
25 | malleabilityStrictness: .rejected
26 | )
/Users/admin/builder/spi-builder-workspace/Sources/K1/K1/ECDSA/ECDSASignatureRecoverable.swift:140:21: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'K1.ECDSAWithKeyRecovery.Signature.Compact.SerializationFormat' may have shared mutable state; this is an error in the Swift 6 language mode
131 | /// Controls the order of the three components `R`, `S` and `V` (`RecoveryID`), specifyin
132 | /// either `R || S || V` called `.rsv` or `V || R || S` called `vrs`.
133 | public enum SerializationFormat {
| `- note: consider making enum 'SerializationFormat' conform to the 'Sendable' protocol
134 | /// `R || S || V` - the format `libsecp256k1` v0.3.0 uses as representation
135 | /// This is the default value of this library.
:
138 | /// We use `R || S || V` as default values since `libsecp256k1` v0.7.1
139 | /// uses it as its internal representation.
140 | public static let `default`: Self = .rsv
| |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'K1.ECDSAWithKeyRecovery.Signature.Compact.SerializationFormat' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
141 |
142 | /// `V || R || S`.
[51/63] Compiling K1 ECDSASignatureRecoverable.swift
/Users/admin/builder/spi-builder-workspace/Sources/K1/K1/ECDSA/ECDSA.swift:24:20: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'K1.ECDSA.ValidationOptions' may have shared mutable state; this is an error in the Swift 6 language mode
10 | extension K1.ECDSA {
11 | /// Additional parameters used during validation of ECDSA signatures.
12 | public struct ValidationOptions {
| `- note: consider making struct 'ValidationOptions' conform to the 'Sendable' protocol
13 | /// Whether or not to consider malleable signatures valid.
14 | public let malleabilityStrictness: MalleabilityStrictness
:
22 | extension K1.ECDSA.ValidationOptions {
23 | /// The default behavior of ECDSA signature validation.
24 | public static let `default`: Self = .init(
| |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'K1.ECDSA.ValidationOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
25 | malleabilityStrictness: .rejected
26 | )
/Users/admin/builder/spi-builder-workspace/Sources/K1/K1/ECDSA/ECDSASignatureRecoverable.swift:140:21: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'K1.ECDSAWithKeyRecovery.Signature.Compact.SerializationFormat' may have shared mutable state; this is an error in the Swift 6 language mode
131 | /// Controls the order of the three components `R`, `S` and `V` (`RecoveryID`), specifyin
132 | /// either `R || S || V` called `.rsv` or `V || R || S` called `vrs`.
133 | public enum SerializationFormat {
| `- note: consider making enum 'SerializationFormat' conform to the 'Sendable' protocol
134 | /// `R || S || V` - the format `libsecp256k1` v0.3.0 uses as representation
135 | /// This is the default value of this library.
:
138 | /// We use `R || S || V` as default values since `libsecp256k1` v0.7.1
139 | /// uses it as its internal representation.
140 | public static let `default`: Self = .rsv
| |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'K1.ECDSAWithKeyRecovery.Signature.Compact.SerializationFormat' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
141 |
142 | /// `V || R || S`.
[52/63] Compiling K1 RecoveryID.swift
/Users/admin/builder/spi-builder-workspace/Sources/K1/K1/ECDSA/ECDSA.swift:24:20: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'K1.ECDSA.ValidationOptions' may have shared mutable state; this is an error in the Swift 6 language mode
10 | extension K1.ECDSA {
11 | /// Additional parameters used during validation of ECDSA signatures.
12 | public struct ValidationOptions {
| `- note: consider making struct 'ValidationOptions' conform to the 'Sendable' protocol
13 | /// Whether or not to consider malleable signatures valid.
14 | public let malleabilityStrictness: MalleabilityStrictness
:
22 | extension K1.ECDSA.ValidationOptions {
23 | /// The default behavior of ECDSA signature validation.
24 | public static let `default`: Self = .init(
| |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'K1.ECDSA.ValidationOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
25 | malleabilityStrictness: .rejected
26 | )
/Users/admin/builder/spi-builder-workspace/Sources/K1/K1/ECDSA/ECDSASignatureRecoverable.swift:140:21: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'K1.ECDSAWithKeyRecovery.Signature.Compact.SerializationFormat' may have shared mutable state; this is an error in the Swift 6 language mode
131 | /// Controls the order of the three components `R`, `S` and `V` (`RecoveryID`), specifyin
132 | /// either `R || S || V` called `.rsv` or `V || R || S` called `vrs`.
133 | public enum SerializationFormat {
| `- note: consider making enum 'SerializationFormat' conform to the 'Sendable' protocol
134 | /// `R || S || V` - the format `libsecp256k1` v0.3.0 uses as representation
135 | /// This is the default value of this library.
:
138 | /// We use `R || S || V` as default values since `libsecp256k1` v0.7.1
139 | /// uses it as its internal representation.
140 | public static let `default`: Self = .rsv
| |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'K1.ECDSAWithKeyRecovery.Signature.Compact.SerializationFormat' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
141 |
142 | /// `V || R || S`.
[53/63] Compiling K1 Schnorr+Wrapped.swift
[54/63] Compiling K1 FFI+Call.swift
[55/63] Compiling K1 FFI+Context.swift
[56/63] Compiling K1 FFI+Format.swift
[57/63] Compiling K1 FFI+Raw.swift
[58/63] Compiling K1 Keys.generated.swift
[59/63] Compiling K1 PrivateKeyImplementation.swift
[60/63] Compiling K1 PublicKeyImplementation.swift
[61/63] Compiling K1 Schnorr+Signature.swift
[62/63] Compiling K1 Schnorr.swift
[63/63] Compiling K1 Signing.generated.swift
Build complete! (6.53s)
Build complete.
{
"dependencies" : [
],
"manifest_display_name" : "K1",
"name" : "K1",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "13.0"
},
{
"name" : "macos",
"version" : "11.0"
},
{
"name" : "tvos",
"version" : "13.0"
},
{
"name" : "watchos",
"version" : "6.0"
}
],
"products" : [
{
"name" : "K1",
"targets" : [
"K1"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "secp256k1",
"module_type" : "ClangTarget",
"name" : "secp256k1",
"path" : "Sources/secp256k1",
"product_memberships" : [
"K1"
],
"sources" : [
"libsecp256k1/contrib/lax_der_parsing.c",
"libsecp256k1/contrib/lax_der_privatekey_parsing.c",
"libsecp256k1/src/precomputed_ecmult.c",
"libsecp256k1/src/precomputed_ecmult_gen.c",
"libsecp256k1/src/secp256k1.c",
"src/ecdh_variants.c"
],
"type" : "library"
},
{
"c99name" : "K1Tests",
"module_type" : "SwiftTarget",
"name" : "K1Tests",
"path" : "Tests/K1Tests",
"resources" : [
{
"path" : "/Users/admin/builder/spi-builder-workspace/Tests/K1Tests/TestVectors/bip340_schnorr_sign.json",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Tests/K1Tests/TestVectors/bip340_schnorr_verify.json",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Tests/K1Tests/TestVectors/cyon_ecdh_two_variants_with_kdf.json",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Tests/K1Tests/TestVectors/trezor_ecdsa_sign_rfc6979.json",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Tests/K1Tests/TestVectors/warta_cyon_publickey_recovery.json",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Tests/K1Tests/TestVectors/wycheproof_ecdh_ASN1x963.json",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Tests/K1Tests/TestVectors/wycheproof_ecdsa_verify_der.json",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Tests/K1Tests/TestVectors/wycheproof_ecdsa_verify_p1363.json",
"rule" : {
"process" : {
}
}
}
],
"sources" : [
"TestCases/APITest.swift",
"TestCases/ECDH/ECDHTests.swift",
"TestCases/ECDH/ECDHWycheproofTests.swift",
"TestCases/ECDH/TwoVariantsOfECDHWithKDFTests.swift",
"TestCases/ECDSA/ECDSARecoverableSignatureRoundtripTests.swift",
"TestCases/ECDSA/ECDSASignatureTests.swift",
"TestCases/ECDSA/ECDSASignatureTrezorTests.swift",
"TestCases/ECDSA/ECDSAWycheproofASNDEREncodedSignaturesTests.swift",
"TestCases/ECDSA/ECDSAWycheproofIEEEP1364RSEncodedSignaturesTests.swift",
"TestCases/Keys/PrivateKey/PrivateKeyEncodingTests.swift",
"TestCases/Keys/PrivateKey/PrivateKeyGenerationTests.swift",
"TestCases/Keys/PrivateKey/PrivateKeyImportTests.swift",
"TestCases/Keys/PublicKey/PublicKeyEncodingTests.generated.swift",
"TestCases/Keys/PublicKey/PublicKeyGroupOperationsTests.swift",
"TestCases/Keys/PublicKey/PublicKeyImportTests.swift",
"TestCases/Performance/PerformanceTests.swift",
"TestCases/PublicKeyRecovery/ECDASignaturePublicKeyRecoveryTests.swift",
"TestCases/Schnorr/SchnorrSignatureBitcoinCoreTests.swift",
"TestCases/Schnorr/SchnorrSignatureTests.swift",
"TestCases/SecureBytes/SecureBytesTests.swift",
"Util/ECSignature.swift",
"Util/Wycheproof.swift",
"Util/XCTestUtils.swift"
],
"target_dependencies" : [
"K1"
],
"type" : "test"
},
{
"c99name" : "K1",
"module_type" : "SwiftTarget",
"name" : "K1",
"path" : "Sources/K1",
"product_memberships" : [
"K1"
],
"sources" : [
"K1.swift",
"K1/ECDH/KeyAgreement.swift",
"K1/ECDSA/ECDSA.swift",
"K1/ECDSA/ECDSASignatureNonRecoverable.swift",
"K1/ECDSA/ECDSASignatureRecoverable.swift",
"K1/ECDSA/RecoveryID.swift",
"K1/Keys/Keys.generated.swift",
"K1/Keys/PrivateKeyImplementation.swift",
"K1/Keys/PublicKeyImplementation.swift",
"K1/Schnorr/Schnorr+Signature.swift",
"K1/Schnorr/Schnorr.swift",
"K1/Signing/Signing.generated.swift",
"K1/Validation/Validation.generated.swift",
"Support/Extensions/Data+Extensions.swift",
"Support/FFI/API/ECDH/FFI+ECDH.swift",
"Support/FFI/API/ECDSA/FFI+ECDSA.swift",
"Support/FFI/API/ECDSA/NonRecovery/ECDSA+NonRecovery+Wrapped.swift",
"Support/FFI/API/ECDSA/NonRecovery/FFI+ECDSA+NonRecovery.swift",
"Support/FFI/API/ECDSA/Recovery/ECDSA+Recovery+Wrapped.swift",
"Support/FFI/API/ECDSA/Recovery/FFI+ECDSA+Recovery.swift",
"Support/FFI/API/Keys/PrivateKey/PrivateKey+Wrapped.swift",
"Support/FFI/API/Keys/PublicKey/FFI+PublicKey.swift",
"Support/FFI/API/Keys/PublicKey/PublicKey+Wrapped.swift",
"Support/FFI/API/Schnorr/FFI+Schnorr.swift",
"Support/FFI/API/Schnorr/Schnorr+Wrapped.swift",
"Support/FFI/Internals/FFI+Call.swift",
"Support/FFI/Internals/FFI+Context.swift",
"Support/FFI/Internals/FFI+Format.swift",
"Support/FFI/Internals/FFI+Raw.swift",
"Support/Misc/Curve.swift",
"Support/Misc/K1+Error.swift",
"Support/Misc/SharedSecret.swift",
"Support/ThirdyParty/swift-crypto/ASN1/ASN1.swift",
"Support/ThirdyParty/swift-crypto/ASN1/Basic ASN1 Types/ASN1Any.swift",
"Support/ThirdyParty/swift-crypto/ASN1/Basic ASN1 Types/ASN1BitString.swift",
"Support/ThirdyParty/swift-crypto/ASN1/Basic ASN1 Types/ASN1Boolean.swift",
"Support/ThirdyParty/swift-crypto/ASN1/Basic ASN1 Types/ASN1Identifier.swift",
"Support/ThirdyParty/swift-crypto/ASN1/Basic ASN1 Types/ASN1Integer.swift",
"Support/ThirdyParty/swift-crypto/ASN1/Basic ASN1 Types/ASN1Null.swift",
"Support/ThirdyParty/swift-crypto/ASN1/Basic ASN1 Types/ASN1OctetString.swift",
"Support/ThirdyParty/swift-crypto/ASN1/Basic ASN1 Types/ASN1Strings.swift",
"Support/ThirdyParty/swift-crypto/ASN1/Basic ASN1 Types/ArraySliceBigint.swift",
"Support/ThirdyParty/swift-crypto/ASN1/Basic ASN1 Types/GeneralizedTime.swift",
"Support/ThirdyParty/swift-crypto/ASN1/Basic ASN1 Types/ObjectIdentifier.swift",
"Support/ThirdyParty/swift-crypto/ASN1/ECDSASignature.swift",
"Support/ThirdyParty/swift-crypto/ASN1/PEMDocument.swift",
"Support/ThirdyParty/swift-crypto/ASN1/PKCS8PrivateKey.swift",
"Support/ThirdyParty/swift-crypto/ASN1/SEC1PrivateKey.swift",
"Support/ThirdyParty/swift-crypto/ASN1/SubjectPublicKeyInfo.swift",
"Support/ThirdyParty/swift-crypto/ASN1Error.swift",
"Support/ThirdyParty/swift-crypto/BytesUtil.swift",
"Support/ThirdyParty/swift-crypto/RNG_boring.swift",
"Support/ThirdyParty/swift-crypto/SafeCompare_boring.swift",
"Support/ThirdyParty/swift-crypto/SecureBytes.swift"
],
"target_dependencies" : [
"secp256k1"
],
"type" : "library"
}
],
"tools_version" : "5.5"
}
Done.