The Swift Package Index logo.Swift Package Index

Build Information

Successful build of swift-nostr-client, reference main (686dcc), with Swift 6.2 for macOS (SPM) on 20 Apr 2026 15:09:15 UTC.

Swift 6 data race errors: 0

Build Command

env DEVELOPER_DIR=/Applications/Xcode-26.3.0.app xcrun swift build --arch arm64

Build Log

========================================
RunAll
========================================
Builder version: 4.70.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/yysskk/swift-nostr-client.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/yysskk/swift-nostr-client
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at 686dcc0 Merge pull request #13 from yysskk/feat/support-nip-11
Cloned https://github.com/yysskk/swift-nostr-client.git
Revision (git rev-parse @):
686dcc01ff38cb0e06eafd6614f32f30b296887e
SUCCESS checkout https://github.com/yysskk/swift-nostr-client.git at main
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.2
Building package at path:  $PWD
https://github.com/yysskk/swift-nostr-client.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-26.3.0.app xcrun swift build --arch arm64
[1/1] Compiling plugin Swift-DocC Preview
[2/2] Compiling plugin Swift-DocC
[3/3] Compiling plugin SharedSourcesPlugin
Building for debugging...
[3/12] Copying PrivacyInfo.xcprivacy
[4/12] Write sources
[7/12] Write swift-version--3CB7CFEC50E0D141.txt
[8/98] Compiling precomputed_ecmult_gen.c
[9/98] Compiling Utility.c
[10/98] Compiling secp256k1.c
[11/98] Compiling precomputed_ecmult.c
[13/157] Emitting module P256K
[14/163] Compiling P256K UInt256+Modular.swift
[15/163] Compiling P256K UInt256+Representation.swift
[16/163] Compiling P256K UInt256.swift
[17/163] Compiling P256K Utility.swift
[18/163] Compiling P256K XonlyKeyImplementation.swift
[19/163] Compiling P256K Zeroization.swift
[20/163] Compiling P256K Schnorr.swift
[21/163] Compiling P256K SecureBytes.swift
[22/163] Compiling P256K Signature.swift
[23/163] Compiling P256K SubjectPublicKeyInfo.swift
[24/163] Compiling P256K UInt256+Arithmetic.swift
[25/163] Compiling P256K UInt256+FixedWidthInteger.swift
[26/163] Compiling P256K Schnorr+Nonces.swift
[27/163] Compiling P256K Schnorr+PrivateKey.swift
[28/163] Compiling P256K Schnorr+PublicKey.swift
[29/163] Compiling P256K Schnorr+Signature.swift
[30/163] Compiling P256K Schnorr+Tweak.swift
[31/163] Compiling P256K Schnorr+XonlyKey.swift
[32/163] Compiling Crypto ECDSA_boring.swift
[33/163] Compiling Crypto EdDSA_boring.swift
[34/163] Compiling Crypto MLDSA_boring.swift
[35/163] Compiling Crypto MLDSA_wrapper.swift
[36/163] Compiling Crypto ECDSA.swift
[37/163] Compiling Crypto Ed25519.swift
[38/163] Compiling Crypto MLDSA.swift
[39/163] Compiling Crypto Signature.swift
[40/163] Compiling Crypto CryptoKitErrors_boring.swift
[46/172] Compiling P256K ECDSA+XonlyKey.swift
[47/172] Compiling P256K ECDSA.swift
[48/172] Compiling P256K ECDSASignature.swift
[49/172] Compiling P256K EdDSA.swift
[50/172] Compiling P256K Errors.swift
[51/172] Compiling P256K DH.swift
[52/172] Compiling P256K Digest.swift
[53/172] Compiling P256K ECDH.swift
[54/172] Compiling P256K ECDSA+PrivateKey.swift
[55/172] Compiling P256K ECDSA+PublicKey.swift
[56/172] Compiling P256K ECDSA+Signature.swift
[57/172] Compiling P256K ECDSA+Tweak.swift
[63/172] Compiling P256K GeneralizedTime.swift
[64/172] Compiling P256K HashDigest.swift
[65/172] Emitting module Crypto
[66/172] Compiling P256K PrettyBytes.swift
[67/172] Compiling P256K PrivateKeyImplementation.swift
[68/172] Compiling P256K PublicKeyImplementation.swift
[69/172] Compiling P256K MuSig+Aggregate.swift
[70/172] Compiling P256K MuSig+Nonces.swift
[71/172] Compiling P256K MuSig+Signing.swift
[72/172] Compiling P256K MuSig+Tweak.swift
[73/172] Compiling P256K MuSig.swift
[74/172] Compiling P256K ObjectIdentifier.swift
[76/172] Compiling P256K Combine.swift
[77/172] Compiling P256K Context.swift
[78/172] Compiling P256K CryptoKitErrors.swift
[79/172] Compiling P256K Placeholder.swift
[80/172] Compiling P256K ASN1.swift
[81/172] Compiling P256K ASN1Any.swift
[82/172] Compiling P256K ASN1BitString.swift
[83/172] Compiling P256K ASN1Boolean.swift
[84/172] Compiling P256K ASN1Identifier.swift
[85/172] Compiling P256K ASN1Integer.swift
[86/172] Compiling P256K RNG_boring.swift
[87/172] Compiling P256K Recovery+Signature.swift
[88/172] Compiling P256K Recovery.swift
[89/172] Compiling P256K SEC1PrivateKey.swift
[90/172] Compiling P256K SHA256.swift
[91/172] Compiling P256K SafeCompare.swift
[92/172] Compiling P256K P256K.swift
[93/172] Compiling P256K PEMDocument.swift
[94/172] Compiling P256K PKCS8PrivateKey.swift
[101/172] Compiling P256K ASN1Null.swift
[102/172] Compiling P256K ASN1OctetString.swift
[103/172] Compiling P256K ASN1Strings.swift
[104/172] Compiling P256K ArraySliceBigint.swift
[120/172] Compiling Crypto MessageAuthenticationCode.swift
[121/172] Compiling Crypto AES.swift
[122/172] Compiling Crypto ECDSASignature_boring.swift
[123/172] Compiling Crypto HPKE-NIST-EC-KEMs.swift
[124/172] Compiling Crypto HPKE-KEM.swift
[125/172] Compiling Crypto HPKE-Errors.swift
[126/172] Compiling Crypto HPKE.swift
[127/172] Compiling Crypto HPKE-Context.swift
[128/172] Compiling Crypto HPKE-KeySchedule.swift
[129/172] Compiling Crypto HPKE-Modes.swift
[130/172] Compiling Crypto Insecure.swift
[131/172] Compiling Crypto Insecure_HashFunctions.swift
[164/172] Compiling Crypto Optional+withUnsafeBytes_boring.swift
[165/172] Compiling Crypto RNG_boring.swift
[166/172] Compiling Crypto SafeCompare_boring.swift
[167/172] Compiling Crypto Zeroization_boring.swift
[168/172] Compiling Crypto PrettyBytes.swift
[169/172] Compiling Crypto SafeCompare.swift
[170/172] Compiling Crypto SecureBytes.swift
[171/172] Compiling Crypto Zeroization.swift
[172/172] Compiling Crypto resource_bundle_accessor.swift
[173/200] Compiling NostrClient Filter.swift
[174/200] Compiling NostrClient InternetIdentifier.swift
[175/200] Compiling NostrClient NostrError.swift
[176/203] Compiling NostrClient GiftWrap.swift
[177/203] Compiling NostrClient KeyDerivation.swift
[178/203] Compiling NostrClient KeyPair.swift
[179/203] Emitting module NostrClient
[180/203] Compiling NostrClient SubscriptionEvent.swift
[181/203] Compiling NostrClient NostrClient+Exports.swift
[182/203] Compiling NostrClient NostrClient.swift
[183/203] Compiling NostrClient Mnemonic.swift
/Users/admin/builder/spi-builder-workspace/Sources/NostrClient/Crypto/SealedMessage.swift:164:28: warning: no calls to throwing functions occur within 'try' expression
162 |         // The sharedSecret in compressed format is: version (1 byte) + x-coordinate (32 bytes)
163 |         // NIP-44 needs only the x-coordinate, so skip the version byte
164 |         let sharedSecret = try privateKey.sharedSecretFromKeyAgreement(with: publicKey, format: .compressed)
    |                            `- warning: no calls to throwing functions occur within 'try' expression
165 |         let sharedX = sharedSecret.withUnsafeBytes { bytes in
166 |             Data(bytes.dropFirst())
[184/203] Compiling NostrClient SealedMessage.swift
/Users/admin/builder/spi-builder-workspace/Sources/NostrClient/Crypto/SealedMessage.swift:164:28: warning: no calls to throwing functions occur within 'try' expression
162 |         // The sharedSecret in compressed format is: version (1 byte) + x-coordinate (32 bytes)
163 |         // NIP-44 needs only the x-coordinate, so skip the version byte
164 |         let sharedSecret = try privateKey.sharedSecretFromKeyAgreement(with: publicKey, format: .compressed)
    |                            `- warning: no calls to throwing functions occur within 'try' expression
