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

Failed to build ClassyFlux, reference master (5a6958), with Swift 6.0 for macOS (SPM) on 14 Sep 2024 04:30:49 UTC.

Build Command

env DEVELOPER_DIR=/Applications/Xcode-16.0.0-Release.Candidate.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete

Build Log

========================================
RunAll
========================================
Builder version: 4.53.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/Cozmonate/ClassyFlux.git
Reference: master
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/Cozmonate/ClassyFlux
 * branch            master     -> FETCH_HEAD
 * [new branch]      master     -> origin/master
HEAD is now at 5a69583 Fix CI issues
Cloned https://github.com/Cozmonate/ClassyFlux.git
Revision (git rev-parse @):
5a69583cd708e0870dbd414635d1d304f882e35b
SUCCESS checkout https://github.com/Cozmonate/ClassyFlux.git at master
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.0
Building package at path:  $PWD
https://github.com/Cozmonate/ClassyFlux.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.0.0-Release.Candidate.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Building for debugging...
[0/3] Write sources
[2/3] Write swift-version-117DEE11B69C53C9.txt
[4/5] Emitting module ResolvingContainer
[5/5] Compiling ResolvingContainer ResolvingContainer.swift
[6/13] Compiling ClassyFlux FluxMiddleware.swift
[7/13] Compiling ClassyFlux FluxDispatcher.swift
/Users/admin/builder/spi-builder-workspace/ClassyFlux/FluxDispatcher.swift:57:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FluxDispatcher' may have shared mutable state; this is an error in the Swift 6 language mode
 52 |
 53 | /// An object that dispatches actions to registered workers synchronously on the same thread.
 54 | open class FluxDispatcher: FluxDispatching {
    |            `- note: class 'FluxDispatcher' does not conform to the 'Sendable' protocol
 55 |
 56 |     /// The default dispatcher instance
 57 |     public static let `default` = FluxDispatcher()
    |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FluxDispatcher' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'default' 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
 58 |
 59 |     #if canImport(Combine)
/Users/admin/builder/spi-builder-workspace/ClassyFlux/FluxDispatcher.swift:60:6: error: stored properties cannot be marked potentially unavailable with '@available'
 58 |
 59 |     #if canImport(Combine)
 60 |     @available(OSX 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
    |      `- error: stored properties cannot be marked potentially unavailable with '@available'
 61 |     public lazy var willDispatchAction = PassthroughSubject<FluxAction, Never>()
 62 |
/Users/admin/builder/spi-builder-workspace/ClassyFlux/FluxDispatcher.swift:63:6: error: stored properties cannot be marked potentially unavailable with '@available'
 61 |     public lazy var willDispatchAction = PassthroughSubject<FluxAction, Never>()
 62 |
 63 |     @available(OSX 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
    |      `- error: stored properties cannot be marked potentially unavailable with '@available'
 64 |     public lazy var didDispatchAction = PassthroughSubject<FluxAction, Never>()
 65 |     #endif
[8/13] Compiling ClassyFlux FluxStore.swift
/Users/admin/builder/spi-builder-workspace/ClassyFlux/FluxStore.swift:65:6: error: stored properties cannot be marked potentially unavailable with '@available'
 63 |
 64 |     #if canImport(Combine)
 65 |     @available(OSX 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
    |      `- error: stored properties cannot be marked potentially unavailable with '@available'
 66 |     public lazy var objectWillChange = ObservableObjectPublisher()
 67 |
/Users/admin/builder/spi-builder-workspace/ClassyFlux/FluxStore.swift:68:6: error: stored properties cannot be marked potentially unavailable with '@available'
 66 |     public lazy var objectWillChange = ObservableObjectPublisher()
 67 |
 68 |     @available(OSX 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
    |      `- error: stored properties cannot be marked potentially unavailable with '@available'
 69 |     public lazy var stateWillChange = PassthroughSubject<Change, Never>()
 70 |
/Users/admin/builder/spi-builder-workspace/ClassyFlux/FluxStore.swift:71:6: error: stored properties cannot be marked potentially unavailable with '@available'
 69 |     public lazy var stateWillChange = PassthroughSubject<Change, Never>()
 70 |
 71 |     @available(OSX 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
    |      `- error: stored properties cannot be marked potentially unavailable with '@available'
 72 |     public lazy var stateDidChange = PassthroughSubject<Change, Never>()
 73 |     #endif
/Users/admin/builder/spi-builder-workspace/ClassyFlux/FluxStore.swift:213:23: warning: generic parameter 'State' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
 54 |
 55 | /// An object that stores the state and allows state mutation only by handling registered actions.
 56 | open class FluxStore<State>: FluxWorker {
    |                      `- note: 'State' previously declared here
 57 |     public typealias State = State
 58 |
    :
211 |         internal let observer: NSObjectProtocol
212 |
213 |         internal init<State>(for event: Event, from store: FluxStore<State>, queue: OperationQueue, handler: @escaping (State, Set<PartialKeyPath<State>>) -> Void) {
    |                       `- warning: generic parameter 'State' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
214 |             observer = NotificationCenter.default
215 |                 .addObserver(forName: event.notificationName, object: store, queue: queue) { notification in
/Users/admin/builder/spi-builder-workspace/ClassyFlux/FluxStore.swift:218:21: warning: capture of 'handler' with non-sendable type '(State, Set<PartialKeyPath<State>>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
216 |                     guard let store = notification.object as? FluxStore<State> else { return }
217 |                     guard let keyPaths = notification.userInfo?[FluxStoreNotificationKeyPathsKey] as? Set<PartialKeyPath<State>> else { return }
218 |                     handler(store.state, keyPaths)
    |                     |- warning: capture of 'handler' with non-sendable type '(State, Set<PartialKeyPath<State>>) -> 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'
219 |                 }
220 |         }
[9/13] Compiling ClassyFlux FluxAggregator.swift
error: emit-module command failed with exit code 1 (use -v to see invocation)
[10/13] Compiling ClassyFlux FluxAction.swift
/Users/admin/builder/spi-builder-workspace/ClassyFlux/FluxDispatcher.swift:57:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FluxDispatcher' may have shared mutable state; this is an error in the Swift 6 language mode
 52 |
 53 | /// An object that dispatches actions to registered workers synchronously on the same thread.
 54 | open class FluxDispatcher: FluxDispatching {
    |            `- note: class 'FluxDispatcher' does not conform to the 'Sendable' protocol
 55 |
 56 |     /// The default dispatcher instance
 57 |     public static let `default` = FluxDispatcher()
    |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FluxDispatcher' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'default' 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
 58 |
 59 |     #if canImport(Combine)
/Users/admin/builder/spi-builder-workspace/ClassyFlux/FluxAction.swift:49:17: warning: capture of 'dispatcher' with non-sendable type 'any FluxDispatching' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 47 |         } else {
 48 |             queue.async(flags: .barrier) {
 49 |                 dispatcher.dispatch(action: self)
    |                 `- warning: capture of 'dispatcher' with non-sendable type 'any FluxDispatching' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 50 |             }
 51 |         }
/Users/admin/builder/spi-builder-workspace/ClassyFlux/FluxDispatcher.swift:40:17: note: protocol 'FluxDispatching' does not conform to the 'Sendable' protocol
 38 |
 39 | /// A protocol that defines how the action can be dispatched
 40 | public protocol FluxDispatching {
    |                 `- note: protocol 'FluxDispatching' does not conform to the 'Sendable' protocol
 41 |
 42 |     /// A flag indicating if dispatcher dispatches an action at the moment.
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/Users/admin/builder/spi-builder-workspace/ClassyFlux/FluxAction.swift:49:45: warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 47 |         } else {
 48 |             queue.async(flags: .barrier) {
 49 |                 dispatcher.dispatch(action: self)
    |                                             `- warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 50 |             }
 51 |         }
[11/13] Emitting module ClassyFlux
/Users/admin/builder/spi-builder-workspace/ClassyFlux/FluxDispatcher.swift:57:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FluxDispatcher' may have shared mutable state; this is an error in the Swift 6 language mode
 52 |
 53 | /// An object that dispatches actions to registered workers synchronously on the same thread.
 54 | open class FluxDispatcher: FluxDispatching {
    |            `- note: class 'FluxDispatcher' does not conform to the 'Sendable' protocol
 55 |
 56 |     /// The default dispatcher instance
 57 |     public static let `default` = FluxDispatcher()
    |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FluxDispatcher' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'default' 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
 58 |
 59 |     #if canImport(Combine)
/Users/admin/builder/spi-builder-workspace/ClassyFlux/FluxDispatcher.swift:60:6: error: stored properties cannot be marked potentially unavailable with '@available'
 58 |
 59 |     #if canImport(Combine)
 60 |     @available(OSX 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
    |      `- error: stored properties cannot be marked potentially unavailable with '@available'
 61 |     public lazy var willDispatchAction = PassthroughSubject<FluxAction, Never>()
 62 |
/Users/admin/builder/spi-builder-workspace/ClassyFlux/FluxDispatcher.swift:63:6: error: stored properties cannot be marked potentially unavailable with '@available'
 61 |     public lazy var willDispatchAction = PassthroughSubject<FluxAction, Never>()
 62 |
 63 |     @available(OSX 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
    |      `- error: stored properties cannot be marked potentially unavailable with '@available'
 64 |     public lazy var didDispatchAction = PassthroughSubject<FluxAction, Never>()
 65 |     #endif
/Users/admin/builder/spi-builder-workspace/ClassyFlux/FluxStore.swift:65:6: error: stored properties cannot be marked potentially unavailable with '@available'
 63 |
 64 |     #if canImport(Combine)
 65 |     @available(OSX 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
    |      `- error: stored properties cannot be marked potentially unavailable with '@available'
 66 |     public lazy var objectWillChange = ObservableObjectPublisher()
 67 |
/Users/admin/builder/spi-builder-workspace/ClassyFlux/FluxStore.swift:68:6: error: stored properties cannot be marked potentially unavailable with '@available'
 66 |     public lazy var objectWillChange = ObservableObjectPublisher()
 67 |
 68 |     @available(OSX 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
    |      `- error: stored properties cannot be marked potentially unavailable with '@available'
 69 |     public lazy var stateWillChange = PassthroughSubject<Change, Never>()
 70 |
/Users/admin/builder/spi-builder-workspace/ClassyFlux/FluxStore.swift:71:6: error: stored properties cannot be marked potentially unavailable with '@available'
 69 |     public lazy var stateWillChange = PassthroughSubject<Change, Never>()
 70 |
 71 |     @available(OSX 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
    |      `- error: stored properties cannot be marked potentially unavailable with '@available'
 72 |     public lazy var stateDidChange = PassthroughSubject<Change, Never>()
 73 |     #endif
/Users/admin/builder/spi-builder-workspace/ClassyFlux/FluxStore.swift:213:23: warning: generic parameter 'State' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
 54 |
 55 | /// An object that stores the state and allows state mutation only by handling registered actions.
 56 | open class FluxStore<State>: FluxWorker {
    |                      `- note: 'State' previously declared here
 57 |     public typealias State = State
 58 |
    :
211 |         internal let observer: NSObjectProtocol
212 |
213 |         internal init<State>(for event: Event, from store: FluxStore<State>, queue: OperationQueue, handler: @escaping (State, Set<PartialKeyPath<State>>) -> Void) {
    |                       `- warning: generic parameter 'State' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
214 |             observer = NotificationCenter.default
215 |                 .addObserver(forName: event.notificationName, object: store, queue: queue) { notification in
[12/13] Compiling ClassyFlux FluxRepository.swift
/Users/admin/builder/spi-builder-workspace/ClassyFlux/FluxRepository.swift:137:21: warning: capture of 'handler' with non-sendable type '(Repository, Set<PartialKeyPath<Repository>>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
135 |                     guard let repository = notification.object as? Repository else { return }
136 |                     guard let keyPaths = notification.userInfo?[FluxRepositoryChangedKeyPathsKey] as? Set<PartialKeyPath<Repository>> else { return }
137 |                     handler(repository, keyPaths)
    |                     |- warning: capture of 'handler' with non-sendable type '(Repository, Set<PartialKeyPath<Repository>>) -> 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'
138 |             }
139 |         }
[13/13] Compiling ClassyFlux FluxWorker.swift
Fetching https://github.com/kzlekk/ResolvingContainer.git
[1/133] Fetching resolvingcontainer
Fetched https://github.com/kzlekk/ResolvingContainer.git from cache (0.66s)
Computing version for https://github.com/kzlekk/ResolvingContainer.git
Computed https://github.com/kzlekk/ResolvingContainer.git at 1.0.12 (0.64s)
Creating working copy for https://github.com/kzlekk/ResolvingContainer.git
Working copy of https://github.com/kzlekk/ResolvingContainer.git resolved at 1.0.12
BUILD FAILURE 6.0 macosSpm