Build Information
Successful build of YouTubePlayerKit, reference main (1ae827), with Swift 6.4 for macOS (SPM) on 23 Sep 2026 12:11:45 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/SvenTiigi/YouTubePlayerKit.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/SvenTiigi/YouTubePlayerKit
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at 1ae8275 Update the default origin URL to use the bundle identifier as the host
Cloned https://github.com/SvenTiigi/YouTubePlayerKit.git
Revision (git rev-parse @):
1ae827573024ab13dd6adea33b25d3eef6ff667c
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/SvenTiigi/YouTubePlayerKit.git at main
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.4
Building package at path: $PWD
https://github.com/SvenTiigi/YouTubePlayerKit.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-27.0.0-Release.Candidate.app xcrun swift build --arch arm64
Building for debugging...
[Planning deferred tasks]
[19 / 28]
[20 / 29] YouTubePlayerKit
[30 / 110]
[33 / 110]
[41 / 110]
[43 / 110]
[44 / 110]
[49 / 110]
[51 / 110]
[53 / 110]
[57 / 110]
[62 / 110]
[65 / 110]
[67 / 110]
[68 / 110]
[80 / 110]
[82 / 110]
[83 / 110]
[86 / 110]
[88 / 110]
[90 / 110]
[101 / 110] YouTubePlayerKit
[102 / 110] YouTubePlayerKit
[107 / 110] YouTubePlayerKit
Build complete! (11.67 sec)
/Users/admin/builder/spi-builder-workspace/Sources/API/YouTubePlayer+PlaybackAPI.swift:164:34: [1;33mwarning: [1;39m'weak' ownership of capture 'self' differs from implicitly-captured strong reference in outer scope[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/implicit-strong-capture\ImplicitStrongCapture]8;;\]
[0;36m160 |[0;0m .map { _ in }
[0;36m161 |[0;0m )
[0;36m162 |[0;0m .flatMap { _ in
[0;36m|[0;0m |- [1;39mnote: [1;39m'self' implicitly strongly captured here[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39madd 'self' as a capture list item to silence[0;0m
[0;36m163 |[0;0m Future { promise in
[0;36m164 |[0;0m Task { [weak self] in
[0;36m|[0;0m |- [1;33mwarning: [1;39m'weak' ownership of capture 'self' differs from implicitly-captured strong reference in outer scope[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/implicit-strong-capture\ImplicitStrongCapture]8;;\]
[0;36m|[0;0m `- [1;39mnote: [1;39mexplicitly assign the capture list item to silence[0;0m
[0;36m165 |[0;0m guard let playbackMetadata = try? await self?.getPlaybackMetadata() else {
[0;36m166 |[0;0m return
/Users/admin/builder/spi-builder-workspace/Sources/API/YouTubePlayer+PlaybackAPI.swift:356:26: [1;33mwarning: [1;39m'weak' ownership of capture 'self' differs from implicitly-captured strong reference in outer scope[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/implicit-strong-capture\ImplicitStrongCapture]8;;\]
[0;36m353 |[0;0m /// A Publisher that emits the current YouTube player playback rate.
[0;36m354 |[0;0m var playbackRatePublisher: some Publisher<PlaybackRate, Never> {
[0;36m355 |[0;0m Future { promise in
[0;36m|[0;0m |- [1;39mnote: [1;39m'self' implicitly strongly captured here[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39madd 'self' as a capture list item to silence[0;0m
[0;36m356 |[0;0m Task { [weak self] in
[0;36m|[0;0m |- [1;33mwarning: [1;39m'weak' ownership of capture 'self' differs from implicitly-captured strong reference in outer scope[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/implicit-strong-capture\ImplicitStrongCapture]8;;\]
[0;36m|[0;0m `- [1;39mnote: [1;39mexplicitly assign the capture list item to silence[0;0m
[0;36m357 |[0;0m guard let playbackRate = try? await self?.getPlaybackRate() else {
[0;36m358 |[0;0m return
/Users/admin/builder/spi-builder-workspace/Sources/API/YouTubePlayer+PlaybackAPI.swift:492:34: [1;33mwarning: [1;39m'weak' ownership of capture 'self' differs from implicitly-captured strong reference in outer scope[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/implicit-strong-capture\ImplicitStrongCapture]8;;\]
[0;36m488 |[0;0m .map { _ in }
[0;36m489 |[0;0m )
[0;36m490 |[0;0m .flatMap { _ in
[0;36m|[0;0m |- [1;39mnote: [1;39m'self' implicitly strongly captured here[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39madd 'self' as a capture list item to silence[0;0m
[0;36m491 |[0;0m Future { promise in
[0;36m492 |[0;0m Task { [weak self] in
[0;36m|[0;0m |- [1;33mwarning: [1;39m'weak' ownership of capture 'self' differs from implicitly-captured strong reference in outer scope[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/implicit-strong-capture\ImplicitStrongCapture]8;;\]
[0;36m|[0;0m `- [1;39mnote: [1;39mexplicitly assign the capture list item to silence[0;0m
[0;36m493 |[0;0m guard let duration = try? await self?.getDuration() else {
[0;36m494 |[0;0m return
[#ImplicitStrongCapture]: <https://docs.swift.org/compiler/documentation/diagnostics/implicit-strong-capture>
Build complete.
{
"dependencies" : [
],
"manifest_display_name" : "YouTubePlayerKit",
"name" : "YouTubePlayerKit",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "15.0"
},
{
"name" : "macos",
"version" : "12.0"
},
{
"name" : "visionos",
"version" : "1.0"
}
],
"products" : [
{
"name" : "YouTubePlayerKit",
"targets" : [
"YouTubePlayerKit"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "YouTubePlayerKitTests",
"module_type" : "SwiftTarget",
"name" : "YouTubePlayerKitTests",
"path" : "Tests",
"sources" : [
"YouTubePlayerJavaScriptTests.swift",
"YouTubePlayerSourceTests.swift",
"YouTubePlayerTests.swift",
"YouTubeVideoThumbnailTests.swift"
],
"target_dependencies" : [
"YouTubePlayerKit"
],
"type" : "test"
},
{
"c99name" : "YouTubePlayerKit",
"module_type" : "SwiftTarget",
"name" : "YouTubePlayerKit",
"path" : "Sources",
"product_memberships" : [
"YouTubePlayerKit"
],
"sources" : [
"API/YouTubePlayer+API.swift",
"API/YouTubePlayer+CaptionsAPI.swift",
"API/YouTubePlayer+ModuleAPI.swift",
"API/YouTubePlayer+PlaybackAPI.swift",
"API/YouTubePlayer+PlaylistAPI.swift",
"API/YouTubePlayer+QueueingAPI.swift",
"API/YouTubePlayer+VideoThumbnailAPI.swift",
"API/YouTubePlayer+VolumeAPI.swift",
"Models/Captions/YouTubePlayer+CaptionsFontSize.swift",
"Models/Captions/YouTubePlayer+CaptionsLanguageCode.swift",
"Models/Captions/YouTubePlayer+CaptionsTranslationLanguage.swift",
"Models/Captions/YouTubePlayer+CationsTrack.swift",
"Models/Error/YouTubePlayer+APIError.swift",
"Models/Error/YouTubePlayer+Error.swift",
"Models/Event/YouTubePlayer+Event+Data.swift",
"Models/Event/YouTubePlayer+Event+Name.swift",
"Models/Event/YouTubePlayer+Event.swift",
"Models/JavaScript/YouTubePlayer+JavaScript.swift",
"Models/JavaScript/YouTubePlayer+JavaScriptEvaluationResponseConverter.swift",
"Models/Module/YouTubePlayer+Module+Option.swift",
"Models/Module/YouTubePlayer+Module.swift",
"Models/Playback/YouTubePlayer+PlaybackMetadata.swift",
"Models/Playback/YouTubePlayer+PlaybackQuality.swift",
"Models/Playback/YouTubePlayer+PlaybackRate.swift",
"Models/Playback/YouTubePlayer+PlaybackState.swift",
"Models/YouTubePlayer+Configuration.swift",
"Models/YouTubePlayer+FullscreenMode.swift",
"Models/YouTubePlayer+FullscreenState.swift",
"Models/YouTubePlayer+HTMLBuilder.swift",
"Models/YouTubePlayer+Information.swift",
"Models/YouTubePlayer+OpenURLAction.swift",
"Models/YouTubePlayer+Options.swift",
"Models/YouTubePlayer+Parameters.swift",
"Models/YouTubePlayer+Source.swift",
"Models/YouTubePlayer+State.swift",
"Models/YouTubePlayer+VolumeState.swift",
"Shared/ExpressibleByURL.swift",
"UI/HostingView/YouTubePlayerHostingView.swift",
"UI/View/YouTubePlayerView+Init.swift",
"UI/View/YouTubePlayerView.swift",
"UI/ViewController/YouTubePlayerViewController.swift",
"VideoThumbnail/YouTubeVideoThumbnail.swift",
"WebView/YouTubePlayerWebView+Evaluate.swift",
"WebView/YouTubePlayerWebView+Event.swift",
"WebView/YouTubePlayerWebView+WKNavigationDelegate.swift",
"WebView/YouTubePlayerWebView+WKUIDelegate.swift",
"WebView/YouTubePlayerWebView.swift",
"YouTubePlayer.swift"
],
"type" : "library"
}
],
"tools_version" : "6.0"
}
Done.