165 |         let sharedX = sharedSecret.withUnsafeBytes { bytes in
166 |             Data(bytes.dropFirst())
[185/203] Compiling NostrClient SecureRandom.swift
/Users/admin/builder/spi-builder-workspace/Sources/NostrClient/Crypto/SealedMessage.swift:164:28: warning: no calls to throwing functions occur within 'try' expression
162 |         // The sharedSecret in compressed format is: version (1 byte) + x-coordinate (32 bytes)
163 |         // NIP-44 needs only the x-coordinate, so skip the version byte
164 |         let sharedSecret = try privateKey.sharedSecretFromKeyAgreement(with: publicKey, format: .compressed)
    |                            `- warning: no calls to throwing functions occur within 'try' expression
165 |         let sharedX = sharedSecret.withUnsafeBytes { bytes in
166 |             Data(bytes.dropFirst())
[186/203] Compiling NostrClient RelayPool.swift
[187/203] Compiling NostrClient RelayPoolConfig.swift
[188/203] Compiling NostrClient RelaySubscriptionMessage.swift
[189/203] Compiling NostrClient OpenTimestamps.swift
[190/203] Compiling NostrClient RelayInformation.swift
[191/203] Compiling NostrClient RelayMessage.swift
[192/203] Compiling NostrClient DirectMessageBuilder.swift
[193/203] Compiling NostrClient DirectMessageParser.swift
[194/203] Compiling NostrClient Event.swift
[195/203] Compiling NostrClient RelayConnection.swift
/Users/admin/builder/spi-builder-workspace/Sources/NostrClient/Relay/RelayConnection.swift:336:49: warning: no 'async' operations occur within 'await' expression
334 |                         if let relayMessage = try? RelayMessage.parse(text) {
335 |                             if case .ok(let eventId, let accepted, let message) = relayMessage {
336 |                                 if let waiter = await self.removePublishWaiter(eventId: eventId) {
    |                                                 `- warning: no 'async' operations occur within 'await' expression
337 |                                     if accepted {
338 |                                         waiter.finish()
/Users/admin/builder/spi-builder-workspace/Sources/NostrClient/Relay/RelayConnection.swift:344:29: warning: no 'async' operations occur within 'await' expression
342 |                                 }
343 |                             }
344 |                             await self.yieldToMessageContinuations(relayMessage)
    |                             `- warning: no 'async' operations occur within 'await' expression
345 |                         }
346 |
[196/203] Compiling NostrClient RelayConnectionConfig.swift
/Users/admin/builder/spi-builder-workspace/Sources/NostrClient/Relay/RelayConnection.swift:336:49: warning: no 'async' operations occur within 'await' expression
334 |                         if let relayMessage = try? RelayMessage.parse(text) {
335 |                             if case .ok(let eventId, let accepted, let message) = relayMessage {
336 |                                 if let waiter = await self.removePublishWaiter(eventId: eventId) {
    |                                                 `- warning: no 'async' operations occur within 'await' expression
