The Swift Package Index logo.Swift Package Index

Build Information

Failed to build WikipediaKit, reference 3.0.4 (09538e), with Swift 6.1 for Android on 28 May 2025 07:10:40 UTC.

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4606859-3":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:android-6.1-latest swift build --swift-sdk aarch64-unknown-linux-android24 2>&1

Build Log

    |                 `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
167 |             }
168 |         }
/host/spi-builder-workspace/Sources/Wikipedia+RandomArticles.swift:166:28: warning: sending 'results' risks causing data races; this is an error in the Swift 6 language mode
164 |
165 |             DispatchQueue.main.async {
166 |                 completion(results, language, error)
    |                            |- warning: sending 'results' risks causing data races; this is an error in the Swift 6 language mode
    |                            `- note: task-isolated 'results' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
167 |             }
168 |         }
/host/spi-builder-workspace/Sources/Wikipedia+RandomArticles.swift:166:37: warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
164 |
165 |             DispatchQueue.main.async {
166 |                 completion(results, language, error)
    |                                     |- warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
    |                                     `- note: task-isolated 'language' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
167 |             }
168 |         }
/host/spi-builder-workspace/Sources/Wikipedia+RandomArticles.swift:152:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
150 |             guard let pages = query["pages"] as? [JSONDictionary] else {
151 |                 DispatchQueue.main.async {
152 |                     completion (nil, language, .notFound)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
153 |                 }
154 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+RandomArticles.swift:152:38: warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
150 |             guard let pages = query["pages"] as? [JSONDictionary] else {
151 |                 DispatchQueue.main.async {
152 |                     completion (nil, language, .notFound)
    |                                      |- warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
    |                                      `- note: task-isolated 'language' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
153 |                 }
154 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+RandomArticles.swift:137:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
135 |                     // there is no “query” key,
136 |                     // but unfortunately no error message either
137 |                     completion (nil, language, .notFound)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
138 |                 }
139 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+RandomArticles.swift:137:38: warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
135 |                     // there is no “query” key,
136 |                     // but unfortunately no error message either
137 |                     completion (nil, language, .notFound)
    |                                      |- warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
    |                                      `- note: task-isolated 'language' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
138 |                 }
139 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+RandomArticles.swift:127:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
125 |             guard let jsonDictionary = jsonDictionary else {
126 |                 DispatchQueue.main.async {
127 |                     completion (nil, language, .decodingError)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
128 |                 }
129 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+RandomArticles.swift:127:38: warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
125 |             guard let jsonDictionary = jsonDictionary else {
126 |                 DispatchQueue.main.async {
127 |                     completion (nil, language, .decodingError)
    |                                      |- warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
    |                                      `- note: task-isolated 'language' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
