The Swift Package Index logo.Swift Package Index

Build Information

Successful build of GameCenterManager, reference 2.1.0 (2545e8), with Swift 6.4 for macOS (SPM) on 27 Sep 2026 16:41:13 UTC.

Swift 6 data race errors: 0

Build Command

env DEVELOPER_DIR=/Applications/Xcode-27.0.0-Release.Candidate.app xcrun swift build --arch arm64

Build Log

========================================
RunAll
========================================
Builder version: 5.1.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/Appracatappra/GameCenterManager.git
Reference: 2.1.0
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/Appracatappra/GameCenterManager
 * tag               2.1.0      -> FETCH_HEAD
HEAD is now at 2545e88 Update to OS 26
Cloned https://github.com/Appracatappra/GameCenterManager.git
Revision (git rev-parse @):
2545e887b45b89f51a6aea48f56a578347965afa
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/Appracatappra/GameCenterManager.git at 2.1.0
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.4
Building package at path:  $PWD
https://github.com/Appracatappra/GameCenterManager.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-27.0.0-Release.Candidate.app xcrun swift build --arch arm64
Building for debugging...
[Computing dependencies]
[Pre-planning 1 / 213]
[Planning deferred tasks]
[61 / 95] SwiftletUtilities_SwiftletUtilities
[70 / 95]
[71 / 96] LogManager
[81 / 137]
[86 / 137]
[90 / 137]
[91 / 137]
[95 / 137]
[98 / 137]
[101 / 137]
[104 / 137]
[106 / 137]
[107 / 137]
[112 / 137] LogManager
[119 / 138] SwiftletUtilities
[129 / 181]
[137 / 181]
[141 / 181]
[143 / 181]
[147 / 181]
[149 / 181]
[150 / 181] LogManager
[152 / 181]
[164 / 181] SwiftletUtilities
[171 / 182] GameCenterManager
[174 / 196]
[177 / 196]
[179 / 196]
[179 / 196] SwiftletUtilities
[180 / 196] SwiftletUtilities
[183 / 196]
[187 / 196] GameCenterManager
[193 / 196] GameCenterManager
Build complete! (11.19 sec)
Fetching https://github.com/Appracatappra/LogManager
Fetching https://github.com/Appracatappra/SwiftletUtilities
[1/93] Fetching logmanager
[61/646] Fetching logmanager, swiftletutilities
Fetched https://github.com/Appracatappra/LogManager (1.27s)
Fetched https://github.com/Appracatappra/SwiftletUtilities (1.27s)
Computing version for https://github.com/Appracatappra/LogManager
Computed https://github.com/Appracatappra/LogManager at 2.1.0 (1.88s)
Computing version for https://github.com/Appracatappra/SwiftletUtilities
Computed https://github.com/Appracatappra/SwiftletUtilities at 2.1.4 (0.56s)
Creating working copy for https://github.com/Appracatappra/LogManager
Working copy of https://github.com/Appracatappra/LogManager resolved at 2.1.0
Creating working copy for https://github.com/Appracatappra/SwiftletUtilities
Working copy of https://github.com/Appracatappra/SwiftletUtilities resolved at 2.1.4
/Users/admin/builder/spi-builder-workspace/Sources/GameCenterManager/GameCenterManager.swift:20:50: warning: 'GKChallenge' was deprecated in macOS 26.0 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
 18 |     public typealias TurnEvent = (GKLocalPlayer, [GKTurnBasedParticipant]) -> Void
 19 |     public typealias MatchInviteEvent = (GKPlayer, GKInvite) -> Void
 20 |     public typealias ChallengeEvent = (GKPlayer, GKChallenge) -> Void
    |                                                  `- warning: 'GKChallenge' was deprecated in macOS 26.0 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
 21 |     public typealias ChallengeFinishedEvent = (GKPlayer, GKChallenge, GKPlayer) -> Void
 22 |     public typealias ExchangeEvent = (GKPlayer, GKTurnBasedExchange, GKTurnBasedMatch) -> Void
/Users/admin/builder/spi-builder-workspace/Sources/GameCenterManager/GameCenterManager.swift:21:58: warning: 'GKChallenge' was deprecated in macOS 26.0 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
 19 |     public typealias MatchInviteEvent = (GKPlayer, GKInvite) -> Void
 20 |     public typealias ChallengeEvent = (GKPlayer, GKChallenge) -> Void
 21 |     public typealias ChallengeFinishedEvent = (GKPlayer, GKChallenge, GKPlayer) -> Void
    |                                                          `- warning: 'GKChallenge' was deprecated in macOS 26.0 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
 22 |     public typealias ExchangeEvent = (GKPlayer, GKTurnBasedExchange, GKTurnBasedMatch) -> Void
 23 |     public typealias ExchangeRepliesEvent = (GKPlayer, [GKTurnBasedExchangeReply], GKTurnBasedExchange, GKTurnBasedMatch) -> Void
