Build Information
Failed to build SwiftlyImageLoader, reference main (d1403a
), with Swift 6.0 for Linux on 3 Apr 2025 08:18:05 UTC.
Build Command
bash -c docker run --pull=always --rm -v "checkouts-4609320-2":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu 2>&1
Build Log
========================================
RunAll
========================================
Builder version: 4.60.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/mohsinbmwm3/SwiftlyImageLoader.git
Reference: main
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
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at d1403ac Updated documentation and added support for multiple completion handlers
Cloned https://github.com/mohsinbmwm3/SwiftlyImageLoader.git
Revision (git rev-parse @):
d1403ac1e31f8c00adb2daae06ad39f9217a2600
SUCCESS checkout https://github.com/mohsinbmwm3/SwiftlyImageLoader.git at main
========================================
Build
========================================
Selected platform: linux
Swift version: 6.0
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-2":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats 2>&1
basic-6.0-latest: Pulling from finestructure/spi-images
Digest: sha256:081dcf4fb829aea9d08447f4790431afbdfbcc335bfeed728ca69c6f181ae2aa
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.0-latest
Building for debugging...
[0/5] Write sources
[4/5] Write swift-version-24593BA9C3E375BF.txt
[6/13] Compiling SwiftlyImageLoader ImageResizer.swift
[7/13] Compiling SwiftlyImageLoader LogLevel.swift
[8/13] Compiling SwiftlyImageLoader SwiftlyImageLoader.swift
[9/13] Compiling SwiftlyImageLoader SwiftlyImageLoaderConfiguration.swift
[10/13] Compiling SwiftlyImageLoader ImageCache.swift
error: emit-module command failed with exit code 1 (use -v to see invocation)
[11/13] Compiling SwiftlyImageLoader DiskCache.swift
[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:42:75: error: cannot find type 'CrossPlatformImage' in scope
40 | /// - url: The URL to load the image from.
41 | /// - completion: Completion handler with the loaded image or nil.
42 | public func loadImage(from url: URL, completion: @escaping @Sendable (CrossPlatformImage?) -> Void) {
| `- error: cannot find type 'CrossPlatformImage' in scope
43 | taskQueue.async {
44 | if let existing = self.ongoingTasks[url] {
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:93:60: error: cannot find type 'CrossPlatformImage' in scope
91 | }
92 |
93 | private func callCompletions(for url: URL, with image: CrossPlatformImage?) {
| `- error: cannot find type 'CrossPlatformImage' in scope
94 | taskQueue.async {
95 | let completions = self.ongoingTasks[url]?.completions ?? []
[13/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:42:75: error: cannot find type 'CrossPlatformImage' in scope
40 | /// - url: The URL to load the image from.
41 | /// - completion: Completion handler with the loaded image or nil.
42 | public func loadImage(from url: URL, completion: @escaping @Sendable (CrossPlatformImage?) -> Void) {
| `- error: cannot find type 'CrossPlatformImage' in scope
43 | taskQueue.async {
44 | if let existing = self.ongoingTasks[url] {
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:93:60: error: cannot find type 'CrossPlatformImage' in scope
91 | }
92 |
93 | private func callCompletions(for url: URL, with image: CrossPlatformImage?) {
| `- error: cannot find type 'CrossPlatformImage' in scope
94 | taskQueue.async {
95 | let completions = self.ongoingTasks[url]?.completions ?? []
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:56:85: error: cannot find 'CrossPlatformImage' in scope
54 | let key = url.absoluteString
55 |
56 | if let data = await ImageCache.shared.get(forKey: key), let image = CrossPlatformImage(data: data) {
| `- error: cannot find 'CrossPlatformImage' in scope
57 | self.log("✅ Loaded from memory cache: \(url.absoluteString)", level: .basic)
58 | self.callCompletions(for: url, with: image)
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:62:84: error: cannot find 'CrossPlatformImage' in scope
60 | }
61 |
62 | if let data = await DiskCache.shared.get(forKey: key), let image = CrossPlatformImage(data: data) {
| `- error: cannot find 'CrossPlatformImage' in scope
63 | self.log("✅ Loaded from disk cache: \(url.absoluteString)", level: .basic)
64 | await ImageCache.shared.set(data, forKey: key)
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:71:36: error: cannot find 'CrossPlatformImage' in scope
69 | do {
70 | let (data, _) = try await self.session.data(from: url)
71 | if let image = CrossPlatformImage(data: data) {
| `- error: cannot find 'CrossPlatformImage' in scope
72 | self.log("✅ Downloaded from network: \(url.absoluteString)", level: .basic)
73 | await ImageCache.shared.set(data, forKey: key)
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:43:25: error: trailing closure passed to parameter of type 'DispatchWorkItem' that does not accept a closure
41 | /// - completion: Completion handler with the loaded image or nil.
42 | public func loadImage(from url: URL, completion: @escaping @Sendable (CrossPlatformImage?) -> Void) {
43 | taskQueue.async {
| `- error: trailing closure passed to parameter of type 'DispatchWorkItem' that does not accept a closure
44 | if let existing = self.ongoingTasks[url] {
45 | self.log("🔁 Joining existing task for: \(url.absoluteString)", level: .verbose)
Dispatch.DispatchQueue:62:17: note: 'async(execute:)' declared here
60 | public func sync(execute workItem: DispatchWorkItem)
61 | @available(macOS 10.10, iOS 8.0, *)
62 | public func async(execute workItem: DispatchWorkItem)
| `- note: 'async(execute:)' declared here
63 | @available(macOS 10.10, iOS 8.0, *)
64 | public func async(group: DispatchGroup, execute workItem: DispatchWorkItem)
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:106:25: error: trailing closure passed to parameter of type 'DispatchWorkItem' that does not accept a closure
104 | /// - Parameter url: The URL for which to cancel the task.
105 | public func cancelLoad(for url: URL) {
106 | taskQueue.async {
| `- error: trailing closure passed to parameter of type 'DispatchWorkItem' that does not accept a closure
107 | if let entry = self.ongoingTasks[url] {
108 | self.log("🔴 Cancelling task for: \(url.absoluteString)", level: .verbose)
Dispatch.DispatchQueue:62:17: note: 'async(execute:)' declared here
60 | public func sync(execute workItem: DispatchWorkItem)
61 | @available(macOS 10.10, iOS 8.0, *)
62 | public func async(execute workItem: DispatchWorkItem)
| `- note: 'async(execute:)' declared here
63 | @available(macOS 10.10, iOS 8.0, *)
64 | public func async(group: DispatchGroup, execute workItem: DispatchWorkItem)
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-2":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu 2>&1
basic-6.0-latest: Pulling from finestructure/spi-images
Digest: sha256:081dcf4fb829aea9d08447f4790431afbdfbcc335bfeed728ca69c6f181ae2aa
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.0-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 SwiftlyImageLoader.swift
[4/9] Compiling SwiftlyImageLoader SwiftlyImageLoaderConfiguration.swift
[5/9] Compiling SwiftlyImageLoader LogLevel.swift
error: emit-module command failed with exit code 1 (use -v to see invocation)
[6/9] Compiling SwiftlyImageLoader ImageCache.swift
[7/9] Compiling SwiftlyImageLoader DiskCache.swift
[8/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:42:75: error: cannot find type 'CrossPlatformImage' in scope
40 | /// - url: The URL to load the image from.
41 | /// - completion: Completion handler with the loaded image or nil.
42 | public func loadImage(from url: URL, completion: @escaping @Sendable (CrossPlatformImage?) -> Void) {
| `- error: cannot find type 'CrossPlatformImage' in scope
43 | taskQueue.async {
44 | if let existing = self.ongoingTasks[url] {
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:93:60: error: cannot find type 'CrossPlatformImage' in scope
91 | }
92 |
93 | private func callCompletions(for url: URL, with image: CrossPlatformImage?) {
| `- error: cannot find type 'CrossPlatformImage' in scope
94 | taskQueue.async {
95 | let completions = self.ongoingTasks[url]?.completions ?? []
[9/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:42:75: error: cannot find type 'CrossPlatformImage' in scope
40 | /// - url: The URL to load the image from.
41 | /// - completion: Completion handler with the loaded image or nil.
42 | public func loadImage(from url: URL, completion: @escaping @Sendable (CrossPlatformImage?) -> Void) {
| `- error: cannot find type 'CrossPlatformImage' in scope
43 | taskQueue.async {
44 | if let existing = self.ongoingTasks[url] {
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:93:60: error: cannot find type 'CrossPlatformImage' in scope
91 | }
92 |
93 | private func callCompletions(for url: URL, with image: CrossPlatformImage?) {
| `- error: cannot find type 'CrossPlatformImage' in scope
94 | taskQueue.async {
95 | let completions = self.ongoingTasks[url]?.completions ?? []
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:56:85: error: cannot find 'CrossPlatformImage' in scope
54 | let key = url.absoluteString
55 |
56 | if let data = await ImageCache.shared.get(forKey: key), let image = CrossPlatformImage(data: data) {
| `- error: cannot find 'CrossPlatformImage' in scope
57 | self.log("✅ Loaded from memory cache: \(url.absoluteString)", level: .basic)
58 | self.callCompletions(for: url, with: image)
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:62:84: error: cannot find 'CrossPlatformImage' in scope
60 | }
61 |
62 | if let data = await DiskCache.shared.get(forKey: key), let image = CrossPlatformImage(data: data) {
| `- error: cannot find 'CrossPlatformImage' in scope
63 | self.log("✅ Loaded from disk cache: \(url.absoluteString)", level: .basic)
64 | await ImageCache.shared.set(data, forKey: key)
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:71:36: error: cannot find 'CrossPlatformImage' in scope
69 | do {
70 | let (data, _) = try await self.session.data(from: url)
71 | if let image = CrossPlatformImage(data: data) {
| `- error: cannot find 'CrossPlatformImage' in scope
72 | self.log("✅ Downloaded from network: \(url.absoluteString)", level: .basic)
73 | await ImageCache.shared.set(data, forKey: key)
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:43:25: error: trailing closure passed to parameter of type 'DispatchWorkItem' that does not accept a closure
41 | /// - completion: Completion handler with the loaded image or nil.
42 | public func loadImage(from url: URL, completion: @escaping @Sendable (CrossPlatformImage?) -> Void) {
43 | taskQueue.async {
| `- error: trailing closure passed to parameter of type 'DispatchWorkItem' that does not accept a closure
44 | if let existing = self.ongoingTasks[url] {
45 | self.log("🔁 Joining existing task for: \(url.absoluteString)", level: .verbose)
Dispatch.DispatchQueue:62:17: note: 'async(execute:)' declared here
60 | public func sync(execute workItem: DispatchWorkItem)
61 | @available(macOS 10.10, iOS 8.0, *)
62 | public func async(execute workItem: DispatchWorkItem)
| `- note: 'async(execute:)' declared here
63 | @available(macOS 10.10, iOS 8.0, *)
64 | public func async(group: DispatchGroup, execute workItem: DispatchWorkItem)
/host/spi-builder-workspace/Sources/SwiftlyImageLoader/ImageLoader.swift:106:25: error: trailing closure passed to parameter of type 'DispatchWorkItem' that does not accept a closure
104 | /// - Parameter url: The URL for which to cancel the task.
105 | public func cancelLoad(for url: URL) {
106 | taskQueue.async {
| `- error: trailing closure passed to parameter of type 'DispatchWorkItem' that does not accept a closure
107 | if let entry = self.ongoingTasks[url] {
108 | self.log("🔴 Cancelling task for: \(url.absoluteString)", level: .verbose)
Dispatch.DispatchQueue:62:17: note: 'async(execute:)' declared here
60 | public func sync(execute workItem: DispatchWorkItem)
61 | @available(macOS 10.10, iOS 8.0, *)
62 | public func async(execute workItem: DispatchWorkItem)
| `- note: 'async(execute:)' declared here
63 | @available(macOS 10.10, iOS 8.0, *)
64 | public func async(group: DispatchGroup, execute workItem: DispatchWorkItem)
BUILD FAILURE 6.0 linux