Build Information
Successful build of AudiobookshelfAPI, reference 3.0.0 (ccc92b), with Swift 6.4 for macOS (SPM) on 28 Sep 2026 06:52:55 UTC.
Swift 6 data race errors: 0
Build Command
env DEVELOPER_DIR=/Applications/Xcode-27.0.0-Release.Candidate.app xcrun swift build --arch arm64Build Log
========================================
RunAll
========================================
Builder version: 5.1.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/JamesRagnar/audiobookshelf-api-swift.git
Reference: 3.0.0
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/JamesRagnar/audiobookshelf-api-swift
* tag 3.0.0 -> FETCH_HEAD
HEAD is now at ccc92b9 RagnarNetworking 1.0.0
Cloned https://github.com/JamesRagnar/audiobookshelf-api-swift.git
Revision (git rev-parse @):
ccc92b92b3bd111c4bad85661312fc62573553ec
SUCCESS checkout https://github.com/JamesRagnar/audiobookshelf-api-swift.git at 3.0.0
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.4
Building package at path: $PWD
https://github.com/JamesRagnar/audiobookshelf-api-swift.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-27.0.0-Release.Candidate.app xcrun swift build --arch arm64
Building for debugging...
[Pre-planning 1 / 155]
[Planning deferred tasks]
[37 / 70]
[39 / 72] RagnarWebSocket
[49 / 127]
[54 / 127]
[58 / 127]
[59 / 127]
[63 / 127]
[65 / 127]
[68 / 127]
[72 / 127]
[74 / 127]
[75 / 127]
[87 / 127] RagnarWebSocket
[91 / 127] RagnarWebSocket
[107 / 128] RagnarWebSocket
[107 / 128] RagnarNetworking
[111 / 128] RagnarSocketIO
[122 / 139] RagnarSocketIO
[123 / 139] RagnarSocketIO
[129 / 140] RagnarSocketIO
[131 / 141] AudiobookshelfAPI
[141 / 191]
[146 / 191]
[150 / 191]
[151 / 191]
[155 / 191]
[157 / 191]
[160 / 191]
[164 / 191]
[166 / 191]
[167 / 191]
[179 / 191] AudiobookshelfAPI
[181 / 191] AudiobookshelfAPI
[182 / 191] AudiobookshelfAPI
[188 / 191] AudiobookshelfAPI
[190 / 191] AudiobookshelfAPI
Build complete! (16.04 sec)
Fetching https://github.com/JamesRagnar/RagnarNetworking
[1/2236] Fetching ragnarnetworking
Fetched https://github.com/JamesRagnar/RagnarNetworking (1.20s)
Computing version for https://github.com/JamesRagnar/RagnarNetworking
Computed https://github.com/JamesRagnar/RagnarNetworking at 1.0.0 (1.82s)
Creating working copy for https://github.com/JamesRagnar/RagnarNetworking
Working copy of https://github.com/JamesRagnar/RagnarNetworking resolved at 1.0.0
Build complete.
{
"dependencies" : [
{
"identity" : "ragnarnetworking",
"requirement" : {
"exact" : [
"1.0.0"
]
},
"type" : "sourceControl",
"url" : "https://github.com/JamesRagnar/RagnarNetworking"
}
],
"manifest_display_name" : "AudiobookshelfAPI",
"name" : "AudiobookshelfAPI",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "16.0"
},
{
"name" : "macos",
"version" : "13.0"
},
{
"name" : "tvos",
"version" : "16.0"
},
{
"name" : "watchos",
"version" : "9.0"
},
{
"name" : "visionos",
"version" : "1.0"
}
],
"products" : [
{
"name" : "AudiobookshelfAPI",
"targets" : [
"AudiobookshelfAPI"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "AudiobookshelfAPITests",
"module_type" : "SwiftTarget",
"name" : "AudiobookshelfAPITests",
"path" : "Tests/AudiobookshelfAPITests",
"sources" : [
"ABSSocketSessionRecoveryTests.swift",
"ABSSocketSessionTests.swift",
"ArtworkRequestOptionsTests.swift",
"AudioTrackDecodingTests.swift",
"AuthSessionContractTests.swift",
"BookmarkContractTests.swift",
"CheckServerStatusTests.swift",
"CollectionDecodingTests.swift",
"EbookContractTests.swift",
"ExternalBookSearchResultDecodingTests.swift",
"GetAllSessionsTests.swift",
"GetLibraryAuthorsResponseTests.swift",
"GetLibraryCollectionsTests.swift",
"GetLibraryItemsInProgressTests.swift",
"GetLibraryItemsParametersTests.swift",
"GetLibraryItemsResponseTests.swift",
"GetLibraryNarratorsTests.swift",
"GetLibraryResponseTests.swift",
"GetLibrarySeriesTests.swift",
"GetLibraryUserPlaylistsTests.swift",
"GetPersonalizedLibraryTests.swift",
"GetRecentEpisodesTests.swift",
"GetUserListeningSessionsTests.swift",
"GetYourListeningSessionsTests.swift",
"Interface+TestHandling.swift",
"InterfaceFailureContractTests.swift",
"InterfaceSuccessContractTests.swift",
"JSONValueTests.swift",
"LibraryItemDecodingTests.swift",
"LibraryItemQueryConvenienceTests.swift",
"ListeningSessionContractTests.swift",
"ListeningStatsDecodingTests.swift",
"LocalSessionSyncContractsTests.swift",
"LogoutRequestTests.swift",
"MediaProgressDecodingTests.swift",
"PersonalContentContractTests.swift",
"PersonalizedLibraryShelfDecodingTests.swift",
"PodcastEpisodeUpdateTests.swift",
"RSSFeedDecodingTests.swift",
"SearchChaptersTests.swift",
"SearchLibraryTests.swift",
"SeriesDecodingTests.swift",
"ServerCompatibilityTests.swift",
"ServerContractAuditTests.swift",
"ServerSettingsDecodingTests.swift",
"SocketContractAuditTests.swift",
"SocketPayloadCompatibilityTests.swift",
"SocketTestSupport.swift",
"SortContractTests.swift",
"TestFixtures.swift",
"UpdatePasswordComplianceTests.swift",
"UpdateServerSettingsTests.swift"
],
"target_dependencies" : [
"AudiobookshelfAPI"
],
"type" : "test"
},
{
"c99name" : "AudiobookshelfAPI",
"module_type" : "SwiftTarget",
"name" : "AudiobookshelfAPI",
"path" : "Sources/AudiobookshelfAPI",
"product_dependencies" : [
"RagnarNetworking",
"RagnarSocketIO"
],
"product_memberships" : [
"AudiobookshelfAPI"
],
"sources" : [
"Compatibility/ServerCompatibility.swift",
"Helpers/Array+Audiobookshelf.swift",
"Helpers/ArtworkFormat.swift",
"Helpers/ArtworkRequestOptions.swift",
"Helpers/Bool+Audiobookshelf.swift",
"Helpers/Set+Audiobookshelf.swift",
"Interfaces/API Keys/CreateAPIKey.swift",
"Interfaces/API Keys/DeleteAPIKey.swift",
"Interfaces/API Keys/GetAllAPIKeys.swift",
"Interfaces/API Keys/UpdateAPIKey.swift",
"Interfaces/Authentication/CheckServerStatus.swift",
"Interfaces/Authentication/Healthcheck.swift",
"Interfaces/Authentication/Login.swift",
"Interfaces/Authentication/Logout.swift",
"Interfaces/Authentication/PingServer.swift",
"Interfaces/Authentication/RefreshToken.swift",
"Interfaces/Authors/DeleteAuthor.swift",
"Interfaces/Authors/DeleteAuthorImage.swift",
"Interfaces/Authors/GetAuthor.swift",
"Interfaces/Authors/GetAuthorImage.swift",
"Interfaces/Authors/MatchAuthor.swift",
"Interfaces/Authors/UpdateAuthor.swift",
"Interfaces/Authors/UploadAuthorImage.swift",
"Interfaces/Backups/ApplyBackup.swift",
"Interfaces/Backups/CreateBackup.swift",
"Interfaces/Backups/DeleteBackup.swift",
"Interfaces/Backups/DownloadBackup.swift",
"Interfaces/Backups/GetAllBackups.swift",
"Interfaces/Backups/UpdateBackupPath.swift",
"Interfaces/Backups/UploadBackup.swift",
"Interfaces/Cache/PurgeCacheAll.swift",
"Interfaces/Cache/PurgeItemsCache.swift",
"Interfaces/Collections/CollectionAddBook.swift",
"Interfaces/Collections/CollectionBatchAddBooks.swift",
"Interfaces/Collections/CollectionBatchRemoveBooks.swift",
"Interfaces/Collections/CollectionRemoveBook.swift",
"Interfaces/Collections/CreateCollection.swift",
"Interfaces/Collections/DeleteCollection.swift",
"Interfaces/Collections/GetAllCollections.swift",
"Interfaces/Collections/GetCollection.swift",
"Interfaces/Collections/UpdateCollection.swift",
"Interfaces/CustomMetadataProviders/AddCustomMetadataProvider.swift",
"Interfaces/CustomMetadataProviders/GetCustomMetadataProviders.swift",
"Interfaces/CustomMetadataProviders/RemoveCustomMetadataProvider.swift",
"Interfaces/Email/GetEmailSettings.swift",
"Interfaces/Email/SendEbookToDevice.swift",
"Interfaces/Email/SendTestEmail.swift",
"Interfaces/Email/UpdateEReaderDevices.swift",
"Interfaces/Email/UpdateEmailSettings.swift",
"Interfaces/Filesystem/BrowseFilesystem.swift",
"Interfaces/Filesystem/CheckPathExists.swift",
"Interfaces/Genres/DeleteGenre.swift",
"Interfaces/Genres/GetAllGenres.swift",
"Interfaces/Genres/RenameGenre.swift",
"Interfaces/HLS/GetHLSStreamFile.swift",
"Interfaces/Libraries/CreateLibrary.swift",
"Interfaces/Libraries/DeleteLibrary.swift",
"Interfaces/Libraries/DownloadMultipleLibraryItems.swift",
"Interfaces/Libraries/GetAllLibraries.swift",
"Interfaces/Libraries/GetLibrary.swift",
"Interfaces/Libraries/GetLibraryAuthors.swift",
"Interfaces/Libraries/GetLibraryCollections.swift",
"Interfaces/Libraries/GetLibraryEpisodeDownloadQueue.swift",
"Interfaces/Libraries/GetLibraryFilterData.swift",
"Interfaces/Libraries/GetLibraryItems.swift",
"Interfaces/Libraries/GetLibraryItemsForAuthor.swift",
"Interfaces/Libraries/GetLibraryItemsForNarrator.swift",
"Interfaces/Libraries/GetLibraryItemsForSeries.swift",
"Interfaces/Libraries/GetLibraryNarrators.swift",
"Interfaces/Libraries/GetLibraryOPML.swift",
"Interfaces/Libraries/GetLibraryPodcastTitles.swift",
"Interfaces/Libraries/GetLibrarySeries.swift",
"Interfaces/Libraries/GetLibrarySeriesById.swift",
"Interfaces/Libraries/GetLibraryStats.swift",
"Interfaces/Libraries/GetLibraryUserPlaylists.swift",
"Interfaces/Libraries/GetPersonalizedLibrary.swift",
"Interfaces/Libraries/GetRecentEpisodes.swift",
"Interfaces/Libraries/LibraryItemFilter.swift",
"Interfaces/Libraries/MatchAllLibraryItems.swift",
"Interfaces/Libraries/RemoveLibraryItemsWithIssues.swift",
"Interfaces/Libraries/RemoveLibraryMetadataFiles.swift",
"Interfaces/Libraries/RemoveLibraryNarrator.swift",
"Interfaces/Libraries/ReorderLibraries.swift",
"Interfaces/Libraries/ScanLibraryFolders.swift",
"Interfaces/Libraries/SearchLibrary.swift",
"Interfaces/Libraries/UpdateLibrary.swift",
"Interfaces/Libraries/UpdateLibraryNarrator.swift",
"Interfaces/Library Items/BatchDeleteLibraryItems.swift",
"Interfaces/Library Items/BatchGetLibraryItems.swift",
"Interfaces/Library Items/BatchQuickMatchLibraryItems.swift",
"Interfaces/Library Items/BatchScanLibraryItems.swift",
"Interfaces/Library Items/BatchUpdateLibraryItems.swift",
"Interfaces/Library Items/DeleteLibraryFile.swift",
"Interfaces/Library Items/DeleteLibraryItem.swift",
"Interfaces/Library Items/DownloadLibraryFile.swift",
"Interfaces/Library Items/DownloadLibraryItem.swift",
"Interfaces/Library Items/GetEbookFile.swift",
"Interfaces/Library Items/GetLibraryFile.swift",
"Interfaces/Library Items/GetLibraryFileFFprobe.swift",
"Interfaces/Library Items/GetLibraryItem.swift",
"Interfaces/Library Items/GetLibraryItemCover.swift",
"Interfaces/Library Items/GetLibraryItemMetadataObject.swift",
"Interfaces/Library Items/MatchLibraryItem.swift",
"Interfaces/Library Items/RemoveLibraryItemCover.swift",
"Interfaces/Library Items/ScanLibraryItem.swift",
"Interfaces/Library Items/StartEpisodePlaybackSession.swift",
"Interfaces/Library Items/StartPlaybackSession.swift",
"Interfaces/Library Items/UpdateEbookFileStatus.swift",
"Interfaces/Library Items/UpdateLibraryItemChapters.swift",
"Interfaces/Library Items/UpdateLibraryItemCover.swift",
"Interfaces/Library Items/UpdateLibraryItemMedia.swift",
"Interfaces/Library Items/UpdateLibraryItemTracks.swift",
"Interfaces/Library Items/UploadLibraryItemCover.swift",
"Interfaces/Me/BatchCreateUpdateMediaProgress.swift",
"Interfaces/Me/CreateBookmark.swift",
"Interfaces/Me/DeleteBookmark.swift",
"Interfaces/Me/DeleteYourAuthSession.swift",
"Interfaces/Me/GetAllMediaProgress.swift",
"Interfaces/Me/GetItemListeningSessions.swift",
"Interfaces/Me/GetLibraryItemsInProgress.swift",
"Interfaces/Me/GetMediaProgress.swift",
"Interfaces/Me/GetYearStats.swift",
"Interfaces/Me/GetYourAuthSessions.swift",
"Interfaces/Me/GetYourBookmarks.swift",
"Interfaces/Me/GetYourBookmarksForLibraryItem.swift",
"Interfaces/Me/GetYourListeningSessions.swift",
"Interfaces/Me/GetYourListeningStats.swift",
"Interfaces/Me/GetYourUser.swift",
"Interfaces/Me/PatchMediaProgress.swift",
"Interfaces/Me/ReaddSeriesToContinueListening.swift",
"Interfaces/Me/RemoveContinueListeningItem.swift",
"Interfaces/Me/RemoveMediaProgress.swift",
"Interfaces/Me/RemoveSeriesFromContinueListening.swift",
"Interfaces/Me/UpdateBookmark.swift",
"Interfaces/Me/UpdatePassword.swift",
"Interfaces/Me/UpdateUserEReaderDevices.swift",
"Interfaces/Notifications/CreateNotification.swift",
"Interfaces/Notifications/DeleteNotification.swift",
"Interfaces/Notifications/FireTestEvent.swift",
"Interfaces/Notifications/GetNotificationData.swift",
"Interfaces/Notifications/GetNotificationSettings.swift",
"Interfaces/Notifications/TestNotification.swift",
"Interfaces/Notifications/UpdateNotification.swift",
"Interfaces/Notifications/UpdateNotificationSettings.swift",
"Interfaces/Playlists/CreatePlaylist.swift",
"Interfaces/Playlists/CreatePlaylistFromCollection.swift",
"Interfaces/Playlists/DeletePlaylist.swift",
"Interfaces/Playlists/GetPlaylist.swift",
"Interfaces/Playlists/GetUserPlaylists.swift",
"Interfaces/Playlists/PlaylistAddItem.swift",
"Interfaces/Playlists/PlaylistBatchAddItems.swift",
"Interfaces/Playlists/PlaylistBatchRemoveItems.swift",
"Interfaces/Playlists/RemovePlaylistItem.swift",
"Interfaces/Playlists/UpdatePlaylist.swift",
"Interfaces/Podcasts/CheckNewPodcastEpisodes.swift",
"Interfaces/Podcasts/ClearPodcastQueue.swift",
"Interfaces/Podcasts/CreatePodcast.swift",
"Interfaces/Podcasts/CreatePodcastsFromOPML.swift",
"Interfaces/Podcasts/DeletePodcastEpisode.swift",
"Interfaces/Podcasts/DownloadPodcastEpisodes.swift",
"Interfaces/Podcasts/GetPodcastDownloadQueue.swift",
"Interfaces/Podcasts/GetPodcastEpisode.swift",
"Interfaces/Podcasts/GetPodcastFeed.swift",
"Interfaces/Podcasts/MatchPodcastEpisodes.swift",
"Interfaces/Podcasts/ParseOPML.swift",
"Interfaces/Podcasts/SearchPodcastEpisode.swift",
"Interfaces/Podcasts/UpdatePodcastEpisode.swift",
"Interfaces/Public Shares/DownloadShare.swift",
"Interfaces/Public Shares/GetMediaShare.swift",
"Interfaces/Public Shares/GetShareAudioTrack.swift",
"Interfaces/Public Shares/GetShareCover.swift",
"Interfaces/Public Shares/UpdateShareProgress.swift",
"Interfaces/Public/GetPublicSessionTrack.swift",
"Interfaces/RSS Feeds/CloseFeed.swift",
"Interfaces/RSS Feeds/GetAllFeeds.swift",
"Interfaces/RSS Feeds/OpenFeedForCollection.swift",
"Interfaces/RSS Feeds/OpenFeedForItem.swift",
"Interfaces/RSS Feeds/OpenFeedForSeries.swift",
"Interfaces/Search/GetSearchProviders.swift",
"Interfaces/Search/SearchChapters.swift",
"Interfaces/Search/SearchCovers.swift",
"Interfaces/Search/SearchExternalAuthors.swift",
"Interfaces/Search/SearchExternalBooks.swift",
"Interfaces/Search/SearchExternalPodcasts.swift",
"Interfaces/Series/GetSeriesById.swift",
"Interfaces/Series/UpdateSeries.swift",
"Interfaces/Sessions/BatchDeleteSessions.swift",
"Interfaces/Sessions/CloseOpenSession.swift",
"Interfaces/Sessions/DeleteSession.swift",
"Interfaces/Sessions/GetAllSessions.swift",
"Interfaces/Sessions/GetOpenSession.swift",
"Interfaces/Sessions/GetOpenSessions.swift",
"Interfaces/Sessions/SyncLocalSession.swift",
"Interfaces/Sessions/SyncLocalSessionsBatch.swift",
"Interfaces/Sessions/SyncOpenSession.swift",
"Interfaces/Settings/GetAuthSettings.swift",
"Interfaces/Settings/UpdateAuthSettings.swift",
"Interfaces/Settings/UpdateServerSettings.swift",
"Interfaces/Settings/UpdateSortingPrefixes.swift",
"Interfaces/Shares/CreateMediaItemShare.swift",
"Interfaces/Shares/DeleteMediaItemShare.swift",
"Interfaces/Stats/GetAdminYearStats.swift",
"Interfaces/Stats/GetServerStats.swift",
"Interfaces/Tags/DeleteTag.swift",
"Interfaces/Tags/GetAllTags.swift",
"Interfaces/Tags/RenameTag.swift",
"Interfaces/Tools/BatchEmbedMetadata.swift",
"Interfaces/Tools/CancelM4BEncode.swift",
"Interfaces/Tools/EmbedLibraryItemMetadata.swift",
"Interfaces/Tools/EncodeLibraryItemM4B.swift",
"Interfaces/Tools/GetLoggerData.swift",
"Interfaces/Tools/GetTasks.swift",
"Interfaces/Tools/PurgeCache.swift",
"Interfaces/Tools/UpdateWatcher.swift",
"Interfaces/Tools/UploadFile.swift",
"Interfaces/Tools/ValidateCronExpression.swift",
"Interfaces/Users/CreateUser.swift",
"Interfaces/Users/DeleteUser.swift",
"Interfaces/Users/GetAllUsers.swift",
"Interfaces/Users/GetOnlineUsers.swift",
"Interfaces/Users/GetUser.swift",
"Interfaces/Users/GetUserListeningSessions.swift",
"Interfaces/Users/GetUserListeningStats.swift",
"Interfaces/Users/UnlinkOpenID.swift",
"Interfaces/Users/UpdateUser.swift",
"Models/APIKey.swift",
"Models/AudioBookmark.swift",
"Models/AudioFile.swift",
"Models/AudioMetaTags.swift",
"Models/AudioTrack.swift",
"Models/AuthSession.swift",
"Models/AuthSessionDeviceInfo.swift",
"Models/Author.swift",
"Models/Backup.swift",
"Models/BackupsResponse.swift",
"Models/Book.swift",
"Models/BookChapter.swift",
"Models/BookMetadata.swift",
"Models/Collection.swift",
"Models/CustomMetadataProvider.swift",
"Models/Device.swift",
"Models/DeviceInfo.swift",
"Models/EBookFile.swift",
"Models/EReaderDevice.swift",
"Models/EmailSettings.swift",
"Models/ExternalAuthorSearchResult.swift",
"Models/ExternalBookSearchResult.swift",
"Models/ExternalPodcastSearchResult.swift",
"Models/FileMetadata.swift",
"Models/FilterData.swift",
"Models/Folder.swift",
"Models/Icon.swift",
"Models/JSONValue.swift",
"Models/Library.swift",
"Models/LibraryFile.swift",
"Models/LibraryFilterData.swift",
"Models/LibraryItem.swift",
"Models/LibrarySettings.swift",
"Models/MediaProgress.swift",
"Models/Model+InterfaceResponse.swift",
"Models/Notification.swift",
"Models/NotificationSettings.swift",
"Models/PlaybackSession.swift",
"Models/Playlist.swift",
"Models/PlaylistItem.swift",
"Models/Podcast.swift",
"Models/PodcastEpisode.swift",
"Models/PodcastEpisodeDownload.swift",
"Models/PodcastEpisodeEnclosure.swift",
"Models/PodcastFeed.swift",
"Models/PodcastFeedEpisode.swift",
"Models/PodcastFeedMetadata.swift",
"Models/PodcastMetadata.swift",
"Models/PublicUser.swift",
"Models/RSSFeed.swift",
"Models/RSSFeedEpisode.swift",
"Models/RSSFeedMetadata.swift",
"Models/Series.swift",
"Models/SeriesProgress.swift",
"Models/ServerSettings.swift",
"Models/ServerTask.swift",
"Models/Share.swift",
"Models/StoredCustomMetadataProvider.swift",
"Models/Stream.swift",
"Models/StreamProgress.swift",
"Models/User.swift",
"Models/UserPermissions.swift",
"Models/YearStats.swift",
"Socket/ABSSocketSession.swift",
"Socket/AudioMetadataEvents.swift",
"Socket/AuthorEvents.swift",
"Socket/BackupEvents.swift",
"Socket/ClientEvents.swift",
"Socket/CollectionEvents.swift",
"Socket/CoverSearchEvents.swift",
"Socket/CustomMetadataProviderEvents.swift",
"Socket/EReaderEvents.swift",
"Socket/LibraryEvents.swift",
"Socket/LibraryItemEvents.swift",
"Socket/MiscellaneousEvents.swift",
"Socket/NotificationEvents.swift",
"Socket/PlaylistEvents.swift",
"Socket/PodcastEpisodeDownloadEvents.swift",
"Socket/RSSFeedEvents.swift",
"Socket/SeriesEvents.swift",
"Socket/ShareEvents.swift",
"Socket/StreamEvents.swift",
"Socket/TaskEvents.swift",
"Socket/UserEvents.swift"
],
"type" : "library"
}
],
"tools_version" : "5.10"
}
Done.