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 LoadableViews, reference 3.6.1 (ff30ea), with Swift 6.0 for macOS (SPM) on 28 Nov 2024 01:52:32 UTC.

Swift 6 data race errors: 4

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/MLSDev/LoadableViews.git
Reference: 3.6.1
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/MLSDev/LoadableViews
 * tag               3.6.1      -> FETCH_HEAD
HEAD is now at ff30ea9 Releasing version 3.6.1.
Cloned https://github.com/MLSDev/LoadableViews.git
Revision (git rev-parse @):
ff30ea9900127c95557980b7026f51787aed4a17
SUCCESS checkout https://github.com/MLSDev/LoadableViews.git at 3.6.1
========================================
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": "loadableviews",
      "name": "LoadableViews",
      "url": "https://github.com/MLSDev/LoadableViews.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/LoadableViews",
      "dependencies": [
      ]
    }
  ]
}
Fetching https://github.com/MLSDev/LoadableViews.git
[1/789] Fetching loadableviews
Fetched https://github.com/MLSDev/LoadableViews.git from cache (1.05s)
Creating working copy for https://github.com/MLSDev/LoadableViews.git
Working copy of https://github.com/MLSDev/LoadableViews.git resolved at 3.6.1 (ff30ea9)
warning: '.resolve-product-dependencies': dependency 'loadableviews' 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/MLSDev/LoadableViews.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/6] Emitting module LoadableViews
/Users/admin/builder/spi-builder-workspace/Sources/LoadableViews/LoadableView.swift:59:28: warning: main actor-isolated property 'nibContainerView' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
38 |
39 |     /// View that serves as a container for loadable view. Loadable views are added to container view in `setupNib(_:)` method.
40 |     var nibContainerView: PlatformView { get }
   |         `- note: 'nibContainerView' declared here
41 |
42 |     /// Method that loads view from single view xib with `nibName`.
   :
57 | extension PlatformView {
58 |     /// View usually serves itself as a default container for loadable views
59 |     @objc dynamic open var nibContainerView : PlatformView { return self }
   |                            `- warning: main actor-isolated property 'nibContainerView' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
60 |
61 |     /// Default nibName for all UIViews, equal to name of the class.
   :
69 |
70 | /// UIView subclass, that can be loaded into different xib or storyboard by simply referencing it's class.
71 | open class LoadableView: PlatformView, NibLoadableProtocol {
   |                                        `- note: add '@preconcurrency' to the 'NibLoadableProtocol' conformance to defer isolation checking to run time
72 |
73 |     public override init(frame: CGRect) {
/Users/admin/builder/spi-builder-workspace/Sources/LoadableViews/LoadableView.swift:83:15: warning: main actor-isolated instance method 'setupNib()' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
46 |
47 |     /// Method that is used to load and configure loadableView. It is then added to `nibContainerView` as a subview. This view receives constraints of same width and height as container view.
48 |     func setupNib()
   |          `- note: mark the protocol requirement 'setupNib()' 'async' to allow actor-isolated conformances
49 |
50 |     /// Name of .xib file to load view from.
   :
81 |     }
82 |
83 |     open func setupNib() {
   |               |- warning: main actor-isolated instance method 'setupNib()' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
   |               `- note: add 'nonisolated' to 'setupNib()' to make this instance method not isolated to the actor
84 |         setupView(loadNib(), inContainer: nibContainerView)
85 |     }
/Users/admin/builder/spi-builder-workspace/Sources/LoadableViews/LoadableView.swift:62:28: warning: main actor-isolated property 'nibName' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
49 |
50 |     /// Name of .xib file to load view from.
51 |     var nibName : String { get }
   |         `- note: 'nibName' declared here
52 |
53 |     /// Bundle to load nib from
   :
60 |
61 |     /// Default nibName for all UIViews, equal to name of the class.
62 |     @objc dynamic open var nibName : String { return String(describing: type(of: self)) }
   |                            `- warning: main actor-isolated property 'nibName' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
63 |
64 |     /// Bundle to load nib from. Defaults to Bundle(for: type(of: self)).
/Users/admin/builder/spi-builder-workspace/Sources/LoadableViews/LoadableView.swift:65:28: warning: main actor-isolated property 'bundle' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
52 |
53 |     /// Bundle to load nib from
54 |     var bundle: Bundle { get }
   |         `- note: 'bundle' declared here
55 | }
56 |
   :
