Build Information
Successful build of YouTubeKit, reference 0.3.2 (c7d4ff), with Swift 6.2 for macOS (SPM) on 15 Oct 2025 16:00:54 UTC.
Swift 6 data race errors: 0
Build Command
env DEVELOPER_DIR=/Applications/Xcode-26.0.0.app xcrun swift build --arch arm64Build Log
========================================
RunAll
========================================
Builder version: 4.68.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/alexeichhorn/YouTubeKit.git
Reference: 0.3.2
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/alexeichhorn/YouTubeKit
* tag 0.3.2 -> FETCH_HEAD
HEAD is now at c7d4ff4 Updated README.md
Cloned https://github.com/alexeichhorn/YouTubeKit.git
Revision (git rev-parse @):
c7d4ff4270fb40d354dede803abc0a0616b94eb2
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/alexeichhorn/YouTubeKit.git at 0.3.2
========================================
ResolveProductDependencies
========================================
Resolving dependencies ...
{
"identity": ".resolve-product-dependencies",
"name": "resolve-dependencies",
"url": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
"dependencies": [
{
"identity": "youtubekit",
"name": "YouTubeKit",
"url": "https://github.com/alexeichhorn/YouTubeKit.git",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/YouTubeKit",
"dependencies": [
]
}
]
}
Fetching https://github.com/alexeichhorn/YouTubeKit.git
[1/1570] Fetching youtubekit
Fetched https://github.com/alexeichhorn/YouTubeKit.git from cache (0.80s)
Creating working copy for https://github.com/alexeichhorn/YouTubeKit.git
Working copy of https://github.com/alexeichhorn/YouTubeKit.git resolved at 0.3.2 (c7d4ff4)
warning: '.resolve-product-dependencies': dependency 'youtubekit' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.2
Building package at path: $PWD
https://github.com/alexeichhorn/YouTubeKit.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-26.0.0.app xcrun swift build --arch arm64
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-49B95AFC49DCD68C.txt
[3/28] Emitting module YouTubeKit
[4/30] Compiling YouTubeKit Stream.swift
/Users/admin/builder/spi-builder-workspace/Sources/YouTubeKit/Models/Stream.swift:44:15: warning: 'mimeType' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
42 |
43 | let codecs: [String]
44 | (self.mimeType, codecs) = try Extraction.mimeTypeCodec(format.mimeType)
| `- warning: 'mimeType' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
45 |
46 | let mimeTypeComponents = self.mimeType.components(separatedBy: "/")
/Users/admin/builder/spi-builder-workspace/Sources/YouTubeKit/Models/Stream.swift:46:39: warning: 'mimeType' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
44 | (self.mimeType, codecs) = try Extraction.mimeTypeCodec(format.mimeType)
45 |
46 | let mimeTypeComponents = self.mimeType.components(separatedBy: "/")
| `- warning: 'mimeType' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
47 | self.type = mimeTypeComponents.first ?? ""
48 | self.subtype = mimeTypeComponents[safe: 1] ?? ""
/Users/admin/builder/spi-builder-workspace/Sources/YouTubeKit/Models/Stream.swift:47:14: warning: 'type' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
45 |
46 | let mimeTypeComponents = self.mimeType.components(separatedBy: "/")
47 | self.type = mimeTypeComponents.first ?? ""
| `- warning: 'type' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
48 | self.subtype = mimeTypeComponents[safe: 1] ?? ""
49 |
/Users/admin/builder/spi-builder-workspace/Sources/YouTubeKit/Models/Stream.swift:48:14: warning: 'subtype' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
46 | let mimeTypeComponents = self.mimeType.components(separatedBy: "/")
47 | self.type = mimeTypeComponents.first ?? ""
48 | self.subtype = mimeTypeComponents[safe: 1] ?? ""
| `- warning: 'subtype' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
49 |
50 | self.fileExtension = FileExtension(mimeType: self.mimeType)
/Users/admin/builder/spi-builder-workspace/Sources/YouTubeKit/Models/Stream.swift:50:59: warning: 'mimeType' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
48 | self.subtype = mimeTypeComponents[safe: 1] ?? ""
49 |
50 | self.fileExtension = FileExtension(mimeType: self.mimeType)
| `- warning: 'mimeType' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
51 |
52 | // codec decoding
/Users/admin/builder/spi-builder-workspace/Sources/YouTubeKit/Models/Stream.swift:57:21: warning: 'type' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
55 | self.audioCodec = AudioCodec(rawValue: codecs[1])
56 | } else if let codec = codecs.first {
57 | if self.type == "audio" {
| `- warning: 'type' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
58 | self.audioCodec = AudioCodec(rawValue: codec)
59 | self.videoCodec = nil
/Users/admin/builder/spi-builder-workspace/Sources/YouTubeKit/Models/Stream.swift:94:14: warning: 'type' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
92 |
93 | // Backward compatibility for deprecated `subtype` and `mimeType`
94 | self.type = (remoteStream.videoCodec != nil) ? "video" : "audio"
| `- warning: 'type' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
95 | self.subtype = ""
96 | self.mimeType = ""
/Users/admin/builder/spi-builder-workspace/Sources/YouTubeKit/Models/Stream.swift:95:14: warning: 'subtype' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
93 | // Backward compatibility for deprecated `subtype` and `mimeType`
94 | self.type = (remoteStream.videoCodec != nil) ? "video" : "audio"
95 | self.subtype = ""
| `- warning: 'subtype' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
96 | self.mimeType = ""
97 | }
/Users/admin/builder/spi-builder-workspace/Sources/YouTubeKit/Models/Stream.swift:96:14: warning: 'mimeType' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
94 | self.type = (remoteStream.videoCodec != nil) ? "video" : "audio"
95 | self.subtype = ""
96 | self.mimeType = ""
| `- warning: 'mimeType' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
97 | }
98 |
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
[5/30] Compiling YouTubeKit StreamQuery.swift
/Users/admin/builder/spi-builder-workspace/Sources/YouTubeKit/Models/Stream.swift:44:15: warning: 'mimeType' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
42 |
43 | let codecs: [String]
44 | (self.mimeType, codecs) = try Extraction.mimeTypeCodec(format.mimeType)
| `- warning: 'mimeType' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
45 |
46 | let mimeTypeComponents = self.mimeType.components(separatedBy: "/")
/Users/admin/builder/spi-builder-workspace/Sources/YouTubeKit/Models/Stream.swift:46:39: warning: 'mimeType' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
44 | (self.mimeType, codecs) = try Extraction.mimeTypeCodec(format.mimeType)
45 |
46 | let mimeTypeComponents = self.mimeType.components(separatedBy: "/")
| `- warning: 'mimeType' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
47 | self.type = mimeTypeComponents.first ?? ""
48 | self.subtype = mimeTypeComponents[safe: 1] ?? ""
/Users/admin/builder/spi-builder-workspace/Sources/YouTubeKit/Models/Stream.swift:47:14: warning: 'type' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
45 |
46 | let mimeTypeComponents = self.mimeType.components(separatedBy: "/")
47 | self.type = mimeTypeComponents.first ?? ""
| `- warning: 'type' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
48 | self.subtype = mimeTypeComponents[safe: 1] ?? ""
49 |
/Users/admin/builder/spi-builder-workspace/Sources/YouTubeKit/Models/Stream.swift:48:14: warning: 'subtype' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
46 | let mimeTypeComponents = self.mimeType.components(separatedBy: "/")
47 | self.type = mimeTypeComponents.first ?? ""
48 | self.subtype = mimeTypeComponents[safe: 1] ?? ""
| `- warning: 'subtype' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
49 |
50 | self.fileExtension = FileExtension(mimeType: self.mimeType)
/Users/admin/builder/spi-builder-workspace/Sources/YouTubeKit/Models/Stream.swift:50:59: warning: 'mimeType' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
48 | self.subtype = mimeTypeComponents[safe: 1] ?? ""
49 |
50 | self.fileExtension = FileExtension(mimeType: self.mimeType)
| `- warning: 'mimeType' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
51 |
52 | // codec decoding
/Users/admin/builder/spi-builder-workspace/Sources/YouTubeKit/Models/Stream.swift:57:21: warning: 'type' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
55 | self.audioCodec = AudioCodec(rawValue: codecs[1])
56 | } else if let codec = codecs.first {
57 | if self.type == "audio" {
| `- warning: 'type' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
58 | self.audioCodec = AudioCodec(rawValue: codec)
59 | self.videoCodec = nil
/Users/admin/builder/spi-builder-workspace/Sources/YouTubeKit/Models/Stream.swift:94:14: warning: 'type' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
92 |
93 | // Backward compatibility for deprecated `subtype` and `mimeType`
94 | self.type = (remoteStream.videoCodec != nil) ? "video" : "audio"
| `- warning: 'type' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
95 | self.subtype = ""
96 | self.mimeType = ""
/Users/admin/builder/spi-builder-workspace/Sources/YouTubeKit/Models/Stream.swift:95:14: warning: 'subtype' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
93 | // Backward compatibility for deprecated `subtype` and `mimeType`
94 | self.type = (remoteStream.videoCodec != nil) ? "video" : "audio"
95 | self.subtype = ""
| `- warning: 'subtype' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
96 | self.mimeType = ""
97 | }
/Users/admin/builder/spi-builder-workspace/Sources/YouTubeKit/Models/Stream.swift:96:14: warning: 'mimeType' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
94 | self.type = (remoteStream.videoCodec != nil) ? "video" : "audio"
95 | self.subtype = ""
96 | self.mimeType = ""
| `- warning: 'mimeType' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
97 | }
98 |
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
[6/30] Compiling YouTubeKit YouTubeMetadata.swift
/Users/admin/builder/spi-builder-workspace/Sources/YouTubeKit/Models/Stream.swift:44:15: warning: 'mimeType' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
42 |
43 | let codecs: [String]
44 | (self.mimeType, codecs) = try Extraction.mimeTypeCodec(format.mimeType)
| `- warning: 'mimeType' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
45 |
46 | let mimeTypeComponents = self.mimeType.components(separatedBy: "/")
/Users/admin/builder/spi-builder-workspace/Sources/YouTubeKit/Models/Stream.swift:46:39: warning: 'mimeType' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
44 | (self.mimeType, codecs) = try Extraction.mimeTypeCodec(format.mimeType)
45 |
46 | let mimeTypeComponents = self.mimeType.components(separatedBy: "/")
| `- warning: 'mimeType' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
47 | self.type = mimeTypeComponents.first ?? ""
48 | self.subtype = mimeTypeComponents[safe: 1] ?? ""
/Users/admin/builder/spi-builder-workspace/Sources/YouTubeKit/Models/Stream.swift:47:14: warning: 'type' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
45 |
46 | let mimeTypeComponents = self.mimeType.components(separatedBy: "/")
47 | self.type = mimeTypeComponents.first ?? ""
| `- warning: 'type' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
48 | self.subtype = mimeTypeComponents[safe: 1] ?? ""
49 |
/Users/admin/builder/spi-builder-workspace/Sources/YouTubeKit/Models/Stream.swift:48:14: warning: 'subtype' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
46 | let mimeTypeComponents = self.mimeType.components(separatedBy: "/")
47 | self.type = mimeTypeComponents.first ?? ""
48 | self.subtype = mimeTypeComponents[safe: 1] ?? ""
| `- warning: 'subtype' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
49 |
50 | self.fileExtension = FileExtension(mimeType: self.mimeType)
/Users/admin/builder/spi-builder-workspace/Sources/YouTubeKit/Models/Stream.swift:50:59: warning: 'mimeType' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
48 | self.subtype = mimeTypeComponents[safe: 1] ?? ""
49 |
50 | self.fileExtension = FileExtension(mimeType: self.mimeType)
| `- warning: 'mimeType' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
51 |
52 | // codec decoding
/Users/admin/builder/spi-builder-workspace/Sources/YouTubeKit/Models/Stream.swift:57:21: warning: 'type' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
55 | self.audioCodec = AudioCodec(rawValue: codecs[1])
56 | } else if let codec = codecs.first {
57 | if self.type == "audio" {
| `- warning: 'type' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
58 | self.audioCodec = AudioCodec(rawValue: codec)
59 | self.videoCodec = nil
/Users/admin/builder/spi-builder-workspace/Sources/YouTubeKit/Models/Stream.swift:94:14: warning: 'type' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
92 |
93 | // Backward compatibility for deprecated `subtype` and `mimeType`
94 | self.type = (remoteStream.videoCodec != nil) ? "video" : "audio"
| `- warning: 'type' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
95 | self.subtype = ""
96 | self.mimeType = ""
/Users/admin/builder/spi-builder-workspace/Sources/YouTubeKit/Models/Stream.swift:95:14: warning: 'subtype' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
93 | // Backward compatibility for deprecated `subtype` and `mimeType`
94 | self.type = (remoteStream.videoCodec != nil) ? "video" : "audio"
95 | self.subtype = ""
| `- warning: 'subtype' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
96 | self.mimeType = ""
97 | }
/Users/admin/builder/spi-builder-workspace/Sources/YouTubeKit/Models/Stream.swift:96:14: warning: 'mimeType' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
94 | self.type = (remoteStream.videoCodec != nil) ? "video" : "audio"
95 | self.subtype = ""
96 | self.mimeType = ""
| `- warning: 'mimeType' is deprecated: Might be empty if using remote fetching method. Use `videoCodec`, `audioCodec` or `fileExtension` instead. [#DeprecatedDeclaration]
97 | }
98 |
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
[7/30] Compiling YouTubeKit InnerTube.swift
[8/30] Compiling YouTubeKit Codecs.swift
[9/30] Compiling YouTubeKit FileExtension.swift
[10/30] Compiling YouTubeKit RemoteYouTubeClient.swift
/Users/admin/builder/spi-builder-workspace/Sources/YouTubeKit/YouTube.swift:344:19: warning: 'catch' block is unreachable because no errors are thrown in 'do' block
342 | do {
343 | return nil //try await Extraction.getVideoInfo(fromHTML: watchHTML) // (temporarily disabled)
344 | } catch let error {
| `- warning: 'catch' block is unreachable because no errors are thrown in 'do' block
345 | os_log("Couldn't extract video info from main watch html: %{public}@", log: log, type: .debug, error.localizedDescription)
346 | return nil
[11/30] Compiling YouTubeKit YouTube.swift
/Users/admin/builder/spi-builder-workspace/Sources/YouTubeKit/YouTube.swift:344:19: warning: 'catch' block is unreachable because no errors are thrown in 'do' block
342 | do {
343 | return nil //try await Extraction.getVideoInfo(fromHTML: watchHTML) // (temporarily disabled)
344 | } catch let error {
| `- warning: 'catch' block is unreachable because no errors are thrown in 'do' block
345 | os_log("Couldn't extract video info from main watch html: %{public}@", log: log, type: .debug, error.localizedDescription)
346 | return nil
[12/30] Compiling YouTubeKit Chunking.swift
[13/30] Compiling YouTubeKit RemoteStream.swift
[14/30] Compiling YouTubeKit URLSessionDelegates.swift
[15/30] Compiling YouTubeKit WebSocket.swift
[16/30] Compiling YouTubeKit Extraction.swift
[17/30] Compiling YouTubeKit Logging.swift
[18/30] Compiling YouTubeKit RegularExpression.swift
[19/30] Compiling YouTubeKit Retry.swift
[20/30] Compiling YouTubeKit ITag.swift
[21/30] Compiling YouTubeKit Livestream.swift
[22/30] Compiling YouTubeKit Method.swift
[23/30] Compiling YouTubeKit Parser.swift
[24/30] Compiling YouTubeKit AppIdentity.swift
[25/30] Compiling YouTubeKit Concurrency.swift
[26/30] Compiling YouTubeKit Foundation.swift
[27/30] Compiling YouTubeKit Lazy.swift
[28/30] Compiling YouTubeKit Cipher.swift
[29/30] Compiling YouTubeKit Errors.swift
[30/30] Compiling YouTubeKit AsyncCompatibility.swift
Build complete! (5.97s)
Build complete.
{
"dependencies" : [
],
"manifest_display_name" : "YouTubeKit",
"name" : "YouTubeKit",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
],
"products" : [
{
"name" : "YouTubeKit",
"targets" : [
"YouTubeKit"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "YouTubeKitTests",
"module_type" : "SwiftTarget",
"name" : "YouTubeKitTests",
"path" : "Tests/YouTubeKitTests",
"sources" : [
"CipherTests.swift",
"ExtensionTests.swift",
"Extensions.swift",
"ExtractionTests.swift",
"ITagsTests.swift",
"NSigTests.swift",
"ParserTests.swift",
"PlayabilityTests.swift",
"SignatureTests.swift",
"YouTubeKitTests.swift"
],
"target_dependencies" : [
"YouTubeKit"
],
"type" : "test"
},
{
"c99name" : "YouTubeKit",
"module_type" : "SwiftTarget",
"name" : "YouTubeKit",
"path" : "Sources/YouTubeKit",
"product_memberships" : [
"YouTubeKit"
],
"sources" : [
"Cipher.swift",
"Errors.swift",
"Extensions/AsyncCompatibility.swift",
"Extensions/Concurrency.swift",
"Extensions/Foundation.swift",
"Extensions/Lazy.swift",
"Extensions/Logging.swift",
"Extensions/RegularExpression.swift",
"Extensions/Retry.swift",
"Extensions/URLSessionDelegates.swift",
"Extensions/WebSocket.swift",
"Extraction.swift",
"InnerTube.swift",
"Models/Codecs.swift",
"Models/FileExtension.swift",
"Models/ITag.swift",
"Models/Livestream.swift",
"Models/Method.swift",
"Models/Stream.swift",
"Models/StreamQuery.swift",
"Models/YouTubeMetadata.swift",
"Parser.swift",
"Remote/AppIdentity.swift",
"Remote/Chunking.swift",
"Remote/Models/RemoteStream.swift",
"Remote/RemoteYouTubeClient.swift",
"YouTube.swift"
],
"type" : "library"
}
],
"tools_version" : "5.8"
}
✅ Doc result (pending) reported
========================================
GenerateDocs
========================================
Generating docs at path: $PWD/.docs/alexeichhorn/youtubekit/0.3.2
Repository: alexeichhorn/YouTubeKit
Swift version used: 6.2
Target: YouTubeKit
Extracting symbol information for 'YouTubeKit'...
Finished extracting symbol information for 'YouTubeKit'. (1.72s)
Building documentation for 'YouTubeKit'...
warning: Parameter 'allowOAuthCache' is missing documentation
--> Sources/YouTubeKit/YouTube.swift:75:120-75:120
73 | private let log = OSLog(YouTube.self)
74 |
75 + /// - parameter methods: Methods used to extract streams from the video - ordered by priority (Default: only local)
| ╰─suggestion: Document 'allowOAuthCache' parameter
76 | public init(videoID: String, proxies: [String: URL] = [:], useOAuth: Bool = false, allowOAuthCache: Bool = false, methods: [ExtractionMethod] = [.local]) {
77 | self.videoID = videoID
warning: Parameter 'proxies' is missing documentation
--> Sources/YouTubeKit/YouTube.swift:75:120-75:120
73 | private let log = OSLog(YouTube.self)
74 |
75 + /// - parameter methods: Methods used to extract streams from the video - ordered by priority (Default: only local)
| ╰─suggestion: Document 'proxies' parameter
76 | public init(videoID: String, proxies: [String: URL] = [:], useOAuth: Bool = false, allowOAuthCache: Bool = false, methods: [ExtractionMethod] = [.local]) {
77 | self.videoID = videoID
warning: Parameter 'videoID' is missing documentation
--> Sources/YouTubeKit/YouTube.swift:75:120-75:120
73 | private let log = OSLog(YouTube.self)
74 |
75 + /// - parameter methods: Methods used to extract streams from the video - ordered by priority (Default: only local)
| ╰─suggestion: Document 'videoID' parameter
76 | public init(videoID: String, proxies: [String: URL] = [:], useOAuth: Bool = false, allowOAuthCache: Bool = false, methods: [ExtractionMethod] = [.local]) {
77 | self.videoID = videoID
warning: Parameter 'useOAuth' is missing documentation
--> Sources/YouTubeKit/YouTube.swift:75:120-75:120
73 | private let log = OSLog(YouTube.self)
74 |
75 + /// - parameter methods: Methods used to extract streams from the video - ordered by priority (Default: only local)
| ╰─suggestion: Document 'useOAuth' parameter
76 | public init(videoID: String, proxies: [String: URL] = [:], useOAuth: Bool = false, allowOAuthCache: Bool = false, methods: [ExtractionMethod] = [.local]) {
77 | self.videoID = videoID
warning: Parameter 'proxies' is missing documentation
--> Sources/YouTubeKit/YouTube.swift:89:120-89:120
87 | }
88 |
89 + /// - parameter methods: Methods used to extract streams from the video - ordered by priority (Default: only local)
| ╰─suggestion: Document 'proxies' parameter
90 | public convenience init(url: URL, proxies: [String: URL] = [:], useOAuth: Bool = false, allowOAuthCache: Bool = false, methods: [ExtractionMethod] = [.local]) {
91 | let videoID = Extraction.extractVideoID(from: url.absoluteString) ?? ""
warning: Parameter 'useOAuth' is missing documentation
--> Sources/YouTubeKit/YouTube.swift:89:120-89:120
87 | }
88 |
89 + /// - parameter methods: Methods used to extract streams from the video - ordered by priority (Default: only local)
| ╰─suggestion: Document 'useOAuth' parameter
90 | public convenience init(url: URL, proxies: [String: URL] = [:], useOAuth: Bool = false, allowOAuthCache: Bool = false, methods: [ExtractionMethod] = [.local]) {
91 | let videoID = Extraction.extractVideoID(from: url.absoluteString) ?? ""
warning: Parameter 'url' is missing documentation
--> Sources/YouTubeKit/YouTube.swift:89:120-89:120
87 | }
88 |
89 + /// - parameter methods: Methods used to extract streams from the video - ordered by priority (Default: only local)
| ╰─suggestion: Document 'url' parameter
90 | public convenience init(url: URL, proxies: [String: URL] = [:], useOAuth: Bool = false, allowOAuthCache: Bool = false, methods: [ExtractionMethod] = [.local]) {
91 | let videoID = Extraction.extractVideoID(from: url.absoluteString) ?? ""
warning: Parameter 'allowOAuthCache' is missing documentation
--> Sources/YouTubeKit/YouTube.swift:89:120-89:120
87 | }
88 |
89 + /// - parameter methods: Methods used to extract streams from the video - ordered by priority (Default: only local)
| ╰─suggestion: Document 'allowOAuthCache' parameter
90 | public convenience init(url: URL, proxies: [String: URL] = [:], useOAuth: Bool = false, allowOAuthCache: Bool = false, methods: [ExtractionMethod] = [.local]) {
91 | let videoID = Extraction.extractVideoID(from: url.absoluteString) ?? ""
Finished building documentation for 'YouTubeKit' (0.17s)
Generated documentation archive at:
/Users/admin/builder/spi-builder-workspace/.docs/alexeichhorn/youtubekit/0.3.2
Fetching https://github.com/swiftlang/swift-docc-plugin
[1/2133] Fetching swift-docc-plugin
Fetched https://github.com/swiftlang/swift-docc-plugin from cache (1.14s)
Computing version for https://github.com/swiftlang/swift-docc-plugin
Computed https://github.com/swiftlang/swift-docc-plugin at 1.4.5 (3.40s)
Fetching https://github.com/swiftlang/swift-docc-symbolkit
[1/3553] Fetching swift-docc-symbolkit
Fetched https://github.com/swiftlang/swift-docc-symbolkit from cache (1.11s)
Computing version for https://github.com/swiftlang/swift-docc-symbolkit
Computed https://github.com/swiftlang/swift-docc-symbolkit at 1.0.0 (1.93s)
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/swiftlang/swift-docc-plugin
Working copy of https://github.com/swiftlang/swift-docc-plugin resolved at 1.4.5
Building for debugging...
[0/8] Write sources
[2/8] Write snippet-extract-tool-entitlement.plist
[2/8] Write sources
[4/8] Write swift-version-49B95AFC49DCD68C.txt
[6/53] Compiling SymbolKit GenericConstraint.swift
[7/53] Compiling SymbolKit GenericParameter.swift
[8/53] Compiling SymbolKit Generics.swift
[9/53] Compiling SymbolKit Namespace.swift
[10/57] Compiling SymbolKit DeclarationFragments.swift
[11/57] Compiling SymbolKit Fragment.swift
[12/57] Compiling SymbolKit FragmentKind.swift
[13/57] Compiling SymbolKit FunctionParameter.swift
[14/57] Compiling SymbolKit FunctionSignature.swift
[15/57] Compiling SymbolKit SemanticVersion.swift
[16/57] Compiling SymbolKit AccessControl.swift
[17/57] Compiling SymbolKit Availability.swift
[18/57] Compiling SymbolKit AvailabilityItem.swift
[19/57] Compiling SymbolKit Domain.swift
[20/57] Compiling SymbolKit Names.swift
[21/57] Compiling SymbolKit SPI.swift
[22/57] Compiling SymbolKit Snippet.swift
[23/57] Compiling SymbolKit Extension.swift
[24/57] Compiling SymbolKit Mixin+Equals.swift
[25/57] Compiling SymbolKit Mixin+Hash.swift
[26/57] Compiling SymbolKit Mixin.swift
[27/57] Compiling SymbolKit LineList.swift
[28/57] Compiling SymbolKit Position.swift
[29/57] Emitting module SymbolKit
[30/57] Compiling SymbolKit SourceRange.swift
[31/57] Compiling SymbolKit Metadata.swift
[32/57] Compiling SymbolKit Module.swift
[33/57] Compiling SymbolKit OperatingSystem.swift
[34/57] Compiling SymbolKit Platform.swift
[35/57] Compiling SymbolKit Relationship.swift
[36/57] Compiling SymbolKit RelationshipKind.swift
[37/57] Compiling SymbolKit SourceOrigin.swift
[38/57] Compiling SymbolKit GenericConstraints.swift
[39/57] Compiling SymbolKit Swift.swift
[40/57] Compiling SymbolKit Identifier.swift
[41/57] Compiling SymbolKit KindIdentifier.swift
[42/57] Compiling SymbolKit Location.swift
[43/57] Compiling SymbolKit Mutability.swift
[44/57] Compiling SymbolKit Symbol.swift
[45/57] Compiling SymbolKit SymbolKind.swift
[46/57] Compiling SymbolKit SymbolGraph.swift
[47/57] Compiling SymbolKit GraphCollector.swift
[48/57] Compiling SymbolKit UnifiedSymbol+Encodable.swift
[49/57] Compiling SymbolKit UnifiedSymbol.swift
[50/57] Compiling SymbolKit UnifiedSymbolGraph+Encodable.swift
[51/57] Compiling SymbolKit UnifiedSymbolGraph.swift
[52/57] Emitting module Snippets
[53/57] Compiling Snippets Snippet.swift
[54/57] Compiling Snippets SnippetParser.swift
[55/61] Compiling snippet_extract SymbolGraph+Snippet.swift
[56/61] Compiling snippet_extract URL+Status.swift
[57/61] Compiling snippet_extract SnippetBuildCommand.swift
[58/61] Emitting module snippet_extract
[58/61] Write Objects.LinkFileList
[59/61] Linking snippet-extract-tool
[60/61] Applying snippet-extract-tool
Build of product 'snippet-extract' complete! (3.01s)
Building for debugging...
[0/1] Write swift-version-49B95AFC49DCD68C.txt
Build of target: 'YouTubeKit' complete! (0.16s)
360
3 /Users/admin/builder/spi-builder-workspace/.docs/alexeichhorn/youtubekit/0.3.2
✅ Doc result (uploading) reported
========================================
SyncDocs
========================================
Doc archive source directory: $PWD/.docs/alexeichhorn/youtubekit/0.3.2
File count: 360
Doc size: 3.0MB
Preparing doc bundle ...
Uploading prod-alexeichhorn-youtubekit-0.3.2-2766f44d.zip to s3://spi-docs-inbox/prod-alexeichhorn-youtubekit-0.3.2-2766f44d.zip
Copying... [10%]
Copying... [20%]
Copying... [30%]
Copying... [40%]
Copying... [50%]
Copying... [61%]
Copying... [71%]
Copying... [81%]
Copying... [91%]
Copying... [100%]
Done.