This is a staging environment. For live and up-to-date package information, visit swiftpackageindex.com.

The Swift Package Index logo.Swift Package Index

Track the adoption of Swift 6 strict concurrency checks for data race safety. How many packages are Ready for Swift 6?

Build Information

Successful build of pixivswift with Swift 6.0 for macOS (SPM).

Swift 6 data race errors: 0

Build Command

env DEVELOPER_DIR=/Applications/Xcode-15.3.0.app xcrun --toolchain org.swift.600202405261a swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete

Build Log

========================================
RunAll
========================================
Builder version: 4.40.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/theBreadCompany/pixivswift.git
Reference: master
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/theBreadCompany/pixivswift
 * branch            master     -> FETCH_HEAD
 * [new branch]      master     -> origin/master
HEAD is now at a5e89f9 require packages only where the native libs arent available
Cloned https://github.com/theBreadCompany/pixivswift.git
Revision (git rev-parse @):
a5e89f98096f1207a4073deeceafa8decb197620
SUCCESS checkout https://github.com/theBreadCompany/pixivswift.git at master
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.0
Building package at path:  $workDir
https://github.com/theBreadCompany/pixivswift.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-15.3.0.app xcrun --toolchain org.swift.600202405261a swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Building for debugging...
[0/10] Write sources
[3/10] Copying PrivacyInfo.xcprivacy
[3/10] Write sources
[3/10] Write pixivauth-entitlement.plist
[6/10] Write swift-version-6F35C1178C84523A.txt
[8/41] Compiling ZIPFoundation FileManager+ZIP.swift
[9/41] Compiling ZIPFoundation FileManager+ZIPDeprecated.swift
[10/43] Compiling ZIPFoundation Archive+WritingDeprecated.swift
[11/43] Compiling ZIPFoundation Archive+ZIP64.swift
[12/43] Compiling ZIPFoundation Data+CompressionDeprecated.swift
[13/43] Compiling ZIPFoundation Data+Serialization.swift
[14/43] Compiling ZIPFoundation Archive+ReadingDeprecated.swift
[15/43] Compiling ZIPFoundation Archive+Writing.swift
[16/43] Compiling ZIPFoundation Entry+ZIP64.swift
[17/43] Compiling ZIPFoundation Entry.swift
[18/43] Emitting module ZIPFoundation
[19/43] Compiling ZIPFoundation Date+ZIP.swift
[20/43] Compiling ZIPFoundation Entry+Serialization.swift
[21/43] Compiling ZIPFoundation Archive.swift
[22/43] Compiling ZIPFoundation Data+Compression.swift
[23/43] Compiling ZIPFoundation Archive+BackingConfiguration.swift
[24/43] Compiling ZIPFoundation Archive+Deprecated.swift
[25/43] Compiling ZIPFoundation Archive+Helpers.swift
[26/43] Compiling ZIPFoundation Archive+MemoryFile.swift
[27/43] Compiling ZIPFoundation Archive+Progress.swift
[28/43] Compiling ZIPFoundation Archive+Reading.swift
[29/43] Compiling ZIPFoundation URL+ZIP.swift
[30/43] Compiling ZIPFoundation resource_bundle_accessor.swift
[31/43] Compiling pixivswift api.swift
/Users/admin/builder/spi-builder-workspace/Sources/pixivswift/api.swift:88:13: warning: mutation of captured var 'responseData' in concurrently-executing code; this is an error in the Swift 6 language mode
 86 |         let task = URLSession.shared.dataTask(with: req ) { data, _, error in
 87 |             guard let data = data, error == nil else { semaphore.signal(); return }
 88 |             responseData = String(data: data, encoding: .utf8) ?? ""
    |             `- warning: mutation of captured var 'responseData' in concurrently-executing code; this is an error in the Swift 6 language mode
 89 |             semaphore.signal()
 90 |         }
[32/43] Compiling pixivswift aapi.swift
[33/43] Compiling pixivswift utils.swift
[34/43] Compiling pixivswift aapi+completionHandlers.swift
[35/43] Compiling pixivswift PixivResults.swift
[36/43] Compiling pixivswift PixivResults+Operators.swift
[37/43] Emitting module pixivswift
[38/43] Compiling pixivswift PixivResults+Helper.swift
[39/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; this is an error in the Swift 6 language mode
 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; this is an error in the Swift 6 language mode
 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; this is an error in the Swift 6 language mode
 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; this is an error in the Swift 6 language mode
 91 |         }.resume()
 92 |
[40/43] Compiling pixivswift aapi+newNames.swift
[41/52] Compiling pixivswiftWrapper utils.swift
[42/52] Compiling pixivswiftWrapper File.swift
[43/52] Compiling pixivauth main.swift
[44/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; this is an error in the Swift 6 language mode
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; this is an error in the Swift 6 language mode
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:11:26: note: calls to instance method 'load' from outside of its actor context are implicitly asynchronous
  9 |     public init(frame: CGRect, configuration: WKWebViewConfiguration)
 10 |     public init?(coder: NSCoder)
 11 |     @MainActor open func load(_ request: URLRequest) -> WKNavigation?
    |                          `- note: calls to instance method 'load' from outside of its actor context are implicitly asynchronous
 12 |     @available(swift, obsoleted: 3, renamed: "load(_:)")
 13 |     open func loadRequest(_ request: URLRequest) -> WKNavigation?
[45/52] Compiling pixivauth AppDelegate.swift
[46/52] Emitting module pixivauth
[46/52] Write Objects.LinkFileList
[48/52] Compiling pixivswiftWrapper PixivDownloader+Metadata.swift
[49/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; this is an error in the Swift 6 language mode
 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; this is an error in the Swift 6 language mode
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; this is an error in the Swift 6 language mode
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; this is an error in the Swift 6 language mode
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
[50/52] Emitting module pixivswiftWrapper
[50/52] Linking pixivauth
[51/52] Applying pixivauth
Build complete! (34.67s)
Fetching https://github.com/weichsel/ZIPFoundation.git
[1/5122] Fetching zipfoundation
Fetched https://github.com/weichsel/ZIPFoundation.git from cache (1.32s)
Computing version for https://github.com/weichsel/ZIPFoundation.git
Computed https://github.com/weichsel/ZIPFoundation.git at 0.9.19 (0.52s)
Creating working copy for https://github.com/weichsel/ZIPFoundation.git
Working copy of https://github.com/weichsel/ZIPFoundation.git resolved at 0.9.19
Build complete.
{
  "dependencies" : [
    {
      "identity" : "zipfoundation",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "0.9.0",
            "upper_bound" : "1.0.0"
          }
        ]
      },
      "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.
This is a staging environment. For live and up-to-date package information, visit swiftpackageindex.com.