Build Information
Successful build of RogersBankDownloader, reference v0.2.1 (c0b2f0
), with Swift 6.1 for Linux on 29 Apr 2025 20:56:22 UTC.
Swift 6 data race errors: 4
Build Command
bash -c docker run --pull=always --rm -v "checkouts-4609320-1":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures 2>&1
Build Log
========================================
RunAll
========================================
Builder version: 4.61.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/Nef10/RogersBankDownloader.git
Reference: v0.2.1
Initialized empty Git repository in /host/spi-builder-workspace/.git/
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: git branch -m <name>
From https://github.com/Nef10/RogersBankDownloader
* tag v0.2.1 -> FETCH_HEAD
HEAD is now at c0b2f07 Fix missing public modifier
Cloned https://github.com/Nef10/RogersBankDownloader.git
Revision (git rev-parse @):
c0b2f07fe6bbcd68b8956e4713a87533597aae0e
SUCCESS checkout https://github.com/Nef10/RogersBankDownloader.git at v0.2.1
========================================
Build
========================================
Selected platform: linux
Swift version: 6.1
Building package at path: $PWD
https://github.com/Nef10/RogersBankDownloader.git
https://github.com/Nef10/RogersBankDownloader.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
{
"dependencies" : [
],
"manifest_display_name" : "RogersBankDownloader",
"name" : "RogersBankDownloader",
"path" : "/host/spi-builder-workspace",
"platforms" : [
],
"products" : [
{
"name" : "RogersBankDownloader",
"targets" : [
"RogersBankDownloader"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "RogersBankDownloaderTests",
"module_type" : "SwiftTarget",
"name" : "RogersBankDownloaderTests",
"path" : "Tests/RogersBankDownloaderTests",
"sources" : [
"DownloadErrorTests.swift",
"RogersActivityTests.swift"
],
"target_dependencies" : [
"RogersBankDownloader"
],
"type" : "test"
},
{
"c99name" : "RogersBankDownloader",
"module_type" : "SwiftTarget",
"name" : "RogersBankDownloader",
"path" : "Sources/RogersBankDownloader",
"product_memberships" : [
"RogersBankDownloader"
],
"sources" : [
"DownloadError.swift",
"RogersAccount.swift",
"RogersActivity.swift",
"RogersAuthenticator.swift",
"RogersStatement.swift",
"RogersUser.swift",
"URLTaskHelper.swift"
],
"type" : "library"
}
],
"tools_version" : "5.3"
}
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-1":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures 2>&1
basic-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:3bdcac04179f4ed3e5b8e9dbd6e74bbf5ebc0f4fde48bbaad7d1e5c757e65bcb
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.1-latest
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-24593BA9C3E375BF.txt
[3/10] Compiling RogersBankDownloader URLTaskHelper.swift
[4/10] Compiling RogersBankDownloader RogersUser.swift
[5/10] Compiling RogersBankDownloader RogersStatement.swift
[6/10] Compiling RogersBankDownloader RogersAuthenticator.swift
/host/spi-builder-workspace/Sources/RogersBankDownloader/RogersAuthenticator.swift:77:24: warning: static property 'startURL' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
75 | public class RogersAuthenticator: Authenticator {
76 |
77 | private static var startURL = URL(string: "https://rbaccess.rogersbank.com/?product=ROGERSBRAND")!
| |- warning: static property 'startURL' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'startURL' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'startURL' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
78 | private static var authenticationURL = URL(string: "https://rbaccess.rogersbank.com/issuing/digital/authenticate/user")!
79 | private static var twoFactorPreferenceURL = URL(string: "https://rbaccess.rogersbank.com/issuing/digital/twofactorpasscode/preferences/user")!
/host/spi-builder-workspace/Sources/RogersBankDownloader/RogersAuthenticator.swift:78:24: warning: static property 'authenticationURL' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
76 |
77 | private static var startURL = URL(string: "https://rbaccess.rogersbank.com/?product=ROGERSBRAND")!
78 | private static var authenticationURL = URL(string: "https://rbaccess.rogersbank.com/issuing/digital/authenticate/user")!
| |- warning: static property 'authenticationURL' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'authenticationURL' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'authenticationURL' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
79 | private static var twoFactorPreferenceURL = URL(string: "https://rbaccess.rogersbank.com/issuing/digital/twofactorpasscode/preferences/user")!
80 | private static var validateTwoFactorCodeURL = URL(string: "https://rbaccess.rogersbank.com/issuing/digital/authenticate/validatepasscode")!
/host/spi-builder-workspace/Sources/RogersBankDownloader/RogersAuthenticator.swift:79:24: warning: static property 'twoFactorPreferenceURL' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
77 | private static var startURL = URL(string: "https://rbaccess.rogersbank.com/?product=ROGERSBRAND")!
78 | private static var authenticationURL = URL(string: "https://rbaccess.rogersbank.com/issuing/digital/authenticate/user")!
79 | private static var twoFactorPreferenceURL = URL(string: "https://rbaccess.rogersbank.com/issuing/digital/twofactorpasscode/preferences/user")!
| |- warning: static property 'twoFactorPreferenceURL' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'twoFactorPreferenceURL' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'twoFactorPreferenceURL' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
80 | private static var validateTwoFactorCodeURL = URL(string: "https://rbaccess.rogersbank.com/issuing/digital/authenticate/validatepasscode")!
81 | private static let twoFactorRequiredErrorTitle = "Device Not Found"
/host/spi-builder-workspace/Sources/RogersBankDownloader/RogersAuthenticator.swift:80:24: warning: static property 'validateTwoFactorCodeURL' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
78 | private static var authenticationURL = URL(string: "https://rbaccess.rogersbank.com/issuing/digital/authenticate/user")!
79 | private static var twoFactorPreferenceURL = URL(string: "https://rbaccess.rogersbank.com/issuing/digital/twofactorpasscode/preferences/user")!
80 | private static var validateTwoFactorCodeURL = URL(string: "https://rbaccess.rogersbank.com/issuing/digital/authenticate/validatepasscode")!
| |- warning: static property 'validateTwoFactorCodeURL' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'validateTwoFactorCodeURL' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'validateTwoFactorCodeURL' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
81 | private static let twoFactorRequiredErrorTitle = "Device Not Found"
82 | private static let twoFactorRequiredErrorStatus = 412
/host/spi-builder-workspace/Sources/RogersBankDownloader/RogersAuthenticator.swift:140:21: warning: capture of 'completion' with non-sendable type '(DownloadError?) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
138 | guard data != nil else {
139 | if let error {
140 | completion(DownloadError.httpError(error: error.localizedDescription))
| |- warning: capture of 'completion' with non-sendable type '(DownloadError?) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
141 | } else {
142 | completion(DownloadError.noDataReceived)
/host/spi-builder-workspace/Sources/RogersBankDownloader/RogersAuthenticator.swift:213:21: warning: capture of 'completion' with non-sendable type '(Result<any User, DownloadError>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
211 | guard case let .success((data, httpResponse)) = processedResponse else {
212 | if case let .failure(error) = processedResponse {
213 | completion(.failure(error))
| |- warning: capture of 'completion' with non-sendable type '(Result<any User, DownloadError>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
214 | }
215 | return
/host/spi-builder-workspace/Sources/RogersBankDownloader/RogersAuthenticator.swift:220:21: warning: capture of 'self' with non-sendable type 'RogersAuthenticator' in a '@Sendable' closure; this is an error in the Swift 6 language mode
73 | ///
74 | /// Call `login` to authenticate and receive a `User` instance
75 | public class RogersAuthenticator: Authenticator {
| `- note: class 'RogersAuthenticator' does not conform to the 'Sendable' protocol
76 |
77 | private static var startURL = URL(string: "https://rbaccess.rogersbank.com/?product=ROGERSBRAND")!
:
218 | if httpResponse.statusCode == 401, let error = try? JSONDecoder().decode(ErrorMessage.self, from: data),
219 | error.status == Self.twoFactorRequiredErrorStatus, error.title == Self.twoFactorRequiredErrorTitle {
220 | self.twoFactorAuthPreferences(completion: completion)
| `- warning: capture of 'self' with non-sendable type 'RogersAuthenticator' in a '@Sendable' closure; this is an error in the Swift 6 language mode
221 | } else {
222 | completion(.failure(DownloadError.httpError(error: "Status code \(httpResponse.statusCode)")))
/host/spi-builder-workspace/Sources/RogersBankDownloader/RogersAuthenticator.swift:246:21: warning: capture of 'completion' with non-sendable type '(Result<any User, DownloadError>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
244 | guard case let .success((data, httpResponse)) = processedResponse else {
245 | if case let .failure(error) = processedResponse {
246 | completion(.failure(error))
| |- warning: capture of 'completion' with non-sendable type '(Result<any User, DownloadError>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
247 | }
248 | return
/host/spi-builder-workspace/Sources/RogersBankDownloader/RogersAuthenticator.swift:257:40: warning: capture of 'self' with non-sendable type 'RogersAuthenticator' in a '@Sendable' closure; this is an error in the Swift 6 language mode
73 | ///
74 | /// Call `login` to authenticate and receive a `User` instance
75 | public class RogersAuthenticator: Authenticator {
| `- note: class 'RogersAuthenticator' does not conform to the 'Sendable' protocol
76 |
77 | private static var startURL = URL(string: "https://rbaccess.rogersbank.com/?product=ROGERSBRAND")!
:
255 | let decoder = JSONDecoder()
256 | let twoFactorPreferences = try decoder.decode(TwoFactorPreferences.self, from: data)
257 | guard let preference = self.delegate?.selectTwoFactorPreference(twoFactorPreferences.preferences) else {
| `- warning: capture of 'self' with non-sendable type 'RogersAuthenticator' in a '@Sendable' closure; this is an error in the Swift 6 language mode
258 | completion(.failure(DownloadError.noTwoFactorPreference))
259 | return
/host/spi-builder-workspace/Sources/RogersBankDownloader/RogersAuthenticator.swift:281:21: warning: capture of 'completion' with non-sendable type '(Result<any User, DownloadError>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
279 | guard case let .success((data, httpResponse)) = processedResponse else {
280 | if case let .failure(error) = processedResponse {
281 | completion(.failure(error))
| |- warning: capture of 'completion' with non-sendable type '(Result<any User, DownloadError>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
282 | }
283 | return
/host/spi-builder-workspace/Sources/RogersBankDownloader/RogersAuthenticator.swift:292:21: warning: capture of 'self' with non-sendable type 'RogersAuthenticator' in a '@Sendable' closure; this is an error in the Swift 6 language mode
73 | ///
74 | /// Call `login` to authenticate and receive a `User` instance
75 | public class RogersAuthenticator: Authenticator {
| `- note: class 'RogersAuthenticator' does not conform to the 'Sendable' protocol
76 |
77 | private static var startURL = URL(string: "https://rbaccess.rogersbank.com/?product=ROGERSBRAND")!
:
290 | let result = try JSONDecoder().decode(TwoFactorCodeGenerationResult.self, from: data)
291 | if result.success {
292 | self.loginWithTwoFactorAuthenticationCode(completion: completion)
| `- warning: capture of 'self' with non-sendable type 'RogersAuthenticator' in a '@Sendable' closure; this is an error in the Swift 6 language mode
293 | } else {
294 | completion(.failure(DownloadError.twoFactorAuthenticationCodeGenerationFailed))
/host/spi-builder-workspace/Sources/RogersBankDownloader/RogersAuthenticator.swift:315:21: warning: capture of 'completion' with non-sendable type '(Result<any User, DownloadError>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
313 | guard case let .success((data, httpResponse)) = processedResponse else {
314 | if case let .failure(error) = processedResponse {
315 | completion(.failure(error))
| |- warning: capture of 'completion' with non-sendable type '(Result<any User, DownloadError>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
316 | }
317 | return
/host/spi-builder-workspace/Sources/RogersBankDownloader/RogersAuthenticator.swift:328:17: warning: capture of 'self' with non-sendable type 'RogersAuthenticator' in a '@Sendable' closure; this is an error in the Swift 6 language mode
73 | ///
74 | /// Call `login` to authenticate and receive a `User` instance
75 | public class RogersAuthenticator: Authenticator {
| `- note: class 'RogersAuthenticator' does not conform to the 'Sendable' protocol
76 |
77 | private static var startURL = URL(string: "https://rbaccess.rogersbank.com/?product=ROGERSBRAND")!
:
326 | decoder.dateDecodingStrategy = .formatted(Self.dateFormatter)
327 | let user = try decoder.decode(RogersUser.self, from: data)
328 | self.delegate?.saveDeviceId(self.parameters["deviceId"] ?? "")
| `- warning: capture of 'self' with non-sendable type 'RogersAuthenticator' in a '@Sendable' closure; this is an error in the Swift 6 language mode
329 | completion(.success(user))
330 | } catch {
[7/10] Compiling RogersBankDownloader DownloadError.swift
[8/10] Compiling RogersBankDownloader RogersActivity.swift
[9/10] Emitting module RogersBankDownloader
/host/spi-builder-workspace/Sources/RogersBankDownloader/RogersAuthenticator.swift:77:24: warning: static property 'startURL' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
75 | public class RogersAuthenticator: Authenticator {
76 |
77 | private static var startURL = URL(string: "https://rbaccess.rogersbank.com/?product=ROGERSBRAND")!
| |- warning: static property 'startURL' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'startURL' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'startURL' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
78 | private static var authenticationURL = URL(string: "https://rbaccess.rogersbank.com/issuing/digital/authenticate/user")!
79 | private static var twoFactorPreferenceURL = URL(string: "https://rbaccess.rogersbank.com/issuing/digital/twofactorpasscode/preferences/user")!
/host/spi-builder-workspace/Sources/RogersBankDownloader/RogersAuthenticator.swift:78:24: warning: static property 'authenticationURL' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
76 |
77 | private static var startURL = URL(string: "https://rbaccess.rogersbank.com/?product=ROGERSBRAND")!
78 | private static var authenticationURL = URL(string: "https://rbaccess.rogersbank.com/issuing/digital/authenticate/user")!
| |- warning: static property 'authenticationURL' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'authenticationURL' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'authenticationURL' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
79 | private static var twoFactorPreferenceURL = URL(string: "https://rbaccess.rogersbank.com/issuing/digital/twofactorpasscode/preferences/user")!
80 | private static var validateTwoFactorCodeURL = URL(string: "https://rbaccess.rogersbank.com/issuing/digital/authenticate/validatepasscode")!
/host/spi-builder-workspace/Sources/RogersBankDownloader/RogersAuthenticator.swift:79:24: warning: static property 'twoFactorPreferenceURL' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
77 | private static var startURL = URL(string: "https://rbaccess.rogersbank.com/?product=ROGERSBRAND")!
78 | private static var authenticationURL = URL(string: "https://rbaccess.rogersbank.com/issuing/digital/authenticate/user")!
79 | private static var twoFactorPreferenceURL = URL(string: "https://rbaccess.rogersbank.com/issuing/digital/twofactorpasscode/preferences/user")!
| |- warning: static property 'twoFactorPreferenceURL' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'twoFactorPreferenceURL' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'twoFactorPreferenceURL' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
80 | private static var validateTwoFactorCodeURL = URL(string: "https://rbaccess.rogersbank.com/issuing/digital/authenticate/validatepasscode")!
81 | private static let twoFactorRequiredErrorTitle = "Device Not Found"
/host/spi-builder-workspace/Sources/RogersBankDownloader/RogersAuthenticator.swift:80:24: warning: static property 'validateTwoFactorCodeURL' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
78 | private static var authenticationURL = URL(string: "https://rbaccess.rogersbank.com/issuing/digital/authenticate/user")!
79 | private static var twoFactorPreferenceURL = URL(string: "https://rbaccess.rogersbank.com/issuing/digital/twofactorpasscode/preferences/user")!
80 | private static var validateTwoFactorCodeURL = URL(string: "https://rbaccess.rogersbank.com/issuing/digital/authenticate/validatepasscode")!
| |- warning: static property 'validateTwoFactorCodeURL' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'validateTwoFactorCodeURL' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'validateTwoFactorCodeURL' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
81 | private static let twoFactorRequiredErrorTitle = "Device Not Found"
82 | private static let twoFactorRequiredErrorStatus = 412
[10/10] Compiling RogersBankDownloader RogersAccount.swift
/host/spi-builder-workspace/Sources/RogersBankDownloader/RogersAccount.swift:189:21: warning: capture of 'completion' with non-sendable type '(Result<URL, DownloadError>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
187 | guard let url else {
188 | if let error {
189 | completion(.failure(DownloadError.httpError(error: error.localizedDescription)))
| |- warning: capture of 'completion' with non-sendable type '(Result<URL, DownloadError>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
190 | } else {
191 | completion(.failure(DownloadError.noDataReceived))
/host/spi-builder-workspace/Sources/RogersBankDownloader/RogersAccount.swift:215:21: warning: capture of 'completion' with non-sendable type '(Result<[any Statement], DownloadError>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
213 | guard let data else {
214 | if let error {
215 | completion(.failure(DownloadError.httpError(error: error.localizedDescription)))
| |- warning: capture of 'completion' with non-sendable type '(Result<[any Statement], DownloadError>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
216 | } else {
217 | completion(.failure(DownloadError.noDataReceived))
/host/spi-builder-workspace/Sources/RogersBankDownloader/RogersAccount.swift:260:21: warning: capture of 'completion' with non-sendable type '(Result<[any Activity], DownloadError>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
258 | guard case let .success((data, httpResponse)) = processedResponse else {
259 | if case let .failure(error) = processedResponse {
260 | completion(.failure(error))
| |- warning: capture of 'completion' with non-sendable type '(Result<[any Activity], DownloadError>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
261 | }
262 | return
/host/spi-builder-workspace/Sources/RogersBankDownloader/RogersAccount.swift:266:21: warning: capture of 'self' with non-sendable type 'RogersAccount' in a '@Sendable' closure; this is an error in the Swift 6 language mode
72 |
73 | /// A Rogers credit card account
74 | public struct RogersAccount: Account, Codable {
| `- note: consider making struct 'RogersAccount' conform to the 'Sendable' protocol
75 |
76 | enum CodingKeys: String, CodingKey {
:
264 | guard httpResponse.statusCode == 200 else {
265 | if retryAttempt < 2 {
266 | downloadActivities(statementNumber: statementNumber, retryAttempt: retryAttempt + 1, completion: completion)
| `- warning: capture of 'self' with non-sendable type 'RogersAccount' in a '@Sendable' closure; this is an error in the Swift 6 language mode
267 | } else {
268 | completion(.failure(DownloadError.httpError(error: "Status code \(httpResponse.statusCode)")))
Build complete! (8.48s)
Build complete.
{
"dependencies" : [
],
"manifest_display_name" : "RogersBankDownloader",
"name" : "RogersBankDownloader",
"path" : "/host/spi-builder-workspace",
"platforms" : [
],
"products" : [
{
"name" : "RogersBankDownloader",
"targets" : [
"RogersBankDownloader"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "RogersBankDownloaderTests",
"module_type" : "SwiftTarget",
"name" : "RogersBankDownloaderTests",
"path" : "Tests/RogersBankDownloaderTests",
"sources" : [
"DownloadErrorTests.swift",
"RogersActivityTests.swift"
],
"target_dependencies" : [
"RogersBankDownloader"
],
"type" : "test"
},
{
"c99name" : "RogersBankDownloader",
"module_type" : "SwiftTarget",
"name" : "RogersBankDownloader",
"path" : "Sources/RogersBankDownloader",
"product_memberships" : [
"RogersBankDownloader"
],
"sources" : [
"DownloadError.swift",
"RogersAccount.swift",
"RogersActivity.swift",
"RogersAuthenticator.swift",
"RogersStatement.swift",
"RogersUser.swift",
"URLTaskHelper.swift"
],
"type" : "library"
}
],
"tools_version" : "5.3"
}
basic-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:3bdcac04179f4ed3e5b8e9dbd6e74bbf5ebc0f4fde48bbaad7d1e5c757e65bcb
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.1-latest
Done.