The Swift Package Index logo.Swift Package Index

Build Information

Successful build of SpotifyAPI, reference 4.0.2 (391af4), with Swift 6.4 for macOS (SPM) on 22 Sep 2026 07:16:16 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/Peter-Schorn/SpotifyAPI.git
Reference: 4.0.2
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/Peter-Schorn/SpotifyAPI
 * tag               4.0.2      -> FETCH_HEAD
HEAD is now at 391af49 Fixed a bug with the create playlist endpoint in which omitting a description causes the description of the playlist to be the string `null`. See issue #75.
Cloned https://github.com/Peter-Schorn/SpotifyAPI.git
Revision (git rev-parse @):
391af49951fa2a854f63bde1e6f6726ba2763da7
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/Peter-Schorn/SpotifyAPI.git at 4.0.2
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.4
Building package at path:  $PWD
https://github.com/Peter-Schorn/SpotifyAPI.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-27.0.0-Release.Candidate.app xcrun swift build --arch arm64
Building for debugging...
[Computing dependencies]
[Constructing description]
[Pre-planning 1 / 510]
[Planning deferred tasks]
[Starting]
[173 / 965] SpotifyAPI_SpotifyAPITestUtilities
[177 / 965]
[187 / 969] CCryptoBoringSSL
[203 / 989] CCryptoBoringSSL
[213 / 989] CCryptoBoringSSL
[220 / 989] CCryptoBoringSSL
[232 / 989] CCryptoBoringSSL
[244 / 1038]
[258 / 1038] CCryptoBoringSSL
[273 / 1073] CCryptoBoringSSL
[288 / 1089] CCryptoBoringSSL
[304 / 1089] CCryptoBoringSSL
[322 / 1089] CCryptoBoringSSL
[341 / 1089]
[353 / 1089]
[356 / 1089]
[359 / 1089] CCryptoBoringSSL
[361 / 1089] CCryptoBoringSSL
[367 / 1089]
[371 / 1089] CCryptoBoringSSL
[374 / 1089]
[388 / 1089] OpenCombine
[399 / 1089] OpenCombine
[405 / 1089]
[407 / 1089] Logging
[411 / 1089] Logging
[423 / 1090] CCryptoBoringSSL
[440 / 1090] CCryptoBoringSSL
[460 / 1090]
[467 / 1090] CCryptoBoringSSL
[481 / 1090] CCryptoBoringSSL
[501 / 1090] CCryptoBoringSSL
[510 / 1090] CCryptoBoringSSL
[528 / 1090]
[541 / 1093] Crypto
[542 / 1093] RegularExpressions
[556 / 1093] CCryptoBoringSSL
[568 / 1093] CCryptoBoringSSL
[591 / 1093] CCryptoBoringSSL
[609 / 1093] CCryptoBoringSSL
[627 / 1093] CCryptoBoringSSL
[657 / 1093] CCryptoBoringSSL
[685 / 1093] CCryptoBoringSSL
[702 / 1093] CCryptoBoringSSL
[719 / 1093] CCryptoBoringSSL
[743 / 1093] CCryptoBoringSSL
[766 / 1093] CCryptoBoringSSL
[789 / 1093] CCryptoBoringSSL
[817 / 1094] CCryptoBoringSSL
[846 / 1094] CCryptoBoringSSL
[871 / 1094] CCryptoBoringSSL
[897 / 1094] CCryptoBoringSSL
[926 / 1094] CCryptoBoringSSL
[952 / 1094] CCryptoBoringSSL
[979 / 1094] CCryptoBoringSSL
[1009 / 1094] CCryptoBoringSSL
[1031 / 1094] CCryptoBoringSSL
[1050 / 1096] RegularExpressions
[1051 / 1096] CCryptoBoringSSL
[1053 / 1096] OpenCombineDispatch
[1064 / 1109] OpenCombineFoundation
[1065 / 1109] OpenCombineDispatch
[1074 / 1109] OpenCombineFoundation
[1081 / 1110] OpenCombineFoundation
[1083 / 1110] SpotifyWebAPI
[1096 / 1151]
[1103 / 1151]
[1104 / 1151]
[1106 / 1151]
[1109 / 1151]
[1111 / 1151]
[1112 / 1151]
[1124 / 1151] SpotifyWebAPI
[1131 / 1152] SpotifyWebAPI
[1140 / 1163] SpotifyExampleContent
[1142 / 1163] SpotifyExampleContent
[1149 / 1164] SpotifyExampleContent
[1150 / 1164] SpotifyAPITestUtilities
[1154 / 1183]
[1157 / 1183]
[1158 / 1183]
[1168 / 1183] SpotifyAPITestUtilities
[1169 / 1183] SpotifyWebAPI
[1171 / 1183] SpotifyWebAPI
[1180 / 1183] SpotifyExampleContent-product
[1180 / 1183] SpotifyAPITestUtilities
Build complete! (18.82 sec)
Fetching https://github.com/OpenCombine/OpenCombine.git
Fetching https://github.com/apple/swift-docc-plugin
Fetching https://github.com/apple/swift-crypto.git
Fetching https://github.com/Peter-Schorn/RegularExpressions.git
Fetching https://github.com/apple/swift-log.git
[1/2345] Fetching swift-docc-plugin
[2/20894] Fetching swift-docc-plugin, swift-crypto
[3/29026] Fetching swift-docc-plugin, swift-crypto, swift-log
[319/37310] Fetching swift-docc-plugin, swift-crypto, swift-log, opencombine
[9855/38043] Fetching swift-docc-plugin, swift-crypto, swift-log, opencombine, regularexpressions
Fetched https://github.com/apple/swift-crypto.git (3.08s)
Fetched https://github.com/OpenCombine/OpenCombine.git (3.08s)
Fetched https://github.com/apple/swift-docc-plugin (3.08s)
Fetched https://github.com/Peter-Schorn/RegularExpressions.git (3.08s)
Fetched https://github.com/apple/swift-log.git (3.08s)
Computing version for https://github.com/Peter-Schorn/RegularExpressions.git
Computed https://github.com/Peter-Schorn/RegularExpressions.git at 2.2.0 (3.80s)
Computing version for https://github.com/OpenCombine/OpenCombine.git
Computed https://github.com/OpenCombine/OpenCombine.git at 0.14.0 (0.69s)
Computing version for https://github.com/apple/swift-crypto.git
Computed https://github.com/apple/swift-crypto.git at 1.1.7 (0.65s)
Computing version for https://github.com/apple/swift-docc-plugin
Computed https://github.com/apple/swift-docc-plugin at 1.5.0 (0.68s)
Fetching https://github.com/swiftlang/swift-docc-symbolkit
[1/3828] Fetching swift-docc-symbolkit
Fetched https://github.com/swiftlang/swift-docc-symbolkit (1.29s)
Computing version for https://github.com/swiftlang/swift-docc-symbolkit
Computed https://github.com/swiftlang/swift-docc-symbolkit at 1.0.0 (2.04s)
Computing version for https://github.com/apple/swift-log.git
Computed https://github.com/apple/swift-log.git at 1.15.1 (0.58s)
Creating working copy for https://github.com/apple/swift-docc-plugin
Working copy of https://github.com/apple/swift-docc-plugin resolved at 1.5.0
Creating working copy for https://github.com/Peter-Schorn/RegularExpressions.git
Working copy of https://github.com/Peter-Schorn/RegularExpressions.git resolved at 2.2.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/OpenCombine/OpenCombine.git
Working copy of https://github.com/OpenCombine/OpenCombine.git resolved at 0.14.0
Creating working copy for https://github.com/apple/swift-crypto.git
Working copy of https://github.com/apple/swift-crypto.git resolved at 1.1.7
Creating working copy for https://github.com/apple/swift-log.git
Working copy of https://github.com/apple/swift-log.git resolved at 1.15.1
/Users/admin/builder/spi-builder-workspace/Sources/SpotifyWebAPI/Other/LogHandler.swift:11:15: warning: deprecated default implementation is used to satisfy instance method 'log(event:)' required by protocol 'LogHandler': You should implement this method instead of using the default implementation [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
  9 |  [1]: https://github.com/apple/swift-log
 10 |  */
 11 | public struct SpotifyAPILogHandler: LogHandler {
    |               `- warning: deprecated default implementation is used to satisfy instance method 'log(event:)' required by protocol 'LogHandler': You should implement this method instead of using the default implementation [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
 12 |
 13 |     private static var handlerIsInitialized = false
Logging.LogHandler.log:3:15: note: 'log(event:)' declared here
1 | protocol LogHandler {
2 | @available(*, deprecated, message: "You should implement this method instead of using the default implementation")
3 |   public func log(event: Logging.LogEvent)}
  |               `- note: 'log(event:)' declared here
4 |
Logging.LogHandler.log:2:6: note: requirement 'log(event:)' declared here
1 | protocol LogHandler {
2 | func log(event: Logging.LogEvent)}
  |      `- note: requirement 'log(event:)' declared here
3 |
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
/Users/admin/builder/spi-builder-workspace/Sources/SpotifyWebAPI/Errors/SpotifyGeneralError.swift:95:10: warning: associated value 'topLevelKeyNotFound(key:dict:)' of 'Sendable'-conforming enum 'SpotifyGeneralError' contains non-Sendable type '[AnyHashable : Any]'
 93 |      or this error is thrown if the key can't be found.
 94 |      */
 95 |     case topLevelKeyNotFound(
    |          `- warning: associated value 'topLevelKeyNotFound(key:dict:)' of 'Sendable'-conforming enum 'SpotifyGeneralError' contains non-Sendable type '[AnyHashable : Any]'
 96 |         key: String, dict: [AnyHashable: Any]
 97 |     )
Swift.Dictionary:1:23: note: generic struct 'Dictionary' does not conform to the 'Sendable' protocol
1 | @frozen public struct Dictionary<Key, Value> where Key : Hashable {
  |                       `- note: generic struct 'Dictionary' does not conform to the 'Sendable' protocol
2 |     public typealias Element = (key: Key, value: Value)
3 |     @inlinable public init(_immutableCocoaDictionary: __owned AnyObject)
/Users/admin/builder/spi-builder-workspace/Sources/SpotifyWebAPI/Other/LogHandler.swift:11:15: warning: deprecated default implementation is used to satisfy instance method 'log(event:)' required by protocol 'LogHandler': You should implement this method instead of using the default implementation [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
  9 |  [1]: https://github.com/apple/swift-log
 10 |  */
 11 | public struct SpotifyAPILogHandler: LogHandler {
    |               `- warning: deprecated default implementation is used to satisfy instance method 'log(event:)' required by protocol 'LogHandler': You should implement this method instead of using the default implementation [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
 12 |
 13 |     private static var handlerIsInitialized = false
Logging.LogHandler.log:3:15: note: 'log(event:)' declared here
1 | protocol LogHandler {
2 | @available(*, deprecated, message: "You should implement this method instead of using the default implementation")
3 |   public func log(event: Logging.LogEvent)}
  |               `- note: 'log(event:)' declared here
4 |
Logging.LogHandler.log:2:6: note: requirement 'log(event:)' declared here
1 | protocol LogHandler {
2 | func log(event: Logging.LogEvent)}
  |      `- note: requirement 'log(event:)' declared here
3 |
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
/Users/admin/builder/spi-builder-workspace/Sources/SpotifyWebAPI/Errors/SpotifyGeneralError.swift:95:10: warning: associated value 'topLevelKeyNotFound(key:dict:)' of 'Sendable'-conforming enum 'SpotifyGeneralError' contains non-Sendable type '[AnyHashable : Any]'
 93 |      or this error is thrown if the key can't be found.
 94 |      */
 95 |     case topLevelKeyNotFound(
    |          `- warning: associated value 'topLevelKeyNotFound(key:dict:)' of 'Sendable'-conforming enum 'SpotifyGeneralError' contains non-Sendable type '[AnyHashable : Any]'
 96 |         key: String, dict: [AnyHashable: Any]
 97 |     )
Swift.Dictionary:1:23: note: generic struct 'Dictionary' does not conform to the 'Sendable' protocol
1 | @frozen public struct Dictionary<Key, Value> where Key : Hashable {
  |                       `- note: generic struct 'Dictionary' does not conform to the 'Sendable' protocol
2 |     public typealias Element = (key: Key, value: Value)
3 |     @inlinable public init(_immutableCocoaDictionary: __owned AnyObject)
Build complete.
{
  "dependencies" : [
    {
      "identity" : "regularexpressions",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "2.2.0",
            "upper_bound" : "3.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Peter-Schorn/RegularExpressions.git"
    },
    {
      "identity" : "swift-log",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.4.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-log.git"
    },
    {
      "identity" : "opencombine",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "0.12.0",
            "upper_bound" : "1.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/OpenCombine/OpenCombine.git"
    },
    {
      "identity" : "swift-crypto",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.1.3",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-crypto.git"
    },
    {
      "identity" : "swift-docc-plugin",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.2.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-docc-plugin"
    }
  ],
  "manifest_display_name" : "SpotifyAPI",
  "name" : "SpotifyAPI",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "13.0"
    },
    {
      "name" : "macos",
      "version" : "10.15"
    },
    {
      "name" : "tvos",
      "version" : "13.0"
    },
    {
      "name" : "watchos",
      "version" : "6.0"
    }
  ],
  "products" : [
    {
      "name" : "SpotifyAPI",
      "targets" : [
        "SpotifyWebAPI"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "SpotifyExampleContent",
      "targets" : [
        "SpotifyExampleContent"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "_SpotifyAPITestUtilities",
      "targets" : [
        "SpotifyAPITestUtilities"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "SpotifyWebAPI",
      "module_type" : "SwiftTarget",
      "name" : "SpotifyWebAPI",
      "path" : "Sources/SpotifyWebAPI",
      "product_dependencies" : [
        "RegularExpressions",
        "Logging",
        "Crypto",
        "OpenCombine",
        "OpenCombineDispatch",
        "OpenCombineFoundation"
      ],
      "product_memberships" : [
        "SpotifyAPI",
        "SpotifyExampleContent",
        "_SpotifyAPITestUtilities"
      ],
      "sources" : [
        "API/SpotifyAPI+Albums.swift",
        "API/SpotifyAPI+Artists.swift",
        "API/SpotifyAPI+Audiobooks.swift",
        "API/SpotifyAPI+Browse.swift",
        "API/SpotifyAPI+Episodes.swift",
        "API/SpotifyAPI+Follow.swift",
        "API/SpotifyAPI+Library.swift",
        "API/SpotifyAPI+Markets.swift",
        "API/SpotifyAPI+Personalization.swift",
        "API/SpotifyAPI+Player.swift",
        "API/SpotifyAPI+Playlists.swift",
        "API/SpotifyAPI+Search.swift",
        "API/SpotifyAPI+Shows.swift",
        "API/SpotifyAPI+Tracks.swift",
        "API/SpotifyAPI+UserProfile.swift",
        "API/SpotifyAPI+Utilities.swift",
        "API/SpotifyAPI+Wrappers.swift",
        "API/SpotifyAPI.swift",
        "Authorization/AuthorizationCodeFlowManager.swift",
        "Authorization/AuthorizationCodeFlowManagerBase.swift",
        "Authorization/AuthorizationCodeFlowPKCEManager.swift",
        "Authorization/AuthorizationScopes.swift",
        "Authorization/Backends/AuthorizationBackends.swift",
        "Authorization/Backends/AuthorizationCodeFlowClientBackend.swift",
        "Authorization/Backends/AuthorizationCodeFlowPKCEClientBackend.swift",
        "Authorization/Backends/AuthorizationCodeFlowPKCEProxyBackend.swift",
        "Authorization/Backends/AuthorizationCodeFlowProxyBackend.swift",
        "Authorization/Backends/ClientCredentialsFlowClientBackend.swift",
        "Authorization/Backends/ClientCredentialsFlowProxyBackend.swift",
        "Authorization/ClientCredentialsFlowManager.swift",
        "Authorization/SpotifyAuthorizationManager.swift",
        "Authorization/SpotifyScopeAuthorizationManager.swift",
        "Errors/RateLimitedError.swift",
        "Errors/SpotifyAuthenticationError.swift",
        "Errors/SpotifyAuthorizationError.swift",
        "Errors/SpotifyDecodingError.swift",
        "Errors/SpotifyError.swift",
        "Errors/SpotifyGeneralError.swift",
        "Errors/SpotifyPlayerError.swift",
        "Object Model/Audio Analysis Objects/AudioAnalysis.swift",
        "Object Model/Audio Analysis Objects/AudioFeatures.swift",
        "Object Model/Audio Analysis Objects/Section.swift",
        "Object Model/Audio Analysis Objects/Segment.swift",
        "Object Model/Audio Analysis Objects/SpotifyTimeInterval.swift",
        "Object Model/Audiobook Objects/Audiobook.swift",
        "Object Model/Audiobook Objects/AudiobookAuthor.swift",
        "Object Model/Audiobook Objects/AudiobookChapter.swift",
        "Object Model/Authorization Objects/AuthInfo.swift",
        "Object Model/Authorization Objects/ClientCredentialsTokensRequest.swift",
        "Object Model/Authorization Objects/PKCERefreshTokensRequest.swift",
        "Object Model/Authorization Objects/PKCETokensRequest.swift",
        "Object Model/Authorization Objects/ProxyPKCERefreshTokensRequest.swift",
        "Object Model/Authorization Objects/ProxyPKCETokensRequest.swift",
        "Object Model/Authorization Objects/ProxyTokensRequest.swift",
        "Object Model/Authorization Objects/RefreshTokensRequest.swift",
        "Object Model/Authorization Objects/TokensRequest.swift",
        "Object Model/Browse Objects/RecommendationSeed.swift",
        "Object Model/Browse Objects/RecommendationsResponse.swift",
        "Object Model/Music Objects/Album.swift",
        "Object Model/Music Objects/Artist.swift",
        "Object Model/Music Objects/Track.swift",
        "Object Model/Other Spotify Objects/AlbumType.swift",
        "Object Model/Other Spotify Objects/Copyright.swift",
        "Object Model/Other Spotify Objects/CursorPagingObject.swift",
        "Object Model/Other Spotify Objects/FeaturedPlaylists.swift",
        "Object Model/Other Spotify Objects/Followers.swift",
        "Object Model/Other Spotify Objects/NewAlbumReleases.swift",
        "Object Model/Other Spotify Objects/PagingObject.swift",
        "Object Model/Other Spotify Objects/SavedItem.swift",
        "Object Model/Other Spotify Objects/SearchResult.swift",
        "Object Model/Other Spotify Objects/SpotifyCategory.swift",
        "Object Model/Other Spotify Objects/SpotifyCursor.swift",
        "Object Model/Other Spotify Objects/SpotifyImage.swift",
        "Object Model/Other Spotify Objects/SpotifyUser.swift",
        "Object Model/Other Spotify Objects/TrackLink.swift",
        "Object Model/Player Objects/CurrentlyPlayingContext.swift",
        "Object Model/Player Objects/Device.swift",
        "Object Model/Player Objects/DeviceType.swift",
        "Object Model/Player Objects/PlayHistory.swift",
        "Object Model/Player Objects/PlaybackActions.swift",
        "Object Model/Player Objects/RepeatMode.swift",
        "Object Model/Player Objects/ResumePoint.swift",
        "Object Model/Player Objects/SpotifyContext.swift",
        "Object Model/Player Objects/SpotifyQueue.swift",
        "Object Model/Playlist Objects/Playlist.swift",
        "Object Model/Playlist Objects/PlaylistItem.swift",
        "Object Model/Playlist Objects/PlaylistItemContainer.swift",
        "Object Model/Playlist Objects/PlaylistItemsReference.swift",
        "Object Model/Podcast Objects/Episode.swift",
        "Object Model/Podcast Objects/Show.swift",
        "Object Model/Post Request Objects/Other Objects/AttributeRange.swift",
        "Object Model/Post Request Objects/Other Objects/TimeRange.swift",
        "Object Model/Post Request Objects/Other Objects/TrackAttributes.swift",
        "Object Model/Post Request Objects/Player Objects/PlaybackRequest+Context.swift",
        "Object Model/Post Request Objects/Player Objects/PlaybackRequest+Offset.swift",
        "Object Model/Post Request Objects/Player Objects/PlaybackRequest.swift",
        "Object Model/Post Request Objects/Player Objects/TimeReference.swift",
        "Object Model/Post Request Objects/Player Objects/TransferPlaybackRequest.swift",
        "Object Model/Post Request Objects/Playlist Objects/PlaylistDetails.swift",
        "Object Model/Post Request Objects/Playlist Objects/ReorderPlaylistItems.swift",
        "Object Model/Post Request Objects/Playlist Objects/URIsContainer.swift",
        "Object Model/Post Request Objects/Playlist Objects/URIsDictWithInsertionIndex.swift",
        "Object Model/TypeAliases.swift",
        "Other/ApproximateEquality.swift",
        "Other/ApproximatelyEquatable.swift",
        "Other/AuthorizationManagerLoggers.swift",
        "Other/CodingExtensions.swift",
        "Other/DataExtensions.swift",
        "Other/DateExtensions.swift",
        "Other/DateFormatterExtensions.swift",
        "Other/DebugHooks.swift",
        "Other/Endpoints.swift",
        "Other/Headers.swift",
        "Other/IDCategory.swift",
        "Other/LogHandler.swift",
        "Other/MiscellaneousUtilities.swift",
        "Other/Paginated.swift",
        "Other/SpotifyIdentifier.swift",
        "Other/SpotifyURIConvertible.swift",
        "Other/StringExtensions.swift",
        "Publisher Extensions/DelayedConditionalRetryPublisher.swift",
        "Publisher Extensions/OtherPublisherExtensions.swift",
        "Publisher Extensions/SpotifyObjectDecoding.swift",
        "URLExtensions/URLComponentsExtensions.swift",
        "URLExtensions/URLExtensions.swift",
        "URLExtensions/URLQueryItemExtensions.swift",
        "URLExtensions/URLSessionWrappers.swift"
      ],
      "type" : "library"
    },
    {
      "c99name" : "SpotifyExampleContent",
      "module_type" : "SwiftTarget",
      "name" : "SpotifyExampleContent",
      "path" : "Sources/SpotifyExampleContent",
      "product_memberships" : [
        "SpotifyExampleContent",
        "_SpotifyAPITestUtilities"
      ],
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Albums/Abbey Road - Album.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Albums/Dark Side Of The Moon - Album.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Albums/In Rainbows - Album.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Albums/Jinx - Album.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Albums/Jinx - PagingObject<Track>.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Albums/Meddle - Album.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Albums/Skiptracing - Album.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Artists/Crumb - Artist.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Artists/Levitation Room - Artist.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Artists/Pink Floyd - Artist.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Artists/Radiohead - Artist.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Artists/Skinshape - Artist.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Artists/The Beatles - Artist.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Audiobooks/Enlightenment Now - Audiobook.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Audiobooks/Enlightenment Now Chapter 3 - AudiobookChapter.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Audiobooks/Free Will - Audiobook.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Audiobooks/Free Will Chapter 1 - AudiobookChapter.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Audiobooks/Harry Potter and the Sorcerer's Stone - Audiobook.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Audiobooks/Steve Jobs Chapter 1 - AudiobookChapter.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Audo Analysis/Any Colour You Like - AudioAnalysis.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Audo Analysis/Fearless - AudioFeatures.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Browse/Category Playlists - PagingObject<Playlist<PlaylistItemsReference>>.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Browse/Featured Playlists - FeaturedPlaylists.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Browse/categories - SpotifyCategory.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Episodes/Sam Harris 213 - Episode.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Episodes/Sam Harris 214 - Episode.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Episodes/Sam Harris 215 - Episode.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Episodes/Sean Carroll 111 - Episode.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Episodes/Sean Carroll 112 - Episode.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Images/Annabelle Compressed.jpeg",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Images/Annabelle Large.jpeg",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Library/Current User Saved Albums - PagingObject<SavedItem<Album>>.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Player/Current Playback - CurrentlyPlayingContext.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Player/Queue - SpotifyQueue.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Player/Recently Played - CursorPagingObject<PlayHistory>.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/PlaylistItems/#1536 - Edward Snowden - PlaylistItem.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/PlaylistItems/#1537 - Lex Fridman - PlaylistItem.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/PlaylistItems/#216 — September 3, 2020 - PlaylistItem.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/PlaylistItems/#217 — The New Religion of Anti-Racism - PlaylistItem.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/PlaylistItems/Echoes - Acoustic Version - PlaylistItem.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/PlaylistItems/Hans Zimmer & Radiohead - Ocean Bloom (full song HQ) - PlaylistItem.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/PlaylistItems/Killshot - PlaylistItem.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Playlists/Blues Classics - PagingObject<PlaylistItemContainer<Track>>.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Playlists/Crumb - Playlist<PagingObject<PlaylistItemContainer<PlaylistItem>>>.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Playlists/Local Songs - Playlist<PagingObject<PlaylistItemContainer<PlaylistItem>>>.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Playlists/Lucy in the sky with diamonds - Playlist<PlaylistItemsReference>.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Playlists/Men I Trust - Playlist<PlaylistItemsReference>.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Playlists/Modern Psychedelia - Playlist<PlaylistItemsReference>.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Playlists/Rock Classics - Playlist<PlaylistItemsReference>.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Playlists/This Is King Gizzard & The Lizard Wizard - Playlist<PlaylistItemsReference>.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Playlists/This Is MF DOOM - Playlist<PlaylistItemsReference>.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Playlists/This Is Mild High Club - Playlist<PlaylistItemsReference>.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Playlists/This Is Radiohead - Playlist<PlaylistItemsReference>.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Playlists/This Is Sonic Youth - Playlist<PlaylistItemsReference>.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Playlists/This Is Spoon - PagingObject<PlaylistItemContainer<Track>>.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Playlists/This is Jimi Hendrix - PagingObject<PlaylistItemContainer<Track>>.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Playlists/This is Mac DeMarco - PagingObject<PlaylistItemContainer<Track>>.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Playlists/This is Pink Floyd - PagingObject<PlaylistItemContainer<Track>>.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Playlists/This is Skinshape - Playlist<PlaylistItemsReference>.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Playlists/This is Stevie Ray Vaughan - PagingObject<PlaylistItemContainer<PlaylistItem>>.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Search/Search for 'Crumb' - SearchResult.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Shows/Joe Rogan - Show.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Shows/Sam Harris - Show.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Shows/Sean Carroll - Show.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Tracks/Because - Track.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Tracks/Come Together - Track.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Tracks/Faces - Track.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Tracks/Ill Wind - Track.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Tracks/Ode To Viceroy - Track.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Tracks/Reckoner - Track.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Tracks/The End - Track.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Tracks/Time - Track.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/User Profile/Current User Profile - SpotifyUser.json",
          "rule" : {
            "process" : {
            }
          }
        }
      ],
      "sources" : [
        "ExampleAlbums.swift",
        "ExampleArtists.swift",
        "ExampleAudioAnalysis.swift",
        "ExampleAudioFeatures.swift",
        "ExampleAudiobooks.swift",
        "ExampleBrowse.swift",
        "ExampleEpisodes.swift",
        "ExampleLibrary.swift",
        "ExamplePlayer.swift",
        "ExamplePlaylistItems.swift",
        "ExamplePlaylists.swift",
        "ExampleSearch.swift",
        "ExampleShows.swift",
        "ExampleTracks.swift",
        "ExampleUserProfile.swift",
        "ImageAssets.swift",
        "URIs.swift",
        "Utilities.swift"
      ],
      "target_dependencies" : [
        "SpotifyWebAPI"
      ],
      "type" : "library"
    },
    {
      "c99name" : "SpotifyAPITestUtilities",
      "module_type" : "SwiftTarget",
      "name" : "SpotifyAPITestUtilities",
      "path" : "Sources/SpotifyAPITestUtilities",
      "product_dependencies" : [
        "RegularExpressions",
        "OpenCombine",
        "OpenCombineDispatch",
        "OpenCombineFoundation"
      ],
      "product_memberships" : [
        "_SpotifyAPITestUtilities"
      ],
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyAPITestUtilities/Resources/requirements.txt",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpotifyAPITestUtilities/Resources/spotify_api_authorizer.py",
          "rule" : {
            "process" : {
            }
          }
        }
      ],
      "sources" : [
        "Authorization/AuthorizationConstants.swift",
        "Authorization/RedirectListener.swift",
        "Authorization/SeleniumBrowserAuthorizer.swift",
        "Authorization/WebKitBrowserAuthorizer.swift",
        "Authorization/openAuthorizationURL.swift",
        "CodingExtensions.swift",
        "CombineTestUtilities.swift",
        "DistributedLock.swift",
        "MiscellaneousUtilities.swift",
        "NetworkAdaptor.swift",
        "SpotifyAPI Utilities/AuthorizationCodeFlowExtensions.swift",
        "SpotifyAPI Utilities/AuthorizationCodeFlowPKCEExtensions.swift",
        "SpotifyAPI Utilities/ClientCredentialsFlowExtensions.swift",
        "SpotifyAPI Utilities/SpotifyAPIClientBaseTestClasses.swift",
        "SpotifyAPI Utilities/SpotifyAPIExtensions.swift",
        "SpotifyAPI Utilities/SpotifyAPIProxyBaseTestClasses.swift",
        "SpotifyAPI Utilities/SpotifyAPITests.swift",
        "SpotifyAPITestCase.swift"
      ],
      "target_dependencies" : [
        "SpotifyWebAPI",
        "SpotifyExampleContent"
      ],
      "type" : "library"
    },
    {
      "c99name" : "SpotifyAPIMainTests",
      "module_type" : "SwiftTarget",
      "name" : "SpotifyAPIMainTests",
      "path" : "Tests/SpotifyAPIMainTests",
      "product_dependencies" : [
        "RegularExpressions"
      ],
      "sources" : [
        "API Tests/SpoifyAPIArtistTests.swift",
        "API Tests/SpotifyAPIAlbumsTests.swift",
        "API Tests/SpotifyAPIAudiobookTests.swift",
        "API Tests/SpotifyAPIBrowseTests.swift",
        "API Tests/SpotifyAPIEpisodeTests.swift",
        "API Tests/SpotifyAPIErrorTests.swift",
        "API Tests/SpotifyAPIFollowTests.swift",
        "API Tests/SpotifyAPILibraryTests.swift",
        "API Tests/SpotifyAPIMarketTests.swift",
        "API Tests/SpotifyAPIPersonalizationTests.swift",
        "API Tests/SpotifyAPIPlayerTests.swift",
        "API Tests/SpotifyAPIPlaylistsTests.swift",
        "API Tests/SpotifyAPISearchTests.swift",
        "API Tests/SpotifyAPIShowTests.swift",
        "API Tests/SpotifyAPITrackTests.swift",
        "API Tests/SpotifyAPIUserProfileTests.swift",
        "Authorization Tests/SpotifyAPIAuthorizationCodeFlowAuthorizationTests.swift",
        "Authorization Tests/SpotifyAPIAuthorizationCodeFlowPKCEAuthorizationTests.swift",
        "Authorization Tests/SpotifyAPIAuthorizationTests.swift",
        "Authorization Tests/SpotifyAPIClientCredentialsFlowAuthorizationTests.swift",
        "Authorization Tests/SpotifyAPIInsufficientScopeTests.swift",
        "Authorization Tests/SpotifyAPIRefreshTokensConcurrentTests.swift",
        "Coding Tests/Authorization Objects/CodingAuthInfoTests.swift",
        "Coding Tests/Authorization Objects/CodingAuthorizationCodeFlowManagerTests.swift",
        "Coding Tests/Authorization Objects/CodingAuthorizationCodeFlowPKCEManagerTests.swift",
        "Coding Tests/Authorization Objects/CodingClientCredentialsFlowManagerTests.swift",
        "Coding Tests/CodingCurrentlyPlayingContextTests.swift",
        "Coding Tests/CodingPlaybackRequestTests.swift",
        "Coding Tests/CodingSpotifyUserTests.swift",
        "Coding Tests/CodingTimeReferenceTests.swift",
        "Coding Tests/CodingTrackAttributesTests.swift",
        "Coding Tests/CursorPagingObjectPlayHistoryCodingTests.swift",
        "Coding Tests/SpotifyPlayerErrorCodingTests.swift",
        "Documentation Tests/GetAvailableDeviceThenPlayDocumentationTest.swift",
        "Documentation Tests/MiscellaneousDocumentationTests.swift",
        "Documentation Tests/PaginationArticleCompilationTests.swift",
        "Documentation Tests/PlaylistMappingDocumentationCompilationTests.swift",
        "Documentation Tests/READMEExamplesCompilationTests.swift",
        "Documentation Tests/SpotifyObservableCompilationTests.swift",
        "Other Tests/AuthorizationScopesTests.swift",
        "Other Tests/ExampleContentTests.swift",
        "Other Tests/RepeatModeTests.swift",
        "Other Tests/SpotifyIdentifierTests.swift",
        "Test Utilities/FilteredPlaylist.swift",
        "Test Utilities/FilteredPlaylistItems.swift"
      ],
      "target_dependencies" : [
        "SpotifyWebAPI",
        "SpotifyExampleContent",
        "SpotifyAPITestUtilities"
      ],
      "type" : "test"
    }
  ],
  "tools_version" : "5.6"
}
Done.