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

Successful build of SwiftJWT, reference 4.0.2 (2cf7ef), with Swift 6.1 for macOS (SPM) on 29 Apr 2025 21:34:15 UTC.

Swift 6 data race errors: 9

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 InferSendableFromCaptures

Build Log

========================================
RunAll
========================================
Builder version: 4.61.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/Kitura/Swift-JWT.git
Reference: 4.0.2
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/Kitura/Swift-JWT
 * tag               4.0.2      -> FETCH_HEAD
HEAD is now at 2cf7ef3 Bump minimum BlueRSA version to 1.0.202
Cloned https://github.com/Kitura/Swift-JWT.git
Revision (git rev-parse @):
2cf7ef3eeb0df84318c75662c257651285f8289f
SUCCESS checkout https://github.com/Kitura/Swift-JWT.git at 4.0.2
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.1
Building package at path:  $PWD
https://github.com/Kitura/Swift-JWT.git
https://github.com/Kitura/Swift-JWT.git
{
  "dependencies" : [
    {
      "identity" : "bluersa",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.0.202",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Kitura/BlueRSA.git"
    },
    {
      "identity" : "bluecryptor",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "2.0.1",
            "upper_bound" : "3.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Kitura/BlueCryptor.git"
    },
    {
      "identity" : "blueecc",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.2.200",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Kitura/BlueECC.git"
    },
    {
      "identity" : "loggerapi",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "2.0.0",
            "upper_bound" : "3.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Kitura/LoggerAPI.git"
    },
    {
      "identity" : "kituracontracts",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "2.0.1",
            "upper_bound" : "3.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Kitura/KituraContracts.git"
    }
  ],
  "manifest_display_name" : "SwiftJWT",
  "name" : "SwiftJWT",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "SwiftJWT",
      "targets" : [
        "SwiftJWT"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "SwiftJWTTests",
      "module_type" : "SwiftTarget",
      "name" : "SwiftJWTTests",
      "path" : "Tests/SwiftJWTTests",
      "sources" : [
        "TestJWT.swift"
      ],
      "target_dependencies" : [
        "SwiftJWT"
      ],
      "type" : "test"
    },
    {
      "c99name" : "SwiftJWT",
      "module_type" : "SwiftTarget",
      "name" : "SwiftJWT",
      "path" : "Sources/SwiftJWT",
      "product_dependencies" : [
        "LoggerAPI",
        "KituraContracts",
        "CryptorRSA",
        "Cryptor",
        "CryptorECC"
      ],
      "product_memberships" : [
        "SwiftJWT"
      ],
      "sources" : [
        "BlueECDSA.swift",
        "BlueHMAC.swift",
        "BlueRSA.swift",
        "Claims.swift",
        "ClaimsExamples/ClaimsMicroProfile.swift",
        "ClaimsExamples/ClaimsOpenID.swift",
        "ClaimsExamples/ClaimsStandardJWT.swift",
        "Data+Base64URLEncoded.swift",
        "Header.swift",
        "JWT.swift",
        "JWTDecoder.swift",
        "JWTEncoder.swift",
        "JWTError.swift",
        "JWTSigner.swift",
        "JWTVerifier.swift",
        "NoneAlgorithm.swift",
        "RSAKeyType.swift",
        "SignerAlgorithm.swift",
        "ValidateClaimsResult.swift",
        "VerifierAlgorithm.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.2"
}
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
[7/8] Write swift-version-2F0A5646E1D333AE.txt
[9/44] Compiling Logging MetadataProvider.swift
[10/44] Compiling Logging LogHandler.swift
[11/44] Compiling Logging Logging.swift
[12/44] Compiling Logging Locks.swift
[13/44] Emitting module Logging
[14/46] Compiling CryptorRSA SSLPointerTricks.swift
[15/46] Compiling CryptorECC EllipticCurve.swift
[16/47] Compiling Cryptor SSLPointerTricks.swift
[17/47] Compiling LoggerAPI Logger.swift
[18/47] Compiling Cryptor Random.swift
[19/47] Emitting module LoggerAPI
[20/48] Compiling CryptorRSA CryptorRSADigest.swift
[21/48] Compiling Cryptor Digest.swift
[22/48] Compiling Cryptor Status.swift
[23/48] Compiling CryptorECC ECSignable.swift
[24/48] Compiling CryptorECC ECSignature.swift
[25/48] Compiling CryptorRSA CryptorRSAErrors.swift
[26/48] Compiling Cryptor Crypto.swift
[27/48] Compiling Cryptor Cryptor.swift
[28/48] Compiling CryptorECC ECPrivateKey.swift
[29/48] Compiling CryptorECC ECEncryptable.swift
[30/48] Compiling CryptorECC ECPublicKey.swift
[31/48] Compiling CryptorECC ECError.swift
[32/48] Compiling CryptorECC ECDecryptable.swift
[33/48] Emitting module CryptorECC
[34/48] Compiling CryptorRSA CryptorRSAConstants.swift
[35/48] Compiling CryptorRSA Data+Extensions.swift
[38/48] Emitting module Cryptor
[39/48] Compiling Cryptor StreamCryptor.swift
[40/48] Compiling Cryptor Updatable.swift
[41/48] Compiling Cryptor HMAC.swift
[42/48] Compiling Cryptor KeyDerivation.swift
[43/48] Compiling CryptorRSA CryptorRSAKey.swift
[44/48] Compiling CryptorRSA CryptorRSAUtilities.swift
[45/48] Emitting module CryptorRSA
[46/48] Compiling CryptorRSA CryptorRSA.swift
[47/55] Compiling CryptorECC SSLPointerTricks.swift
[48/58] Compiling Cryptor Utilities.swift
[49/58] Compiling KituraContracts ClosureAliases.swift
[50/58] Compiling KituraContracts BodyEncoder.swift
[51/58] Compiling KituraContracts QueryDecoder.swift
[52/58] Emitting module KituraContracts
[53/58] Compiling KituraContracts BodyDecoder.swift
[54/58] Compiling KituraContracts Extensions.swift
[55/58] Compiling KituraContracts Coder.swift
[56/58] Compiling KituraContracts BodyFormat.swift
[57/58] Compiling KituraContracts QueryEncoder.swift
[58/58] Compiling KituraContracts Contracts.swift
[59/77] Compiling SwiftJWT BlueECDSA.swift
[60/77] Compiling SwiftJWT BlueHMAC.swift
[61/77] Compiling SwiftJWT Header.swift
[62/77] Compiling SwiftJWT JWT.swift
[63/79] Emitting module SwiftJWT
/Users/admin/builder/spi-builder-workspace/Sources/SwiftJWT/JWTSigner.swift:145:23: warning: static property 'none' is not concurrency-safe because non-'Sendable' type 'JWTSigner' may have shared mutable state; this is an error in the Swift 6 language mode
 50 |  ```
 51 |  */
 52 | public struct JWTSigner {
    |               `- note: consider making struct 'JWTSigner' conform to the 'Sendable' protocol
 53 |
 54 |     /// The name of the algorithm that will be set in the "alg" header
    :
143 |
144 |     /// Initialize a JWTSigner that will not sign the JWT. This is equivelent to using the "none" alg header.
145 |     public static let none = JWTSigner(name: "none", signerAlgorithm: NoneAlgorithm())
    |                       |- warning: static property 'none' is not concurrency-safe because non-'Sendable' type 'JWTSigner' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'none' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
146 | }
147 |
/Users/admin/builder/spi-builder-workspace/Sources/SwiftJWT/JWTVerifier.swift:151:23: warning: static property 'none' is not concurrency-safe because non-'Sendable' type 'JWTVerifier' may have shared mutable state; this is an error in the Swift 6 language mode
 43 |  ```
 44 |  */
 45 | public struct JWTVerifier {
    |               `- note: consider making struct 'JWTVerifier' conform to the 'Sendable' protocol
 46 |     let verifierAlgorithm: VerifierAlgorithm
 47 |
    :
149 |
150 |     /// Initialize a JWTVerifier that will always return true when verifying the JWT. This is equivelent to using the "none" alg header.
151 |     public static let none = JWTVerifier(verifierAlgorithm: NoneAlgorithm())
    |                       |- warning: static property 'none' is not concurrency-safe because non-'Sendable' type 'JWTVerifier' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'none' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
152 | }
153 |
/Users/admin/builder/spi-builder-workspace/Sources/SwiftJWT/ValidateClaimsResult.swift:28:23: warning: static property 'success' is not concurrency-safe because non-'Sendable' type 'ValidateClaimsResult' may have shared mutable state; this is an error in the Swift 6 language mode
20 | /// In case of successful validation, .success is returned, all other cases list various
21 | /// problems that may occur during claims validation and indicate that the validation failed.
22 | public struct ValidateClaimsResult: CustomStringConvertible, Equatable {
   |               `- note: consider making struct 'ValidateClaimsResult' conform to the 'Sendable' protocol
23 |
24 |     /// The human readable description of the ValidateClaimsResult
   :
26 |
27 |     /// Successful validation.
28 |     public static let success = ValidateClaimsResult(description: "Success")
   |                       |- warning: static property 'success' is not concurrency-safe because non-'Sendable' type 'ValidateClaimsResult' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: add '@MainActor' to make static property 'success' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     /// Invalid Expiration claim.
/Users/admin/builder/spi-builder-workspace/Sources/SwiftJWT/ValidateClaimsResult.swift:31:23: warning: static property 'invalidExpiration' is not concurrency-safe because non-'Sendable' type 'ValidateClaimsResult' may have shared mutable state; this is an error in the Swift 6 language mode
20 | /// In case of successful validation, .success is returned, all other cases list various
21 | /// problems that may occur during claims validation and indicate that the validation failed.
22 | public struct ValidateClaimsResult: CustomStringConvertible, Equatable {
   |               `- note: consider making struct 'ValidateClaimsResult' conform to the 'Sendable' protocol
23 |
24 |     /// The human readable description of the ValidateClaimsResult
   :
29 |
30 |     /// Invalid Expiration claim.
31 |     public static let invalidExpiration = ValidateClaimsResult(description: "Invalid Expiration claim")
   |                       |- warning: static property 'invalidExpiration' is not concurrency-safe because non-'Sendable' type 'ValidateClaimsResult' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: add '@MainActor' to make static property 'invalidExpiration' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
32 |
33 |     /// Expired token: expiration time claim is in the past.
/Users/admin/builder/spi-builder-workspace/Sources/SwiftJWT/ValidateClaimsResult.swift:34:23: warning: static property 'expired' is not concurrency-safe because non-'Sendable' type 'ValidateClaimsResult' may have shared mutable state; this is an error in the Swift 6 language mode
20 | /// In case of successful validation, .success is returned, all other cases list various
21 | /// problems that may occur during claims validation and indicate that the validation failed.
22 | public struct ValidateClaimsResult: CustomStringConvertible, Equatable {
   |               `- note: consider making struct 'ValidateClaimsResult' conform to the 'Sendable' protocol
23 |
24 |     /// The human readable description of the ValidateClaimsResult
   :
32 |
33 |     /// Expired token: expiration time claim is in the past.
34 |     public static let expired = ValidateClaimsResult(description: "Expired token")
   |                       |- warning: static property 'expired' is not concurrency-safe because non-'Sendable' type 'ValidateClaimsResult' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: add '@MainActor' to make static property 'expired' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
35 |
36 |     /// Invalid Not Before claim.
/Users/admin/builder/spi-builder-workspace/Sources/SwiftJWT/ValidateClaimsResult.swift:37:23: warning: static property 'invalidNotBefore' is not concurrency-safe because non-'Sendable' type 'ValidateClaimsResult' may have shared mutable state; this is an error in the Swift 6 language mode
20 | /// In case of successful validation, .success is returned, all other cases list various
21 | /// problems that may occur during claims validation and indicate that the validation failed.
22 | public struct ValidateClaimsResult: CustomStringConvertible, Equatable {
   |               `- note: consider making struct 'ValidateClaimsResult' conform to the 'Sendable' protocol
23 |
24 |     /// The human readable description of the ValidateClaimsResult
   :
35 |
36 |     /// Invalid Not Before claim.
37 |     public static let invalidNotBefore = ValidateClaimsResult(description: "Invalid Not Before claim")
   |                       |- warning: static property 'invalidNotBefore' is not concurrency-safe because non-'Sendable' type 'ValidateClaimsResult' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: add '@MainActor' to make static property 'invalidNotBefore' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
38 |
39 |     /// Not Before claim is in the future.
/Users/admin/builder/spi-builder-workspace/Sources/SwiftJWT/ValidateClaimsResult.swift:40:23: warning: static property 'notBefore' is not concurrency-safe because non-'Sendable' type 'ValidateClaimsResult' may have shared mutable state; this is an error in the Swift 6 language mode
20 | /// In case of successful validation, .success is returned, all other cases list various
21 | /// problems that may occur during claims validation and indicate that the validation failed.
22 | public struct ValidateClaimsResult: CustomStringConvertible, Equatable {
   |               `- note: consider making struct 'ValidateClaimsResult' conform to the 'Sendable' protocol
23 |
24 |     /// The human readable description of the ValidateClaimsResult
   :
38 |
39 |     /// Not Before claim is in the future.
40 |     public static let notBefore = ValidateClaimsResult(description: "Token is not valid yet, Not Before claim is greater than the current time")
   |                       |- warning: static property 'notBefore' is not concurrency-safe because non-'Sendable' type 'ValidateClaimsResult' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: add '@MainActor' to make static property 'notBefore' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
41 |
42 |     /// Invalid Issued At claim.
/Users/admin/builder/spi-builder-workspace/Sources/SwiftJWT/ValidateClaimsResult.swift:43:23: warning: static property 'invalidIssuedAt' is not concurrency-safe because non-'Sendable' type 'ValidateClaimsResult' may have shared mutable state; this is an error in the Swift 6 language mode
20 | /// In case of successful validation, .success is returned, all other cases list various
21 | /// problems that may occur during claims validation and indicate that the validation failed.
22 | public struct ValidateClaimsResult: CustomStringConvertible, Equatable {
   |               `- note: consider making struct 'ValidateClaimsResult' conform to the 'Sendable' protocol
23 |
24 |     /// The human readable description of the ValidateClaimsResult
   :
41 |
42 |     /// Invalid Issued At claim.
43 |     public static let invalidIssuedAt = ValidateClaimsResult(description: "Invalid Issued At claim")
   |                       |- warning: static property 'invalidIssuedAt' is not concurrency-safe because non-'Sendable' type 'ValidateClaimsResult' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: add '@MainActor' to make static property 'invalidIssuedAt' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
44 |
45 |     /// Issued At claim is in the future.
/Users/admin/builder/spi-builder-workspace/Sources/SwiftJWT/ValidateClaimsResult.swift:46:23: warning: static property 'issuedAt' is not concurrency-safe because non-'Sendable' type 'ValidateClaimsResult' may have shared mutable state; this is an error in the Swift 6 language mode
20 | /// In case of successful validation, .success is returned, all other cases list various
21 | /// problems that may occur during claims validation and indicate that the validation failed.
22 | public struct ValidateClaimsResult: CustomStringConvertible, Equatable {
   |               `- note: consider making struct 'ValidateClaimsResult' conform to the 'Sendable' protocol
23 |
24 |     /// The human readable description of the ValidateClaimsResult
   :
44 |
45 |     /// Issued At claim is in the future.
46 |     public static let issuedAt = ValidateClaimsResult(description: "Issued At claim is greater than the current time")
   |                       |- warning: static property 'issuedAt' is not concurrency-safe because non-'Sendable' type 'ValidateClaimsResult' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: add '@MainActor' to make static property 'issuedAt' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
47 |
48 |     /// Check if two ValidateClaimsResults are equal. Required for the Equatable protocol
[64/79] Compiling SwiftJWT JWTError.swift
/Users/admin/builder/spi-builder-workspace/Sources/SwiftJWT/JWTSigner.swift:145:23: warning: static property 'none' is not concurrency-safe because non-'Sendable' type 'JWTSigner' may have shared mutable state; this is an error in the Swift 6 language mode
 50 |  ```
 51 |  */
 52 | public struct JWTSigner {
    |               `- note: consider making struct 'JWTSigner' conform to the 'Sendable' protocol
 53 |
 54 |     /// The name of the algorithm that will be set in the "alg" header
    :
143 |
144 |     /// Initialize a JWTSigner that will not sign the JWT. This is equivelent to using the "none" alg header.
145 |     public static let none = JWTSigner(name: "none", signerAlgorithm: NoneAlgorithm())
    |                       |- warning: static property 'none' is not concurrency-safe because non-'Sendable' type 'JWTSigner' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'none' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
146 | }
147 |
[65/79] Compiling SwiftJWT JWTSigner.swift
/Users/admin/builder/spi-builder-workspace/Sources/SwiftJWT/JWTSigner.swift:145:23: warning: static property 'none' is not concurrency-safe because non-'Sendable' type 'JWTSigner' may have shared mutable state; this is an error in the Swift 6 language mode
 50 |  ```
 51 |  */
 52 | public struct JWTSigner {
    |               `- note: consider making struct 'JWTSigner' conform to the 'Sendable' protocol
 53 |
 54 |     /// The name of the algorithm that will be set in the "alg" header
    :
143 |
144 |     /// Initialize a JWTSigner that will not sign the JWT. This is equivelent to using the "none" alg header.
145 |     public static let none = JWTSigner(name: "none", signerAlgorithm: NoneAlgorithm())
    |                       |- warning: static property 'none' is not concurrency-safe because non-'Sendable' type 'JWTSigner' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'none' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
146 | }
147 |
[66/79] Compiling SwiftJWT JWTVerifier.swift
/Users/admin/builder/spi-builder-workspace/Sources/SwiftJWT/JWTVerifier.swift:151:23: warning: static property 'none' is not concurrency-safe because non-'Sendable' type 'JWTVerifier' may have shared mutable state; this is an error in the Swift 6 language mode
 43 |  ```
 44 |  */
 45 | public struct JWTVerifier {
    |               `- note: consider making struct 'JWTVerifier' conform to the 'Sendable' protocol
 46 |     let verifierAlgorithm: VerifierAlgorithm
 47 |
    :
149 |
150 |     /// Initialize a JWTVerifier that will always return true when verifying the JWT. This is equivelent to using the "none" alg header.
151 |     public static let none = JWTVerifier(verifierAlgorithm: NoneAlgorithm())
    |                       |- warning: static property 'none' is not concurrency-safe because non-'Sendable' type 'JWTVerifier' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'none' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
152 | }
153 |
[67/79] Compiling SwiftJWT NoneAlgorithm.swift
/Users/admin/builder/spi-builder-workspace/Sources/SwiftJWT/JWTVerifier.swift:151:23: warning: static property 'none' is not concurrency-safe because non-'Sendable' type 'JWTVerifier' may have shared mutable state; this is an error in the Swift 6 language mode
 43 |  ```
 44 |  */
 45 | public struct JWTVerifier {
    |               `- note: consider making struct 'JWTVerifier' conform to the 'Sendable' protocol
 46 |     let verifierAlgorithm: VerifierAlgorithm
 47 |
    :
149 |
150 |     /// Initialize a JWTVerifier that will always return true when verifying the JWT. This is equivelent to using the "none" alg header.
151 |     public static let none = JWTVerifier(verifierAlgorithm: NoneAlgorithm())
    |                       |- warning: static property 'none' is not concurrency-safe because non-'Sendable' type 'JWTVerifier' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'none' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
152 | }
153 |
[68/79] Compiling SwiftJWT ClaimsMicroProfile.swift
[69/79] Compiling SwiftJWT ClaimsOpenID.swift
[70/79] Compiling SwiftJWT ClaimsStandardJWT.swift
[71/79] Compiling SwiftJWT Data+Base64URLEncoded.swift
[72/79] Compiling SwiftJWT BlueRSA.swift
[73/79] Compiling SwiftJWT Claims.swift
[74/79] Compiling SwiftJWT RSAKeyType.swift
[75/79] Compiling SwiftJWT SignerAlgorithm.swift
[76/79] Compiling SwiftJWT JWTDecoder.swift
[77/79] Compiling SwiftJWT JWTEncoder.swift
[78/79] Compiling SwiftJWT ValidateClaimsResult.swift
/Users/admin/builder/spi-builder-workspace/Sources/SwiftJWT/ValidateClaimsResult.swift:28:23: warning: static property 'success' is not concurrency-safe because non-'Sendable' type 'ValidateClaimsResult' may have shared mutable state; this is an error in the Swift 6 language mode
20 | /// In case of successful validation, .success is returned, all other cases list various
21 | /// problems that may occur during claims validation and indicate that the validation failed.
22 | public struct ValidateClaimsResult: CustomStringConvertible, Equatable {
   |               `- note: consider making struct 'ValidateClaimsResult' conform to the 'Sendable' protocol
23 |
24 |     /// The human readable description of the ValidateClaimsResult
   :
26 |
27 |     /// Successful validation.
28 |     public static let success = ValidateClaimsResult(description: "Success")
   |                       |- warning: static property 'success' is not concurrency-safe because non-'Sendable' type 'ValidateClaimsResult' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: add '@MainActor' to make static property 'success' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     /// Invalid Expiration claim.
/Users/admin/builder/spi-builder-workspace/Sources/SwiftJWT/ValidateClaimsResult.swift:31:23: warning: static property 'invalidExpiration' is not concurrency-safe because non-'Sendable' type 'ValidateClaimsResult' may have shared mutable state; this is an error in the Swift 6 language mode
20 | /// In case of successful validation, .success is returned, all other cases list various
21 | /// problems that may occur during claims validation and indicate that the validation failed.
22 | public struct ValidateClaimsResult: CustomStringConvertible, Equatable {
   |               `- note: consider making struct 'ValidateClaimsResult' conform to the 'Sendable' protocol
23 |
24 |     /// The human readable description of the ValidateClaimsResult
   :
29 |
30 |     /// Invalid Expiration claim.
31 |     public static let invalidExpiration = ValidateClaimsResult(description: "Invalid Expiration claim")
   |                       |- warning: static property 'invalidExpiration' is not concurrency-safe because non-'Sendable' type 'ValidateClaimsResult' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: add '@MainActor' to make static property 'invalidExpiration' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
32 |
33 |     /// Expired token: expiration time claim is in the past.
/Users/admin/builder/spi-builder-workspace/Sources/SwiftJWT/ValidateClaimsResult.swift:34:23: warning: static property 'expired' is not concurrency-safe because non-'Sendable' type 'ValidateClaimsResult' may have shared mutable state; this is an error in the Swift 6 language mode
20 | /// In case of successful validation, .success is returned, all other cases list various
21 | /// problems that may occur during claims validation and indicate that the validation failed.
22 | public struct ValidateClaimsResult: CustomStringConvertible, Equatable {
   |               `- note: consider making struct 'ValidateClaimsResult' conform to the 'Sendable' protocol
23 |
24 |     /// The human readable description of the ValidateClaimsResult
   :
32 |
33 |     /// Expired token: expiration time claim is in the past.
34 |     public static let expired = ValidateClaimsResult(description: "Expired token")
   |                       |- warning: static property 'expired' is not concurrency-safe because non-'Sendable' type 'ValidateClaimsResult' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: add '@MainActor' to make static property 'expired' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
35 |
36 |     /// Invalid Not Before claim.
/Users/admin/builder/spi-builder-workspace/Sources/SwiftJWT/ValidateClaimsResult.swift:37:23: warning: static property 'invalidNotBefore' is not concurrency-safe because non-'Sendable' type 'ValidateClaimsResult' may have shared mutable state; this is an error in the Swift 6 language mode
20 | /// In case of successful validation, .success is returned, all other cases list various
21 | /// problems that may occur during claims validation and indicate that the validation failed.
22 | public struct ValidateClaimsResult: CustomStringConvertible, Equatable {
   |               `- note: consider making struct 'ValidateClaimsResult' conform to the 'Sendable' protocol
23 |
24 |     /// The human readable description of the ValidateClaimsResult
   :
35 |
36 |     /// Invalid Not Before claim.
37 |     public static let invalidNotBefore = ValidateClaimsResult(description: "Invalid Not Before claim")
   |                       |- warning: static property 'invalidNotBefore' is not concurrency-safe because non-'Sendable' type 'ValidateClaimsResult' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: add '@MainActor' to make static property 'invalidNotBefore' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
38 |
39 |     /// Not Before claim is in the future.
/Users/admin/builder/spi-builder-workspace/Sources/SwiftJWT/ValidateClaimsResult.swift:40:23: warning: static property 'notBefore' is not concurrency-safe because non-'Sendable' type 'ValidateClaimsResult' may have shared mutable state; this is an error in the Swift 6 language mode
20 | /// In case of successful validation, .success is returned, all other cases list various
21 | /// problems that may occur during claims validation and indicate that the validation failed.
22 | public struct ValidateClaimsResult: CustomStringConvertible, Equatable {
   |               `- note: consider making struct 'ValidateClaimsResult' conform to the 'Sendable' protocol
23 |
24 |     /// The human readable description of the ValidateClaimsResult
   :
38 |
39 |     /// Not Before claim is in the future.
40 |     public static let notBefore = ValidateClaimsResult(description: "Token is not valid yet, Not Before claim is greater than the current time")
   |                       |- warning: static property 'notBefore' is not concurrency-safe because non-'Sendable' type 'ValidateClaimsResult' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: add '@MainActor' to make static property 'notBefore' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
41 |
42 |     /// Invalid Issued At claim.
/Users/admin/builder/spi-builder-workspace/Sources/SwiftJWT/ValidateClaimsResult.swift:43:23: warning: static property 'invalidIssuedAt' is not concurrency-safe because non-'Sendable' type 'ValidateClaimsResult' may have shared mutable state; this is an error in the Swift 6 language mode
20 | /// In case of successful validation, .success is returned, all other cases list various
21 | /// problems that may occur during claims validation and indicate that the validation failed.
22 | public struct ValidateClaimsResult: CustomStringConvertible, Equatable {
   |               `- note: consider making struct 'ValidateClaimsResult' conform to the 'Sendable' protocol
23 |
24 |     /// The human readable description of the ValidateClaimsResult
   :
41 |
42 |     /// Invalid Issued At claim.
43 |     public static let invalidIssuedAt = ValidateClaimsResult(description: "Invalid Issued At claim")
   |                       |- warning: static property 'invalidIssuedAt' is not concurrency-safe because non-'Sendable' type 'ValidateClaimsResult' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: add '@MainActor' to make static property 'invalidIssuedAt' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
44 |
45 |     /// Issued At claim is in the future.
/Users/admin/builder/spi-builder-workspace/Sources/SwiftJWT/ValidateClaimsResult.swift:46:23: warning: static property 'issuedAt' is not concurrency-safe because non-'Sendable' type 'ValidateClaimsResult' may have shared mutable state; this is an error in the Swift 6 language mode
20 | /// In case of successful validation, .success is returned, all other cases list various
21 | /// problems that may occur during claims validation and indicate that the validation failed.
22 | public struct ValidateClaimsResult: CustomStringConvertible, Equatable {
   |               `- note: consider making struct 'ValidateClaimsResult' conform to the 'Sendable' protocol
23 |
24 |     /// The human readable description of the ValidateClaimsResult
   :
44 |
45 |     /// Issued At claim is in the future.
46 |     public static let issuedAt = ValidateClaimsResult(description: "Issued At claim is greater than the current time")
   |                       |- warning: static property 'issuedAt' is not concurrency-safe because non-'Sendable' type 'ValidateClaimsResult' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: add '@MainActor' to make static property 'issuedAt' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
47 |
48 |     /// Check if two ValidateClaimsResults are equal. Required for the Equatable protocol
[79/79] Compiling SwiftJWT VerifierAlgorithm.swift
/Users/admin/builder/spi-builder-workspace/Sources/SwiftJWT/ValidateClaimsResult.swift:28:23: warning: static property 'success' is not concurrency-safe because non-'Sendable' type 'ValidateClaimsResult' may have shared mutable state; this is an error in the Swift 6 language mode
20 | /// In case of successful validation, .success is returned, all other cases list various
21 | /// problems that may occur during claims validation and indicate that the validation failed.
22 | public struct ValidateClaimsResult: CustomStringConvertible, Equatable {
   |               `- note: consider making struct 'ValidateClaimsResult' conform to the 'Sendable' protocol
23 |
24 |     /// The human readable description of the ValidateClaimsResult
   :
26 |
27 |     /// Successful validation.
28 |     public static let success = ValidateClaimsResult(description: "Success")
   |                       |- warning: static property 'success' is not concurrency-safe because non-'Sendable' type 'ValidateClaimsResult' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: add '@MainActor' to make static property 'success' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     /// Invalid Expiration claim.
/Users/admin/builder/spi-builder-workspace/Sources/SwiftJWT/ValidateClaimsResult.swift:31:23: warning: static property 'invalidExpiration' is not concurrency-safe because non-'Sendable' type 'ValidateClaimsResult' may have shared mutable state; this is an error in the Swift 6 language mode
20 | /// In case of successful validation, .success is returned, all other cases list various
21 | /// problems that may occur during claims validation and indicate that the validation failed.
22 | public struct ValidateClaimsResult: CustomStringConvertible, Equatable {
   |               `- note: consider making struct 'ValidateClaimsResult' conform to the 'Sendable' protocol
23 |
24 |     /// The human readable description of the ValidateClaimsResult
   :
29 |
30 |     /// Invalid Expiration claim.
31 |     public static let invalidExpiration = ValidateClaimsResult(description: "Invalid Expiration claim")
   |                       |- warning: static property 'invalidExpiration' is not concurrency-safe because non-'Sendable' type 'ValidateClaimsResult' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: add '@MainActor' to make static property 'invalidExpiration' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
32 |
33 |     /// Expired token: expiration time claim is in the past.
/Users/admin/builder/spi-builder-workspace/Sources/SwiftJWT/ValidateClaimsResult.swift:34:23: warning: static property 'expired' is not concurrency-safe because non-'Sendable' type 'ValidateClaimsResult' may have shared mutable state; this is an error in the Swift 6 language mode
20 | /// In case of successful validation, .success is returned, all other cases list various
21 | /// problems that may occur during claims validation and indicate that the validation failed.
22 | public struct ValidateClaimsResult: CustomStringConvertible, Equatable {
   |               `- note: consider making struct 'ValidateClaimsResult' conform to the 'Sendable' protocol
23 |
24 |     /// The human readable description of the ValidateClaimsResult
   :
32 |
33 |     /// Expired token: expiration time claim is in the past.
34 |     public static let expired = ValidateClaimsResult(description: "Expired token")
   |                       |- warning: static property 'expired' is not concurrency-safe because non-'Sendable' type 'ValidateClaimsResult' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: add '@MainActor' to make static property 'expired' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
35 |
36 |     /// Invalid Not Before claim.
/Users/admin/builder/spi-builder-workspace/Sources/SwiftJWT/ValidateClaimsResult.swift:37:23: warning: static property 'invalidNotBefore' is not concurrency-safe because non-'Sendable' type 'ValidateClaimsResult' may have shared mutable state; this is an error in the Swift 6 language mode
20 | /// In case of successful validation, .success is returned, all other cases list various
21 | /// problems that may occur during claims validation and indicate that the validation failed.
22 | public struct ValidateClaimsResult: CustomStringConvertible, Equatable {
   |               `- note: consider making struct 'ValidateClaimsResult' conform to the 'Sendable' protocol
23 |
24 |     /// The human readable description of the ValidateClaimsResult
   :
35 |
36 |     /// Invalid Not Before claim.
37 |     public static let invalidNotBefore = ValidateClaimsResult(description: "Invalid Not Before claim")
   |                       |- warning: static property 'invalidNotBefore' is not concurrency-safe because non-'Sendable' type 'ValidateClaimsResult' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: add '@MainActor' to make static property 'invalidNotBefore' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
38 |
39 |     /// Not Before claim is in the future.
/Users/admin/builder/spi-builder-workspace/Sources/SwiftJWT/ValidateClaimsResult.swift:40:23: warning: static property 'notBefore' is not concurrency-safe because non-'Sendable' type 'ValidateClaimsResult' may have shared mutable state; this is an error in the Swift 6 language mode
20 | /// In case of successful validation, .success is returned, all other cases list various
21 | /// problems that may occur during claims validation and indicate that the validation failed.
22 | public struct ValidateClaimsResult: CustomStringConvertible, Equatable {
   |               `- note: consider making struct 'ValidateClaimsResult' conform to the 'Sendable' protocol
23 |
24 |     /// The human readable description of the ValidateClaimsResult
   :
38 |
39 |     /// Not Before claim is in the future.
40 |     public static let notBefore = ValidateClaimsResult(description: "Token is not valid yet, Not Before claim is greater than the current time")
   |                       |- warning: static property 'notBefore' is not concurrency-safe because non-'Sendable' type 'ValidateClaimsResult' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: add '@MainActor' to make static property 'notBefore' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
41 |
42 |     /// Invalid Issued At claim.
/Users/admin/builder/spi-builder-workspace/Sources/SwiftJWT/ValidateClaimsResult.swift:43:23: warning: static property 'invalidIssuedAt' is not concurrency-safe because non-'Sendable' type 'ValidateClaimsResult' may have shared mutable state; this is an error in the Swift 6 language mode
20 | /// In case of successful validation, .success is returned, all other cases list various
21 | /// problems that may occur during claims validation and indicate that the validation failed.
22 | public struct ValidateClaimsResult: CustomStringConvertible, Equatable {
   |               `- note: consider making struct 'ValidateClaimsResult' conform to the 'Sendable' protocol
23 |
24 |     /// The human readable description of the ValidateClaimsResult
   :
41 |
42 |     /// Invalid Issued At claim.
43 |     public static let invalidIssuedAt = ValidateClaimsResult(description: "Invalid Issued At claim")
   |                       |- warning: static property 'invalidIssuedAt' is not concurrency-safe because non-'Sendable' type 'ValidateClaimsResult' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: add '@MainActor' to make static property 'invalidIssuedAt' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
44 |
45 |     /// Issued At claim is in the future.
/Users/admin/builder/spi-builder-workspace/Sources/SwiftJWT/ValidateClaimsResult.swift:46:23: warning: static property 'issuedAt' is not concurrency-safe because non-'Sendable' type 'ValidateClaimsResult' may have shared mutable state; this is an error in the Swift 6 language mode
20 | /// In case of successful validation, .success is returned, all other cases list various
21 | /// problems that may occur during claims validation and indicate that the validation failed.
22 | public struct ValidateClaimsResult: CustomStringConvertible, Equatable {
   |               `- note: consider making struct 'ValidateClaimsResult' conform to the 'Sendable' protocol
23 |
24 |     /// The human readable description of the ValidateClaimsResult
   :
44 |
45 |     /// Issued At claim is in the future.
46 |     public static let issuedAt = ValidateClaimsResult(description: "Issued At claim is greater than the current time")
   |                       |- warning: static property 'issuedAt' is not concurrency-safe because non-'Sendable' type 'ValidateClaimsResult' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: add '@MainActor' to make static property 'issuedAt' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
47 |
48 |     /// Check if two ValidateClaimsResults are equal. Required for the Equatable protocol
Build complete! (21.52s)
Fetching https://github.com/Kitura/BlueRSA.git
Fetching https://github.com/Kitura/LoggerAPI.git
Fetching https://github.com/Kitura/BlueECC.git
Fetching https://github.com/Kitura/BlueCryptor.git
Fetching https://github.com/Kitura/KituraContracts.git
[1/771] Fetching loggerapi
[148/1792] Fetching loggerapi, blueecc
[220/4338] Fetching loggerapi, blueecc, kituracontracts
[363/5992] Fetching loggerapi, blueecc, kituracontracts, bluecryptor
[5993/8010] Fetching loggerapi, blueecc, kituracontracts, bluecryptor, bluersa
Fetched https://github.com/Kitura/KituraContracts.git from cache (5.30s)
Fetched https://github.com/Kitura/BlueECC.git from cache (5.30s)
Fetched https://github.com/Kitura/LoggerAPI.git from cache (5.30s)
Fetched https://github.com/Kitura/BlueRSA.git from cache (5.30s)
Fetched https://github.com/Kitura/BlueCryptor.git from cache (5.31s)
Computing version for https://github.com/Kitura/KituraContracts.git
Computed https://github.com/Kitura/KituraContracts.git at 2.0.1 (5.92s)
Computing version for https://github.com/Kitura/LoggerAPI.git
Computed https://github.com/Kitura/LoggerAPI.git at 2.0.0 (0.58s)
Fetching https://github.com/apple/swift-log.git from cache
Fetched https://github.com/apple/swift-log.git from cache (0.58s)
Computing version for https://github.com/Kitura/BlueECC.git
Computed https://github.com/Kitura/BlueECC.git at 1.2.201 (1.23s)
Computing version for https://github.com/Kitura/BlueCryptor.git
Computed https://github.com/Kitura/BlueCryptor.git at 2.0.2 (0.60s)
Computing version for https://github.com/Kitura/BlueRSA.git
Computed https://github.com/Kitura/BlueRSA.git at 1.0.203 (0.60s)
Computing version for https://github.com/apple/swift-log.git
Computed https://github.com/apple/swift-log.git at 1.6.3 (0.46s)
Creating working copy for https://github.com/Kitura/KituraContracts.git
Working copy of https://github.com/Kitura/KituraContracts.git resolved at 2.0.1
Creating working copy for https://github.com/apple/swift-log.git
Working copy of https://github.com/apple/swift-log.git resolved at 1.6.3
Creating working copy for https://github.com/Kitura/BlueRSA.git
Working copy of https://github.com/Kitura/BlueRSA.git resolved at 1.0.203
Creating working copy for https://github.com/Kitura/BlueECC.git
Working copy of https://github.com/Kitura/BlueECC.git resolved at 1.2.201
Creating working copy for https://github.com/Kitura/LoggerAPI.git
Working copy of https://github.com/Kitura/LoggerAPI.git resolved at 2.0.0
Creating working copy for https://github.com/Kitura/BlueCryptor.git
Working copy of https://github.com/Kitura/BlueCryptor.git resolved at 2.0.2
Build complete.
{
  "dependencies" : [
    {
      "identity" : "bluersa",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.0.202",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Kitura/BlueRSA.git"
    },
    {
      "identity" : "bluecryptor",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "2.0.1",
            "upper_bound" : "3.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Kitura/BlueCryptor.git"
    },
    {
      "identity" : "blueecc",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.2.200",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Kitura/BlueECC.git"
    },
    {
      "identity" : "loggerapi",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "2.0.0",
            "upper_bound" : "3.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Kitura/LoggerAPI.git"
    },
    {
      "identity" : "kituracontracts",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "2.0.1",
            "upper_bound" : "3.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Kitura/KituraContracts.git"
    }
  ],
  "manifest_display_name" : "SwiftJWT",
  "name" : "SwiftJWT",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "SwiftJWT",
      "targets" : [
        "SwiftJWT"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "SwiftJWTTests",
      "module_type" : "SwiftTarget",
      "name" : "SwiftJWTTests",
      "path" : "Tests/SwiftJWTTests",
      "sources" : [
        "TestJWT.swift"
      ],
      "target_dependencies" : [
        "SwiftJWT"
      ],
      "type" : "test"
    },
    {
      "c99name" : "SwiftJWT",
      "module_type" : "SwiftTarget",
      "name" : "SwiftJWT",
      "path" : "Sources/SwiftJWT",
      "product_dependencies" : [
        "LoggerAPI",
        "KituraContracts",
        "CryptorRSA",
        "Cryptor",
        "CryptorECC"
      ],
      "product_memberships" : [
        "SwiftJWT"
      ],
      "sources" : [
        "BlueECDSA.swift",
        "BlueHMAC.swift",
        "BlueRSA.swift",
        "Claims.swift",
        "ClaimsExamples/ClaimsMicroProfile.swift",
        "ClaimsExamples/ClaimsOpenID.swift",
        "ClaimsExamples/ClaimsStandardJWT.swift",
        "Data+Base64URLEncoded.swift",
        "Header.swift",
        "JWT.swift",
        "JWTDecoder.swift",
        "JWTEncoder.swift",
        "JWTError.swift",
        "JWTSigner.swift",
        "JWTVerifier.swift",
        "NoneAlgorithm.swift",
        "RSAKeyType.swift",
        "SignerAlgorithm.swift",
        "ValidateClaimsResult.swift",
        "VerifierAlgorithm.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.2"
}
Done.