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 PublisherView, reference main (c39958), with Swift 6.0 for macOS (SPM) on 28 Nov 2024 02:54:41 UTC.

Swift 6 data race errors: 2

Build Command

env DEVELOPER_DIR=/Applications/Xcode-16.1.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.58.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/danielctull/PublisherView.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/danielctull/PublisherView
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at c399580 Update swiftlint
Cloned https://github.com/danielctull/PublisherView.git
Revision (git rev-parse @):
c3995803cee6008ec8fcdb326cf67f0b1037f7e0
SUCCESS checkout https://github.com/danielctull/PublisherView.git at main
========================================
ResolveProductDependencies
========================================
Resolving dependencies ...
{
  "identity": ".resolve-product-dependencies",
  "name": "resolve-dependencies",
  "url": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
  "version": "unspecified",
  "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
  "dependencies": [
    {
      "identity": "publisherview",
      "name": "PublisherView",
      "url": "https://github.com/danielctull/PublisherView.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/PublisherView",
      "dependencies": [
      ]
    }
  ]
}
Fetching https://github.com/danielctull/PublisherView.git
[1/44] Fetching publisherview
Fetched https://github.com/danielctull/PublisherView.git from cache (0.63s)
Creating working copy for https://github.com/danielctull/PublisherView.git
Working copy of https://github.com/danielctull/PublisherView.git resolved at main (c399580)
warning: '.resolve-product-dependencies': dependency 'publisherview' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.0
Building package at path:  $PWD
https://github.com/danielctull/PublisherView.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.1.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--7754E27361AE5C74.txt
[3/5] Emitting module PublisherView
/Users/admin/builder/spi-builder-workspace/Sources/PublisherView/PublisherView+Extras.swift:27:15: warning: cannot use associated type 'Failure' in an extension with public or '@usableFromInline' members; 'Combine' was not imported by this file
25 | extension PublisherView
26 |     where
27 |     Publisher.Failure == Never,
   |               `- warning: cannot use associated type 'Failure' in an extension with public or '@usableFromInline' members; 'Combine' was not imported by this file
28 |     FailureView == EmptyView
29 | {
Combine.Publisher:4:20: note: type declared here
2 | public protocol Publisher<Output, Failure> {
3 |     associatedtype Output
4 |     associatedtype Failure : Error
  |                    `- note: type declared here
5 |     func receive<S>(subscriber: S) where S : Subscriber, Self.Failure == S.Failure, Self.Output == S.Input
6 | }
/Users/admin/builder/spi-builder-workspace/Sources/PublisherView/PublisherView+Extras.swift:50:15: warning: cannot use associated type 'Failure' in an extension with public or '@usableFromInline' members; 'Combine' was not imported by this file
48 | extension PublisherView
49 |     where
50 |     Publisher.Failure == Never,
   |               `- warning: cannot use associated type 'Failure' in an extension with public or '@usableFromInline' members; 'Combine' was not imported by this file
51 |     FailureView == EmptyView,
52 |     InitialView == EmptyView
Combine.Publisher:4:20: note: type declared here
2 | public protocol Publisher<Output, Failure> {
3 |     associatedtype Output
4 |     associatedtype Failure : Error
  |                    `- note: type declared here
5 |     func receive<S>(subscriber: S) where S : Subscriber, Self.Failure == S.Failure, Self.Output == S.Input
6 | }
/Users/admin/builder/spi-builder-workspace/Sources/PublisherView/PublisherView.swift:20:6: warning: call to main actor-isolated initializer 'init(wrappedValue:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
 18 |     public typealias Failure = Publisher.Failure
 19 |
 20 |     @ObservedObject private var loader: Loader
    |      `- warning: call to main actor-isolated initializer 'init(wrappedValue:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
 21 |
 22 |     /// Create a publisher view, showing nothing initially.
SwiftUICore.ObservedObject:7:39: note: calls to initializer 'init(wrappedValue:)' from outside of its actor context are implicitly asynchronous
 5 |     }
 6 |     @MainActor @preconcurrency public init(initialValue: ObjectType)
 7 |     @MainActor @preconcurrency public init(wrappedValue: ObjectType)
   |                                       `- note: calls to initializer 'init(wrappedValue:)' from outside of its actor context are implicitly asynchronous
 8 |     @MainActor @preconcurrency public var wrappedValue: ObjectType
 9 |     @MainActor @preconcurrency public var projectedValue: ObservedObject<ObjectType>.Wrapper { get }
