The Swift Package Index logo.Swift Package Index

Track the adoption of Swift 6 strict concurrency checks for data race safety. How many packages are Ready for Swift 6?

Build Information

Successful build of ASAPExecution, reference 1.0.0-beta.2 (895bc1), with Swift 6.1 for macOS (SPM) on 30 Apr 2025 06:54:21 UTC.

Swift 6 data race errors: 0

Build Command

env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -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

Build Log

========================================
RunAll
========================================
Builder version: 4.61.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/Frizlab/ASAPExecution.git
Reference: 1.0.0-beta.2
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/Frizlab/ASAPExecution
 * tag               1.0.0-beta.2 -> FETCH_HEAD
HEAD is now at 895bc14 Add “until” ASAP execution
Cloned https://github.com/Frizlab/ASAPExecution.git
Revision (git rev-parse @):
895bc14949cac3ee70e26a10fd5d02aa75aeb7af
SUCCESS checkout https://github.com/Frizlab/ASAPExecution.git at 1.0.0-beta.2
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.1
Building package at path:  $PWD
https://github.com/Frizlab/ASAPExecution.git
https://github.com/Frizlab/ASAPExecution.git
{
  "dependencies" : [
    {
      "identity" : "runloopthread",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.1.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/happn-app/RunLoopThread.git"
    }
  ],
  "manifest_display_name" : "ASAPExecution",
  "name" : "ASAPExecution",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "10.12"
    },
    {
      "name" : "ios",
      "version" : "10.0"
    },
    {
      "name" : "tvos",
      "version" : "10.0"
    },
    {
      "name" : "watchos",
      "version" : "3.0"
    }
  ],
  "products" : [
    {
      "name" : "ASAPExecution",
      "targets" : [
        "ASAPExecution"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "ASAPExecutionTests",
      "module_type" : "SwiftTarget",
      "name" : "ASAPExecutionTests",
      "path" : "Tests/ASAPExecutionTests",
      "product_dependencies" : [
        "RunLoopThread"
      ],
      "sources" : [
        "ASAPExecutionUntilTests.swift",
        "ASAPExecutionWhenTests.swift"
      ],
      "target_dependencies" : [
        "ASAPExecution"
      ],
      "type" : "test"
    },
    {
      "c99name" : "ASAPExecution",
      "module_type" : "SwiftTarget",
      "name" : "ASAPExecution",
      "path" : "Sources/ASAPExecution",
      "product_memberships" : [
        "ASAPExecution"
      ],
      "sources" : [
        "ASAPExecution.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.5"
}
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -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
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-2F0A5646E1D333AE.txt
[3/4] Emitting module ASAPExecution
[4/4] Compiling ASAPExecution ASAPExecution.swift
/Users/admin/builder/spi-builder-workspace/Sources/ASAPExecution/ASAPExecution.swift:133:11: warning: capture of 'self' with non-sendable type 'ASAPExecution<R>' in a '@Sendable' closure
  4 |
  5 | /* Note: A fun thing to do later (when Swift allows it) would be to try and reimplement this as an actor using a custom executor. */
  6 | public final class ASAPExecution<R> {
    |                    `- note: generic class 'ASAPExecution' does not conform to the 'Sendable' protocol
  7 |
  8 | 	@discardableResult
    :
131 | 		runLoop.perform(inModes: runLoopModes, block: {
132 | 			/* If we’re already cancelled, we have nothing to do. */
133 | 			guard !self.isCancelled else {
    |           `- warning: capture of 'self' with non-sendable type 'ASAPExecution<R>' in a '@Sendable' closure
134 | 				return
135 | 			}
/Users/admin/builder/spi-builder-workspace/Sources/ASAPExecution/ASAPExecution.swift:172:50: warning: converting non-sendable function value to '@Sendable () -> Void' may introduce data races
170 | 		} else {
171 | 			/* We schedule immediately… on next run loop. */
172 | 			runLoop.perform(inModes: runLoopModes, block: runNextTry)
    |                                                  `- warning: converting non-sendable function value to '@Sendable () -> Void' may introduce data races
173 | 		}
174 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/ASAPExecution/ASAPExecution.swift:161:18: warning: capture of 'self' with non-sendable type 'ASAPExecution<R>' in a '@Sendable' closure
  4 |
  5 | /* Note: A fun thing to do later (when Swift allows it) would be to try and reimplement this as an actor using a custom executor. */
  6 | public final class ASAPExecution<R> {
    |                    `- note: generic class 'ASAPExecution' does not conform to the 'Sendable' protocol
  7 |
  8 | 	@discardableResult
    :
159 | 		if let retryDelay = retryDelay {
160 | 			let t = Timer(timeInterval: retryDelay, repeats: false, block: { t in
161 | 				assert(t === self.timer)
    |                  `- warning: capture of 'self' with non-sendable type 'ASAPExecution<R>' in a '@Sendable' closure
162 | 				self.timer = nil
163 | 				t.invalidate() /* Probably unneeded */
/Users/admin/builder/spi-builder-workspace/Sources/ASAPExecution/ASAPExecution.swift:161:18: warning: implicit capture of 'self' requires that 'ASAPExecution<R>' conforms to 'Sendable'; this is an error in the Swift 6 language mode
  4 |
  5 | /* Note: A fun thing to do later (when Swift allows it) would be to try and reimplement this as an actor using a custom executor. */
  6 | public final class ASAPExecution<R> {
    |                    `- note: generic class 'ASAPExecution' does not conform to the 'Sendable' protocol
  7 |
  8 | 	@discardableResult
    :
159 | 		if let retryDelay = retryDelay {
160 | 			let t = Timer(timeInterval: retryDelay, repeats: false, block: { t in
161 | 				assert(t === self.timer)
    |                  `- warning: implicit capture of 'self' requires that 'ASAPExecution<R>' conforms to 'Sendable'; this is an error in the Swift 6 language mode
162 | 				self.timer = nil
163 | 				t.invalidate() /* Probably unneeded */
Build complete! (6.10s)
Fetching https://github.com/happn-app/RunLoopThread.git
[1/67] Fetching runloopthread
Fetched https://github.com/happn-app/RunLoopThread.git from cache (0.64s)
Computing version for https://github.com/happn-app/RunLoopThread.git
Computed https://github.com/happn-app/RunLoopThread.git at 1.1.0 (1.21s)
Creating working copy for https://github.com/happn-app/RunLoopThread.git
Working copy of https://github.com/happn-app/RunLoopThread.git resolved at 1.1.0
Build complete.
{
  "dependencies" : [
    {
      "identity" : "runloopthread",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.1.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/happn-app/RunLoopThread.git"
    }
  ],
  "manifest_display_name" : "ASAPExecution",
  "name" : "ASAPExecution",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "10.12"
    },
    {
      "name" : "ios",
      "version" : "10.0"
    },
    {
      "name" : "tvos",
      "version" : "10.0"
    },
    {
      "name" : "watchos",
      "version" : "3.0"
    }
  ],
  "products" : [
    {
      "name" : "ASAPExecution",
      "targets" : [
        "ASAPExecution"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "ASAPExecutionTests",
      "module_type" : "SwiftTarget",
      "name" : "ASAPExecutionTests",
      "path" : "Tests/ASAPExecutionTests",
      "product_dependencies" : [
        "RunLoopThread"
      ],
      "sources" : [
        "ASAPExecutionUntilTests.swift",
        "ASAPExecutionWhenTests.swift"
      ],
      "target_dependencies" : [
        "ASAPExecution"
      ],
      "type" : "test"
    },
    {
      "c99name" : "ASAPExecution",
      "module_type" : "SwiftTarget",
      "name" : "ASAPExecution",
      "path" : "Sources/ASAPExecution",
      "product_memberships" : [
        "ASAPExecution"
      ],
      "sources" : [
        "ASAPExecution.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.5"
}
Done.