63 |
64 |     /// Bundle to load nib from. Defaults to Bundle(for: type(of: self)).
65 |     @objc dynamic open var bundle: Bundle {
   |                            `- warning: main actor-isolated property 'bundle' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
66 |         return Bundle(for: type(of: self))
67 |     }
[4/6] Compiling LoadableViews LoadableView+UIKit.swift
[5/6] Compiling LoadableViews LoadableView.swift
/Users/admin/builder/spi-builder-workspace/Sources/LoadableViews/LoadableView.swift:59:28: warning: main actor-isolated property 'nibContainerView' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
38 |
39 |     /// View that serves as a container for loadable view. Loadable views are added to container view in `setupNib(_:)` method.
40 |     var nibContainerView: PlatformView { get }
   |         `- note: 'nibContainerView' declared here
41 |
42 |     /// Method that loads view from single view xib with `nibName`.
   :
57 | extension PlatformView {
58 |     /// View usually serves itself as a default container for loadable views
59 |     @objc dynamic open var nibContainerView : PlatformView { return self }
   |                            `- warning: main actor-isolated property 'nibContainerView' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
60 |
61 |     /// Default nibName for all UIViews, equal to name of the class.
   :
69 |
70 | /// UIView subclass, that can be loaded into different xib or storyboard by simply referencing it's class.
71 | open class LoadableView: PlatformView, NibLoadableProtocol {
   |                                        `- note: add '@preconcurrency' to the 'NibLoadableProtocol' conformance to defer isolation checking to run time
72 |
73 |     public override init(frame: CGRect) {
/Users/admin/builder/spi-builder-workspace/Sources/LoadableViews/LoadableView.swift:83:15: warning: main actor-isolated instance method 'setupNib()' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
46 |
47 |     /// Method that is used to load and configure loadableView. It is then added to `nibContainerView` as a subview. This view receives constraints of same width and height as container view.
48 |     func setupNib()
   |          `- note: mark the protocol requirement 'setupNib()' 'async' to allow actor-isolated conformances
49 |
50 |     /// Name of .xib file to load view from.
   :
81 |     }
82 |
83 |     open func setupNib() {
   |               |- warning: main actor-isolated instance method 'setupNib()' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
   |               `- note: add 'nonisolated' to 'setupNib()' to make this instance method not isolated to the actor
84 |         setupView(loadNib(), inContainer: nibContainerView)
85 |     }
/Users/admin/builder/spi-builder-workspace/Sources/LoadableViews/LoadableView.swift:62:28: warning: main actor-isolated property 'nibName' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
49 |
50 |     /// Name of .xib file to load view from.
51 |     var nibName : String { get }
   |         `- note: 'nibName' declared here
52 |
53 |     /// Bundle to load nib from
   :
60 |
61 |     /// Default nibName for all UIViews, equal to name of the class.
62 |     @objc dynamic open var nibName : String { return String(describing: type(of: self)) }
   |                            `- warning: main actor-isolated property 'nibName' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
63 |
64 |     /// Bundle to load nib from. Defaults to Bundle(for: type(of: self)).
/Users/admin/builder/spi-builder-workspace/Sources/LoadableViews/LoadableView.swift:65:28: warning: main actor-isolated property 'bundle' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
52 |
53 |     /// Bundle to load nib from
54 |     var bundle: Bundle { get }
   |         `- note: 'bundle' declared here
55 | }
56 |
   :
63 |
64 |     /// Bundle to load nib from. Defaults to Bundle(for: type(of: self)).
65 |     @objc dynamic open var bundle: Bundle {
   |                            `- warning: main actor-isolated property 'bundle' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
66 |         return Bundle(for: type(of: self))
67 |     }
[6/6] Compiling LoadableViews LoadableView+macOS.swift
/Users/admin/builder/spi-builder-workspace/Sources/LoadableViews/LoadableView+macOS.swift:26:19: warning: main actor-isolated property 'wantsLayer' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
23 |     }
24 |
25 |     public func setupView(_ view: NSView, inContainer container: NSView) {
   |                 `- note: add '@MainActor' to make instance method 'setupView(_:inContainer:)' part of global actor 'MainActor'
26 |         container.wantsLayer = true
   |                   `- warning: main actor-isolated property 'wantsLayer' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
27 |         container.layer?.backgroundColor = .clear
28 |         container.addSubview(view)
AppKit.NSView:270:25: note: mutation of this property is only permitted within the actor
268 |     open var layerContentsPlacement: NSView.LayerContentsPlacement { get set }
269 |     @available(macOS 10.5, *)
270 |     @MainActor open var wantsLayer: Bool { get set }
    |                         `- note: mutation of this property is only permitted within the actor
271 |     @available(macOS 10.5, *)
272 |     open var layer: CALayer? { get set }
/Users/admin/builder/spi-builder-workspace/Sources/LoadableViews/LoadableView+macOS.swift:27:19: warning: main actor-isolated property 'layer' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
23 |     }
24 |
25 |     public func setupView(_ view: NSView, inContainer container: NSView) {
   |                 `- note: add '@MainActor' to make instance method 'setupView(_:inContainer:)' part of global actor 'MainActor'
26 |         container.wantsLayer = true
27 |         container.layer?.backgroundColor = .clear
   |                   `- warning: main actor-isolated property 'layer' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
28 |         container.addSubview(view)
29 |         view.translatesAutoresizingMaskIntoConstraints = false
AppKit.NSView:272:14: note: property declared here
270 |     @MainActor open var wantsLayer: Bool { get set }
271 |     @available(macOS 10.5, *)
272 |     open var layer: CALayer? { get set }
    |              `- note: property declared here
273 |     @available(macOS 10.8, *)
274 |     open var wantsUpdateLayer: Bool { get }
/Users/admin/builder/spi-builder-workspace/Sources/LoadableViews/LoadableView+macOS.swift:28:19: warning: call to main actor-isolated instance method 'addSubview' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
23 |     }
24 |
25 |     public func setupView(_ view: NSView, inContainer container: NSView) {
   |                 `- note: add '@MainActor' to make instance method 'setupView(_:inContainer:)' part of global actor 'MainActor'
26 |         container.wantsLayer = true
27 |         container.layer?.backgroundColor = .clear
28 |         container.addSubview(view)
   |                   `- warning: call to main actor-isolated instance method 'addSubview' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
29 |         view.translatesAutoresizingMaskIntoConstraints = false
30 |         let bindings = ["view": view]
AppKit.NSView:29:26: note: calls to instance method 'addSubview' from outside of its actor context are implicitly asynchronous
 27 |     @available(macOS 10.5, *)
 28 |     open func viewDidUnhide()
 29 |     @MainActor open func addSubview(_ view: NSView)
    |                          `- note: calls to instance method 'addSubview' from outside of its actor context are implicitly asynchronous
 30 |     open func addSubview(_ view: NSView, positioned place: NSWindow.OrderingMode, relativeTo otherView: NSView?)
 31 |     open func sortSubviews(_ compare: @convention(c) (NSView, NSView, UnsafeMutableRawPointer?) -> ComparisonResult, context: UnsafeMutableRawPointer?)
/Users/admin/builder/spi-builder-workspace/Sources/LoadableViews/LoadableView+macOS.swift:29:14: warning: main actor-isolated property 'translatesAutoresizingMaskIntoConstraints' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
23 |     }
24 |
25 |     public func setupView(_ view: NSView, inContainer container: NSView) {
   |                 `- note: add '@MainActor' to make instance method 'setupView(_:inContainer:)' part of global actor 'MainActor'
26 |         container.wantsLayer = true
27 |         container.layer?.backgroundColor = .clear
28 |         container.addSubview(view)
29 |         view.translatesAutoresizingMaskIntoConstraints = false
   |              `- warning: main actor-isolated property 'translatesAutoresizingMaskIntoConstraints' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
30 |         let bindings = ["view": view]
31 |         container.addConstraints(NSLayoutConstraint.constraints(withVisualFormat: "H:|[view]|", options:[], metrics:nil, views: bindings))
AppKit.NSView:3:25: note: mutation of this property is only permitted within the actor
1 | extension NSView {
2 |     @available(macOS 10.7, *)
3 |     @MainActor open var translatesAutoresizingMaskIntoConstraints: Bool { get set }
  |                         `- note: mutation of this property is only permitted within the actor
4 |     @available(macOS 10.7, *)
5 |     open class var requiresConstraintBasedLayout: Bool { get }
/Users/admin/builder/spi-builder-workspace/Sources/LoadableViews/LoadableView+macOS.swift:31:19: warning: call to main actor-isolated instance method 'addConstraints' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
23 |     }
24 |
25 |     public func setupView(_ view: NSView, inContainer container: NSView) {
   |                 `- note: add '@MainActor' to make instance method 'setupView(_:inContainer:)' part of global actor 'MainActor'
26 |         container.wantsLayer = true
27 |         container.layer?.backgroundColor = .clear
   :
29 |         view.translatesAutoresizingMaskIntoConstraints = false
30 |         let bindings = ["view": view]
31 |         container.addConstraints(NSLayoutConstraint.constraints(withVisualFormat: "H:|[view]|", options:[], metrics:nil, views: bindings))
   |                   `- warning: call to main actor-isolated instance method 'addConstraints' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
32 |         container.addConstraints(NSLayoutConstraint.constraints(withVisualFormat: "V:|[view]|", options:[], metrics:nil, views: bindings))
33 |     }
AppKit.NSView:31:26: note: calls to instance method 'addConstraints' from outside of its actor context are implicitly asynchronous
29 |     open func addConstraint(_ constraint: NSLayoutConstraint)
30 |     @available(macOS 10.7, *)
31 |     @MainActor open func addConstraints(_ constraints: [NSLayoutConstraint])
   |                          `- note: calls to instance method 'addConstraints' from outside of its actor context are implicitly asynchronous
32 |     @available(macOS 10.7, *)
33 |     open func removeConstraint(_ constraint: NSLayoutConstraint)
/Users/admin/builder/spi-builder-workspace/Sources/LoadableViews/LoadableView+macOS.swift:32:19: warning: call to main actor-isolated instance method 'addConstraints' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
23 |     }
24 |
25 |     public func setupView(_ view: NSView, inContainer container: NSView) {
   |                 `- note: add '@MainActor' to make instance method 'setupView(_:inContainer:)' part of global actor 'MainActor'