/Users/admin/builder/spi-builder-workspace/Sources/PublisherView/PublisherView.swift:20:6: warning: sending '$input_value' risks causing data races; this is an error in the Swift 6 language mode
 18 |     public typealias Failure = Publisher.Failure
 19 |
 20 |     @ObservedObject private var loader: Loader
    |      |- warning: sending '$input_value' risks causing data races; this is an error in the Swift 6 language mode
    |      `- note: sending task-isolated '$input_value' to main actor-isolated callee risks causing data races between main actor-isolated and task-isolated uses
 21 |
 22 |     /// Create a publisher view, showing nothing initially.
[4/5] Compiling PublisherView PublisherView.swift
/Users/admin/builder/spi-builder-workspace/Sources/PublisherView/PublisherView.swift:20:6: warning: call to main actor-isolated initializer 'init(wrappedValue:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
 18 |     public typealias Failure = Publisher.Failure
 19 |
 20 |     @ObservedObject private var loader: Loader
    |      `- warning: call to main actor-isolated initializer 'init(wrappedValue:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
 21 |
 22 |     /// Create a publisher view, showing nothing initially.
SwiftUICore.ObservedObject:7:39: note: calls to initializer 'init(wrappedValue:)' from outside of its actor context are implicitly asynchronous
 5 |     }
 6 |     @MainActor @preconcurrency public init(initialValue: ObjectType)
 7 |     @MainActor @preconcurrency public init(wrappedValue: ObjectType)
   |                                       `- note: calls to initializer 'init(wrappedValue:)' from outside of its actor context are implicitly asynchronous
 8 |     @MainActor @preconcurrency public var wrappedValue: ObjectType
 9 |     @MainActor @preconcurrency public var projectedValue: ObservedObject<ObjectType>.Wrapper { get }
/Users/admin/builder/spi-builder-workspace/Sources/PublisherView/PublisherView.swift:35:9: warning: main actor-isolated property 'loader' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
 18 |     public typealias Failure = Publisher.Failure
 19 |
 20 |     @ObservedObject private var loader: Loader
    |                                 `- note: mutation of this property is only permitted within the actor
 21 |
 22 |     /// Create a publisher view, showing nothing initially.
    :
 33 |                 failure: @escaping (Failure) -> FailureView) {
 34 |
 35 |         loader = Loader(publisher: publisher,
    |         `- warning: main actor-isolated property 'loader' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
 36 |                         initial: initial,
 37 |                         output: output,
/Users/admin/builder/spi-builder-workspace/Sources/PublisherView/PublisherView.swift:93:41: warning: main actor-isolated property 'loader' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 18 |     public typealias Failure = Publisher.Failure
 19 |
 20 |     @ObservedObject private var loader: Loader
    |                                 `- note: property declared here
 21 |
 22 |     /// Create a publisher view, showing nothing initially.
    :
 91 |
 92 |     private var initialView: InitialView? {
 93 |         guard case .initial(let view) = loader.display else { return nil }
    |                                         `- warning: main actor-isolated property 'loader' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 94 |         return view
 95 |     }
/Users/admin/builder/spi-builder-workspace/Sources/PublisherView/PublisherView.swift:98:40: warning: main actor-isolated property 'loader' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 18 |     public typealias Failure = Publisher.Failure
 19 |
 20 |     @ObservedObject private var loader: Loader
    |                                 `- note: property declared here
 21 |
 22 |     /// Create a publisher view, showing nothing initially.
    :
 96 |
 97 |     private var outputView: OutputView? {
 98 |         guard case .output(let view) = loader.display else { return nil }
    |                                        `- warning: main actor-isolated property 'loader' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 99 |         return view
100 |     }
/Users/admin/builder/spi-builder-workspace/Sources/PublisherView/PublisherView.swift:103:41: warning: main actor-isolated property 'loader' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 18 |     public typealias Failure = Publisher.Failure
 19 |
 20 |     @ObservedObject private var loader: Loader
    |                                 `- note: property declared here
 21 |
 22 |     /// Create a publisher view, showing nothing initially.
    :
101 |
102 |     private var failureView: FailureView? {
103 |         guard case .failure(let view) = loader.display else { return nil }
    |                                         `- warning: main actor-isolated property 'loader' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
104 |         return view
105 |     }
/Users/admin/builder/spi-builder-workspace/Sources/PublisherView/PublisherView.swift:20:6: warning: sending '$input_value' risks causing data races; this is an error in the Swift 6 language mode
 18 |     public typealias Failure = Publisher.Failure
 19 |
 20 |     @ObservedObject private var loader: Loader
    |      |- warning: sending '$input_value' risks causing data races; this is an error in the Swift 6 language mode
    |      `- note: sending task-isolated '$input_value' to main actor-isolated callee risks causing data races between main actor-isolated and task-isolated uses
 21 |
 22 |     /// Create a publisher view, showing nothing initially.
[5/5] Compiling PublisherView PublisherView+Extras.swift
/Users/admin/builder/spi-builder-workspace/Sources/PublisherView/PublisherView+Extras.swift:27:15: warning: cannot use associated type 'Failure' in an extension with public or '@usableFromInline' members; 'Combine' was not imported by this file
25 | extension PublisherView
26 |     where
27 |     Publisher.Failure == Never,
   |               `- warning: cannot use associated type 'Failure' in an extension with public or '@usableFromInline' members; 'Combine' was not imported by this file
28 |     FailureView == EmptyView
29 | {
Combine.Publisher:4:20: note: type declared here
2 | public protocol Publisher<Output, Failure> {
3 |     associatedtype Output
4 |     associatedtype Failure : Error
  |                    `- note: type declared here
5 |     func receive<S>(subscriber: S) where S : Subscriber, Self.Failure == S.Failure, Self.Output == S.Input
6 | }
/Users/admin/builder/spi-builder-workspace/Sources/PublisherView/PublisherView+Extras.swift:50:15: warning: cannot use associated type 'Failure' in an extension with public or '@usableFromInline' members; 'Combine' was not imported by this file
48 | extension PublisherView
49 |     where
50 |     Publisher.Failure == Never,
   |               `- warning: cannot use associated type 'Failure' in an extension with public or '@usableFromInline' members; 'Combine' was not imported by this file
51 |     FailureView == EmptyView,
52 |     InitialView == EmptyView
Combine.Publisher:4:20: note: type declared here
2 | public protocol Publisher<Output, Failure> {
3 |     associatedtype Output
4 |     associatedtype Failure : Error
  |                    `- note: type declared here
5 |     func receive<S>(subscriber: S) where S : Subscriber, Self.Failure == S.Failure, Self.Output == S.Input
6 | }
/Users/admin/builder/spi-builder-workspace/Sources/PublisherView/PublisherView.swift:20:6: warning: call to main actor-isolated initializer 'init(wrappedValue:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
 18 |     public typealias Failure = Publisher.Failure
 19 |
 20 |     @ObservedObject private var loader: Loader
    |      `- warning: call to main actor-isolated initializer 'init(wrappedValue:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
 21 |
 22 |     /// Create a publisher view, showing nothing initially.
SwiftUICore.ObservedObject:7:39: note: calls to initializer 'init(wrappedValue:)' from outside of its actor context are implicitly asynchronous
 5 |     }
 6 |     @MainActor @preconcurrency public init(initialValue: ObjectType)
 7 |     @MainActor @preconcurrency public init(wrappedValue: ObjectType)
   |                                       `- note: calls to initializer 'init(wrappedValue:)' from outside of its actor context are implicitly asynchronous
 8 |     @MainActor @preconcurrency public var wrappedValue: ObjectType
 9 |     @MainActor @preconcurrency public var projectedValue: ObservedObject<ObjectType>.Wrapper { get }
/Users/admin/builder/spi-builder-workspace/Sources/PublisherView/PublisherView+Extras.swift:44:35: warning: will never be executed
42 |                   initial: initial,
43 |                   output: output,
44 |                   failure: { _ in EmptyView() })
   |                            |      `- warning: will never be executed
   |                            `- note: '_' is of type 'Never' which cannot be constructed because it is an enum with no cases
45 |     }
46 | }
/Users/admin/builder/spi-builder-workspace/Sources/PublisherView/PublisherView+Extras.swift:66:35: warning: will never be executed
64 |                   initial: EmptyView.init,
65 |                   output: output,
66 |                   failure: { _ in EmptyView() })
   |                            |      `- warning: will never be executed
   |                            `- note: '_' is of type 'Never' which cannot be constructed because it is an enum with no cases
67 |     }
68 | }
Build complete! (11.57s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "PublisherView",
  "name" : "PublisherView",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "13.0"
    },
    {
      "name" : "macos",
      "version" : "10.15"
    },
    {
      "name" : "tvos",
      "version" : "13.0"
    },
    {
      "name" : "watchos",
      "version" : "6.0"
    }
  ],
  "products" : [
    {
      "name" : "PublisherView",
      "targets" : [
        "PublisherView"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "PublisherView",
      "module_type" : "SwiftTarget",
      "name" : "PublisherView",
      "path" : "Sources/PublisherView",
      "product_memberships" : [
        "PublisherView"
      ],
      "sources" : [
        "PublisherView+Extras.swift",
        "PublisherView.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.1"
}
Done.