Build Information
Successful build of pixivswift, reference v1.1.10 (72a109
), with Swift 6.1 for macOS (SPM) on 30 Apr 2025 03:32:54 UTC.
Swift 6 data race errors: 0
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures
Build Log
========================================
RunAll
========================================
Builder version: 4.61.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/theBreadCompany/pixivswift.git
Reference: v1.1.10
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/theBreadCompany/pixivswift
* tag v1.1.10 -> FETCH_HEAD
HEAD is now at 72a1095 fix commits for ZIPFoundation and SwiftGD because neither pushed their bug fixes as patches yet
Cloned https://github.com/theBreadCompany/pixivswift.git
Revision (git rev-parse @):
72a109589344e6281c6327cf568cea0c123ee216
SUCCESS checkout https://github.com/theBreadCompany/pixivswift.git at v1.1.10
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.1
Building package at path: $PWD
https://github.com/theBreadCompany/pixivswift.git
https://github.com/theBreadCompany/pixivswift.git
{
"dependencies" : [
{
"identity" : "zipfoundation",
"requirement" : {
"revision" : [
"fac78dfe5a886ad98e355ba98475b30b3753213a"
]
},
"type" : "sourceControl",
"url" : "https://github.com/weichsel/ZIPFoundation.git"
}
],
"manifest_display_name" : "pixivswift",
"name" : "pixivswift",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "10.11"
},
{
"name" : "ios",
"version" : "9.0"
}
],
"products" : [
{
"name" : "pixivswift",
"targets" : [
"pixivswift"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "pixivswiftWrapper",
"targets" : [
"pixivswiftWrapper",
"pixivswift"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "pixivauth",
"targets" : [
"pixivauth"
],
"type" : {
"executable" : null
}
}
],
"targets" : [
{
"c99name" : "pixivswiftWrapperTests",
"module_type" : "SwiftTarget",
"name" : "pixivswiftWrapperTests",
"path" : "Tests/pixivswiftWrapperTests",
"sources" : [
"TestErrors.swift",
"bookmarks.swift",
"core.swift",
"follow.swift",
"ugoira.swift"
],
"target_dependencies" : [
"pixivswiftWrapper"
],
"type" : "test"
},
{
"c99name" : "pixivswiftWrapper",
"module_type" : "SwiftTarget",
"name" : "pixivswiftWrapper",
"path" : "Sources/pixivswiftWrapper",
"product_dependencies" : [
"ZIPFoundation"
],
"product_memberships" : [
"pixivswiftWrapper"
],
"sources" : [
"File.swift",
"PixivDownloader+Metadata.swift",
"PixivDownloader.swift",
"utils.swift"
],
"target_dependencies" : [
"pixivswift"
],
"type" : "library"
},
{
"c99name" : "pixivswiftTests",
"module_type" : "SwiftTarget",
"name" : "pixivswiftTests",
"path" : "Tests/pixivswiftTests",
"sources" : [
"TestErrors.swift",
"bookmarks.swift",
"core.swift",
"related.swift"
],
"target_dependencies" : [
"pixivswift"
],
"type" : "test"
},
{
"c99name" : "pixivswift",
"module_type" : "SwiftTarget",
"name" : "pixivswift",
"path" : "Sources/pixivswift",
"product_memberships" : [
"pixivswift",
"pixivswiftWrapper",
"pixivauth"
],
"sources" : [
"PixivResults+Helper.swift",
"PixivResults+Operators.swift",
"PixivResults.swift",
"aapi+completionHandlers.swift",
"aapi+newNames.swift",
"aapi.swift",
"api.swift",
"headless_login.swift",
"utils.swift"
],
"type" : "library"
},
{
"c99name" : "pixivauth",
"module_type" : "SwiftTarget",
"name" : "pixivauth",
"path" : "Sources/pixivauth",
"product_memberships" : [
"pixivauth"
],
"sources" : [
"AppDelegate.swift",
"ViewController.swift",
"main.swift"
],
"target_dependencies" : [
"pixivswift"
],
"type" : "executable"
}
],
"tools_version" : "5.3"
}
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures
Building for debugging...
[0/10] Write sources
[2/10] Write pixivauth-entitlement.plist
[2/10] Copying PrivacyInfo.xcprivacy
[3/10] Write sources
[6/10] Write swift-version-2F0A5646E1D333AE.txt
[8/41] Emitting module ZIPFoundation
[9/43] Compiling ZIPFoundation URL+ZIP.swift
[10/43] Compiling ZIPFoundation resource_bundle_accessor.swift
[11/43] Compiling ZIPFoundation Archive.swift
[12/43] Compiling ZIPFoundation Data+Compression.swift
[13/43] Compiling ZIPFoundation Archive+MemoryFile.swift
[14/43] Compiling ZIPFoundation Archive+Progress.swift
[15/43] Compiling ZIPFoundation Archive+Reading.swift
[16/43] Compiling ZIPFoundation Archive+WritingDeprecated.swift
[17/43] Compiling ZIPFoundation Archive+ZIP64.swift
[18/43] Compiling ZIPFoundation FileManager+ZIP.swift
[19/43] Compiling ZIPFoundation FileManager+ZIPDeprecated.swift
[20/43] Compiling ZIPFoundation Data+CompressionDeprecated.swift
[21/43] Compiling ZIPFoundation Data+Serialization.swift
[22/43] Compiling ZIPFoundation Entry+ZIP64.swift
[23/43] Compiling ZIPFoundation Entry.swift
[24/43] Compiling ZIPFoundation Date+ZIP.swift
[25/43] Compiling ZIPFoundation Entry+Serialization.swift
[26/43] Compiling ZIPFoundation Archive+ReadingDeprecated.swift
[27/43] Compiling ZIPFoundation Archive+Writing.swift
[28/43] Compiling ZIPFoundation Archive+BackingConfiguration.swift
[29/43] Compiling ZIPFoundation Archive+Deprecated.swift
[30/43] Compiling ZIPFoundation Archive+Helpers.swift
[31/43] Compiling pixivswift aapi.swift
[32/43] Compiling pixivswift utils.swift
[33/43] Compiling pixivswift api.swift
/Users/admin/builder/spi-builder-workspace/Sources/pixivswift/api.swift:87:17: warning: mutation of captured var 'responseData' in concurrently-executing code
85 | if let data = data, error == nil {
86 | // the warning about thread safety will have to stay until I've refactored this thing to use actual async syntax
87 | responseData = String(data: data, encoding: .utf8) ?? ""
| `- warning: mutation of captured var 'responseData' in concurrently-executing code
88 | }
89 | semaphore.signal()
[34/43] Compiling pixivswift aapi+newNames.swift
[35/43] Compiling pixivswift aapi+completionHandlers.swift
[36/43] Compiling pixivswift PixivResults.swift
[37/43] Compiling pixivswift PixivResults+Operators.swift
[38/43] Compiling pixivswift PixivResults+Helper.swift
[39/43] Emitting module pixivswift
[40/43] Compiling pixivswift headless_login.swift
/Users/admin/builder/spi-builder-workspace/Sources/pixivswift/headless_login.swift:89:75: warning: mutation of captured var 'response' in concurrently-executing code
87 |
88 | let _ = URLSession.shared.dataTask(with: code_req) { data, _, error in
89 | guard let data = data, error == nil else { print("Failure!"); response = "{}"; return}
| `- warning: mutation of captured var 'response' in concurrently-executing code
90 | response = String(data: data, encoding: .utf8)!
91 | }.resume()
/Users/admin/builder/spi-builder-workspace/Sources/pixivswift/headless_login.swift:90:13: warning: mutation of captured var 'response' in concurrently-executing code
88 | let _ = URLSession.shared.dataTask(with: code_req) { data, _, error in
89 | guard let data = data, error == nil else { print("Failure!"); response = "{}"; return}
90 | response = String(data: data, encoding: .utf8)!
| `- warning: mutation of captured var 'response' in concurrently-executing code
91 | }.resume()
92 |
[41/52] Compiling pixivswiftWrapper File.swift
[42/52] Compiling pixivswiftWrapper utils.swift
[43/52] Emitting module pixivswiftWrapper
[44/52] Compiling pixivswiftWrapper PixivDownloader.swift
/Users/admin/builder/spi-builder-workspace/Sources/pixivswiftWrapper/PixivDownloader.swift:306:21: warning: capture of 'self' with non-sendable type 'PixivDownloader' in a '@Sendable' closure
21 | private let TOKEN_LIFETIME = 2700
22 |
23 | open class PixivDownloader {
| `- note: class 'PixivDownloader' does not conform to the 'Sendable' protocol
24 |
25 | public let auto_relogin: Bool
:
304 | let target = URL(fileURLWithPath: url.lastPathComponent, relativeTo: directory)
305 | if with_metadata {
306 | self.meta_update(metadata: illustration, illust_url: tempurl)
| `- warning: capture of 'self' with non-sendable type 'PixivDownloader' in a '@Sendable' closure
307 | }
308 | do { try FileManager.default.moveItem(at: tempurl, to: target) } catch { semaphore.signal(); return }
/Users/admin/builder/spi-builder-workspace/Sources/pixivswiftWrapper/PixivDownloader.swift:306:48: warning: capture of 'illustration' with non-sendable type 'PixivIllustration' in a '@Sendable' closure
304 | let target = URL(fileURLWithPath: url.lastPathComponent, relativeTo: directory)
305 | if with_metadata {
306 | self.meta_update(metadata: illustration, illust_url: tempurl)
| `- warning: capture of 'illustration' with non-sendable type 'PixivIllustration' in a '@Sendable' closure
307 | }
308 | do { try FileManager.default.moveItem(at: tempurl, to: target) } catch { semaphore.signal(); return }
/Users/admin/builder/spi-builder-workspace/Sources/pixivswift/PixivResults.swift:51:15: note: struct 'PixivIllustration' does not conform to the 'Sendable' protocol
49 | This `struct` holds any information about an illustration that exists on the pixiv servers.
50 | */
51 | public struct PixivIllustration: Codable {
| `- note: struct 'PixivIllustration' does not conform to the 'Sendable' protocol
52 |
53 | public var sanityLevel: Int
/Users/admin/builder/spi-builder-workspace/Sources/pixivswiftWrapper/PixivDownloader.swift:11:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'pixivswift'
9 | import Foundation
10 | import ZIPFoundation
11 | import pixivswift
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'pixivswift'
12 | #if canImport(ImageIO)
13 | import ImageIO
[45/52] Compiling pixivswiftWrapper PixivDownloader+Metadata.swift
[46/52] Compiling pixivauth main.swift
[47/52] Compiling pixivauth AppDelegate.swift
[48/52] Emitting module pixivauth
[49/52] Compiling pixivauth ViewController.swift
/Users/admin/builder/spi-builder-workspace/Sources/pixivauth/ViewController.swift:42:41: warning: cannot form key path to main actor-isolated property 'url'; this is an error in the Swift 6 language mode
40 | super.init()
41 |
42 | observation = observe(\.webview.url, options: .new) { _, change in
| `- warning: cannot form key path to main actor-isolated property 'url'; this is an error in the Swift 6 language mode
43 | self.changeHandler(change.newValue!!)
44 | }
/Users/admin/builder/spi-builder-workspace/Sources/pixivauth/ViewController.swift:43:13: warning: capture of 'self' with non-sendable type 'URLObserver' in a '@Sendable' closure
30 | }
31 |
32 | public class URLObserver: NSObject {
| `- note: class 'URLObserver' does not conform to the 'Sendable' protocol
33 | @objc var webview: WKWebView
34 | var observation: NSKeyValueObservation?
:
41 |
42 | observation = observe(\.webview.url, options: .new) { _, change in
43 | self.changeHandler(change.newValue!!)
| `- warning: capture of 'self' with non-sendable type 'URLObserver' in a '@Sendable' closure
44 | }
45 | }
/Users/admin/builder/spi-builder-workspace/Sources/pixivauth/ViewController.swift:53:17: warning: call to main actor-isolated instance method 'load' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
50 | public var observer: URLObserver?
51 |
52 | public func startLogin(onView webview: WKWebView, completionHandler: @escaping (String) -> Void) {
| `- note: add '@MainActor' to make instance method 'startLogin(onView:completionHandler:)' part of global actor 'MainActor'
53 | webview.load(createRequest(using: self.oauthData))
| `- warning: call to main actor-isolated instance method 'load' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
54 | self.observer = URLObserver(webview: webview, changeHandler: { url in
55 | let components = NSURLComponents(url: url, resolvingAgainstBaseURL: false)
WebKit.WKWebView.load:2:22: note: calls to instance method 'load' from outside of its actor context are implicitly asynchronous
1 | class WKWebView {
2 | @MainActor open func load(_ request: URLRequest) -> WKNavigation?}
| `- note: calls to instance method 'load' from outside of its actor context are implicitly asynchronous
3 |
[49/52] Write Objects.LinkFileList
[50/52] Linking pixivauth
[51/52] Applying pixivauth
Build complete! (11.51s)
Fetching https://github.com/weichsel/ZIPFoundation.git
[1/5562] Fetching zipfoundation
Fetched https://github.com/weichsel/ZIPFoundation.git from cache (1.24s)
Creating working copy for https://github.com/weichsel/ZIPFoundation.git
Working copy of https://github.com/weichsel/ZIPFoundation.git resolved at fac78dfe5a886ad98e355ba98475b30b3753213a
Build complete.
{
"dependencies" : [
{
"identity" : "zipfoundation",
"requirement" : {
"revision" : [
"fac78dfe5a886ad98e355ba98475b30b3753213a"
]
},
"type" : "sourceControl",
"url" : "https://github.com/weichsel/ZIPFoundation.git"
}
],
"manifest_display_name" : "pixivswift",
"name" : "pixivswift",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "10.11"
},
{
"name" : "ios",
"version" : "9.0"
}
],
"products" : [
{
"name" : "pixivswift",
"targets" : [
"pixivswift"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "pixivswiftWrapper",
"targets" : [
"pixivswiftWrapper",
"pixivswift"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "pixivauth",
"targets" : [
"pixivauth"
],
"type" : {
"executable" : null
}
}
],
"targets" : [
{
"c99name" : "pixivswiftWrapperTests",
"module_type" : "SwiftTarget",
"name" : "pixivswiftWrapperTests",
"path" : "Tests/pixivswiftWrapperTests",
"sources" : [
"TestErrors.swift",
"bookmarks.swift",
"core.swift",
"follow.swift",
"ugoira.swift"
],
"target_dependencies" : [
"pixivswiftWrapper"
],
"type" : "test"
},
{
"c99name" : "pixivswiftWrapper",
"module_type" : "SwiftTarget",
"name" : "pixivswiftWrapper",
"path" : "Sources/pixivswiftWrapper",
"product_dependencies" : [
"ZIPFoundation"
],
"product_memberships" : [
"pixivswiftWrapper"
],
"sources" : [
"File.swift",
"PixivDownloader+Metadata.swift",
"PixivDownloader.swift",
"utils.swift"
],
"target_dependencies" : [
"pixivswift"
],
"type" : "library"
},
{
"c99name" : "pixivswiftTests",
"module_type" : "SwiftTarget",
"name" : "pixivswiftTests",
"path" : "Tests/pixivswiftTests",
"sources" : [
"TestErrors.swift",
"bookmarks.swift",
"core.swift",
"related.swift"
],
"target_dependencies" : [
"pixivswift"
],
"type" : "test"
},
{
"c99name" : "pixivswift",
"module_type" : "SwiftTarget",
"name" : "pixivswift",
"path" : "Sources/pixivswift",
"product_memberships" : [
"pixivswift",
"pixivswiftWrapper",
"pixivauth"
],
"sources" : [
"PixivResults+Helper.swift",
"PixivResults+Operators.swift",
"PixivResults.swift",
"aapi+completionHandlers.swift",
"aapi+newNames.swift",
"aapi.swift",
"api.swift",
"headless_login.swift",
"utils.swift"
],
"type" : "library"
},
{
"c99name" : "pixivauth",
"module_type" : "SwiftTarget",
"name" : "pixivauth",
"path" : "Sources/pixivauth",
"product_memberships" : [
"pixivauth"
],
"sources" : [
"AppDelegate.swift",
"ViewController.swift",
"main.swift"
],
"target_dependencies" : [
"pixivswift"
],
"type" : "executable"
}
],
"tools_version" : "5.3"
}
Done.