Build Information
Successful build of RetryingOperation with Swift 6.0 for Linux.
Swift 6 data race errors: 1
Build Command
bash -c docker run --rm -v "checkouts-4606859-0":/host -w "$workDir" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete 2>&1
Build Log
========================================
RunAll
========================================
Builder version: 4.40.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/happn-app/RetryingOperation.git
Reference: main
Initialized empty Git repository in /host/spi-builder-workspace/.git/
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: git branch -m <name>
From https://github.com/happn-app/RetryingOperation
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at c64f989 Make the RetryHelper methods mutating
Cloned https://github.com/happn-app/RetryingOperation.git
Revision (git rev-parse @):
c64f98966916fc184f7575dd97e2eba9962a3d33
SUCCESS checkout https://github.com/happn-app/RetryingOperation.git at main
========================================
Build
========================================
Selected platform: linux
Swift version: 6.0
Building package at path: $workDir
https://github.com/happn-app/RetryingOperation.git
Running build ...
bash -c docker run --rm -v "checkouts-4606859-0":/host -w "$workDir" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete 2>&1
Fetching https://github.com/apple/swift-log.git
[1/3353] Fetching swift-log
Fetched https://github.com/apple/swift-log.git from cache (0.34s)
Computing version for https://github.com/apple/swift-log.git
Computed https://github.com/apple/swift-log.git at 1.4.0 (0.42s)
Creating working copy for https://github.com/apple/swift-log.git
Working copy of https://github.com/apple/swift-log.git resolved at 1.4.0
Building for debugging...
[0/3] Write sources
[2/3] Write swift-version-24593BA9C3E375BF.txt
[4/7] Compiling Logging Logging.swift
[5/7] Compiling Logging LogHandler.swift
[6/7] Compiling Logging Locks.swift
[7/7] Emitting module Logging
[9/13] Compiling RetryingOperation WrappedRetryingOperation.swift
[10/13] Compiling RetryingOperation RetryingOperationConfig.swift
/host/spi-builder-workspace/Sources/RetryingOperation/RetryingOperationConfig.swift:47:20: warning: static property 'logger' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
45 | public static var oslog: OSLog? = .default
46 | #endif
47 | public static var logger: Logging.Logger? = {
| |- warning: static property 'logger' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'logger' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'logger' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
48 | #if canImport(os)
49 | if #available(macOS 10.12, tvOS 10.0, iOS 10.0, watchOS 3.0, *) {
[11/13] Emitting module RetryingOperation
/host/spi-builder-workspace/Sources/RetryingOperation/RetryingOperationConfig.swift:47:20: warning: static property 'logger' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
45 | public static var oslog: OSLog? = .default
46 | #endif
47 | public static var logger: Logging.Logger? = {
| |- warning: static property 'logger' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'logger' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'logger' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
48 | #if canImport(os)
49 | if #available(macOS 10.12, tvOS 10.0, iOS 10.0, watchOS 3.0, *) {
[12/13] Compiling RetryingOperation RetryingOperation.swift
/host/spi-builder-workspace/Sources/RetryingOperation/RetryingOperationConfig.swift:47:20: warning: static property 'logger' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
45 | public static var oslog: OSLog? = .default
46 | #endif
47 | public static var logger: Logging.Logger? = {
| |- warning: static property 'logger' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'logger' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'logger' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
48 | #if canImport(os)
49 | if #available(macOS 10.12, tvOS 10.0, iOS 10.0, watchOS 3.0, *) {
/host/spi-builder-workspace/Sources/RetryingOperation/RetryingOperation.swift:109:22: warning: capture of 'self' with non-sendable type 'RetryingOperation' in a `@Sendable` closure; this is an error in the Swift 6 language mode
77 | A solution is to use `RetryableOperationWrapper`.
78 | See the doc of this class for more information. */
79 | open class RetryingOperation : Operation {
| `- note: class 'RetryingOperation' does not conform to the 'Sendable' protocol
80 |
81 | public var numberOfRetries: Int? {
:
107 | else {
108 | /* We are in an asynchronous operation, we must start the operation ourselves. */
109 | retryQueue.async{ self._startBaseOperationOnQueue(isRetry: false) }
| `- warning: capture of 'self' with non-sendable type 'RetryingOperation' in a `@Sendable` closure; this is an error in the Swift 6 language mode
110 | }
111 | }
/host/spi-builder-workspace/Sources/RetryingOperation/RetryingOperation.swift:202:21: warning: capture of 'self' with non-sendable type 'RetryingOperation' in a `@Sendable` closure; this is an error in the Swift 6 language mode
77 | A solution is to use `RetryableOperationWrapper`.
78 | See the doc of this class for more information. */
79 | open class RetryingOperation : Operation {
| `- note: class 'RetryingOperation' does not conform to the 'Sendable' protocol
80 |
81 | public var numberOfRetries: Int? {
:
200 | But if you call this method with `nil`, the base operation is retried *now*. */
201 | public final func retry(withHelpers helpers: [RetryHelper]?) {
202 | retryQueue.async{ self._unsafeRetry(withHelpers: helpers) }
| `- warning: capture of 'self' with non-sendable type 'RetryingOperation' in a `@Sendable` closure; this is an error in the Swift 6 language mode
203 | }
204 |
/host/spi-builder-workspace/Sources/RetryingOperation/RetryingOperation.swift:202:52: warning: capture of 'helpers' with non-sendable type '[any RetryHelper]?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
200 | But if you call this method with `nil`, the base operation is retried *now*. */
201 | public final func retry(withHelpers helpers: [RetryHelper]?) {
202 | retryQueue.async{ self._unsafeRetry(withHelpers: helpers) }
| `- warning: capture of 'helpers' with non-sendable type '[any RetryHelper]?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
203 | }
204 |
/host/spi-builder-workspace/Sources/RetryingOperation/RetryHelper.swift:20:17: note: protocol 'RetryHelper' does not conform to the 'Sendable' protocol
18 |
19 |
20 | public protocol RetryHelper {
| `- note: protocol 'RetryHelper' does not conform to the 'Sendable' protocol
21 |
22 | mutating func setup()
/host/spi-builder-workspace/Sources/RetryingOperation/RetryingOperation.swift:261:11: warning: capture of 'self' with non-sendable type 'RetryingOperation' in a `@Sendable` closure; this is an error in the Swift 6 language mode
77 | A solution is to use `RetryableOperationWrapper`.
78 | See the doc of this class for more information. */
79 | open class RetryingOperation : Operation {
| `- note: class 'RetryingOperation' does not conform to the 'Sendable' protocol
80 |
81 | public var numberOfRetries: Int? {
:
259 |
260 | retryQueue.async{
261 | assert(self.isExecuting && self.isBaseOperationRunning)
| `- warning: capture of 'self' with non-sendable type 'RetryingOperation' in a `@Sendable` closure; this is an error in the Swift 6 language mode
262 | self.isBaseOperationRunning = false
263 |
/host/spi-builder-workspace/Sources/RetryingOperation/RetryingOperation.swift:264:48: warning: capture of 'retryHelpers' with non-sendable type '[any RetryHelper]?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
262 | self.isBaseOperationRunning = false
263 |
264 | guard !self.isCancelled, let retryHelpers = retryHelpers else {
| `- warning: capture of 'retryHelpers' with non-sendable type '[any RetryHelper]?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
265 | self.retryingState = .finished
266 | return
/host/spi-builder-workspace/Sources/RetryingOperation/RetryHelper.swift:20:17: note: protocol 'RetryHelper' does not conform to the 'Sendable' protocol
18 |
19 |
20 | public protocol RetryHelper {
| `- note: protocol 'RetryHelper' does not conform to the 'Sendable' protocol
21 |
22 | mutating func setup()
/host/spi-builder-workspace/Sources/RetryingOperation/RetryingOperation.swift:261:11: warning: implicit capture of 'self' requires that 'RetryingOperation' conforms to `Sendable`; this is an error in the Swift 6 language mode
77 | A solution is to use `RetryableOperationWrapper`.
78 | See the doc of this class for more information. */
79 | open class RetryingOperation : Operation {
| `- note: class 'RetryingOperation' does not conform to the 'Sendable' protocol
80 |
81 | public var numberOfRetries: Int? {
:
259 |
260 | retryQueue.async{
261 | assert(self.isExecuting && self.isBaseOperationRunning)
| `- warning: implicit capture of 'self' requires that 'RetryingOperation' conforms to `Sendable`; this is an error in the Swift 6 language mode
262 | self.isBaseOperationRunning = false
263 |
/host/spi-builder-workspace/Sources/RetryingOperation/RetryingOperation.swift:261:31: warning: implicit capture of 'self' requires that 'RetryingOperation' conforms to `Sendable`; this is an error in the Swift 6 language mode
77 | A solution is to use `RetryableOperationWrapper`.
78 | See the doc of this class for more information. */
79 | open class RetryingOperation : Operation {
| `- note: class 'RetryingOperation' does not conform to the 'Sendable' protocol
80 |
81 | public var numberOfRetries: Int? {
:
259 |
260 | retryQueue.async{
261 | assert(self.isExecuting && self.isBaseOperationRunning)
| `- warning: implicit capture of 'self' requires that 'RetryingOperation' conforms to `Sendable`; this is an error in the Swift 6 language mode
262 | self.isBaseOperationRunning = false
263 |
/host/spi-builder-workspace/Sources/RetryingOperation/RetryingOperation.swift:451:7: warning: capture of 'self' with non-sendable type 'RetryingOperation' in a `@Sendable` closure; this is an error in the Swift 6 language mode
77 | A solution is to use `RetryableOperationWrapper`.
78 | See the doc of this class for more information. */
79 | open class RetryingOperation : Operation {
| `- note: class 'RetryingOperation' does not conform to the 'Sendable' protocol
80 |
81 | public var numberOfRetries: Int? {
:
449 |
450 | retryQueue.async{
451 | if self.retryHelpers != nil {
| `- warning: capture of 'self' with non-sendable type 'RetryingOperation' in a `@Sendable` closure; this is an error in the Swift 6 language mode
452 | assert(self.retryingState.isWaitingToRetry)
453 |
/host/spi-builder-workspace/Sources/RetryingOperation/RetryingOperation.swift:452:12: warning: implicit capture of 'self' requires that 'RetryingOperation' conforms to `Sendable`; this is an error in the Swift 6 language mode
77 | A solution is to use `RetryableOperationWrapper`.
78 | See the doc of this class for more information. */
79 | open class RetryingOperation : Operation {
| `- note: class 'RetryingOperation' does not conform to the 'Sendable' protocol
80 |
81 | public var numberOfRetries: Int? {
:
450 | retryQueue.async{
451 | if self.retryHelpers != nil {
452 | assert(self.retryingState.isWaitingToRetry)
| `- warning: implicit capture of 'self' requires that 'RetryingOperation' conforms to `Sendable`; this is an error in the Swift 6 language mode
453 |
454 | /* Tears-down the retry helpers. */
[13/13] Compiling RetryingOperation RetryHelper.swift
Build complete! (10.16s)
Build complete.
{
"dependencies" : [
{
"identity" : "swift-log",
"requirement" : {
"range" : [
{
"lower_bound" : "1.2.0",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-log.git"
}
],
"manifest_display_name" : "RetryingOperation",
"name" : "RetryingOperation",
"path" : "/host/spi-builder-workspace",
"platforms" : [
],
"products" : [
{
"name" : "RetryingOperation",
"targets" : [
"RetryingOperation"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "RetryingOperationTests",
"module_type" : "SwiftTarget",
"name" : "RetryingOperationTests",
"path" : "Tests/RetryingOperationTests",
"sources" : [
"Helpers/BasicAsynchronousRetryingOperation.swift",
"Helpers/BasicSynchronousRetryableOperation.swift",
"Helpers/BasicSynchronousRetryingOperation.swift",
"Helpers/CustomRetrySynchronousRetryingOperation.swift",
"RetryingOperationTests.swift"
],
"target_dependencies" : [
"RetryingOperation"
],
"type" : "test"
},
{
"c99name" : "RetryingOperation",
"module_type" : "SwiftTarget",
"name" : "RetryingOperation",
"path" : "Sources/RetryingOperation",
"product_dependencies" : [
"Logging"
],
"product_memberships" : [
"RetryingOperation"
],
"sources" : [
"RetryHelper.swift",
"RetryingOperation.swift",
"RetryingOperationConfig.swift",
"WrappedRetryingOperation.swift"
],
"type" : "library"
}
],
"tools_version" : "5.5"
}
Done.