The Swift Package Index logo.Swift Package Index

Build Information

Successful build of SpotifyAPI, reference master (610365), with Swift 6.4 for Linux on 22 Sep 2026 07:03:25 UTC.

Swift 6 data race errors: 0

Build Command

bash -c docker run --pull=always --rm -v "checkouts-53886770-0":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/saguaro1/spi-images:basic-6.4-latest swift build --triple x86_64-unknown-linux-gnu 2>&1

Build Log

========================================
RunAll
========================================
Builder version: 5.1.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/Peter-Schorn/SpotifyAPI.git
Reference: master
Initialized empty Git repository in /host/spi-builder-workspace/.git/
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: 	git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: 	git branch -m <name>
From https://github.com/Peter-Schorn/SpotifyAPI
 * branch            master     -> FETCH_HEAD
 * [new branch]      master     -> origin/master
HEAD is now at 6103659 Migrate playlist endpoints from /tracks to /items (#76)
Cloned https://github.com/Peter-Schorn/SpotifyAPI.git
Revision (git rev-parse @):
610365935e4d1a5ce1f05e748600b3d793932abf
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/Peter-Schorn/SpotifyAPI.git at master
========================================
Build
========================================
Selected platform:         linux
Swift version:             6.4
Building package at path:  $PWD
https://github.com/Peter-Schorn/SpotifyAPI.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-53886770-0":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/saguaro1/spi-images:basic-6.4-latest swift build --triple x86_64-unknown-linux-gnu 2>&1
basic-6.4-latest: Pulling from saguaro1/spi-images
Digest: sha256:c77fcce225e223ac0fafed844619173fc6de8d62dd560eeb28db3182af6a282b
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:basic-6.4-latest
Fetching https://github.com/apple/swift-docc-plugin
Fetching https://github.com/apple/swift-log.git
Fetching https://github.com/apple/swift-crypto.git
Fetching https://github.com/Peter-Schorn/RegularExpressions.git
Fetching https://github.com/OpenCombine/OpenCombine.git
[1/18549] Fetching swift-crypto
[372/20894] Fetching swift-crypto, swift-docc-plugin
[4201/29026] Fetching swift-crypto, swift-docc-plugin, swift-log
[4202/37310] Fetching swift-crypto, swift-docc-plugin, swift-log, opencombine
Fetched https://github.com/apple/swift-log.git (0.71s)
[8276/29178] Fetching swift-crypto, swift-docc-plugin, opencombine
[18421/29911] Fetching swift-crypto, swift-docc-plugin, opencombine, regularexpressions
Fetched https://github.com/OpenCombine/OpenCombine.git (0.97s)
[16434/21627] Fetching swift-crypto, swift-docc-plugin, regularexpressions
Fetched https://github.com/Peter-Schorn/RegularExpressions.git (1.18s)
Fetched https://github.com/apple/swift-docc-plugin (1.18s)
Fetched https://github.com/apple/swift-crypto.git (1.19s)
Computing version for https://github.com/Peter-Schorn/RegularExpressions.git
Computed https://github.com/Peter-Schorn/RegularExpressions.git at 2.2.0 (1.39s)
Computing version for https://github.com/OpenCombine/OpenCombine.git
Computed https://github.com/OpenCombine/OpenCombine.git at 0.14.0 (0.23s)
Computing version for https://github.com/apple/swift-crypto.git
Computed https://github.com/apple/swift-crypto.git at 1.1.7 (0.18s)
Computing version for https://github.com/apple/swift-docc-plugin
Computed https://github.com/apple/swift-docc-plugin at 1.5.0 (0.18s)
Fetching https://github.com/swiftlang/swift-docc-symbolkit
[1/3828] Fetching swift-docc-symbolkit
Fetched https://github.com/swiftlang/swift-docc-symbolkit (0.60s)
Computing version for https://github.com/swiftlang/swift-docc-symbolkit
Computed https://github.com/swiftlang/swift-docc-symbolkit at 1.0.0 (0.83s)
Computing version for https://github.com/apple/swift-log.git
Computed https://github.com/apple/swift-log.git at 1.15.1 (0.20s)
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/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/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/swiftlang/swift-docc-symbolkit
Working copy of https://github.com/swiftlang/swift-docc-symbolkit resolved at 1.0.0
Creating working copy for https://github.com/apple/swift-log.git
Working copy of https://github.com/apple/swift-log.git resolved at 1.15.1
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
Building for debugging...
[Computing dependencies]
[Pre-planning 1 / 510]
[Planning deferred tasks]
[169 / 641] RegularExpressions
[178 / 677] CCryptoBoringSSL
[182 / 677] CCryptoBoringSSL
[187 / 677] CCryptoBoringSSL
[197 / 677] CCryptoBoringSSL
[203 / 677] CCryptoBoringSSL
[210 / 677] Logging
[218 / 677] CCryptoBoringSSL
[232 / 677] CCryptoBoringSSL
[238 / 677] CCryptoBoringSSL
[244 / 677] CCryptoBoringSSL
[249 / 677] CCryptoBoringSSL
[256 / 677] CCryptoBoringSSL
[266 / 677] CCryptoBoringSSL
[280 / 677] CCryptoBoringSSL
[287 / 677] CCryptoBoringSSL
[307 / 677] CCryptoBoringSSL
[325 / 677] CCryptoBoringSSL
[344 / 677] CCryptoBoringSSL
[358 / 677] CCryptoBoringSSL
[367 / 677] CCryptoBoringSSL
[373 / 677] CCryptoBoringSSL
[385 / 677] CCryptoBoringSSL
[398 / 677] CCryptoBoringSSL
[411 / 677] CCryptoBoringSSL
[424 / 677] CCryptoBoringSSL
[443 / 677] CCryptoBoringSSL
[467 / 677] CCryptoBoringSSL
[482 / 677] CCryptoBoringSSL
[494 / 677] CCryptoBoringSSL
[515 / 677] CCryptoBoringSSL
[535 / 677] CCryptoBoringSSL
[550 / 677] CCryptoBoringSSL
[568 / 677] CCryptoBoringSSL
[584 / 677] CCryptoBoringSSL
[598 / 677] CCryptoBoringSSL
[604 / 677] CCryptoBoringSSL
[606 / 677] OpenCombine
[612 / 677] OpenCombine
[613 / 678] OpenCombine
[616 / 678] RegularExpressions
[618 / 678] Logging
[619 / 678] Logging-product
[621 / 678] OpenCombine
[623 / 678] Logging-product
[628 / 678] Crypto
[629 / 678] Crypto
[631 / 679] Logging
[635 / 680] COpenCombineHelpers
[644 / 693] OpenCombineFoundation
[647 / 693] Crypto
[654 / 693] OpenCombineFoundation
[657 / 693] OpenCombineFoundation
[664 / 694] SpotifyWebAPI
[670 / 703] SpotifyWebAPI
[671 / 704] SpotifyWebAPI
[672 / 705] SpotifyWebAPI
/host/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()
/host/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
/host/spi-builder-workspace/.build/checkouts/swift-log/Sources/Logging/LogHandler.swift:249:17: note: 'log(event:)' declared here
136 |     ///
137 |     /// - Parameter event: The log event containing the level, message, metadata, and source location.
138 |     func log(event: LogEvent)
    |          `- note: requirement 'log(event:)' declared here
139 |
140 |     /// Please do _not_ implement this method when you create a `LogHandler` implementation.
    :
247 |     ///   Implement ``log(event:)`` in your ``LogHandler`` instead.
248 |     @available(*, deprecated, message: "You should implement this method instead of using the default implementation")
249 |     public func log(event: LogEvent) {
    |                 `- note: 'log(event:)' declared here
250 |         self.log(
251 |             level: event.level,
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
[673 / 706] SpotifyWebAPI
[676 / 706] OpenCombineDispatch
[685 / 706] SpotifyAPI-product
[688 / 716] SpotifyExampleContent
[690 / 716] SpotifyExampleContent
/host/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
/host/spi-builder-workspace/.build/checkouts/swift-log/Sources/Logging/LogHandler.swift:249:17: note: 'log(event:)' declared here
136 |     ///
137 |     /// - Parameter event: The log event containing the level, message, metadata, and source location.
138 |     func log(event: LogEvent)
    |          `- note: requirement 'log(event:)' declared here
139 |
140 |     /// Please do _not_ implement this method when you create a `LogHandler` implementation.
    :
247 |     ///   Implement ``log(event:)`` in your ``LogHandler`` instead.
248 |     @available(*, deprecated, message: "You should implement this method instead of using the default implementation")
249 |     public func log(event: LogEvent) {
    |                 `- note: 'log(event:)' declared here
250 |         self.log(
251 |             level: event.level,
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
[694 / 716] SpotifyExampleContent
[704 / 726] SpotifyAPITestUtilities
/host/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()
[704 / 726] SpotifyWebAPI
[707 / 726] SpotifyAPITestUtilities
[709 / 726] SpotifyAPITestUtilities
[716 / 727] _SpotifyAPITestUtilities-product
[719 / 727] SpotifyAPITestUtilities
[721 / 728] SpotifyWebAPI
[724 / 729] SpotifyWebAPI
Build complete! (16.81 secs)
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" : "/host/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" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Albums/Abbey Road - Album.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Albums/Dark Side Of The Moon - Album.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Albums/In Rainbows - Album.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Albums/Jinx - Album.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Albums/Jinx - PagingObject<Track>.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Albums/Meddle - Album.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Albums/Skiptracing - Album.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Artists/Crumb - Artist.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Artists/Levitation Room - Artist.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Artists/Pink Floyd - Artist.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Artists/Radiohead - Artist.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Artists/Skinshape - Artist.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Artists/The Beatles - Artist.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Audiobooks/Enlightenment Now - Audiobook.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Audiobooks/Enlightenment Now Chapter 3 - AudiobookChapter.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Audiobooks/Free Will - Audiobook.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Audiobooks/Free Will Chapter 1 - AudiobookChapter.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Audiobooks/Harry Potter and the Sorcerer's Stone - Audiobook.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Audiobooks/Steve Jobs Chapter 1 - AudiobookChapter.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Audo Analysis/Any Colour You Like - AudioAnalysis.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Audo Analysis/Fearless - AudioFeatures.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Browse/Category Playlists - PagingObject<Playlist<PlaylistItemsReference>>.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Browse/Featured Playlists - FeaturedPlaylists.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Browse/categories - SpotifyCategory.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Episodes/Sam Harris 213 - Episode.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Episodes/Sam Harris 214 - Episode.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Episodes/Sam Harris 215 - Episode.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Episodes/Sean Carroll 111 - Episode.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Episodes/Sean Carroll 112 - Episode.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Images/Annabelle Compressed.jpeg",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Images/Annabelle Large.jpeg",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Library/Current User Saved Albums - PagingObject<SavedItem<Album>>.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Player/Current Playback - CurrentlyPlayingContext.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Player/Queue - SpotifyQueue.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Player/Recently Played - CursorPagingObject<PlayHistory>.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/PlaylistItems/#1536 - Edward Snowden - PlaylistItem.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/PlaylistItems/#1537 - Lex Fridman - PlaylistItem.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/PlaylistItems/#216 — September 3, 2020 - PlaylistItem.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/PlaylistItems/#217 — The New Religion of Anti-Racism - PlaylistItem.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/PlaylistItems/Echoes - Acoustic Version - PlaylistItem.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/PlaylistItems/Hans Zimmer & Radiohead - Ocean Bloom (full song HQ) - PlaylistItem.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/PlaylistItems/Killshot - PlaylistItem.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Playlists/Blues Classics - PagingObject<PlaylistItemContainer<Track>>.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Playlists/Crumb - Playlist<PagingObject<PlaylistItemContainer<PlaylistItem>>>.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Playlists/Local Songs - Playlist<PagingObject<PlaylistItemContainer<PlaylistItem>>>.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Playlists/Lucy in the sky with diamonds - Playlist<PlaylistItemsReference>.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Playlists/Men I Trust - Playlist<PlaylistItemsReference>.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Playlists/Modern Psychedelia - Playlist<PlaylistItemsReference>.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Playlists/Rock Classics - Playlist<PlaylistItemsReference>.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Playlists/This Is King Gizzard & The Lizard Wizard - Playlist<PlaylistItemsReference>.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Playlists/This Is MF DOOM - Playlist<PlaylistItemsReference>.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Playlists/This Is Mild High Club - Playlist<PlaylistItemsReference>.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Playlists/This Is Radiohead - Playlist<PlaylistItemsReference>.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Playlists/This Is Sonic Youth - Playlist<PlaylistItemsReference>.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Playlists/This Is Spoon - PagingObject<PlaylistItemContainer<Track>>.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Playlists/This is Jimi Hendrix - PagingObject<PlaylistItemContainer<Track>>.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Playlists/This is Mac DeMarco - PagingObject<PlaylistItemContainer<Track>>.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Playlists/This is Pink Floyd - PagingObject<PlaylistItemContainer<Track>>.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Playlists/This is Skinshape - Playlist<PlaylistItemsReference>.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Playlists/This is Stevie Ray Vaughan - PagingObject<PlaylistItemContainer<PlaylistItem>>.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Search/Search for 'Crumb' - SearchResult.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Shows/Joe Rogan - Show.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Shows/Sam Harris - Show.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Shows/Sean Carroll - Show.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Tracks/Because - Track.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Tracks/Come Together - Track.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Tracks/Faces - Track.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Tracks/Ill Wind - Track.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Tracks/Ode To Viceroy - Track.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Tracks/Reckoner - Track.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Tracks/The End - Track.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Sources/SpotifyExampleContent/Resources/Tracks/Time - Track.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/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" : "/host/spi-builder-workspace/Sources/SpotifyAPITestUtilities/Resources/requirements.txt",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/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"
}
basic-6.4-latest: Pulling from saguaro1/spi-images
Digest: sha256:c77fcce225e223ac0fafed844619173fc6de8d62dd560eeb28db3182af6a282b
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:basic-6.4-latest
Done.