The Swift Package Index logo.Swift Package Index

Has it really been five years since Swift Package Index launched? Read our anniversary blog post!

Build Information

Failed to build SwiftlyImageLoader, reference 1.1.0 (b5609b), with Swift 6.1 for Linux on 10 May 2025 21:06:37 UTC.

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4609320-0":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu 2>&1

Build Log

========================================
RunAll
========================================
Builder version: 4.61.3
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/mohsinbmwm3/SwiftlyImageLoader.git
Reference: 1.1.0
Initialized empty Git repository in /host/spi-builder-workspace/.git/
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: 	git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: 	git branch -m <name>
From https://github.com/mohsinbmwm3/SwiftlyImageLoader
 * tag               1.1.0      -> FETCH_HEAD
HEAD is now at b5609bb Updated ImageTransforms to Apply custom resizing, cropping, grayscale, or circular masks before caching or display — with per-request flexibility.
Cloned https://github.com/mohsinbmwm3/SwiftlyImageLoader.git
Revision (git rev-parse @):
b5609bb888c7a4410abac6891b8874ae073be740
SUCCESS checkout https://github.com/mohsinbmwm3/SwiftlyImageLoader.git at 1.1.0
========================================
Build
========================================
Selected platform:         linux
Swift version:             6.1
Building package at path:  $PWD
https://github.com/mohsinbmwm3/SwiftlyImageLoader.git
https://github.com/mohsinbmwm3/SwiftlyImageLoader.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
{
  "dependencies" : [
  ],
  "manifest_display_name" : "SwiftlyImageLoader",
  "name" : "SwiftlyImageLoader",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "13.0"
    },
    {
      "name" : "macos",
      "version" : "10.15"
    },
    {
      "name" : "tvos",
      "version" : "13.0"
    },
    {
      "name" : "watchos",
      "version" : "6.0"
    }
  ],
  "products" : [
    {
      "name" : "SwiftlyImageLoader",
      "targets" : [
        "SwiftlyImageLoader"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "SwiftlyImageLoaderUIKit",
      "targets" : [
        "SwiftlyImageLoaderUIKit"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "SwiftlyImageLoaderAppKit",
      "targets" : [
        "SwiftlyImageLoaderAppKit"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "SwiftlyImageLoaderSwiftUI",
      "targets" : [
        "SwiftlyImageLoaderSwiftUI"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "SwiftlyImageLoaderUIKit",
      "module_type" : "SwiftTarget",
      "name" : "SwiftlyImageLoaderUIKit",
      "path" : "Sources/SwiftlyImageLoaderUIKit",
      "product_memberships" : [
        "SwiftlyImageLoaderUIKit"
      ],
      "sources" : [
        "UIImageView+ImageLoader.swift"
      ],
      "target_dependencies" : [
        "SwiftlyImageLoader"
      ],
      "type" : "library"
    },
    {
      "c99name" : "SwiftlyImageLoaderSwiftUI",
      "module_type" : "SwiftTarget",
      "name" : "SwiftlyImageLoaderSwiftUI",
      "path" : "Sources/SwiftlyImageLoaderSwiftUI",
      "product_memberships" : [
        "SwiftlyImageLoaderSwiftUI"
      ],
      "sources" : [
        "SwiftlyAsyncImage.swift"
      ],
      "target_dependencies" : [
        "SwiftlyImageLoader"
      ],
      "type" : "library"
    },
    {
      "c99name" : "SwiftlyImageLoaderAppKit",
      "module_type" : "SwiftTarget",
      "name" : "SwiftlyImageLoaderAppKit",
      "path" : "Sources/SwiftlyImageLoaderAppKit",
      "product_memberships" : [
        "SwiftlyImageLoaderAppKit"
      ],
      "sources" : [
        "NSImageView+ImageLoader.swift"
      ],
      "target_dependencies" : [
        "SwiftlyImageLoader"
      ],
      "type" : "library"
    },
    {
      "c99name" : "SwiftlyImageLoader",
      "module_type" : "SwiftTarget",
      "name" : "SwiftlyImageLoader",
      "path" : "Sources/SwiftlyImageLoader",
      "product_memberships" : [
        "SwiftlyImageLoader",
        "SwiftlyImageLoaderUIKit",
        "SwiftlyImageLoaderAppKit",
        "SwiftlyImageLoaderSwiftUI"
      ],
      "sources" : [
        "DiskCache.swift",
        "ImageCache.swift",
        "ImageLoader.swift",
        "LogLevel.swift",
        "SwiftlyImageLoader.swift",
        "SwiftlyImageLoaderConfiguration.swift",
        "Utils/ImageResizer.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "6.0"
}
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-0":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats 2>&1
basic-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:3bdcac04179f4ed3e5b8e9dbd6e74bbf5ebc0f4fde48bbaad7d1e5c757e65bcb
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.1-latest
Building for debugging...
[0/5] Write sources
[4/5] Write swift-version-24593BA9C3E375BF.txt
[6/13] Compiling SwiftlyImageLoader LogLevel.swift
[7/13] Compiling SwiftlyImageLoader ImageLoader.swift
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:25:26: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 23 |     /// Current configuration used by the image loader.
 24 |     private(set) var config: SwiftlyImageLoaderConfiguration = .default
 25 |     private let session: URLSession = .shared
    |                          `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 26 |     private var ongoingTasks = [URL: (task: Task<Void, Never>, completions: [@Sendable (CrossPlatformImage?) -> Void])]()
 27 |     private let taskQueue = DispatchQueue(label: "com.swiftlyImageLoader.taskQueue")
Foundation.URLSession:2:18: note: 'URLSession' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLSession = AnyObject
  |                  `- note: 'URLSession' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:25:40: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
 23 |     /// Current configuration used by the image loader.
 24 |     private(set) var config: SwiftlyImageLoaderConfiguration = .default
 25 |     private let session: URLSession = .shared
    |                                        `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
 26 |     private var ongoingTasks = [URL: (task: Task<Void, Never>, completions: [@Sendable (CrossPlatformImage?) -> Void])]()
 27 |     private let taskQueue = DispatchQueue(label: "com.swiftlyImageLoader.taskQueue")
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:26:89: error: cannot find type 'CrossPlatformImage' in scope
 24 |     private(set) var config: SwiftlyImageLoaderConfiguration = .default
 25 |     private let session: URLSession = .shared
 26 |     private var ongoingTasks = [URL: (task: Task<Void, Never>, completions: [@Sendable (CrossPlatformImage?) -> Void])]()
    |                                                                                         `- error: cannot find type 'CrossPlatformImage' in scope
 27 |     private let taskQueue = DispatchQueue(label: "com.swiftlyImageLoader.taskQueue")
 28 |
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:49:50: error: cannot find type 'CrossPlatformImage' in scope
 47 |
 48 |     public func loadImage(from url: URL,
 49 |                           transform: (@Sendable (CrossPlatformImage) -> CrossPlatformImage)?,
    |                                                  `- error: cannot find type 'CrossPlatformImage' in scope
 50 |                           completion: @escaping @Sendable (CrossPlatformImage?) -> Void) {
 51 |         taskQueue.async {
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:49:73: error: cannot find type 'CrossPlatformImage' in scope
 47 |
 48 |     public func loadImage(from url: URL,
 49 |                           transform: (@Sendable (CrossPlatformImage) -> CrossPlatformImage)?,
    |                                                                         `- error: cannot find type 'CrossPlatformImage' in scope
 50 |                           completion: @escaping @Sendable (CrossPlatformImage?) -> Void) {
 51 |         taskQueue.async {
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:50:60: error: cannot find type 'CrossPlatformImage' in scope
 48 |     public func loadImage(from url: URL,
 49 |                           transform: (@Sendable (CrossPlatformImage) -> CrossPlatformImage)?,
 50 |                           completion: @escaping @Sendable (CrossPlatformImage?) -> Void) {
    |                                                            `- error: cannot find type 'CrossPlatformImage' in scope
 51 |         taskQueue.async {
 52 |             if let existing = self.ongoingTasks[url] {
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:128:60: error: cannot find type 'CrossPlatformImage' in scope
126 |     }
127 |
128 |     private func callCompletions(for url: URL, with image: CrossPlatformImage?) {
    |                                                            `- error: cannot find type 'CrossPlatformImage' in scope
129 |         taskQueue.async {
130 |             let completions = self.ongoingTasks[url]?.completions ?? []
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:64:85: error: cannot find 'CrossPlatformImage' in scope
 62 |                 let key = url.absoluteString
 63 |
 64 |                 if let data = await ImageCache.shared.get(forKey: key), let image = CrossPlatformImage(data: data) {
    |                                                                                     `- error: cannot find 'CrossPlatformImage' in scope
 65 |                     self.log("✅ Loaded from memory cache: \(url.absoluteString)", level: .basic)
 66 |
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:75:84: error: cannot find 'CrossPlatformImage' in scope
 73 |                 }
 74 |
 75 |                 if let data = await DiskCache.shared.get(forKey: key), let image = CrossPlatformImage(data: data) {
    |                                                                                    `- error: cannot find 'CrossPlatformImage' in scope
 76 |                     self.log("✅ Loaded from disk cache: \(url.absoluteString)", level: .basic)
 77 |
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:92:36: error: cannot find 'CrossPlatformImage' in scope
 90 |                 do {
 91 |                     let (data, _) = try await self.session.data(from: url)
 92 |                     if let image = CrossPlatformImage(data: data) {
    |                                    `- error: cannot find 'CrossPlatformImage' in scope
 93 |                         self.log("✅ Downloaded from network: \(url.absoluteString)", level: .basic)
 94 |                         let finalImage = await MainActor.run {
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:51:25: error: trailing closure passed to parameter of type 'DispatchWorkItem' that does not accept a closure
 49 |                           transform: (@Sendable (CrossPlatformImage) -> CrossPlatformImage)?,
 50 |                           completion: @escaping @Sendable (CrossPlatformImage?) -> Void) {
 51 |         taskQueue.async {
    |                         `- error: trailing closure passed to parameter of type 'DispatchWorkItem' that does not accept a closure
 52 |             if let existing = self.ongoingTasks[url] {
 53 |                 self.log("🔁 Joining existing task for: \(url.absoluteString)", level: .verbose)
Dispatch.DispatchQueue.async:3:15: note: 'async(execute:)' declared here
1 | class DispatchQueue {
2 | @available(macOS 10.10, iOS 8.0, *)
3 |   public func async(execute workItem: DispatchWorkItem)}
  |               `- note: 'async(execute:)' declared here
4 |
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:141:25: error: trailing closure passed to parameter of type 'DispatchWorkItem' that does not accept a closure
139 |     /// - Parameter url: The URL for which to cancel the task.
140 |     public func cancelLoad(for url: URL) {
141 |         taskQueue.async {
    |                         `- error: trailing closure passed to parameter of type 'DispatchWorkItem' that does not accept a closure
142 |             if let entry = self.ongoingTasks[url] {
143 |                 self.log("🔴 Cancelling task for: \(url.absoluteString)", level: .verbose)
Dispatch.DispatchQueue.async:3:15: note: 'async(execute:)' declared here
1 | class DispatchQueue {
2 | @available(macOS 10.10, iOS 8.0, *)
3 |   public func async(execute workItem: DispatchWorkItem)}
  |               `- note: 'async(execute:)' declared here
4 |
[8/13] Compiling SwiftlyImageLoader ImageCache.swift
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:26:89: error: cannot find type 'CrossPlatformImage' in scope
 24 |     private(set) var config: SwiftlyImageLoaderConfiguration = .default
 25 |     private let session: URLSession = .shared
 26 |     private var ongoingTasks = [URL: (task: Task<Void, Never>, completions: [@Sendable (CrossPlatformImage?) -> Void])]()
    |                                                                                         `- error: cannot find type 'CrossPlatformImage' in scope
 27 |     private let taskQueue = DispatchQueue(label: "com.swiftlyImageLoader.taskQueue")
 28 |
[9/13] Compiling SwiftlyImageLoader ImageResizer.swift
[10/13] Compiling SwiftlyImageLoader SwiftlyImageLoaderConfiguration.swift
[11/13] Compiling SwiftlyImageLoader SwiftlyImageLoader.swift
error: emit-module command failed with exit code 1 (use -v to see invocation)
[12/13] Emitting module SwiftlyImageLoader
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:25:26: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 23 |     /// Current configuration used by the image loader.
 24 |     private(set) var config: SwiftlyImageLoaderConfiguration = .default
 25 |     private let session: URLSession = .shared
    |                          `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 26 |     private var ongoingTasks = [URL: (task: Task<Void, Never>, completions: [@Sendable (CrossPlatformImage?) -> Void])]()
 27 |     private let taskQueue = DispatchQueue(label: "com.swiftlyImageLoader.taskQueue")
Foundation.URLSession:2:18: note: 'URLSession' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLSession = AnyObject
  |                  `- note: 'URLSession' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:25:40: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
 23 |     /// Current configuration used by the image loader.
 24 |     private(set) var config: SwiftlyImageLoaderConfiguration = .default
 25 |     private let session: URLSession = .shared
    |                                        `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
 26 |     private var ongoingTasks = [URL: (task: Task<Void, Never>, completions: [@Sendable (CrossPlatformImage?) -> Void])]()
 27 |     private let taskQueue = DispatchQueue(label: "com.swiftlyImageLoader.taskQueue")
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:26:89: error: cannot find type 'CrossPlatformImage' in scope
 24 |     private(set) var config: SwiftlyImageLoaderConfiguration = .default
 25 |     private let session: URLSession = .shared
 26 |     private var ongoingTasks = [URL: (task: Task<Void, Never>, completions: [@Sendable (CrossPlatformImage?) -> Void])]()
    |                                                                                         `- error: cannot find type 'CrossPlatformImage' in scope
 27 |     private let taskQueue = DispatchQueue(label: "com.swiftlyImageLoader.taskQueue")
 28 |
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:49:50: error: cannot find type 'CrossPlatformImage' in scope
 47 |
 48 |     public func loadImage(from url: URL,
 49 |                           transform: (@Sendable (CrossPlatformImage) -> CrossPlatformImage)?,
    |                                                  `- error: cannot find type 'CrossPlatformImage' in scope
 50 |                           completion: @escaping @Sendable (CrossPlatformImage?) -> Void) {
 51 |         taskQueue.async {
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:49:73: error: cannot find type 'CrossPlatformImage' in scope
 47 |
 48 |     public func loadImage(from url: URL,
 49 |                           transform: (@Sendable (CrossPlatformImage) -> CrossPlatformImage)?,
    |                                                                         `- error: cannot find type 'CrossPlatformImage' in scope
 50 |                           completion: @escaping @Sendable (CrossPlatformImage?) -> Void) {
 51 |         taskQueue.async {
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:50:60: error: cannot find type 'CrossPlatformImage' in scope
 48 |     public func loadImage(from url: URL,
 49 |                           transform: (@Sendable (CrossPlatformImage) -> CrossPlatformImage)?,
 50 |                           completion: @escaping @Sendable (CrossPlatformImage?) -> Void) {
    |                                                            `- error: cannot find type 'CrossPlatformImage' in scope
 51 |         taskQueue.async {
 52 |             if let existing = self.ongoingTasks[url] {
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:128:60: error: cannot find type 'CrossPlatformImage' in scope
126 |     }
127 |
128 |     private func callCompletions(for url: URL, with image: CrossPlatformImage?) {
    |                                                            `- error: cannot find type 'CrossPlatformImage' in scope
129 |         taskQueue.async {
130 |             let completions = self.ongoingTasks[url]?.completions ?? []
[13/13] Compiling SwiftlyImageLoader DiskCache.swift
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:26:89: error: cannot find type 'CrossPlatformImage' in scope
 24 |     private(set) var config: SwiftlyImageLoaderConfiguration = .default
 25 |     private let session: URLSession = .shared
 26 |     private var ongoingTasks = [URL: (task: Task<Void, Never>, completions: [@Sendable (CrossPlatformImage?) -> Void])]()
    |                                                                                         `- error: cannot find type 'CrossPlatformImage' in scope
 27 |     private let taskQueue = DispatchQueue(label: "com.swiftlyImageLoader.taskQueue")
 28 |
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-0":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu 2>&1
basic-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:3bdcac04179f4ed3e5b8e9dbd6e74bbf5ebc0f4fde48bbaad7d1e5c757e65bcb
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.1-latest
[0/1] Planning build
Building for debugging...
[0/1] Write swift-version-24593BA9C3E375BF.txt
[2/9] Compiling SwiftlyImageLoader ImageResizer.swift
[3/9] Compiling SwiftlyImageLoader ImageLoader.swift
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:25:26: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 23 |     /// Current configuration used by the image loader.
 24 |     private(set) var config: SwiftlyImageLoaderConfiguration = .default
 25 |     private let session: URLSession = .shared
    |                          `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 26 |     private var ongoingTasks = [URL: (task: Task<Void, Never>, completions: [@Sendable (CrossPlatformImage?) -> Void])]()
 27 |     private let taskQueue = DispatchQueue(label: "com.swiftlyImageLoader.taskQueue")
Foundation.URLSession:2:18: note: 'URLSession' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLSession = AnyObject
  |                  `- note: 'URLSession' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:25:40: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
 23 |     /// Current configuration used by the image loader.
 24 |     private(set) var config: SwiftlyImageLoaderConfiguration = .default
 25 |     private let session: URLSession = .shared
    |                                        `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
 26 |     private var ongoingTasks = [URL: (task: Task<Void, Never>, completions: [@Sendable (CrossPlatformImage?) -> Void])]()
 27 |     private let taskQueue = DispatchQueue(label: "com.swiftlyImageLoader.taskQueue")
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:26:89: error: cannot find type 'CrossPlatformImage' in scope
 24 |     private(set) var config: SwiftlyImageLoaderConfiguration = .default
 25 |     private let session: URLSession = .shared
 26 |     private var ongoingTasks = [URL: (task: Task<Void, Never>, completions: [@Sendable (CrossPlatformImage?) -> Void])]()
    |                                                                                         `- error: cannot find type 'CrossPlatformImage' in scope
 27 |     private let taskQueue = DispatchQueue(label: "com.swiftlyImageLoader.taskQueue")
 28 |
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:49:50: error: cannot find type 'CrossPlatformImage' in scope
 47 |
 48 |     public func loadImage(from url: URL,
 49 |                           transform: (@Sendable (CrossPlatformImage) -> CrossPlatformImage)?,
    |                                                  `- error: cannot find type 'CrossPlatformImage' in scope
 50 |                           completion: @escaping @Sendable (CrossPlatformImage?) -> Void) {
 51 |         taskQueue.async {
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:49:73: error: cannot find type 'CrossPlatformImage' in scope
 47 |
 48 |     public func loadImage(from url: URL,
 49 |                           transform: (@Sendable (CrossPlatformImage) -> CrossPlatformImage)?,
    |                                                                         `- error: cannot find type 'CrossPlatformImage' in scope
 50 |                           completion: @escaping @Sendable (CrossPlatformImage?) -> Void) {
 51 |         taskQueue.async {
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:50:60: error: cannot find type 'CrossPlatformImage' in scope
 48 |     public func loadImage(from url: URL,
 49 |                           transform: (@Sendable (CrossPlatformImage) -> CrossPlatformImage)?,
 50 |                           completion: @escaping @Sendable (CrossPlatformImage?) -> Void) {
    |                                                            `- error: cannot find type 'CrossPlatformImage' in scope
 51 |         taskQueue.async {
 52 |             if let existing = self.ongoingTasks[url] {
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:128:60: error: cannot find type 'CrossPlatformImage' in scope
126 |     }
127 |
128 |     private func callCompletions(for url: URL, with image: CrossPlatformImage?) {
    |                                                            `- error: cannot find type 'CrossPlatformImage' in scope
129 |         taskQueue.async {
130 |             let completions = self.ongoingTasks[url]?.completions ?? []
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:64:85: error: cannot find 'CrossPlatformImage' in scope
 62 |                 let key = url.absoluteString
 63 |
 64 |                 if let data = await ImageCache.shared.get(forKey: key), let image = CrossPlatformImage(data: data) {
    |                                                                                     `- error: cannot find 'CrossPlatformImage' in scope
 65 |                     self.log("✅ Loaded from memory cache: \(url.absoluteString)", level: .basic)
 66 |
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:75:84: error: cannot find 'CrossPlatformImage' in scope
 73 |                 }
 74 |
 75 |                 if let data = await DiskCache.shared.get(forKey: key), let image = CrossPlatformImage(data: data) {
    |                                                                                    `- error: cannot find 'CrossPlatformImage' in scope
 76 |                     self.log("✅ Loaded from disk cache: \(url.absoluteString)", level: .basic)
 77 |
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:92:36: error: cannot find 'CrossPlatformImage' in scope
 90 |                 do {
 91 |                     let (data, _) = try await self.session.data(from: url)
 92 |                     if let image = CrossPlatformImage(data: data) {
    |                                    `- error: cannot find 'CrossPlatformImage' in scope
 93 |                         self.log("✅ Downloaded from network: \(url.absoluteString)", level: .basic)
 94 |                         let finalImage = await MainActor.run {
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:51:25: error: trailing closure passed to parameter of type 'DispatchWorkItem' that does not accept a closure
 49 |                           transform: (@Sendable (CrossPlatformImage) -> CrossPlatformImage)?,
 50 |                           completion: @escaping @Sendable (CrossPlatformImage?) -> Void) {
 51 |         taskQueue.async {
    |                         `- error: trailing closure passed to parameter of type 'DispatchWorkItem' that does not accept a closure
 52 |             if let existing = self.ongoingTasks[url] {
 53 |                 self.log("🔁 Joining existing task for: \(url.absoluteString)", level: .verbose)
Dispatch.DispatchQueue.async:3:15: note: 'async(execute:)' declared here
1 | class DispatchQueue {
2 | @available(macOS 10.10, iOS 8.0, *)
3 |   public func async(execute workItem: DispatchWorkItem)}
  |               `- note: 'async(execute:)' declared here
4 |
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:141:25: error: trailing closure passed to parameter of type 'DispatchWorkItem' that does not accept a closure
139 |     /// - Parameter url: The URL for which to cancel the task.
140 |     public func cancelLoad(for url: URL) {
141 |         taskQueue.async {
    |                         `- error: trailing closure passed to parameter of type 'DispatchWorkItem' that does not accept a closure
142 |             if let entry = self.ongoingTasks[url] {
143 |                 self.log("🔴 Cancelling task for: \(url.absoluteString)", level: .verbose)
Dispatch.DispatchQueue.async:3:15: note: 'async(execute:)' declared here
1 | class DispatchQueue {
2 | @available(macOS 10.10, iOS 8.0, *)
3 |   public func async(execute workItem: DispatchWorkItem)}
  |               `- note: 'async(execute:)' declared here
4 |
[4/9] Compiling SwiftlyImageLoader SwiftlyImageLoader.swift
[5/9] Compiling SwiftlyImageLoader LogLevel.swift
[6/9] Compiling SwiftlyImageLoader SwiftlyImageLoaderConfiguration.swift
error: emit-module command failed with exit code 1 (use -v to see invocation)
[7/9] Emitting module SwiftlyImageLoader
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:25:26: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 23 |     /// Current configuration used by the image loader.
 24 |     private(set) var config: SwiftlyImageLoaderConfiguration = .default
 25 |     private let session: URLSession = .shared
    |                          `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 26 |     private var ongoingTasks = [URL: (task: Task<Void, Never>, completions: [@Sendable (CrossPlatformImage?) -> Void])]()
 27 |     private let taskQueue = DispatchQueue(label: "com.swiftlyImageLoader.taskQueue")
Foundation.URLSession:2:18: note: 'URLSession' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLSession = AnyObject
  |                  `- note: 'URLSession' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:25:40: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
 23 |     /// Current configuration used by the image loader.
 24 |     private(set) var config: SwiftlyImageLoaderConfiguration = .default
 25 |     private let session: URLSession = .shared
    |                                        `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
 26 |     private var ongoingTasks = [URL: (task: Task<Void, Never>, completions: [@Sendable (CrossPlatformImage?) -> Void])]()
 27 |     private let taskQueue = DispatchQueue(label: "com.swiftlyImageLoader.taskQueue")
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:26:89: error: cannot find type 'CrossPlatformImage' in scope
 24 |     private(set) var config: SwiftlyImageLoaderConfiguration = .default
 25 |     private let session: URLSession = .shared
 26 |     private var ongoingTasks = [URL: (task: Task<Void, Never>, completions: [@Sendable (CrossPlatformImage?) -> Void])]()
    |                                                                                         `- error: cannot find type 'CrossPlatformImage' in scope
 27 |     private let taskQueue = DispatchQueue(label: "com.swiftlyImageLoader.taskQueue")
 28 |
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:49:50: error: cannot find type 'CrossPlatformImage' in scope
 47 |
 48 |     public func loadImage(from url: URL,
 49 |                           transform: (@Sendable (CrossPlatformImage) -> CrossPlatformImage)?,
    |                                                  `- error: cannot find type 'CrossPlatformImage' in scope
 50 |                           completion: @escaping @Sendable (CrossPlatformImage?) -> Void) {
 51 |         taskQueue.async {
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:49:73: error: cannot find type 'CrossPlatformImage' in scope
 47 |
 48 |     public func loadImage(from url: URL,
 49 |                           transform: (@Sendable (CrossPlatformImage) -> CrossPlatformImage)?,
    |                                                                         `- error: cannot find type 'CrossPlatformImage' in scope
 50 |                           completion: @escaping @Sendable (CrossPlatformImage?) -> Void) {
 51 |         taskQueue.async {
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:50:60: error: cannot find type 'CrossPlatformImage' in scope
 48 |     public func loadImage(from url: URL,
 49 |                           transform: (@Sendable (CrossPlatformImage) -> CrossPlatformImage)?,
 50 |                           completion: @escaping @Sendable (CrossPlatformImage?) -> Void) {
    |                                                            `- error: cannot find type 'CrossPlatformImage' in scope
 51 |         taskQueue.async {
 52 |             if let existing = self.ongoingTasks[url] {
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:128:60: error: cannot find type 'CrossPlatformImage' in scope
126 |     }
127 |
128 |     private func callCompletions(for url: URL, with image: CrossPlatformImage?) {
    |                                                            `- error: cannot find type 'CrossPlatformImage' in scope
129 |         taskQueue.async {
130 |             let completions = self.ongoingTasks[url]?.completions ?? []
[8/9] Compiling SwiftlyImageLoader ImageCache.swift
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:26:89: error: cannot find type 'CrossPlatformImage' in scope
 24 |     private(set) var config: SwiftlyImageLoaderConfiguration = .default
 25 |     private let session: URLSession = .shared
 26 |     private var ongoingTasks = [URL: (task: Task<Void, Never>, completions: [@Sendable (CrossPlatformImage?) -> Void])]()
    |                                                                                         `- error: cannot find type 'CrossPlatformImage' in scope
 27 |     private let taskQueue = DispatchQueue(label: "com.swiftlyImageLoader.taskQueue")
 28 |
[9/9] Compiling SwiftlyImageLoader DiskCache.swift
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:26:89: error: cannot find type 'CrossPlatformImage' in scope
 24 |     private(set) var config: SwiftlyImageLoaderConfiguration = .default
 25 |     private let session: URLSession = .shared
 26 |     private var ongoingTasks = [URL: (task: Task<Void, Never>, completions: [@Sendable (CrossPlatformImage?) -> Void])]()
    |                                                                                         `- error: cannot find type 'CrossPlatformImage' in scope
 27 |     private let taskQueue = DispatchQueue(label: "com.swiftlyImageLoader.taskQueue")
 28 |
BUILD FAILURE 6.1 linux