26 |         container.wantsLayer = true
27 |         container.layer?.backgroundColor = .clear
   :
30 |         let bindings = ["view": view]
31 |         container.addConstraints(NSLayoutConstraint.constraints(withVisualFormat: "H:|[view]|", options:[], metrics:nil, views: bindings))
32 |         container.addConstraints(NSLayoutConstraint.constraints(withVisualFormat: "V:|[view]|", options:[], metrics:nil, views: bindings))
   |                   `- warning: call to main actor-isolated instance method 'addConstraints' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
33 |     }
34 | }
AppKit.NSView:31:26: note: calls to instance method 'addConstraints' from outside of its actor context are implicitly asynchronous
29 |     open func addConstraint(_ constraint: NSLayoutConstraint)
30 |     @available(macOS 10.7, *)
31 |     @MainActor open func addConstraints(_ constraints: [NSLayoutConstraint])
   |                          `- note: calls to instance method 'addConstraints' from outside of its actor context are implicitly asynchronous
32 |     @available(macOS 10.7, *)
33 |     open func removeConstraint(_ constraint: NSLayoutConstraint)
Build complete! (9.44s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "LoadableViews",
  "name" : "LoadableViews",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "LoadableViews",
      "targets" : [
        "LoadableViews"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "swift_languages_versions" : [
    "4.2",
    "5"
  ],
  "targets" : [
    {
      "c99name" : "LoadableViews",
      "module_type" : "SwiftTarget",
      "name" : "LoadableViews",
      "path" : "Sources/LoadableViews",
      "product_memberships" : [
        "LoadableViews"
      ],
      "sources" : [
        "LoadableView+UIKit.swift",
        "LoadableView+macOS.swift",
        "LoadableView.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.1"
}
Done.