337 |                                     if accepted {
338 |                                         waiter.finish()
/Users/admin/builder/spi-builder-workspace/Sources/NostrClient/Relay/RelayConnection.swift:344:29: warning: no 'async' operations occur within 'await' expression
342 |                                 }
343 |                             }
344 |                             await self.yieldToMessageContinuations(relayMessage)
    |                             `- warning: no 'async' operations occur within 'await' expression
345 |                         }
346 |
[197/203] Compiling NostrClient RelayConnectionState.swift
/Users/admin/builder/spi-builder-workspace/Sources/NostrClient/Relay/RelayConnection.swift:336:49: warning: no 'async' operations occur within 'await' expression
334 |                         if let relayMessage = try? RelayMessage.parse(text) {
335 |                             if case .ok(let eventId, let accepted, let message) = relayMessage {
336 |                                 if let waiter = await self.removePublishWaiter(eventId: eventId) {
    |                                                 `- warning: no 'async' operations occur within 'await' expression
337 |                                     if accepted {
338 |                                         waiter.finish()
/Users/admin/builder/spi-builder-workspace/Sources/NostrClient/Relay/RelayConnection.swift:344:29: warning: no 'async' operations occur within 'await' expression
342 |                                 }
343 |                             }
344 |                             await self.yieldToMessageContinuations(relayMessage)
    |                             `- warning: no 'async' operations occur within 'await' expression
345 |                         }
346 |
[198/203] Compiling NostrClient BIP39WordList.swift
[199/203] Compiling NostrClient Bech32.swift
[200/203] Compiling NostrClient EventSigner.swift
[201/203] Compiling NostrClient EOSETracker.swift
[202/203] Compiling NostrClient Contact.swift
[203/203] Compiling NostrClient DirectMessage.swift
Build complete! (41.48s)
Fetching https://github.com/apple/swift-crypto.git
Fetching https://github.com/GigaBitcoin/secp256k1.swift
Fetching https://github.com/swiftlang/swift-docc-plugin.git
[1/2277] Fetching swift-docc-plugin
[252/19706] Fetching swift-docc-plugin, swift-crypto
[253/30093] Fetching swift-docc-plugin, swift-crypto, secp256k1.swift
Fetched https://github.com/apple/swift-crypto.git from cache (2.89s)
Fetched https://github.com/GigaBitcoin/secp256k1.swift from cache (2.89s)
Fetched https://github.com/swiftlang/swift-docc-plugin.git from cache (2.89s)
Computing version for https://github.com/swiftlang/swift-docc-plugin.git
Computed https://github.com/swiftlang/swift-docc-plugin.git at 1.4.6 (5.97s)
Fetching https://github.com/swiftlang/swift-docc-symbolkit
[1/3672] Fetching swift-docc-symbolkit
Fetched https://github.com/swiftlang/swift-docc-symbolkit from cache (1.10s)
Computing version for https://github.com/swiftlang/swift-docc-symbolkit
Computed https://github.com/swiftlang/swift-docc-symbolkit at 1.0.0 (1.95s)
Computing version for https://github.com/apple/swift-crypto.git
Computed https://github.com/apple/swift-crypto.git at 4.4.0 (2.52s)
Fetching https://github.com/apple/swift-asn1.git
[1/1803] Fetching swift-asn1
Fetched https://github.com/apple/swift-asn1.git from cache (1.24s)
Computing version for https://github.com/GigaBitcoin/secp256k1.swift
Computed https://github.com/GigaBitcoin/secp256k1.swift at 0.23.0 (1.89s)
Computing version for https://github.com/apple/swift-asn1.git
Computed https://github.com/apple/swift-asn1.git at 1.7.0 (0.68s)
Creating working copy for https://github.com/swiftlang/swift-docc-plugin.git
Working copy of https://github.com/swiftlang/swift-docc-plugin.git resolved at 1.4.6
Creating working copy for https://github.com/apple/swift-crypto.git
Working copy of https://github.com/apple/swift-crypto.git resolved at 4.4.0
Creating working copy for https://github.com/GigaBitcoin/secp256k1.swift
Working copy of https://github.com/GigaBitcoin/secp256k1.swift resolved at 0.23.0
Creating working copy for https://github.com/swiftlang/swift-docc-symbolkit
Working copy of https://github.com/swiftlang/swift-docc-symbolkit resolved at 1.0.0
Creating working copy for https://github.com/apple/swift-asn1.git
Working copy of https://github.com/apple/swift-asn1.git resolved at 1.7.0
Build complete.
{
  "dependencies" : [
    {
      "identity" : "secp256k1.swift",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "0.18.0",
            "upper_bound" : "1.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/GigaBitcoin/secp256k1.swift"
    },
    {
      "identity" : "swift-crypto",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "4.2.0",
            "upper_bound" : "5.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-crypto.git"
    },
    {
      "identity" : "swift-docc-plugin",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.4.3",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/swiftlang/swift-docc-plugin.git"
    }
  ],
  "manifest_display_name" : "swift-nostr-client",
  "name" : "swift-nostr-client",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "17.0"
    },
    {
      "name" : "macos",
      "version" : "14.0"
    },
    {
      "name" : "tvos",
      "version" : "17.0"
    },
    {
      "name" : "watchos",
      "version" : "10.0"
    },
    {
      "name" : "visionos",
      "version" : "1.0"
    }
  ],
  "products" : [
    {
      "name" : "NostrClient",
      "targets" : [
        "NostrClient"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "NostrClientTests",
      "module_type" : "SwiftTarget",
      "name" : "NostrClientTests",
      "path" : "Tests/NostrClientTests",
      "sources" : [
        "BIP39WordListTests.swift",
        "Bech32Tests.swift",
        "ContactTests.swift",
        "EventTests.swift",
        "FilterTests.swift",
        "InternetIdentifierTests.swift",
        "KeyPairTests.swift",
        "MnemonicTests.swift",
        "NIP17Tests.swift",
        "NostrClientFetchTests.swift",
        "OpenTimestampsTests.swift",
        "RelayInformationTests.swift",
        "RelayMessageTests.swift"
      ],
      "target_dependencies" : [
        "NostrClient"
      ],
      "type" : "test"
    },
    {
      "c99name" : "NostrClient",
      "module_type" : "SwiftTarget",
      "name" : "NostrClient",
      "path" : "Sources/NostrClient",
      "product_dependencies" : [
        "P256K",
        "Crypto"
      ],
      "product_memberships" : [
        "NostrClient"
      ],
      "sources" : [
        "Crypto/BIP39WordList.swift",
        "Crypto/Bech32.swift",
        "Crypto/EventSigner.swift",
        "Crypto/GiftWrap.swift",
        "Crypto/KeyDerivation.swift",
        "Crypto/KeyPair.swift",
        "Crypto/Mnemonic.swift",
        "Crypto/SealedMessage.swift",
        "Crypto/SecureRandom.swift",
        "EOSETracker.swift",
        "Models/Contact.swift",
        "Models/DirectMessage.swift",
        "Models/DirectMessageBuilder.swift",
        "Models/DirectMessageParser.swift",
        "Models/Event.swift",
        "Models/Filter.swift",
        "Models/InternetIdentifier.swift",
        "Models/NostrError.swift",
        "Models/OpenTimestamps.swift",
        "Models/RelayInformation.swift",
        "Models/RelayMessage.swift",
        "Models/SubscriptionEvent.swift",
        "NostrClient+Exports.swift",
        "NostrClient.swift",
        "Relay/RelayConnection.swift",
        "Relay/RelayConnectionConfig.swift",
        "Relay/RelayConnectionState.swift",
        "Relay/RelayPool.swift",
        "Relay/RelayPoolConfig.swift",
        "Relay/RelaySubscriptionMessage.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "6.2"
}
Done.