128 |                 }
129 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+RandomArticles.swift:120:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
118 |                 // (also occurs when the request was cancelled programmatically)
119 |                 DispatchQueue.main.async {
120 |                     completion (nil, language, error)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
121 |                 }
122 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+RandomArticles.swift:120:38: warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
118 |                 // (also occurs when the request was cancelled programmatically)
119 |                 DispatchQueue.main.async {
120 |                     completion (nil, language, error)
    |                                      |- warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
    |                                      `- note: task-isolated 'language' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
121 |                 }
122 |                 return
/host/spi-builder-workspace/Sources/WikipediaNetworking.swift:156:53: error: cannot find 'kCFBundleExecutableKey' in scope
154 |         #if !os(Linux)
155 |             if let infoDictionary = Bundle.main.infoDictionary {
156 |                     let bundleName = infoDictionary[kCFBundleExecutableKey as String] as? String ?? "Unknown App"
    |                                                     `- error: cannot find 'kCFBundleExecutableKey' in scope
157 |                     let bundleID = infoDictionary[kCFBundleIdentifierKey as String] as? String ?? "Unkown Bundle ID"
158 |                     let marketingVersionString = infoDictionary["CFBundleShortVersionString"] as? String ?? "Unknown Version"
/host/spi-builder-workspace/Sources/WikipediaNetworking.swift:157:51: error: cannot find 'kCFBundleIdentifierKey' in scope
155 |             if let infoDictionary = Bundle.main.infoDictionary {
156 |                     let bundleName = infoDictionary[kCFBundleExecutableKey as String] as? String ?? "Unknown App"
157 |                     let bundleID = infoDictionary[kCFBundleIdentifierKey as String] as? String ?? "Unkown Bundle ID"
    |                                                   `- error: cannot find 'kCFBundleIdentifierKey' in scope
158 |                     let marketingVersionString = infoDictionary["CFBundleShortVersionString"] as? String ?? "Unknown Version"
159 |                     userAgent = "\(bundleName)/\(marketingVersionString) (\(bundleID); \(WikipediaNetworking.appAuthorEmailForAPI)) \(framework)"
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:99:25: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 97 |                 sr.term == term else {
 98 |                     DispatchQueue.main.async {
 99 |                         completion(nil, .other(nil))
    |                         |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                         `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
100 |                     }
101 |                     return nil
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:114:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
112 |             if cachedSearchResults.items.count > searchResults.items.count {
113 |                 DispatchQueue.main.async {
114 |                     completion(cachedSearchResults, nil)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
115 |                 }
116 |                 return nil
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:114:32: warning: sending 'cachedSearchResults' risks causing data races; this is an error in the Swift 6 language mode
112 |             if cachedSearchResults.items.count > searchResults.items.count {
113 |                 DispatchQueue.main.async {
114 |                     completion(cachedSearchResults, nil)
    |                                |- warning: sending 'cachedSearchResults' risks causing data races; this is an error in the Swift 6 language mode
    |                                `- note: task-isolated 'cachedSearchResults' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
115 |                 }
116 |                 return nil
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:200:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
198 |             else {
199 |                 DispatchQueue.main.async {
200 |                     completion(nil, .other(nil))
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
201 |                 }
202 |                 return nil
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:76:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 74 |             } else {
 75 |                 DispatchQueue.main.async {
 76 |                     completion(searchResults, error)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 77 |                 }
 78 |             }
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:76:32: warning: sending 'searchResults' risks causing data races; this is an error in the Swift 6 language mode
 74 |             } else {
 75 |                 DispatchQueue.main.async {
 76 |                     completion(searchResults, error)
    |                                |- warning: sending 'searchResults' risks causing data races; this is an error in the Swift 6 language mode
    |                                `- note: task-isolated 'searchResults' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 77 |                 }
 78 |             }
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:65:29: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 63 |                     if (fullTextSearchResults?.items.count ?? 0) >= (prefixSearchResults?.items.count ?? 0) {
 64 |                         DispatchQueue.main.async {
 65 |                             completion(fullTextSearchResults, error)
    |                             |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                             `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 66 |                         }
 67 |                     } else {
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:65:40: warning: sending 'fullTextSearchResults' risks causing data races; this is an error in the Swift 6 language mode
 63 |                     if (fullTextSearchResults?.items.count ?? 0) >= (prefixSearchResults?.items.count ?? 0) {
 64 |                         DispatchQueue.main.async {
 65 |                             completion(fullTextSearchResults, error)
    |                                        |- warning: sending 'fullTextSearchResults' risks causing data races; this is an error in the Swift 6 language mode
    |                                        `- note: task-isolated 'fullTextSearchResults' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 66 |                         }
 67 |                     } else {
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:69:29: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 67 |                     } else {
 68 |                         DispatchQueue.main.async {
 69 |                             completion(prefixSearchResults, nil)
    |                             |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                             `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 70 |                         }
 71 |                     }
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:69:40: warning: sending 'prefixSearchResults' risks causing data races; this is an error in the Swift 6 language mode
 67 |                     } else {
 68 |                         DispatchQueue.main.async {
 69 |                             completion(prefixSearchResults, nil)
    |                                        |- warning: sending 'prefixSearchResults' risks causing data races; this is an error in the Swift 6 language mode
    |                                        `- note: task-isolated 'prefixSearchResults' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 70 |                         }
 71 |                     }
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:261:25: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
259 |
260 |                     DispatchQueue.main.async {
261 |                         completion (searchResults, .notEnoughResults)
    |                         |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                         `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
262 |                     }
263 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:261:37: warning: sending 'searchResults' risks causing data races; this is an error in the Swift 6 language mode
259 |
260 |                     DispatchQueue.main.async {
261 |                         completion (searchResults, .notEnoughResults)
    |                                     |- warning: sending 'searchResults' risks causing data races; this is an error in the Swift 6 language mode
    |                                     `- note: task-isolated 'searchResults' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
262 |                     }
263 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:269:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
267 |
268 |                 DispatchQueue.main.async {
269 |                     completion(searchResults, error)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
270 |                 }
271 |
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:269:32: warning: sending 'searchResults' risks causing data races; this is an error in the Swift 6 language mode
267 |
268 |                 DispatchQueue.main.async {
269 |                     completion(searchResults, error)
    |                                |- warning: sending 'searchResults' risks causing data races; this is an error in the Swift 6 language mode
    |                                `- note: task-isolated 'searchResults' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
270 |                 }
271 |
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:277:25: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
275 |                 if searchResults.offset == 0 {
276 |                     DispatchQueue.main.async {
277 |                         completion (searchResults, .notFound)
    |                         |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                         `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
278 |                     }
279 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:277:37: warning: sending 'searchResults' risks causing data races; this is an error in the Swift 6 language mode
275 |                 if searchResults.offset == 0 {
276 |                     DispatchQueue.main.async {
277 |                         completion (searchResults, .notFound)
    |                                     |- warning: sending 'searchResults' risks causing data races; this is an error in the Swift 6 language mode
    |                                     `- note: task-isolated 'searchResults' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
278 |                     }
279 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:284:25: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
282 |                     searchResults.canLoadMore = false
283 |                     DispatchQueue.main.async {
284 |                         completion (searchResults, error)
    |                         |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                         `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
285 |                     }
286 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:284:37: warning: sending 'searchResults' risks causing data races; this is an error in the Swift 6 language mode
282 |                     searchResults.canLoadMore = false
283 |                     DispatchQueue.main.async {
284 |                         completion (searchResults, error)
    |                                     |- warning: sending 'searchResults' risks causing data races; this is an error in the Swift 6 language mode
    |                                     `- note: task-isolated 'searchResults' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
285 |                     }
286 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:224:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
222 |             guard let query = jsonDictionary["query"] as? JSONDictionary else {
223 |                 DispatchQueue.main.async {
224 |                     completion (searchResults, .notFound)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
225 |                 }
226 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:224:33: warning: sending 'searchResults' risks causing data races; this is an error in the Swift 6 language mode
222 |             guard let query = jsonDictionary["query"] as? JSONDictionary else {
223 |                 DispatchQueue.main.async {
224 |                     completion (searchResults, .notFound)
    |                                 |- warning: sending 'searchResults' risks causing data races; this is an error in the Swift 6 language mode
    |                                 `- note: task-isolated 'searchResults' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
225 |                 }
226 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:217:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
215 |             guard let jsonDictionary = jsonDictionary else {
216 |                 DispatchQueue.main.async {
217 |                     completion (searchResults, .decodingError)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
218 |                 }
219 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:217:33: warning: sending 'searchResults' risks causing data races; this is an error in the Swift 6 language mode
215 |             guard let jsonDictionary = jsonDictionary else {
216 |                 DispatchQueue.main.async {
217 |                     completion (searchResults, .decodingError)
    |                                 |- warning: sending 'searchResults' risks causing data races; this is an error in the Swift 6 language mode
    |                                 `- note: task-isolated 'searchResults' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
218 |                 }
219 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:210:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
208 |                 // (also occurs when the request was cancelled programmatically)
209 |                 DispatchQueue.main.async {
210 |                     completion (searchResults, error)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
211 |                 }
212 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:210:33: warning: sending 'searchResults' risks causing data races; this is an error in the Swift 6 language mode
208 |                 // (also occurs when the request was cancelled programmatically)
209 |                 DispatchQueue.main.async {
210 |                     completion (searchResults, error)
    |                                 |- warning: sending 'searchResults' risks causing data races; this is an error in the Swift 6 language mode
    |                                 `- note: task-isolated 'searchResults' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
211 |                 }
212 |                 return
[27/31] Compiling WikipediaKit WikipediaArticle.swift
/host/spi-builder-workspace/Sources/Wikipedia.swift:42:23: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'Wikipedia' may have shared mutable state; this is an error in the Swift 6 language mode
35 | typealias JSONDictionary = [String:AnyObject]
36 |
37 | public class Wikipedia {
   |              `- note: class 'Wikipedia' does not conform to the 'Sendable' protocol
38 |
39 |     // Public initializer is required if we don’t use the shared singleton
40 |     public init() {}
41 |
42 |     public static let shared: Wikipedia = {
   |                       |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'Wikipedia' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
43 |         return Wikipedia()
44 |     }()
/host/spi-builder-workspace/Sources/Wikipedia.swift:46:28: warning: static property 'sharedFormattingDelegate' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
44 |     }()
45 |
46 |     public static weak var sharedFormattingDelegate: WikipediaTextFormattingDelegate?
   |                            |- warning: static property 'sharedFormattingDelegate' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                            |- note: convert 'sharedFormattingDelegate' to a 'let' constant to make 'Sendable' shared state immutable
   |                            |- note: add '@MainActor' to make static property 'sharedFormattingDelegate' part of global actor 'MainActor'
   |                            `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
47 |
48 |     let articleCache: WikipediaArticleCache = {
/host/spi-builder-workspace/Sources/Wikipedia+RandomArticles.swift:110:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
108 |             else {
109 |                 DispatchQueue.main.async {
110 |                     completion(nil, language, .other(nil))
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
111 |                 }
112 |                 return nil
/host/spi-builder-workspace/Sources/Wikipedia+RandomArticles.swift:110:37: warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
108 |             else {
109 |                 DispatchQueue.main.async {
110 |                     completion(nil, language, .other(nil))
    |                                     |- warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
    |                                     `- note: task-isolated 'language' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
111 |                 }
112 |                 return nil
/host/spi-builder-workspace/Sources/Wikipedia+RandomArticles.swift:61:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 59 |                 let articlePreview = WikipediaRandomArticlesBuffer.shared.nextArticlePreview()
 60 |                 DispatchQueue.main.async {
 61 |                     completion(articlePreview, language, error)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 62 |                 }
 63 |             }
/host/spi-builder-workspace/Sources/Wikipedia+RandomArticles.swift:61:48: warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
 59 |                 let articlePreview = WikipediaRandomArticlesBuffer.shared.nextArticlePreview()
 60 |                 DispatchQueue.main.async {
 61 |                     completion(articlePreview, language, error)
    |                                                |- warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
    |                                                `- note: task-isolated 'language' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 62 |                 }
 63 |             }
/host/spi-builder-workspace/Sources/Wikipedia+RandomArticles.swift:52:25: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 50 |                 guard let articlePreviews = articlePreviews else {
 51 |                     DispatchQueue.main.async {
 52 |                         completion(nil, language, error)
    |                         |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                         `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 53 |                     }
 54 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+RandomArticles.swift:52:41: warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
 50 |                 guard let articlePreviews = articlePreviews else {
 51 |                     DispatchQueue.main.async {
 52 |                         completion(nil, language, error)
    |                                         |- warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
    |                                         `- note: task-isolated 'language' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 53 |                     }
 54 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+RandomArticles.swift:145:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
143 |                 let info = error["info"] as? String {
144 |                 DispatchQueue.main.async {
145 |                     completion (nil, language, .apiError(info))
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
146 |                 }
147 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+RandomArticles.swift:145:38: warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
143 |                 let info = error["info"] as? String {
144 |                 DispatchQueue.main.async {
145 |                     completion (nil, language, .apiError(info))
    |                                      |- warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
    |                                      `- note: task-isolated 'language' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
146 |                 }
147 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+RandomArticles.swift:166:17: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
164 |
165 |             DispatchQueue.main.async {
166 |                 completion(results, language, error)
    |                 |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                 `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
167 |             }
168 |         }
/host/spi-builder-workspace/Sources/Wikipedia+RandomArticles.swift:166:28: warning: sending 'results' risks causing data races; this is an error in the Swift 6 language mode
164 |
165 |             DispatchQueue.main.async {
166 |                 completion(results, language, error)
    |                            |- warning: sending 'results' risks causing data races; this is an error in the Swift 6 language mode
    |                            `- note: task-isolated 'results' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
167 |             }
168 |         }
/host/spi-builder-workspace/Sources/Wikipedia+RandomArticles.swift:166:37: warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
164 |
165 |             DispatchQueue.main.async {
166 |                 completion(results, language, error)
    |                                     |- warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
    |                                     `- note: task-isolated 'language' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
167 |             }
168 |         }
/host/spi-builder-workspace/Sources/Wikipedia+RandomArticles.swift:152:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
150 |             guard let pages = query["pages"] as? [JSONDictionary] else {
151 |                 DispatchQueue.main.async {
152 |                     completion (nil, language, .notFound)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
153 |                 }
154 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+RandomArticles.swift:152:38: warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
150 |             guard let pages = query["pages"] as? [JSONDictionary] else {
151 |                 DispatchQueue.main.async {
152 |                     completion (nil, language, .notFound)
    |                                      |- warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
    |                                      `- note: task-isolated 'language' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
153 |                 }
154 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+RandomArticles.swift:137:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
135 |                     // there is no “query” key,
136 |                     // but unfortunately no error message either
137 |                     completion (nil, language, .notFound)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
138 |                 }
139 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+RandomArticles.swift:137:38: warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
135 |                     // there is no “query” key,
136 |                     // but unfortunately no error message either
137 |                     completion (nil, language, .notFound)
    |                                      |- warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
    |                                      `- note: task-isolated 'language' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
138 |                 }
139 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+RandomArticles.swift:127:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
125 |             guard let jsonDictionary = jsonDictionary else {
126 |                 DispatchQueue.main.async {
127 |                     completion (nil, language, .decodingError)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
128 |                 }
129 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+RandomArticles.swift:127:38: warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
125 |             guard let jsonDictionary = jsonDictionary else {
126 |                 DispatchQueue.main.async {
127 |                     completion (nil, language, .decodingError)
    |                                      |- warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
    |                                      `- note: task-isolated 'language' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
128 |                 }
129 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+RandomArticles.swift:120:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
118 |                 // (also occurs when the request was cancelled programmatically)
119 |                 DispatchQueue.main.async {
120 |                     completion (nil, language, error)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
121 |                 }
122 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+RandomArticles.swift:120:38: warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
118 |                 // (also occurs when the request was cancelled programmatically)
119 |                 DispatchQueue.main.async {
120 |                     completion (nil, language, error)
    |                                      |- warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
    |                                      `- note: task-isolated 'language' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
121 |                 }
122 |                 return
/host/spi-builder-workspace/Sources/WikipediaNetworking.swift:156:53: error: cannot find 'kCFBundleExecutableKey' in scope
154 |         #if !os(Linux)
155 |             if let infoDictionary = Bundle.main.infoDictionary {
156 |                     let bundleName = infoDictionary[kCFBundleExecutableKey as String] as? String ?? "Unknown App"
    |                                                     `- error: cannot find 'kCFBundleExecutableKey' in scope
157 |                     let bundleID = infoDictionary[kCFBundleIdentifierKey as String] as? String ?? "Unkown Bundle ID"
158 |                     let marketingVersionString = infoDictionary["CFBundleShortVersionString"] as? String ?? "Unknown Version"
/host/spi-builder-workspace/Sources/WikipediaNetworking.swift:157:51: error: cannot find 'kCFBundleIdentifierKey' in scope
155 |             if let infoDictionary = Bundle.main.infoDictionary {
156 |                     let bundleName = infoDictionary[kCFBundleExecutableKey as String] as? String ?? "Unknown App"
157 |                     let bundleID = infoDictionary[kCFBundleIdentifierKey as String] as? String ?? "Unkown Bundle ID"
    |                                                   `- error: cannot find 'kCFBundleIdentifierKey' in scope
158 |                     let marketingVersionString = infoDictionary["CFBundleShortVersionString"] as? String ?? "Unknown Version"
159 |                     userAgent = "\(bundleName)/\(marketingVersionString) (\(bundleID); \(WikipediaNetworking.appAuthorEmailForAPI)) \(framework)"
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:99:25: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 97 |                 sr.term == term else {
 98 |                     DispatchQueue.main.async {
 99 |                         completion(nil, .other(nil))
    |                         |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                         `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
100 |                     }
101 |                     return nil
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:114:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
112 |             if cachedSearchResults.items.count > searchResults.items.count {
113 |                 DispatchQueue.main.async {
114 |                     completion(cachedSearchResults, nil)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
115 |                 }
116 |                 return nil
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:114:32: warning: sending 'cachedSearchResults' risks causing data races; this is an error in the Swift 6 language mode
112 |             if cachedSearchResults.items.count > searchResults.items.count {
113 |                 DispatchQueue.main.async {
114 |                     completion(cachedSearchResults, nil)
    |                                |- warning: sending 'cachedSearchResults' risks causing data races; this is an error in the Swift 6 language mode
    |                                `- note: task-isolated 'cachedSearchResults' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
115 |                 }
116 |                 return nil
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:200:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
198 |             else {
199 |                 DispatchQueue.main.async {
200 |                     completion(nil, .other(nil))
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
201 |                 }
202 |                 return nil
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:76:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 74 |             } else {
 75 |                 DispatchQueue.main.async {
 76 |                     completion(searchResults, error)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 77 |                 }
 78 |             }
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:76:32: warning: sending 'searchResults' risks causing data races; this is an error in the Swift 6 language mode
 74 |             } else {
 75 |                 DispatchQueue.main.async {
 76 |                     completion(searchResults, error)
    |                                |- warning: sending 'searchResults' risks causing data races; this is an error in the Swift 6 language mode
    |                                `- note: task-isolated 'searchResults' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 77 |                 }
 78 |             }
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:65:29: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 63 |                     if (fullTextSearchResults?.items.count ?? 0) >= (prefixSearchResults?.items.count ?? 0) {
 64 |                         DispatchQueue.main.async {
 65 |                             completion(fullTextSearchResults, error)
    |                             |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                             `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 66 |                         }
 67 |                     } else {
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:65:40: warning: sending 'fullTextSearchResults' risks causing data races; this is an error in the Swift 6 language mode
 63 |                     if (fullTextSearchResults?.items.count ?? 0) >= (prefixSearchResults?.items.count ?? 0) {
 64 |                         DispatchQueue.main.async {
 65 |                             completion(fullTextSearchResults, error)
    |                                        |- warning: sending 'fullTextSearchResults' risks causing data races; this is an error in the Swift 6 language mode
    |                                        `- note: task-isolated 'fullTextSearchResults' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 66 |                         }
 67 |                     } else {
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:69:29: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 67 |                     } else {
 68 |                         DispatchQueue.main.async {
 69 |                             completion(prefixSearchResults, nil)
    |                             |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                             `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 70 |                         }
 71 |                     }
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:69:40: warning: sending 'prefixSearchResults' risks causing data races; this is an error in the Swift 6 language mode
 67 |                     } else {
 68 |                         DispatchQueue.main.async {
 69 |                             completion(prefixSearchResults, nil)
    |                                        |- warning: sending 'prefixSearchResults' risks causing data races; this is an error in the Swift 6 language mode
    |                                        `- note: task-isolated 'prefixSearchResults' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 70 |                         }
 71 |                     }
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:261:25: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
259 |
260 |                     DispatchQueue.main.async {
261 |                         completion (searchResults, .notEnoughResults)
    |                         |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                         `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
262 |                     }
263 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:261:37: warning: sending 'searchResults' risks causing data races; this is an error in the Swift 6 language mode
259 |
260 |                     DispatchQueue.main.async {
261 |                         completion (searchResults, .notEnoughResults)
    |                                     |- warning: sending 'searchResults' risks causing data races; this is an error in the Swift 6 language mode
    |                                     `- note: task-isolated 'searchResults' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
262 |                     }
263 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:269:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
267 |
268 |                 DispatchQueue.main.async {
269 |                     completion(searchResults, error)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
270 |                 }
271 |
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:269:32: warning: sending 'searchResults' risks causing data races; this is an error in the Swift 6 language mode
267 |
268 |                 DispatchQueue.main.async {
269 |                     completion(searchResults, error)
    |                                |- warning: sending 'searchResults' risks causing data races; this is an error in the Swift 6 language mode
    |                                `- note: task-isolated 'searchResults' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
270 |                 }
271 |
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:277:25: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
275 |                 if searchResults.offset == 0 {
276 |                     DispatchQueue.main.async {
277 |                         completion (searchResults, .notFound)
    |                         |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                         `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
278 |                     }
279 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:277:37: warning: sending 'searchResults' risks causing data races; this is an error in the Swift 6 language mode
275 |                 if searchResults.offset == 0 {
276 |                     DispatchQueue.main.async {
277 |                         completion (searchResults, .notFound)
    |                                     |- warning: sending 'searchResults' risks causing data races; this is an error in the Swift 6 language mode
    |                                     `- note: task-isolated 'searchResults' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
278 |                     }
279 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:284:25: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
282 |                     searchResults.canLoadMore = false
283 |                     DispatchQueue.main.async {
284 |                         completion (searchResults, error)
    |                         |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                         `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
285 |                     }
286 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:284:37: warning: sending 'searchResults' risks causing data races; this is an error in the Swift 6 language mode
282 |                     searchResults.canLoadMore = false
283 |                     DispatchQueue.main.async {
284 |                         completion (searchResults, error)
    |                                     |- warning: sending 'searchResults' risks causing data races; this is an error in the Swift 6 language mode
    |                                     `- note: task-isolated 'searchResults' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
285 |                     }
286 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:224:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
222 |             guard let query = jsonDictionary["query"] as? JSONDictionary else {
223 |                 DispatchQueue.main.async {
224 |                     completion (searchResults, .notFound)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
225 |                 }
226 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:224:33: warning: sending 'searchResults' risks causing data races; this is an error in the Swift 6 language mode
222 |             guard let query = jsonDictionary["query"] as? JSONDictionary else {
223 |                 DispatchQueue.main.async {
224 |                     completion (searchResults, .notFound)
    |                                 |- warning: sending 'searchResults' risks causing data races; this is an error in the Swift 6 language mode
    |                                 `- note: task-isolated 'searchResults' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
225 |                 }
226 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:217:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
215 |             guard let jsonDictionary = jsonDictionary else {
216 |                 DispatchQueue.main.async {
217 |                     completion (searchResults, .decodingError)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
218 |                 }
219 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:217:33: warning: sending 'searchResults' risks causing data races; this is an error in the Swift 6 language mode
215 |             guard let jsonDictionary = jsonDictionary else {
216 |                 DispatchQueue.main.async {
217 |                     completion (searchResults, .decodingError)
    |                                 |- warning: sending 'searchResults' risks causing data races; this is an error in the Swift 6 language mode
    |                                 `- note: task-isolated 'searchResults' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
218 |                 }
219 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:210:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
208 |                 // (also occurs when the request was cancelled programmatically)
209 |                 DispatchQueue.main.async {
210 |                     completion (searchResults, error)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
211 |                 }
212 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+Search.swift:210:33: warning: sending 'searchResults' risks causing data races; this is an error in the Swift 6 language mode
208 |                 // (also occurs when the request was cancelled programmatically)
209 |                 DispatchQueue.main.async {
210 |                     completion (searchResults, error)
    |                                 |- warning: sending 'searchResults' risks causing data races; this is an error in the Swift 6 language mode
    |                                 `- note: task-isolated 'searchResults' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
211 |                 }
212 |                 return
[28/31] Compiling WikipediaKit Wikipedia+Featured.swift
/host/spi-builder-workspace/Sources/Wikipedia+Featured.swift:52:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
50 |             else {
51 |                 DispatchQueue.main.async {
52 |                     completion(.failure(.other(nil)))
   |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
   |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
53 |                 }
54 |                 return nil
/host/spi-builder-workspace/Sources/Wikipedia+Featured.swift:78:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
76 |             if let featured = WikipediaFeatured(jsonDictionary: jsonDictionary, language: language) {
77 |                 DispatchQueue.main.async {
78 |                     completion(.success(featured))
   |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
   |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
79 |                 }
80 |             } else {
/host/spi-builder-workspace/Sources/Wikipedia+Featured.swift:78:41: warning: sending 'featured' risks causing data races; this is an error in the Swift 6 language mode
76 |             if let featured = WikipediaFeatured(jsonDictionary: jsonDictionary, language: language) {
77 |                 DispatchQueue.main.async {
78 |                     completion(.success(featured))
   |                                         |- warning: sending 'featured' risks causing data races; this is an error in the Swift 6 language mode
   |                                         `- note: task-isolated 'featured' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
79 |                 }
80 |             } else {
/host/spi-builder-workspace/Sources/Wikipedia+Featured.swift:82:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
80 |             } else {
81 |                 DispatchQueue.main.async {
82 |                     completion(.failure(.noResults))
   |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
   |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
83 |                 }
84 |             }
/host/spi-builder-workspace/Sources/Wikipedia+Featured.swift:71:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
69 |             guard let jsonDictionary = jsonDictionary  else {
70 |                 DispatchQueue.main.async {
71 |                     completion(.failure(.decodingError))
   |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
   |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
72 |                 }
73 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+Featured.swift:64:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
62 |                 // (also occurs when the request was cancelled programmatically)
63 |                 DispatchQueue.main.async {
64 |                     completion(.failure(error!))
   |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
   |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
65 |                 }
66 |                 return
/host/spi-builder-workspace/Sources/WikipediaNetworking.swift:156:53: error: cannot find 'kCFBundleExecutableKey' in scope
154 |         #if !os(Linux)
155 |             if let infoDictionary = Bundle.main.infoDictionary {
156 |                     let bundleName = infoDictionary[kCFBundleExecutableKey as String] as? String ?? "Unknown App"
    |                                                     `- error: cannot find 'kCFBundleExecutableKey' in scope
157 |                     let bundleID = infoDictionary[kCFBundleIdentifierKey as String] as? String ?? "Unkown Bundle ID"
158 |                     let marketingVersionString = infoDictionary["CFBundleShortVersionString"] as? String ?? "Unknown Version"
/host/spi-builder-workspace/Sources/WikipediaNetworking.swift:157:51: error: cannot find 'kCFBundleIdentifierKey' in scope
155 |             if let infoDictionary = Bundle.main.infoDictionary {
156 |                     let bundleName = infoDictionary[kCFBundleExecutableKey as String] as? String ?? "Unknown App"
157 |                     let bundleID = infoDictionary[kCFBundleIdentifierKey as String] as? String ?? "Unkown Bundle ID"
    |                                                   `- error: cannot find 'kCFBundleIdentifierKey' in scope
158 |                     let marketingVersionString = infoDictionary["CFBundleShortVersionString"] as? String ?? "Unknown Version"
159 |                     userAgent = "\(bundleName)/\(marketingVersionString) (\(bundleID); \(WikipediaNetworking.appAuthorEmailForAPI)) \(framework)"
/host/spi-builder-workspace/Sources/Wikipedia+ImageMeta.swift:100:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 98 |             else {
 99 |                 DispatchQueue.main.async {
100 |                     completion(nil, .other(nil))
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
101 |                 }
102 |                 return nil
/host/spi-builder-workspace/Sources/Wikipedia+ImageMeta.swift:46:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 44 |                   firstURL.path != "" else {
 45 |                 DispatchQueue.main.async {
 46 |                     completion(nil, .other(nil))
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 47 |                 }
 48 |                 return nil
/host/spi-builder-workspace/Sources/Wikipedia+ImageMeta.swift:61:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 59 |             return self.requestSizedImageMetadata(language: language, ids: imageIDs, width: width) { imageMetadata, error in
 60 |                 DispatchQueue.main.async {
 61 |                     completion(imageMetadata, error)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 62 |                 }
 63 |             }
/host/spi-builder-workspace/Sources/Wikipedia+ImageMeta.swift:61:32: warning: sending 'imageMetadata' risks causing data races; this is an error in the Swift 6 language mode
 59 |             return self.requestSizedImageMetadata(language: language, ids: imageIDs, width: width) { imageMetadata, error in
 60 |                 DispatchQueue.main.async {
 61 |                     completion(imageMetadata, error)
    |                                |- warning: sending 'imageMetadata' risks causing data races; this is an error in the Swift 6 language mode
    |                                `- note: task-isolated 'imageMetadata' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 62 |                 }
 63 |             }
/host/spi-builder-workspace/Sources/Wikipedia+ImageMeta.swift:131:17: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
129 |             }
130 |             DispatchQueue.main.async {
131 |                 completion(images, error)
    |                 |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                 `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
132 |             }
133 |         }
/host/spi-builder-workspace/Sources/Wikipedia+ImageMeta.swift:131:28: warning: sending 'images' risks causing data races; this is an error in the Swift 6 language mode
129 |             }
130 |             DispatchQueue.main.async {
131 |                 completion(images, error)
    |                            |- warning: sending 'images' risks causing data races; this is an error in the Swift 6 language mode
    |                            `- note: task-isolated 'images' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
132 |             }
133 |         }
/host/spi-builder-workspace/Sources/Wikipedia+ImageMeta.swift:119:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
117 |                 else {
118 |                 DispatchQueue.main.async {
119 |                     completion (nil, .decodingError)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
120 |                 }
121 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+ImageMeta.swift:109:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
107 |             guard error == nil else {
108 |                 DispatchQueue.main.async {
109 |                     completion (nil, error)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
110 |                 }
111 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:64:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 62 |             else {
 63 |                 DispatchQueue.main.async {
 64 |                     completion(article, .other(nil))
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 65 |                 }
 66 |                 return nil
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:64:32: warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
 62 |             else {
 63 |                 DispatchQueue.main.async {
 64 |                     completion(article, .other(nil))
    |                                |- warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
    |                                `- note: task-isolated 'article' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 65 |                 }
 66 |                 return nil
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:45:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 43 |               else {
 44 |                 DispatchQueue.main.async {
 45 |                     completion(article, nil)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 46 |                 }
 47 |                 return nil
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:45:32: warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
 43 |               else {
 44 |                 DispatchQueue.main.async {
 45 |                     completion(article, nil)
    |                                |- warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
    |                                `- note: task-isolated 'article' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 46 |                 }
 47 |                 return nil
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:97:17: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 95 |             article.languageLinks = languages
 96 |             DispatchQueue.main.async {
 97 |                 completion(article, error)
    |                 |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                 `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 98 |             }
 99 |         }
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:97:28: warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
 95 |             article.languageLinks = languages
 96 |             DispatchQueue.main.async {
 97 |                 completion(article, error)
    |                            |- warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
    |                            `- note: task-isolated 'article' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 98 |             }
 99 |         }
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:90:25: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 88 |                 else {
 89 |                     DispatchQueue.main.async {
 90 |                         completion (article, .decodingError)
    |                         |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                         `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 91 |                     }
 92 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:90:37: warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
 88 |                 else {
 89 |                     DispatchQueue.main.async {
 90 |                         completion (article, .decodingError)
    |                                     |- warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
    |                                     `- note: task-isolated 'article' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 91 |                     }
 92 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:81:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 79 |             guard let jsonDictionary = jsonDictionary  else {
 80 |                 DispatchQueue.main.async {
 81 |                     completion (article, .decodingError)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 82 |                 }
 83 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:81:33: warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
 79 |             guard let jsonDictionary = jsonDictionary  else {
 80 |                 DispatchQueue.main.async {
 81 |                     completion (article, .decodingError)
    |                                 |- warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
    |                                 `- note: task-isolated 'article' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 82 |                 }
 83 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:74:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 72 |                 // (also occurs when the request was cancelled programmatically)
 73 |                 DispatchQueue.main.async {
 74 |                     completion (article, error)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 75 |                 }
 76 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:74:33: warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
 72 |                 // (also occurs when the request was cancelled programmatically)
 73 |                 DispatchQueue.main.async {
 74 |                     completion (article, error)
    |                                 |- warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
    |                                 `- note: task-isolated 'article' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 75 |                 }
 76 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:88:25: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 86 |                 else {
 87 |                     DispatchQueue.main.async {
 88 |                         completion(nil, language, .other(nil))
    |                         |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                         `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 89 |                     }
 90 |                     return nil
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:88:41: warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
 86 |                 else {
 87 |                     DispatchQueue.main.async {
 88 |                         completion(nil, language, .other(nil))
    |                                         |- warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
    |                                         `- note: task-isolated 'language' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 89 |                     }
 90 |                     return nil
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:123:25: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
121 |                     let info = error["info"] as? String {
122 |                     DispatchQueue.main.async {
123 |                         completion (nil, language, .apiError(info))
    |                         |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                         `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
124 |                     }
125 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:123:42: warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
121 |                     let info = error["info"] as? String {
122 |                     DispatchQueue.main.async {
123 |                         completion (nil, language, .apiError(info))
    |                                          |- warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
    |                                          `- note: task-isolated 'language' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
124 |                     }
125 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:156:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
154 |
155 |                 DispatchQueue.main.async {
156 |                     completion(results, language, error)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
157 |                 }
158 |
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:156:32: warning: sending 'results' risks causing data races; this is an error in the Swift 6 language mode
154 |
155 |                 DispatchQueue.main.async {
156 |                     completion(results, language, error)
    |                                |- warning: sending 'results' risks causing data races; this is an error in the Swift 6 language mode
    |                                `- note: task-isolated 'results' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
157 |                 }
158 |
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:156:41: warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
154 |
155 |                 DispatchQueue.main.async {
156 |                     completion(results, language, error)
    |                                         |- warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
    |                                         `- note: task-isolated 'language' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
157 |                 }
158 |
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:130:25: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
128 |                 guard let pages = query["pages"] as? [JSONDictionary] else {
129 |                     DispatchQueue.main.async {
130 |                         completion (nil, language, .notFound)
    |                         |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                         `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
131 |                     }
132 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:130:42: warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
128 |                 guard let pages = query["pages"] as? [JSONDictionary] else {
129 |                     DispatchQueue.main.async {
130 |                         completion (nil, language, .notFound)
    |                                          |- warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
    |                                          `- note: task-isolated 'language' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
131 |                     }
132 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:115:25: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
113 |                         // there is no “query” key,
114 |                         // but unfortunately no error message either
115 |                         completion (nil, language, .notFound)
    |                         |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                         `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
116 |                     }
117 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:115:42: warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
113 |                         // there is no “query” key,
114 |                         // but unfortunately no error message either
115 |                         completion (nil, language, .notFound)
    |                                          |- warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
    |                                          `- note: task-isolated 'language' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
116 |                     }
117 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:105:25: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
103 |                 guard let jsonDictionary = jsonDictionary else {
104 |                     DispatchQueue.main.async {
105 |                         completion (nil, language, .decodingError)
    |                         |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                         `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
106 |                     }
107 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:105:42: warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
103 |                 guard let jsonDictionary = jsonDictionary else {
104 |                     DispatchQueue.main.async {
105 |                         completion (nil, language, .decodingError)
    |                                          |- warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
    |                                          `- note: task-isolated 'language' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
106 |                     }
107 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:98:25: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 96 |                     // (also occurs when the request was cancelled programmatically)
 97 |                     DispatchQueue.main.async {
 98 |                         completion (nil, language, error)
    |                         |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                         `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 99 |                     }
100 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:98:42: warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
 96 |                     // (also occurs when the request was cancelled programmatically)
 97 |                     DispatchQueue.main.async {
 98 |                         completion (nil, language, error)
    |                                          |- warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
    |                                          `- note: task-isolated 'language' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 99 |                     }
100 |                     return
[29/31] Compiling WikipediaKit Wikipedia+ImageMeta.swift
/host/spi-builder-workspace/Sources/Wikipedia+Featured.swift:52:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
50 |             else {
51 |                 DispatchQueue.main.async {
52 |                     completion(.failure(.other(nil)))
   |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
   |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
53 |                 }
54 |                 return nil
/host/spi-builder-workspace/Sources/Wikipedia+Featured.swift:78:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
76 |             if let featured = WikipediaFeatured(jsonDictionary: jsonDictionary, language: language) {
77 |                 DispatchQueue.main.async {
78 |                     completion(.success(featured))
   |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
   |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
79 |                 }
80 |             } else {
/host/spi-builder-workspace/Sources/Wikipedia+Featured.swift:78:41: warning: sending 'featured' risks causing data races; this is an error in the Swift 6 language mode
76 |             if let featured = WikipediaFeatured(jsonDictionary: jsonDictionary, language: language) {
77 |                 DispatchQueue.main.async {
78 |                     completion(.success(featured))
   |                                         |- warning: sending 'featured' risks causing data races; this is an error in the Swift 6 language mode
   |                                         `- note: task-isolated 'featured' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
79 |                 }
80 |             } else {
/host/spi-builder-workspace/Sources/Wikipedia+Featured.swift:82:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
80 |             } else {
81 |                 DispatchQueue.main.async {
82 |                     completion(.failure(.noResults))
   |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
   |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
83 |                 }
84 |             }
/host/spi-builder-workspace/Sources/Wikipedia+Featured.swift:71:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
69 |             guard let jsonDictionary = jsonDictionary  else {
70 |                 DispatchQueue.main.async {
71 |                     completion(.failure(.decodingError))
   |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
   |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
72 |                 }
73 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+Featured.swift:64:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
62 |                 // (also occurs when the request was cancelled programmatically)
63 |                 DispatchQueue.main.async {
64 |                     completion(.failure(error!))
   |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
   |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
65 |                 }
66 |                 return
/host/spi-builder-workspace/Sources/WikipediaNetworking.swift:156:53: error: cannot find 'kCFBundleExecutableKey' in scope
154 |         #if !os(Linux)
155 |             if let infoDictionary = Bundle.main.infoDictionary {
156 |                     let bundleName = infoDictionary[kCFBundleExecutableKey as String] as? String ?? "Unknown App"
    |                                                     `- error: cannot find 'kCFBundleExecutableKey' in scope
157 |                     let bundleID = infoDictionary[kCFBundleIdentifierKey as String] as? String ?? "Unkown Bundle ID"
158 |                     let marketingVersionString = infoDictionary["CFBundleShortVersionString"] as? String ?? "Unknown Version"
/host/spi-builder-workspace/Sources/WikipediaNetworking.swift:157:51: error: cannot find 'kCFBundleIdentifierKey' in scope
155 |             if let infoDictionary = Bundle.main.infoDictionary {
156 |                     let bundleName = infoDictionary[kCFBundleExecutableKey as String] as? String ?? "Unknown App"
157 |                     let bundleID = infoDictionary[kCFBundleIdentifierKey as String] as? String ?? "Unkown Bundle ID"
    |                                                   `- error: cannot find 'kCFBundleIdentifierKey' in scope
158 |                     let marketingVersionString = infoDictionary["CFBundleShortVersionString"] as? String ?? "Unknown Version"
159 |                     userAgent = "\(bundleName)/\(marketingVersionString) (\(bundleID); \(WikipediaNetworking.appAuthorEmailForAPI)) \(framework)"
/host/spi-builder-workspace/Sources/Wikipedia+ImageMeta.swift:100:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 98 |             else {
 99 |                 DispatchQueue.main.async {
100 |                     completion(nil, .other(nil))
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
101 |                 }
102 |                 return nil
/host/spi-builder-workspace/Sources/Wikipedia+ImageMeta.swift:46:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 44 |                   firstURL.path != "" else {
 45 |                 DispatchQueue.main.async {
 46 |                     completion(nil, .other(nil))
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 47 |                 }
 48 |                 return nil
/host/spi-builder-workspace/Sources/Wikipedia+ImageMeta.swift:61:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 59 |             return self.requestSizedImageMetadata(language: language, ids: imageIDs, width: width) { imageMetadata, error in
 60 |                 DispatchQueue.main.async {
 61 |                     completion(imageMetadata, error)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 62 |                 }
 63 |             }
/host/spi-builder-workspace/Sources/Wikipedia+ImageMeta.swift:61:32: warning: sending 'imageMetadata' risks causing data races; this is an error in the Swift 6 language mode
 59 |             return self.requestSizedImageMetadata(language: language, ids: imageIDs, width: width) { imageMetadata, error in
 60 |                 DispatchQueue.main.async {
 61 |                     completion(imageMetadata, error)
    |                                |- warning: sending 'imageMetadata' risks causing data races; this is an error in the Swift 6 language mode
    |                                `- note: task-isolated 'imageMetadata' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 62 |                 }
 63 |             }
/host/spi-builder-workspace/Sources/Wikipedia+ImageMeta.swift:131:17: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
129 |             }
130 |             DispatchQueue.main.async {
131 |                 completion(images, error)
    |                 |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                 `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
132 |             }
133 |         }
/host/spi-builder-workspace/Sources/Wikipedia+ImageMeta.swift:131:28: warning: sending 'images' risks causing data races; this is an error in the Swift 6 language mode
129 |             }
130 |             DispatchQueue.main.async {
131 |                 completion(images, error)
    |                            |- warning: sending 'images' risks causing data races; this is an error in the Swift 6 language mode
    |                            `- note: task-isolated 'images' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
132 |             }
133 |         }
/host/spi-builder-workspace/Sources/Wikipedia+ImageMeta.swift:119:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
117 |                 else {
118 |                 DispatchQueue.main.async {
119 |                     completion (nil, .decodingError)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
120 |                 }
121 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+ImageMeta.swift:109:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
107 |             guard error == nil else {
108 |                 DispatchQueue.main.async {
109 |                     completion (nil, error)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
110 |                 }
111 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:64:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 62 |             else {
 63 |                 DispatchQueue.main.async {
 64 |                     completion(article, .other(nil))
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 65 |                 }
 66 |                 return nil
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:64:32: warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
 62 |             else {
 63 |                 DispatchQueue.main.async {
 64 |                     completion(article, .other(nil))
    |                                |- warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
    |                                `- note: task-isolated 'article' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 65 |                 }
 66 |                 return nil
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:45:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 43 |               else {
 44 |                 DispatchQueue.main.async {
 45 |                     completion(article, nil)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 46 |                 }
 47 |                 return nil
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:45:32: warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
 43 |               else {
 44 |                 DispatchQueue.main.async {
 45 |                     completion(article, nil)
    |                                |- warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
    |                                `- note: task-isolated 'article' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 46 |                 }
 47 |                 return nil
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:97:17: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 95 |             article.languageLinks = languages
 96 |             DispatchQueue.main.async {
 97 |                 completion(article, error)
    |                 |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                 `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 98 |             }
 99 |         }
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:97:28: warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
 95 |             article.languageLinks = languages
 96 |             DispatchQueue.main.async {
 97 |                 completion(article, error)
    |                            |- warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
    |                            `- note: task-isolated 'article' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 98 |             }
 99 |         }
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:90:25: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 88 |                 else {
 89 |                     DispatchQueue.main.async {
 90 |                         completion (article, .decodingError)
    |                         |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                         `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 91 |                     }
 92 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:90:37: warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
 88 |                 else {
 89 |                     DispatchQueue.main.async {
 90 |                         completion (article, .decodingError)
    |                                     |- warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
    |                                     `- note: task-isolated 'article' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 91 |                     }
 92 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:81:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 79 |             guard let jsonDictionary = jsonDictionary  else {
 80 |                 DispatchQueue.main.async {
 81 |                     completion (article, .decodingError)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 82 |                 }
 83 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:81:33: warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
 79 |             guard let jsonDictionary = jsonDictionary  else {
 80 |                 DispatchQueue.main.async {
 81 |                     completion (article, .decodingError)
    |                                 |- warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
    |                                 `- note: task-isolated 'article' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 82 |                 }
 83 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:74:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 72 |                 // (also occurs when the request was cancelled programmatically)
 73 |                 DispatchQueue.main.async {
 74 |                     completion (article, error)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 75 |                 }
 76 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:74:33: warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
 72 |                 // (also occurs when the request was cancelled programmatically)
 73 |                 DispatchQueue.main.async {
 74 |                     completion (article, error)
    |                                 |- warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
    |                                 `- note: task-isolated 'article' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 75 |                 }
 76 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:88:25: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 86 |                 else {
 87 |                     DispatchQueue.main.async {
 88 |                         completion(nil, language, .other(nil))
    |                         |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                         `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 89 |                     }
 90 |                     return nil
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:88:41: warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
 86 |                 else {
 87 |                     DispatchQueue.main.async {
 88 |                         completion(nil, language, .other(nil))
    |                                         |- warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
    |                                         `- note: task-isolated 'language' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 89 |                     }
 90 |                     return nil
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:123:25: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
121 |                     let info = error["info"] as? String {
122 |                     DispatchQueue.main.async {
123 |                         completion (nil, language, .apiError(info))
    |                         |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                         `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
124 |                     }
125 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:123:42: warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
121 |                     let info = error["info"] as? String {
122 |                     DispatchQueue.main.async {
123 |                         completion (nil, language, .apiError(info))
    |                                          |- warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
    |                                          `- note: task-isolated 'language' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
124 |                     }
125 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:156:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
154 |
155 |                 DispatchQueue.main.async {
156 |                     completion(results, language, error)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
157 |                 }
158 |
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:156:32: warning: sending 'results' risks causing data races; this is an error in the Swift 6 language mode
154 |
155 |                 DispatchQueue.main.async {
156 |                     completion(results, language, error)
    |                                |- warning: sending 'results' risks causing data races; this is an error in the Swift 6 language mode
    |                                `- note: task-isolated 'results' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
157 |                 }
158 |
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:156:41: warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
154 |
155 |                 DispatchQueue.main.async {
156 |                     completion(results, language, error)
    |                                         |- warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
    |                                         `- note: task-isolated 'language' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
157 |                 }
158 |
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:130:25: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
128 |                 guard let pages = query["pages"] as? [JSONDictionary] else {
129 |                     DispatchQueue.main.async {
130 |                         completion (nil, language, .notFound)
    |                         |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                         `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
131 |                     }
132 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:130:42: warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
128 |                 guard let pages = query["pages"] as? [JSONDictionary] else {
129 |                     DispatchQueue.main.async {
130 |                         completion (nil, language, .notFound)
    |                                          |- warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
    |                                          `- note: task-isolated 'language' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
131 |                     }
132 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:115:25: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
113 |                         // there is no “query” key,
114 |                         // but unfortunately no error message either
115 |                         completion (nil, language, .notFound)
    |                         |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                         `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
116 |                     }
117 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:115:42: warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
113 |                         // there is no “query” key,
114 |                         // but unfortunately no error message either
115 |                         completion (nil, language, .notFound)
    |                                          |- warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
    |                                          `- note: task-isolated 'language' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
116 |                     }
117 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:105:25: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
103 |                 guard let jsonDictionary = jsonDictionary else {
104 |                     DispatchQueue.main.async {
105 |                         completion (nil, language, .decodingError)
    |                         |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                         `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
106 |                     }
107 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:105:42: warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
103 |                 guard let jsonDictionary = jsonDictionary else {
104 |                     DispatchQueue.main.async {
105 |                         completion (nil, language, .decodingError)
    |                                          |- warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
    |                                          `- note: task-isolated 'language' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
106 |                     }
107 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:98:25: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 96 |                     // (also occurs when the request was cancelled programmatically)
 97 |                     DispatchQueue.main.async {
 98 |                         completion (nil, language, error)
    |                         |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                         `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 99 |                     }
100 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:98:42: warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
 96 |                     // (also occurs when the request was cancelled programmatically)
 97 |                     DispatchQueue.main.async {
 98 |                         completion (nil, language, error)
    |                                          |- warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
    |                                          `- note: task-isolated 'language' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 99 |                     }
100 |                     return
[30/31] Compiling WikipediaKit Wikipedia+Languages.swift
/host/spi-builder-workspace/Sources/Wikipedia+Featured.swift:52:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
50 |             else {
51 |                 DispatchQueue.main.async {
52 |                     completion(.failure(.other(nil)))
   |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
   |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
53 |                 }
54 |                 return nil
/host/spi-builder-workspace/Sources/Wikipedia+Featured.swift:78:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
76 |             if let featured = WikipediaFeatured(jsonDictionary: jsonDictionary, language: language) {
77 |                 DispatchQueue.main.async {
78 |                     completion(.success(featured))
   |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
   |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
79 |                 }
80 |             } else {
/host/spi-builder-workspace/Sources/Wikipedia+Featured.swift:78:41: warning: sending 'featured' risks causing data races; this is an error in the Swift 6 language mode
76 |             if let featured = WikipediaFeatured(jsonDictionary: jsonDictionary, language: language) {
77 |                 DispatchQueue.main.async {
78 |                     completion(.success(featured))
   |                                         |- warning: sending 'featured' risks causing data races; this is an error in the Swift 6 language mode
   |                                         `- note: task-isolated 'featured' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
79 |                 }
80 |             } else {
/host/spi-builder-workspace/Sources/Wikipedia+Featured.swift:82:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
80 |             } else {
81 |                 DispatchQueue.main.async {
82 |                     completion(.failure(.noResults))
   |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
   |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
83 |                 }
84 |             }
/host/spi-builder-workspace/Sources/Wikipedia+Featured.swift:71:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
69 |             guard let jsonDictionary = jsonDictionary  else {
70 |                 DispatchQueue.main.async {
71 |                     completion(.failure(.decodingError))
   |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
   |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
72 |                 }
73 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+Featured.swift:64:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
62 |                 // (also occurs when the request was cancelled programmatically)
63 |                 DispatchQueue.main.async {
64 |                     completion(.failure(error!))
   |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
   |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
65 |                 }
66 |                 return
/host/spi-builder-workspace/Sources/WikipediaNetworking.swift:156:53: error: cannot find 'kCFBundleExecutableKey' in scope
154 |         #if !os(Linux)
155 |             if let infoDictionary = Bundle.main.infoDictionary {
156 |                     let bundleName = infoDictionary[kCFBundleExecutableKey as String] as? String ?? "Unknown App"
    |                                                     `- error: cannot find 'kCFBundleExecutableKey' in scope
157 |                     let bundleID = infoDictionary[kCFBundleIdentifierKey as String] as? String ?? "Unkown Bundle ID"
158 |                     let marketingVersionString = infoDictionary["CFBundleShortVersionString"] as? String ?? "Unknown Version"
/host/spi-builder-workspace/Sources/WikipediaNetworking.swift:157:51: error: cannot find 'kCFBundleIdentifierKey' in scope
155 |             if let infoDictionary = Bundle.main.infoDictionary {
156 |                     let bundleName = infoDictionary[kCFBundleExecutableKey as String] as? String ?? "Unknown App"
157 |                     let bundleID = infoDictionary[kCFBundleIdentifierKey as String] as? String ?? "Unkown Bundle ID"
    |                                                   `- error: cannot find 'kCFBundleIdentifierKey' in scope
158 |                     let marketingVersionString = infoDictionary["CFBundleShortVersionString"] as? String ?? "Unknown Version"
159 |                     userAgent = "\(bundleName)/\(marketingVersionString) (\(bundleID); \(WikipediaNetworking.appAuthorEmailForAPI)) \(framework)"
/host/spi-builder-workspace/Sources/Wikipedia+ImageMeta.swift:100:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 98 |             else {
 99 |                 DispatchQueue.main.async {
100 |                     completion(nil, .other(nil))
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
101 |                 }
102 |                 return nil
/host/spi-builder-workspace/Sources/Wikipedia+ImageMeta.swift:46:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 44 |                   firstURL.path != "" else {
 45 |                 DispatchQueue.main.async {
 46 |                     completion(nil, .other(nil))
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 47 |                 }
 48 |                 return nil
/host/spi-builder-workspace/Sources/Wikipedia+ImageMeta.swift:61:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 59 |             return self.requestSizedImageMetadata(language: language, ids: imageIDs, width: width) { imageMetadata, error in
 60 |                 DispatchQueue.main.async {
 61 |                     completion(imageMetadata, error)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 62 |                 }
 63 |             }
/host/spi-builder-workspace/Sources/Wikipedia+ImageMeta.swift:61:32: warning: sending 'imageMetadata' risks causing data races; this is an error in the Swift 6 language mode
 59 |             return self.requestSizedImageMetadata(language: language, ids: imageIDs, width: width) { imageMetadata, error in
 60 |                 DispatchQueue.main.async {
 61 |                     completion(imageMetadata, error)
    |                                |- warning: sending 'imageMetadata' risks causing data races; this is an error in the Swift 6 language mode
    |                                `- note: task-isolated 'imageMetadata' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 62 |                 }
 63 |             }
/host/spi-builder-workspace/Sources/Wikipedia+ImageMeta.swift:131:17: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
129 |             }
130 |             DispatchQueue.main.async {
131 |                 completion(images, error)
    |                 |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                 `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
132 |             }
133 |         }
/host/spi-builder-workspace/Sources/Wikipedia+ImageMeta.swift:131:28: warning: sending 'images' risks causing data races; this is an error in the Swift 6 language mode
129 |             }
130 |             DispatchQueue.main.async {
131 |                 completion(images, error)
    |                            |- warning: sending 'images' risks causing data races; this is an error in the Swift 6 language mode
    |                            `- note: task-isolated 'images' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
132 |             }
133 |         }
/host/spi-builder-workspace/Sources/Wikipedia+ImageMeta.swift:119:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
117 |                 else {
118 |                 DispatchQueue.main.async {
119 |                     completion (nil, .decodingError)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
120 |                 }
121 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+ImageMeta.swift:109:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
107 |             guard error == nil else {
108 |                 DispatchQueue.main.async {
109 |                     completion (nil, error)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
110 |                 }
111 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:64:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 62 |             else {
 63 |                 DispatchQueue.main.async {
 64 |                     completion(article, .other(nil))
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 65 |                 }
 66 |                 return nil
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:64:32: warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
 62 |             else {
 63 |                 DispatchQueue.main.async {
 64 |                     completion(article, .other(nil))
    |                                |- warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
    |                                `- note: task-isolated 'article' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 65 |                 }
 66 |                 return nil
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:45:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 43 |               else {
 44 |                 DispatchQueue.main.async {
 45 |                     completion(article, nil)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 46 |                 }
 47 |                 return nil
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:45:32: warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
 43 |               else {
 44 |                 DispatchQueue.main.async {
 45 |                     completion(article, nil)
    |                                |- warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
    |                                `- note: task-isolated 'article' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 46 |                 }
 47 |                 return nil
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:97:17: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 95 |             article.languageLinks = languages
 96 |             DispatchQueue.main.async {
 97 |                 completion(article, error)
    |                 |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                 `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 98 |             }
 99 |         }
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:97:28: warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
 95 |             article.languageLinks = languages
 96 |             DispatchQueue.main.async {
 97 |                 completion(article, error)
    |                            |- warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
    |                            `- note: task-isolated 'article' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 98 |             }
 99 |         }
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:90:25: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 88 |                 else {
 89 |                     DispatchQueue.main.async {
 90 |                         completion (article, .decodingError)
    |                         |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                         `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 91 |                     }
 92 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:90:37: warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
 88 |                 else {
 89 |                     DispatchQueue.main.async {
 90 |                         completion (article, .decodingError)
    |                                     |- warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
    |                                     `- note: task-isolated 'article' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 91 |                     }
 92 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:81:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 79 |             guard let jsonDictionary = jsonDictionary  else {
 80 |                 DispatchQueue.main.async {
 81 |                     completion (article, .decodingError)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 82 |                 }
 83 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:81:33: warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
 79 |             guard let jsonDictionary = jsonDictionary  else {
 80 |                 DispatchQueue.main.async {
 81 |                     completion (article, .decodingError)
    |                                 |- warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
    |                                 `- note: task-isolated 'article' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 82 |                 }
 83 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:74:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 72 |                 // (also occurs when the request was cancelled programmatically)
 73 |                 DispatchQueue.main.async {
 74 |                     completion (article, error)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 75 |                 }
 76 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:74:33: warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
 72 |                 // (also occurs when the request was cancelled programmatically)
 73 |                 DispatchQueue.main.async {
 74 |                     completion (article, error)
    |                                 |- warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
    |                                 `- note: task-isolated 'article' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 75 |                 }
 76 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:88:25: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 86 |                 else {
 87 |                     DispatchQueue.main.async {
 88 |                         completion(nil, language, .other(nil))
    |                         |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                         `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 89 |                     }
 90 |                     return nil
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:88:41: warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
 86 |                 else {
 87 |                     DispatchQueue.main.async {
 88 |                         completion(nil, language, .other(nil))
    |                                         |- warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
    |                                         `- note: task-isolated 'language' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 89 |                     }
 90 |                     return nil
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:123:25: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
121 |                     let info = error["info"] as? String {
122 |                     DispatchQueue.main.async {
123 |                         completion (nil, language, .apiError(info))
    |                         |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                         `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
124 |                     }
125 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:123:42: warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
121 |                     let info = error["info"] as? String {
122 |                     DispatchQueue.main.async {
123 |                         completion (nil, language, .apiError(info))
    |                                          |- warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
    |                                          `- note: task-isolated 'language' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
124 |                     }
125 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:156:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
154 |
155 |                 DispatchQueue.main.async {
156 |                     completion(results, language, error)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
157 |                 }
158 |
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:156:32: warning: sending 'results' risks causing data races; this is an error in the Swift 6 language mode
154 |
155 |                 DispatchQueue.main.async {
156 |                     completion(results, language, error)
    |                                |- warning: sending 'results' risks causing data races; this is an error in the Swift 6 language mode
    |                                `- note: task-isolated 'results' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
157 |                 }
158 |
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:156:41: warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
154 |
155 |                 DispatchQueue.main.async {
156 |                     completion(results, language, error)
    |                                         |- warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
    |                                         `- note: task-isolated 'language' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
157 |                 }
158 |
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:130:25: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
128 |                 guard let pages = query["pages"] as? [JSONDictionary] else {
129 |                     DispatchQueue.main.async {
130 |                         completion (nil, language, .notFound)
    |                         |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                         `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
131 |                     }
132 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:130:42: warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
128 |                 guard let pages = query["pages"] as? [JSONDictionary] else {
129 |                     DispatchQueue.main.async {
130 |                         completion (nil, language, .notFound)
    |                                          |- warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
    |                                          `- note: task-isolated 'language' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
131 |                     }
132 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:115:25: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
113 |                         // there is no “query” key,
114 |                         // but unfortunately no error message either
115 |                         completion (nil, language, .notFound)
    |                         |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                         `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
116 |                     }
117 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:115:42: warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
113 |                         // there is no “query” key,
114 |                         // but unfortunately no error message either
115 |                         completion (nil, language, .notFound)
    |                                          |- warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
    |                                          `- note: task-isolated 'language' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
116 |                     }
117 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:105:25: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
103 |                 guard let jsonDictionary = jsonDictionary else {
104 |                     DispatchQueue.main.async {
105 |                         completion (nil, language, .decodingError)
    |                         |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                         `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
106 |                     }
107 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:105:42: warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
103 |                 guard let jsonDictionary = jsonDictionary else {
104 |                     DispatchQueue.main.async {
105 |                         completion (nil, language, .decodingError)
    |                                          |- warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
    |                                          `- note: task-isolated 'language' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
106 |                     }
107 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:98:25: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 96 |                     // (also occurs when the request was cancelled programmatically)
 97 |                     DispatchQueue.main.async {
 98 |                         completion (nil, language, error)
    |                         |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                         `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 99 |                     }
100 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:98:42: warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
 96 |                     // (also occurs when the request was cancelled programmatically)
 97 |                     DispatchQueue.main.async {
 98 |                         completion (nil, language, error)
    |                                          |- warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
    |                                          `- note: task-isolated 'language' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 99 |                     }
100 |                     return
[31/31] Compiling WikipediaKit Wikipedia+NearbySearch.swift
/host/spi-builder-workspace/Sources/Wikipedia+Featured.swift:52:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
50 |             else {
51 |                 DispatchQueue.main.async {
52 |                     completion(.failure(.other(nil)))
   |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
   |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
53 |                 }
54 |                 return nil
/host/spi-builder-workspace/Sources/Wikipedia+Featured.swift:78:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
76 |             if let featured = WikipediaFeatured(jsonDictionary: jsonDictionary, language: language) {
77 |                 DispatchQueue.main.async {
78 |                     completion(.success(featured))
   |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
   |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
79 |                 }
80 |             } else {
/host/spi-builder-workspace/Sources/Wikipedia+Featured.swift:78:41: warning: sending 'featured' risks causing data races; this is an error in the Swift 6 language mode
76 |             if let featured = WikipediaFeatured(jsonDictionary: jsonDictionary, language: language) {
77 |                 DispatchQueue.main.async {
78 |                     completion(.success(featured))
   |                                         |- warning: sending 'featured' risks causing data races; this is an error in the Swift 6 language mode
   |                                         `- note: task-isolated 'featured' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
79 |                 }
80 |             } else {
/host/spi-builder-workspace/Sources/Wikipedia+Featured.swift:82:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
80 |             } else {
81 |                 DispatchQueue.main.async {
82 |                     completion(.failure(.noResults))
   |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
   |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
83 |                 }
84 |             }
/host/spi-builder-workspace/Sources/Wikipedia+Featured.swift:71:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
69 |             guard let jsonDictionary = jsonDictionary  else {
70 |                 DispatchQueue.main.async {
71 |                     completion(.failure(.decodingError))
   |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
   |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
72 |                 }
73 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+Featured.swift:64:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
62 |                 // (also occurs when the request was cancelled programmatically)
63 |                 DispatchQueue.main.async {
64 |                     completion(.failure(error!))
   |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
   |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
65 |                 }
66 |                 return
/host/spi-builder-workspace/Sources/WikipediaNetworking.swift:156:53: error: cannot find 'kCFBundleExecutableKey' in scope
154 |         #if !os(Linux)
155 |             if let infoDictionary = Bundle.main.infoDictionary {
156 |                     let bundleName = infoDictionary[kCFBundleExecutableKey as String] as? String ?? "Unknown App"
    |                                                     `- error: cannot find 'kCFBundleExecutableKey' in scope
157 |                     let bundleID = infoDictionary[kCFBundleIdentifierKey as String] as? String ?? "Unkown Bundle ID"
158 |                     let marketingVersionString = infoDictionary["CFBundleShortVersionString"] as? String ?? "Unknown Version"
/host/spi-builder-workspace/Sources/WikipediaNetworking.swift:157:51: error: cannot find 'kCFBundleIdentifierKey' in scope
155 |             if let infoDictionary = Bundle.main.infoDictionary {
156 |                     let bundleName = infoDictionary[kCFBundleExecutableKey as String] as? String ?? "Unknown App"
157 |                     let bundleID = infoDictionary[kCFBundleIdentifierKey as String] as? String ?? "Unkown Bundle ID"
    |                                                   `- error: cannot find 'kCFBundleIdentifierKey' in scope
158 |                     let marketingVersionString = infoDictionary["CFBundleShortVersionString"] as? String ?? "Unknown Version"
159 |                     userAgent = "\(bundleName)/\(marketingVersionString) (\(bundleID); \(WikipediaNetworking.appAuthorEmailForAPI)) \(framework)"
/host/spi-builder-workspace/Sources/Wikipedia+ImageMeta.swift:100:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 98 |             else {
 99 |                 DispatchQueue.main.async {
100 |                     completion(nil, .other(nil))
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
101 |                 }
102 |                 return nil
/host/spi-builder-workspace/Sources/Wikipedia+ImageMeta.swift:46:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 44 |                   firstURL.path != "" else {
 45 |                 DispatchQueue.main.async {
 46 |                     completion(nil, .other(nil))
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 47 |                 }
 48 |                 return nil
/host/spi-builder-workspace/Sources/Wikipedia+ImageMeta.swift:61:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 59 |             return self.requestSizedImageMetadata(language: language, ids: imageIDs, width: width) { imageMetadata, error in
 60 |                 DispatchQueue.main.async {
 61 |                     completion(imageMetadata, error)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 62 |                 }
 63 |             }
/host/spi-builder-workspace/Sources/Wikipedia+ImageMeta.swift:61:32: warning: sending 'imageMetadata' risks causing data races; this is an error in the Swift 6 language mode
 59 |             return self.requestSizedImageMetadata(language: language, ids: imageIDs, width: width) { imageMetadata, error in
 60 |                 DispatchQueue.main.async {
 61 |                     completion(imageMetadata, error)
    |                                |- warning: sending 'imageMetadata' risks causing data races; this is an error in the Swift 6 language mode
    |                                `- note: task-isolated 'imageMetadata' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 62 |                 }
 63 |             }
/host/spi-builder-workspace/Sources/Wikipedia+ImageMeta.swift:131:17: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
129 |             }
130 |             DispatchQueue.main.async {
131 |                 completion(images, error)
    |                 |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                 `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
132 |             }
133 |         }
/host/spi-builder-workspace/Sources/Wikipedia+ImageMeta.swift:131:28: warning: sending 'images' risks causing data races; this is an error in the Swift 6 language mode
129 |             }
130 |             DispatchQueue.main.async {
131 |                 completion(images, error)
    |                            |- warning: sending 'images' risks causing data races; this is an error in the Swift 6 language mode
    |                            `- note: task-isolated 'images' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
132 |             }
133 |         }
/host/spi-builder-workspace/Sources/Wikipedia+ImageMeta.swift:119:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
117 |                 else {
118 |                 DispatchQueue.main.async {
119 |                     completion (nil, .decodingError)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
120 |                 }
121 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+ImageMeta.swift:109:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
107 |             guard error == nil else {
108 |                 DispatchQueue.main.async {
109 |                     completion (nil, error)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
110 |                 }
111 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:64:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 62 |             else {
 63 |                 DispatchQueue.main.async {
 64 |                     completion(article, .other(nil))
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 65 |                 }
 66 |                 return nil
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:64:32: warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
 62 |             else {
 63 |                 DispatchQueue.main.async {
 64 |                     completion(article, .other(nil))
    |                                |- warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
    |                                `- note: task-isolated 'article' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 65 |                 }
 66 |                 return nil
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:45:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 43 |               else {
 44 |                 DispatchQueue.main.async {
 45 |                     completion(article, nil)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 46 |                 }
 47 |                 return nil
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:45:32: warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
 43 |               else {
 44 |                 DispatchQueue.main.async {
 45 |                     completion(article, nil)
    |                                |- warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
    |                                `- note: task-isolated 'article' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 46 |                 }
 47 |                 return nil
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:97:17: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 95 |             article.languageLinks = languages
 96 |             DispatchQueue.main.async {
 97 |                 completion(article, error)
    |                 |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                 `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 98 |             }
 99 |         }
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:97:28: warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
 95 |             article.languageLinks = languages
 96 |             DispatchQueue.main.async {
 97 |                 completion(article, error)
    |                            |- warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
    |                            `- note: task-isolated 'article' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 98 |             }
 99 |         }
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:90:25: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 88 |                 else {
 89 |                     DispatchQueue.main.async {
 90 |                         completion (article, .decodingError)
    |                         |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                         `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 91 |                     }
 92 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:90:37: warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
 88 |                 else {
 89 |                     DispatchQueue.main.async {
 90 |                         completion (article, .decodingError)
    |                                     |- warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
    |                                     `- note: task-isolated 'article' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 91 |                     }
 92 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:81:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 79 |             guard let jsonDictionary = jsonDictionary  else {
 80 |                 DispatchQueue.main.async {
 81 |                     completion (article, .decodingError)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 82 |                 }
 83 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:81:33: warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
 79 |             guard let jsonDictionary = jsonDictionary  else {
 80 |                 DispatchQueue.main.async {
 81 |                     completion (article, .decodingError)
    |                                 |- warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
    |                                 `- note: task-isolated 'article' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 82 |                 }
 83 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:74:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 72 |                 // (also occurs when the request was cancelled programmatically)
 73 |                 DispatchQueue.main.async {
 74 |                     completion (article, error)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 75 |                 }
 76 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+Languages.swift:74:33: warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
 72 |                 // (also occurs when the request was cancelled programmatically)
 73 |                 DispatchQueue.main.async {
 74 |                     completion (article, error)
    |                                 |- warning: sending 'article' risks causing data races; this is an error in the Swift 6 language mode
    |                                 `- note: task-isolated 'article' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 75 |                 }
 76 |                 return
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:88:25: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 86 |                 else {
 87 |                     DispatchQueue.main.async {
 88 |                         completion(nil, language, .other(nil))
    |                         |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                         `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 89 |                     }
 90 |                     return nil
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:88:41: warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
 86 |                 else {
 87 |                     DispatchQueue.main.async {
 88 |                         completion(nil, language, .other(nil))
    |                                         |- warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
    |                                         `- note: task-isolated 'language' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 89 |                     }
 90 |                     return nil
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:123:25: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
121 |                     let info = error["info"] as? String {
122 |                     DispatchQueue.main.async {
123 |                         completion (nil, language, .apiError(info))
    |                         |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                         `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
124 |                     }
125 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:123:42: warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
121 |                     let info = error["info"] as? String {
122 |                     DispatchQueue.main.async {
123 |                         completion (nil, language, .apiError(info))
    |                                          |- warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
    |                                          `- note: task-isolated 'language' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
124 |                     }
125 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:156:21: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
154 |
155 |                 DispatchQueue.main.async {
156 |                     completion(results, language, error)
    |                     |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
157 |                 }
158 |
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:156:32: warning: sending 'results' risks causing data races; this is an error in the Swift 6 language mode
154 |
155 |                 DispatchQueue.main.async {
156 |                     completion(results, language, error)
    |                                |- warning: sending 'results' risks causing data races; this is an error in the Swift 6 language mode
    |                                `- note: task-isolated 'results' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
157 |                 }
158 |
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:156:41: warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
154 |
155 |                 DispatchQueue.main.async {
156 |                     completion(results, language, error)
    |                                         |- warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
    |                                         `- note: task-isolated 'language' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
157 |                 }
158 |
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:130:25: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
128 |                 guard let pages = query["pages"] as? [JSONDictionary] else {
129 |                     DispatchQueue.main.async {
130 |                         completion (nil, language, .notFound)
    |                         |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                         `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
131 |                     }
132 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:130:42: warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
128 |                 guard let pages = query["pages"] as? [JSONDictionary] else {
129 |                     DispatchQueue.main.async {
130 |                         completion (nil, language, .notFound)
    |                                          |- warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
    |                                          `- note: task-isolated 'language' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
131 |                     }
132 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:115:25: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
113 |                         // there is no “query” key,
114 |                         // but unfortunately no error message either
115 |                         completion (nil, language, .notFound)
    |                         |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                         `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
116 |                     }
117 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:115:42: warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
113 |                         // there is no “query” key,
114 |                         // but unfortunately no error message either
115 |                         completion (nil, language, .notFound)
    |                                          |- warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
    |                                          `- note: task-isolated 'language' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
116 |                     }
117 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:105:25: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
103 |                 guard let jsonDictionary = jsonDictionary else {
104 |                     DispatchQueue.main.async {
105 |                         completion (nil, language, .decodingError)
    |                         |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                         `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
106 |                     }
107 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:105:42: warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
103 |                 guard let jsonDictionary = jsonDictionary else {
104 |                     DispatchQueue.main.async {
105 |                         completion (nil, language, .decodingError)
    |                                          |- warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
    |                                          `- note: task-isolated 'language' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
106 |                     }
107 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:98:25: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 96 |                     // (also occurs when the request was cancelled programmatically)
 97 |                     DispatchQueue.main.async {
 98 |                         completion (nil, language, error)
    |                         |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                         `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 99 |                     }
100 |                     return
/host/spi-builder-workspace/Sources/Wikipedia+NearbySearch.swift:98:42: warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
 96 |                     // (also occurs when the request was cancelled programmatically)
 97 |                     DispatchQueue.main.async {
 98 |                         completion (nil, language, error)
    |                                          |- warning: sending 'language' risks causing data races; this is an error in the Swift 6 language mode
    |                                          `- note: task-isolated 'language' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 99 |                     }
100 |                     return
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-3":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:android-6.1-latest swift build --swift-sdk aarch64-unknown-linux-android24 2>&1
android-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:fe1962677657b2408c217cb5cceb3c09bc1d91486e360cebbc6eee461a5945d8
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:android-6.1-latest
[0/1] Planning build
Building for debugging...
[0/1] Write swift-version-24593BA9C3E375BF.txt
error: emit-module command failed with exit code 1 (use -v to see invocation)
[2/27] Emitting module WikipediaKit
/host/spi-builder-workspace/Sources/WikipediaLanguage.swift:98:41: warning: 'components(fromIdentifier:)' is deprecated: Use `Locale.Components(identifier:)` to access components
 96 |     public static var systemLanguageCode: String = {
 97 |         guard let preferredLanguage = Locale.preferredLanguages.first else { return "en" }
 98 |         let languageComponents = Locale.components(fromIdentifier: preferredLanguage)
    |                                         `- warning: 'components(fromIdentifier:)' is deprecated: Use `Locale.Components(identifier:)` to access components
 99 |         let languageCode = languageComponents[NSLocale.Key.languageCode.rawValue]
100 |         return languageCode ?? "en"
/host/spi-builder-workspace/Sources/WikipediaLanguage.swift:129:45: warning: 'components(fromIdentifier:)' is deprecated: Use `Locale.Components(identifier:)` to access components
127 |             guard language.hasPrefix("zh") else { continue }
128 |
129 |             let languageComponents = Locale.components(fromIdentifier: language)
    |                                             `- warning: 'components(fromIdentifier:)' is deprecated: Use `Locale.Components(identifier:)` to access components
130 |             let languageCode = languageComponents[NSLocale.Key.languageCode.rawValue]
131 |             guard let variant = languageComponents[NSLocale.Key.scriptCode.rawValue]?.lowercased(),
/host/spi-builder-workspace/Sources/WikipediaNetworking.swift:156:53: error: cannot find 'kCFBundleExecutableKey' in scope
154 |         #if !os(Linux)
155 |             if let infoDictionary = Bundle.main.infoDictionary {
156 |                     let bundleName = infoDictionary[kCFBundleExecutableKey as String] as? String ?? "Unknown App"
    |                                                     `- error: cannot find 'kCFBundleExecutableKey' in scope
157 |                     let bundleID = infoDictionary[kCFBundleIdentifierKey as String] as? String ?? "Unkown Bundle ID"
158 |                     let marketingVersionString = infoDictionary["CFBundleShortVersionString"] as? String ?? "Unknown Version"
/host/spi-builder-workspace/Sources/WikipediaNetworking.swift:157:51: error: cannot find 'kCFBundleIdentifierKey' in scope
155 |             if let infoDictionary = Bundle.main.infoDictionary {
156 |                     let bundleName = infoDictionary[kCFBundleExecutableKey as String] as? String ?? "Unknown App"
157 |                     let bundleID = infoDictionary[kCFBundleIdentifierKey as String] as? String ?? "Unkown Bundle ID"
    |                                                   `- error: cannot find 'kCFBundleIdentifierKey' in scope
158 |                     let marketingVersionString = infoDictionary["CFBundleShortVersionString"] as? String ?? "Unknown Version"
159 |                     userAgent = "\(bundleName)/\(marketingVersionString) (\(bundleID); \(WikipediaNetworking.appAuthorEmailForAPI)) \(framework)"
[3/30] Compiling WikipediaKit WikipediaNamespace.swift
/host/spi-builder-workspace/Sources/WikipediaNetworking.swift:156:53: error: cannot find 'kCFBundleExecutableKey' in scope
154 |         #if !os(Linux)
155 |             if let infoDictionary = Bundle.main.infoDictionary {
156 |                     let bundleName = infoDictionary[kCFBundleExecutableKey as String] as? String ?? "Unknown App"
    |                                                     `- error: cannot find 'kCFBundleExecutableKey' in scope
157 |                     let bundleID = infoDictionary[kCFBundleIdentifierKey as String] as? String ?? "Unkown Bundle ID"
158 |                     let marketingVersionString = infoDictionary["CFBundleShortVersionString"] as? String ?? "Unknown Version"
/host/spi-builder-workspace/Sources/WikipediaNetworking.swift:157:51: error: cannot find 'kCFBundleIdentifierKey' in scope
155 |             if let infoDictionary = Bundle.main.infoDictionary {
156 |                     let bundleName = infoDictionary[kCFBundleExecutableKey as String] as? String ?? "Unknown App"
157 |                     let bundleID = infoDictionary[kCFBundleIdentifierKey as String] as? String ?? "Unkown Bundle ID"
    |                                                   `- error: cannot find 'kCFBundleIdentifierKey' in scope
158 |                     let marketingVersionString = infoDictionary["CFBundleShortVersionString"] as? String ?? "Unknown Version"
159 |                     userAgent = "\(bundleName)/\(marketingVersionString) (\(bundleID); \(WikipediaNetworking.appAuthorEmailForAPI)) \(framework)"
[4/30] Compiling WikipediaKit WikipediaNetworking.swift
/host/spi-builder-workspace/Sources/WikipediaNetworking.swift:156:53: error: cannot find 'kCFBundleExecutableKey' in scope
154 |         #if !os(Linux)
155 |             if let infoDictionary = Bundle.main.infoDictionary {
156 |                     let bundleName = infoDictionary[kCFBundleExecutableKey as String] as? String ?? "Unknown App"
    |                                                     `- error: cannot find 'kCFBundleExecutableKey' in scope
157 |                     let bundleID = infoDictionary[kCFBundleIdentifierKey as String] as? String ?? "Unkown Bundle ID"
158 |                     let marketingVersionString = infoDictionary["CFBundleShortVersionString"] as? String ?? "Unknown Version"
/host/spi-builder-workspace/Sources/WikipediaNetworking.swift:157:51: error: cannot find 'kCFBundleIdentifierKey' in scope
155 |             if let infoDictionary = Bundle.main.infoDictionary {
156 |                     let bundleName = infoDictionary[kCFBundleExecutableKey as String] as? String ?? "Unknown App"
157 |                     let bundleID = infoDictionary[kCFBundleIdentifierKey as String] as? String ?? "Unkown Bundle ID"
    |                                                   `- error: cannot find 'kCFBundleIdentifierKey' in scope
158 |                     let marketingVersionString = infoDictionary["CFBundleShortVersionString"] as? String ?? "Unknown Version"
159 |                     userAgent = "\(bundleName)/\(marketingVersionString) (\(bundleID); \(WikipediaNetworking.appAuthorEmailForAPI)) \(framework)"
[5/30] Compiling WikipediaKit WikipediaNetworkingActivityDelegate.swift
/host/spi-builder-workspace/Sources/WikipediaNetworking.swift:156:53: error: cannot find 'kCFBundleExecutableKey' in scope
154 |         #if !os(Linux)
155 |             if let infoDictionary = Bundle.main.infoDictionary {
156 |                     let bundleName = infoDictionary[kCFBundleExecutableKey as String] as? String ?? "Unknown App"
    |                                                     `- error: cannot find 'kCFBundleExecutableKey' in scope
157 |                     let bundleID = infoDictionary[kCFBundleIdentifierKey as String] as? String ?? "Unkown Bundle ID"
158 |                     let marketingVersionString = infoDictionary["CFBundleShortVersionString"] as? String ?? "Unknown Version"
/host/spi-builder-workspace/Sources/WikipediaNetworking.swift:157:51: error: cannot find 'kCFBundleIdentifierKey' in scope
155 |             if let infoDictionary = Bundle.main.infoDictionary {
156 |                     let bundleName = infoDictionary[kCFBundleExecutableKey as String] as? String ?? "Unknown App"
157 |                     let bundleID = infoDictionary[kCFBundleIdentifierKey as String] as? String ?? "Unkown Bundle ID"
    |                                                   `- error: cannot find 'kCFBundleIdentifierKey' in scope
158 |                     let marketingVersionString = infoDictionary["CFBundleShortVersionString"] as? String ?? "Unknown Version"
159 |                     userAgent = "\(bundleName)/\(marketingVersionString) (\(bundleID); \(WikipediaNetworking.appAuthorEmailForAPI)) \(framework)"
[6/30] Compiling WikipediaKit String+Wikipedia.swift
[7/30] Compiling WikipediaKit URL+Wikipedia.swift
[8/30] Compiling WikipediaKit Wikipedia+Article.swift
[9/30] Compiling WikipediaKit Wikipedia+ArticleSummary.swift
[10/30] Compiling WikipediaKit WikipediaArticleCache.swift
[11/30] Compiling WikipediaKit WikipediaArticleLanguageLink.swift
[12/30] Compiling WikipediaKit WikipediaArticlePreview.swift
[13/30] Compiling WikipediaKit WikipediaError.swift
[14/30] Compiling WikipediaKit WikipediaSearchResultsCache.swift
[15/30] Compiling WikipediaKit WikipediaTOCItem.swift
[16/30] Compiling WikipediaKit WikipediaTextFormattingDelegate.swift
[17/30] Compiling WikipediaKit WikipediaRandomArticlesBuffer.swift
[18/30] Compiling WikipediaKit WikipediaSearchMethod.swift
[19/30] Compiling WikipediaKit WikipediaSearchResults.swift
[20/30] Compiling WikipediaKit Wikipedia+Featured.swift
[21/30] Compiling WikipediaKit Wikipedia+ImageMeta.swift
[22/30] Compiling WikipediaKit Wikipedia+Languages.swift
[23/30] Compiling WikipediaKit Wikipedia+NearbySearch.swift
[24/30] Compiling WikipediaKit WikipediaFeatured.swift
/host/spi-builder-workspace/Sources/WikipediaLanguage.swift:98:41: warning: 'components(fromIdentifier:)' is deprecated: Use `Locale.Components(identifier:)` to access components
 96 |     public static var systemLanguageCode: String = {
 97 |         guard let preferredLanguage = Locale.preferredLanguages.first else { return "en" }
 98 |         let languageComponents = Locale.components(fromIdentifier: preferredLanguage)
    |                                         `- warning: 'components(fromIdentifier:)' is deprecated: Use `Locale.Components(identifier:)` to access components
 99 |         let languageCode = languageComponents[NSLocale.Key.languageCode.rawValue]
100 |         return languageCode ?? "en"
/host/spi-builder-workspace/Sources/WikipediaLanguage.swift:129:45: warning: 'components(fromIdentifier:)' is deprecated: Use `Locale.Components(identifier:)` to access components
127 |             guard language.hasPrefix("zh") else { continue }
128 |
129 |             let languageComponents = Locale.components(fromIdentifier: language)
    |                                             `- warning: 'components(fromIdentifier:)' is deprecated: Use `Locale.Components(identifier:)` to access components
130 |             let languageCode = languageComponents[NSLocale.Key.languageCode.rawValue]
131 |             guard let variant = languageComponents[NSLocale.Key.scriptCode.rawValue]?.lowercased(),
[25/30] Compiling WikipediaKit WikipediaImage.swift
/host/spi-builder-workspace/Sources/WikipediaLanguage.swift:98:41: warning: 'components(fromIdentifier:)' is deprecated: Use `Locale.Components(identifier:)` to access components
 96 |     public static var systemLanguageCode: String = {
 97 |         guard let preferredLanguage = Locale.preferredLanguages.first else { return "en" }
 98 |         let languageComponents = Locale.components(fromIdentifier: preferredLanguage)
    |                                         `- warning: 'components(fromIdentifier:)' is deprecated: Use `Locale.Components(identifier:)` to access components
 99 |         let languageCode = languageComponents[NSLocale.Key.languageCode.rawValue]
100 |         return languageCode ?? "en"
/host/spi-builder-workspace/Sources/WikipediaLanguage.swift:129:45: warning: 'components(fromIdentifier:)' is deprecated: Use `Locale.Components(identifier:)` to access components
127 |             guard language.hasPrefix("zh") else { continue }
128 |
129 |             let languageComponents = Locale.components(fromIdentifier: language)
    |                                             `- warning: 'components(fromIdentifier:)' is deprecated: Use `Locale.Components(identifier:)` to access components
130 |             let languageCode = languageComponents[NSLocale.Key.languageCode.rawValue]
131 |             guard let variant = languageComponents[NSLocale.Key.scriptCode.rawValue]?.lowercased(),
[26/30] Compiling WikipediaKit WikipediaLanguage.swift
/host/spi-builder-workspace/Sources/WikipediaLanguage.swift:98:41: warning: 'components(fromIdentifier:)' is deprecated: Use `Locale.Components(identifier:)` to access components
 96 |     public static var systemLanguageCode: String = {
 97 |         guard let preferredLanguage = Locale.preferredLanguages.first else { return "en" }
 98 |         let languageComponents = Locale.components(fromIdentifier: preferredLanguage)
    |                                         `- warning: 'components(fromIdentifier:)' is deprecated: Use `Locale.Components(identifier:)` to access components
 99 |         let languageCode = languageComponents[NSLocale.Key.languageCode.rawValue]
100 |         return languageCode ?? "en"
/host/spi-builder-workspace/Sources/WikipediaLanguage.swift:129:45: warning: 'components(fromIdentifier:)' is deprecated: Use `Locale.Components(identifier:)` to access components
127 |             guard language.hasPrefix("zh") else { continue }
128 |
129 |             let languageComponents = Locale.components(fromIdentifier: language)
    |                                             `- warning: 'components(fromIdentifier:)' is deprecated: Use `Locale.Components(identifier:)` to access components
130 |             let languageCode = languageComponents[NSLocale.Key.languageCode.rawValue]
131 |             guard let variant = languageComponents[NSLocale.Key.scriptCode.rawValue]?.lowercased(),
[27/30] Compiling WikipediaKit Wikipedia+RandomArticles.swift
[28/30] Compiling WikipediaKit Wikipedia+Search.swift
[29/30] Compiling WikipediaKit Wikipedia.swift
[30/30] Compiling WikipediaKit WikipediaArticle.swift
BUILD FAILURE 6.1 android