/Users/admin/builder/spi-builder-workspace/Sources/GameCenterManager/MultiplayerGameManager.swift:604:66: warning: 'GKChallenge' was deprecated in macOS 26.0 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
602 |     ///   - player: The player receiving the challenge.
603 |     ///   - challenge: The challenge received.
604 |     public func player(_ player: GKPlayer, didReceive challenge: GKChallenge) {
    |                                                                  `- warning: 'GKChallenge' was deprecated in macOS 26.0 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
605 |         Debug.info(subsystem: "Game Center", category: "MultiplayerGameManager", "Player received challenge.")
606 |         if let event = GameCenterManager.shared.playerReceivedChallenge {
/Users/admin/builder/spi-builder-workspace/Sources/GameCenterManager/MultiplayerGameManager.swift:615:67: warning: 'GKChallenge' was deprecated in macOS 26.0 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
613 |     ///   - player: The player being requested to play.
614 |     ///   - challenge: The play request challenge.
615 |     public func player(_ player: GKPlayer, wantsToPlay challenge: GKChallenge) {
    |                                                                   `- warning: 'GKChallenge' was deprecated in macOS 26.0 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
616 |         Debug.info(subsystem: "Game Center", category: "MultiplayerGameManager", "Player wants to play.")
617 |         if let event = GameCenterManager.shared.playerWantsToPlayChallenge {
/Users/admin/builder/spi-builder-workspace/Sources/GameCenterManager/MultiplayerGameManager.swift:715:67: warning: 'GKChallenge' was deprecated in macOS 26.0 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
713 |     ///   - challenge: The challenge.
714 |     ///   - friendPlayer: The firend who issued the challenge.
715 |     public func player(_ player: GKPlayer, didComplete challenge: GKChallenge, issuedByFriend friendPlayer: GKPlayer) {
    |                                                                   `- warning: 'GKChallenge' was deprecated in macOS 26.0 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
716 |         Debug.info(subsystem: "Game Center", category: "MultiplayerGameManager", "Player did complete challenge.")
717 |         if let event = GameCenterManager.shared.playerChallengeCompleted {
/Users/admin/builder/spi-builder-workspace/Sources/GameCenterManager/MultiplayerGameManager.swift:727:83: warning: 'GKChallenge' was deprecated in macOS 26.0 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
725 |     ///   - challenge: The issued challenge.
726 |     ///   - friendPlayer: The friend who issued the challenge.
727 |     public func player(_ player: GKPlayer, issuedChallengeWasCompleted challenge: GKChallenge, byFriend friendPlayer: GKPlayer) {
    |                                                                                   `- warning: 'GKChallenge' was deprecated in macOS 26.0 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
728 |         Debug.info(subsystem: "Game Center", category: "MultiplayerGameManager", "Player issued challenge was completed.")
729 |         if let event = GameCenterManager.shared.playerIssuedChallengeCompleted {
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
/Users/admin/builder/spi-builder-workspace/Sources/GameCenterManager/MultiplayerGameManager.swift:604:66: warning: 'GKChallenge' was deprecated in macOS 26.0 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
602 |     ///   - player: The player receiving the challenge.
603 |     ///   - challenge: The challenge received.
604 |     public func player(_ player: GKPlayer, didReceive challenge: GKChallenge) {
    |                                                                  `- warning: 'GKChallenge' was deprecated in macOS 26.0 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
605 |         Debug.info(subsystem: "Game Center", category: "MultiplayerGameManager", "Player received challenge.")
606 |         if let event = GameCenterManager.shared.playerReceivedChallenge {
/Users/admin/builder/spi-builder-workspace/Sources/GameCenterManager/MultiplayerGameManager.swift:615:67: warning: 'GKChallenge' was deprecated in macOS 26.0 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
613 |     ///   - player: The player being requested to play.
614 |     ///   - challenge: The play request challenge.
615 |     public func player(_ player: GKPlayer, wantsToPlay challenge: GKChallenge) {
    |                                                                   `- warning: 'GKChallenge' was deprecated in macOS 26.0 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
616 |         Debug.info(subsystem: "Game Center", category: "MultiplayerGameManager", "Player wants to play.")
617 |         if let event = GameCenterManager.shared.playerWantsToPlayChallenge {
/Users/admin/builder/spi-builder-workspace/Sources/GameCenterManager/MultiplayerGameManager.swift:715:67: warning: 'GKChallenge' was deprecated in macOS 26.0 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
713 |     ///   - challenge: The challenge.
714 |     ///   - friendPlayer: The firend who issued the challenge.
715 |     public func player(_ player: GKPlayer, didComplete challenge: GKChallenge, issuedByFriend friendPlayer: GKPlayer) {
    |                                                                   `- warning: 'GKChallenge' was deprecated in macOS 26.0 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
716 |         Debug.info(subsystem: "Game Center", category: "MultiplayerGameManager", "Player did complete challenge.")
717 |         if let event = GameCenterManager.shared.playerChallengeCompleted {
/Users/admin/builder/spi-builder-workspace/Sources/GameCenterManager/MultiplayerGameManager.swift:727:83: warning: 'GKChallenge' was deprecated in macOS 26.0 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
725 |     ///   - challenge: The issued challenge.
726 |     ///   - friendPlayer: The friend who issued the challenge.
727 |     public func player(_ player: GKPlayer, issuedChallengeWasCompleted challenge: GKChallenge, byFriend friendPlayer: GKPlayer) {
    |                                                                                   `- warning: 'GKChallenge' was deprecated in macOS 26.0 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
728 |         Debug.info(subsystem: "Game Center", category: "MultiplayerGameManager", "Player issued challenge was completed.")
729 |         if let event = GameCenterManager.shared.playerIssuedChallengeCompleted {
/Users/admin/builder/spi-builder-workspace/Sources/GameCenterManager/MultiplayerGameManager.swift:451:19: warning: value 'encoder' was defined but never used; consider replacing with boolean test [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/no-usage\NoUsage]8;;\]
449 |
450 |         // Ensure an encoder was attached.
451 |         guard let encoder = GameCenterManager.shared.gameStateEncoder else {
    |                   `- warning: value 'encoder' was defined but never used; consider replacing with boolean test [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/no-usage\NoUsage]8;;\]
452 |             return
453 |         }
/Users/admin/builder/spi-builder-workspace/Sources/GameCenterManager/MultiplayerGameManager.swift:522:40: warning: capture of 'completed' with non-Sendable type 'MultiplayerGameManager.LoadGameDataCompletionHandler?' (aka 'Optional<(Bool) -> ()>') in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
520 |                 if let error = error {
521 |                     Log.error(subsystem: "Game Center", category: "startNewGame", "Saving match data error: \(error)")
522 |                     if let completed = completed {
    |                                        |- warning: capture of 'completed' with non-Sendable type 'MultiplayerGameManager.LoadGameDataCompletionHandler?' (aka 'Optional<(Bool) -> ()>') in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
    |                                        `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
523 |                         completed(false)
524 |                     }
/Users/admin/builder/spi-builder-workspace/Sources/GameCenterManager/MultiplayerGameManager.swift:559:36: warning: capture of 'completed' with non-Sendable type 'MultiplayerGameManager.LoadGameDataCompletionHandler?' (aka 'Optional<(Bool) -> ()>') in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
557 |             if let error = error {
558 |                 Log.error(subsystem: "Game Center", category: "loadMatch", "Loading match data error: \(error)")
559 |                 if let completed = completed {
    |                                    |- warning: capture of 'completed' with non-Sendable type 'MultiplayerGameManager.LoadGameDataCompletionHandler?' (aka 'Optional<(Bool) -> ()>') in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
    |                                    `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
560 |                     completed(false)
561 |                 }
/Users/admin/builder/spi-builder-workspace/Sources/GameCenterManager/MultiplayerGameManager.swift:566:20: warning: capture of 'decoder' with non-Sendable type 'GameCenterManager.GameStateDecoder' (aka '(Data) -> Bool') in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
564 |
565 |             if let data {
566 |                 if decoder(data) {
    |                    |- warning: capture of 'decoder' with non-Sendable type 'GameCenterManager.GameStateDecoder' (aka '(Data) -> Bool') in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
    |                    `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
567 |                     if let completed = completed {
568 |                         completed(true)
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
[#NoUsage]: <https://docs.swift.org/compiler/documentation/diagnostics/no-usage>
[#SendableClosureCaptures]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures>
/Users/admin/builder/spi-builder-workspace/Sources/GameCenterManager/GameCenterManager.swift:20:50: warning: 'GKChallenge' was deprecated in macOS 26.0 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
 18 |     public typealias TurnEvent = (GKLocalPlayer, [GKTurnBasedParticipant]) -> Void
 19 |     public typealias MatchInviteEvent = (GKPlayer, GKInvite) -> Void
 20 |     public typealias ChallengeEvent = (GKPlayer, GKChallenge) -> Void
    |                                                  `- warning: 'GKChallenge' was deprecated in macOS 26.0 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
 21 |     public typealias ChallengeFinishedEvent = (GKPlayer, GKChallenge, GKPlayer) -> Void
 22 |     public typealias ExchangeEvent = (GKPlayer, GKTurnBasedExchange, GKTurnBasedMatch) -> Void
/Users/admin/builder/spi-builder-workspace/Sources/GameCenterManager/GameCenterManager.swift:21:58: warning: 'GKChallenge' was deprecated in macOS 26.0 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
 19 |     public typealias MatchInviteEvent = (GKPlayer, GKInvite) -> Void
 20 |     public typealias ChallengeEvent = (GKPlayer, GKChallenge) -> Void
 21 |     public typealias ChallengeFinishedEvent = (GKPlayer, GKChallenge, GKPlayer) -> Void
    |                                                          `- warning: 'GKChallenge' was deprecated in macOS 26.0 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
 22 |     public typealias ExchangeEvent = (GKPlayer, GKTurnBasedExchange, GKTurnBasedMatch) -> Void
 23 |     public typealias ExchangeRepliesEvent = (GKPlayer, [GKTurnBasedExchangeReply], GKTurnBasedExchange, GKTurnBasedMatch) -> Void
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
Build complete.
{
  "dependencies" : [
    {
      "identity" : "logmanager",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "2.1.0",
            "upper_bound" : "3.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Appracatappra/LogManager"
    },
    {
      "identity" : "swiftletutilities",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "2.1.0",
            "upper_bound" : "3.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Appracatappra/SwiftletUtilities"
    }
  ],
  "manifest_display_name" : "GameCenterManager",
  "name" : "GameCenterManager",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "26.0"
    },
    {
      "name" : "macos",
      "version" : "26.0"
    },
    {
      "name" : "tvos",
      "version" : "26.0"
    }
  ],
  "products" : [
    {
      "name" : "GameCenterManager",
      "targets" : [
        "GameCenterManager"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "GameCenterManagerTests",
      "module_type" : "SwiftTarget",
      "name" : "GameCenterManagerTests",
      "path" : "Tests/GameCenterManagerTests",
      "sources" : [
        "GameCenterManagerTests.swift"
      ],
      "target_dependencies" : [
        "GameCenterManager"
      ],
      "type" : "test"
    },
    {
      "c99name" : "GameCenterManager",
      "module_type" : "SwiftTarget",
      "name" : "GameCenterManager",
      "path" : "Sources/GameCenterManager",
      "product_dependencies" : [
        "LogManager",
        "SwiftletUtilities"
      ],
      "product_memberships" : [
        "GameCenterManager"
      ],
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/GameCenterManager/Resources/PrivacyInfo.xcprivacy",
          "rule" : {
            "process" : {
            }
          }
        }
      ],
      "sources" : [
        "GameCenterManager.swift",
        "MultiplayerGameManager.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "6.4"
}
Done.