Build Information
Successful build of K1, reference main (ab8065), with Swift 6.4 for macOS (SPM) on 23 Sep 2026 23:34:50 UTC.
Swift 6 data race errors: 0
Build Command
env DEVELOPER_DIR=/Applications/Xcode-27.0.0-Release.Candidate.app xcrun swift build --arch arm64Build Log
========================================
RunAll
========================================
Builder version: 5.1.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/Sajjon/K1.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/Sajjon/K1
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at ab80658 Migrate to 6.2.1 (#52)
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 @):
ab80658b14719d51b1b07ca631adf095e1b24e00
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/Sajjon/K1.git at main
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.4
Building package at path: $PWD
https://github.com/Sajjon/K1.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-27.0.0-Release.Candidate.app xcrun swift build --arch arm64
Building for debugging...
[Pre-planning 1 / 125]
[Planning deferred tasks]
[40 / 64] K1_K1Tests
[42 / 64]
[49 / 65] secp256k1
[55 / 75]
[61 / 75]
[65 / 75] secp256k1
[65 / 75] K1
[75 / 124]
[78 / 124]
[84 / 124]
[86 / 124] secp256k1
[87 / 124]
[91 / 124]
[93 / 124]
[96 / 124]
[100 / 124]
[102 / 124]
[103 / 124]
[115 / 124] K1
[116 / 124] K1
[124 / 124] K1-product
Build complete! (9.34 sec)
In file included from /Users/admin/builder/spi-builder-workspace/Sources/secp256k1/libsecp256k1/src/secp256k1.c:27:
In file included from /Users/admin/builder/spi-builder-workspace/Sources/secp256k1/libsecp256k1/src/field_impl.h:14:
In file included from /Users/admin/builder/spi-builder-workspace/Sources/secp256k1/libsecp256k1/src/field_5x52_impl.h:13:
[1m/Users/admin/builder/spi-builder-workspace/Sources/secp256k1/libsecp256k1/src/modinv64_impl.h:279:39: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'uint64_t' (aka 'unsigned long long') to 'uint32_t' (aka 'unsigned int') [-Wshorten-64-to-32][0m
279 | w = (f * g * (f * f - 2)) & m;[0m
| [0;1;32m ~ ~~~~~~~~~~~~~~~~~~~~~~^~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/secp256k1/libsecp256k1/src/modinv64_impl.h:289:19: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'uint64_t' (aka 'unsigned long long') to 'uint32_t' (aka 'unsigned int') [-Wshorten-64-to-32][0m
289 | w = f + (((f + 1) & 4) << 1);[0m
| [0;1;32m ~ ~~^~~~~~~~~~~~~~~~~~~~~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/secp256k1/libsecp256k1/src/modinv64_impl.h:290:26: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'uint64_t' (aka 'unsigned long long') to 'uint32_t' (aka 'unsigned int') [-Wshorten-64-to-32][0m
290 | w = (-w * g) & m;[0m
| [0;1;32m ~ ~~~~~~~~~^~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/secp256k1/libsecp256k1/src/modinv64_impl.h:370:39: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'uint64_t' (aka 'unsigned long long') to 'uint32_t' (aka 'unsigned int') [-Wshorten-64-to-32][0m
370 | w = (f * g * (f * f - 2)) & m;[0m
| [0;1;32m ~ ~~~~~~~~~~~~~~~~~~~~~~^~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/secp256k1/libsecp256k1/src/modinv64_impl.h:380:19: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'uint64_t' (aka 'unsigned long long') to 'uint32_t' (aka 'unsigned int') [-Wshorten-64-to-32][0m
380 | w = f + (((f + 1) & 4) << 1);[0m
| [0;1;32m ~ ~~^~~~~~~~~~~~~~~~~~~~~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/secp256k1/libsecp256k1/src/modinv64_impl.h:381:26: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'uint64_t' (aka 'unsigned long long') to 'uint32_t' (aka 'unsigned int') [-Wshorten-64-to-32][0m
381 | w = (-w * g) & m;[0m
| [0;1;32m ~ ~~~~~~~~~^~~
[0mIn file included from /Users/admin/builder/spi-builder-workspace/Sources/secp256k1/libsecp256k1/src/secp256k1.c:28:
In file included from /Users/admin/builder/spi-builder-workspace/Sources/secp256k1/libsecp256k1/src/scalar_impl.h:20:
[1m/Users/admin/builder/spi-builder-workspace/Sources/secp256k1/libsecp256k1/src/scalar_4x64_impl.h:112:42: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'uint64_t' (aka 'unsigned long long') to 'int' [-Wshorten-64-to-32][0m
112 | overflow = secp256k1_u128_to_u64(&t) + secp256k1_scalar_check_overflow(r);[0m
| [0;1;32m ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/secp256k1/libsecp256k1/src/scalar_4x64_impl.h:637:10: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'uint64_t' (aka 'unsigned long long') to 'uint32_t' (aka 'unsigned int') [-Wshorten-64-to-32][0m
637 | m6 = c0;[0m
| [0;1;32m ~ ^~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/secp256k1/libsecp256k1/src/scalar_4x64_impl.h:657:13: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'uint64_t' (aka 'unsigned long long') to 'uint32_t' (aka 'unsigned int') [-Wshorten-64-to-32][0m
657 | p4 = c0 + m6;[0m
| [0;1;32m ~ ~~~^~~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/secp256k1/libsecp256k1/src/scalar_4x64_impl.h:677:34: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'uint64_t' (aka 'unsigned long long') to 'unsigned int' [-Wshorten-64-to-32][0m
677 | secp256k1_scalar_reduce(r, c + secp256k1_scalar_check_overflow(r));[0m
| [0;1;32m ~~~~~~~~~~~~~~~~~~~~~~~ ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[0mIn file included from /Users/admin/builder/spi-builder-workspace/Sources/secp256k1/libsecp256k1/src/secp256k1.c:30:
[1m/Users/admin/builder/spi-builder-workspace/Sources/secp256k1/libsecp256k1/src/ecmult_impl.h:536:21: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'int' [-Wshorten-64-to-32][0m
536 | for (i = n_wnaf - 1; i >= 0; i--) {[0m
| [0;1;32m ~ ~~~~~~~^~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/secp256k1/libsecp256k1/src/ecmult_impl.h:580:52: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32][0m
580 | for(j = ECMULT_TABLE_SIZE(bucket_window+2) - 1; j > 0; j--) {[0m
| [0;1;32m ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
[0mIn file included from /Users/admin/builder/spi-builder-workspace/Sources/secp256k1/libsecp256k1/src/secp256k1.c:32:
In file included from /Users/admin/builder/spi-builder-workspace/Sources/secp256k1/libsecp256k1/src/ecmult_gen_impl.h:14:
[1m/Users/admin/builder/spi-builder-workspace/Sources/secp256k1/libsecp256k1/src/hash_impl.h:151:52: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'uint64_t' (aka 'unsigned long long') to 'uint32_t' (aka 'unsigned int') [-Wshorten-64-to-32][0m
151 | secp256k1_write_be32(&sizedesc[0], hash->bytes >> 29);[0m
| [0;1;32m ~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~^~~~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/secp256k1/libsecp256k1/src/hash_impl.h:152:52: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'uint64_t' (aka 'unsigned long long') to 'uint32_t' (aka 'unsigned int') [-Wshorten-64-to-32][0m
152 | secp256k1_write_be32(&sizedesc[4], hash->bytes << 3);[0m
| [0;1;32m ~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~^~~~
[0m14 warnings generated.
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" : "6.2.1"
}
Done.