Build Information
Successful build of Dwifft with Swift 6.0 for macOS (SPM).
Swift 6 data race errors: 0
Build Command
env DEVELOPER_DIR=/Applications/Xcode-15.3.0.app xcrun --toolchain org.swift.600202405261a swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Build Log
========================================
RunAll
========================================
Builder version: 4.40.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/jflinter/Dwifft.git
Reference: master
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/jflinter/Dwifft
* branch master -> FETCH_HEAD
* [new branch] master -> origin/master
HEAD is now at 6fec2bc Merge pull request #100 from DenTelezhkin/swift-pm
Cloned https://github.com/jflinter/Dwifft.git
Revision (git rev-parse @):
6fec2bc0246091b3e17a9d42e722fb98e05ac3ff
SUCCESS checkout https://github.com/jflinter/Dwifft.git at master
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.0
Building package at path: $workDir
https://github.com/jflinter/Dwifft.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-15.3.0.app xcrun --toolchain org.swift.600202405261a swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-6F35C1178C84523A.txt
[3/8] Compiling Dwifft SectionedValues.swift
[4/8] Compiling Dwifft Dwifft.swift
/Users/admin/builder/spi-builder-workspace/Dwifft/Dwifft.swift:39:26: warning: enum case 'insert' has 2 associated values; matching them as a tuple is deprecated
11 | public enum DiffStep<Value> : CustomDebugStringConvertible {
12 | /// An insertion.
13 | case insert(Int, Value)
| `- note: 'insert' declared here
14 | /// A deletion.
15 | case delete(Int, Value)
:
37 | public var value: Value {
38 | switch(self) {
39 | case let .insert(j):
| `- warning: enum case 'insert' has 2 associated values; matching them as a tuple is deprecated
40 | return j.1
41 | case let .delete(j):
/Users/admin/builder/spi-builder-workspace/Dwifft/Dwifft.swift:41:26: warning: enum case 'delete' has 2 associated values; matching them as a tuple is deprecated
13 | case insert(Int, Value)
14 | /// A deletion.
15 | case delete(Int, Value)
| `- note: 'delete' declared here
16 |
17 | public var debugDescription: String {
:
39 | case let .insert(j):
40 | return j.1
41 | case let .delete(j):
| `- warning: enum case 'delete' has 2 associated values; matching them as a tuple is deprecated
42 | return j.1
43 | }
[5/8] Compiling Dwifft Dwifft+AppKit.swift
/Users/admin/builder/spi-builder-workspace/Dwifft/Dwifft+AppKit.swift:54:19: warning: call to main actor-isolated instance method 'beginUpdates()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
50 | }
51 |
52 | override internal func processChanges(newState: SectionedValues<Int, Value>, diff: [SectionedDiffStep<Int, Value>]) {
| `- note: add '@MainActor' to make instance method 'processChanges(newState:diff:)' part of global actor 'MainActor'
53 | guard let tableView = self.tableView else { return }
54 | tableView.beginUpdates()
| `- warning: call to main actor-isolated instance method 'beginUpdates()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
55 | self._sectionedValues = newState
56 | for result in diff {
AppKit.NSTableView:173:26: note: calls to instance method 'beginUpdates()' from outside of its actor context are implicitly asynchronous
171 | open var rowActionsVisible: Bool { get set }
172 | @available(macOS 10.7, *)
173 | @MainActor open func beginUpdates()
| `- note: calls to instance method 'beginUpdates()' from outside of its actor context are implicitly asynchronous
174 | @available(macOS 10.7, *)
175 | @MainActor open func endUpdates()
/Users/admin/builder/spi-builder-workspace/Dwifft/Dwifft+AppKit.swift:58:52: warning: call to main actor-isolated instance method 'removeRows(at:withAnimation:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
50 | }
51 |
52 | override internal func processChanges(newState: SectionedValues<Int, Value>, diff: [SectionedDiffStep<Int, Value>]) {
| `- note: add '@MainActor' to make instance method 'processChanges(newState:diff:)' part of global actor 'MainActor'
53 | guard let tableView = self.tableView else { return }
54 | tableView.beginUpdates()
:
56 | for result in diff {
57 | switch result {
58 | case let .delete(_, row, _): tableView.removeRows(at: [row], withAnimation: self.deletionAnimation)
| `- warning: call to main actor-isolated instance method 'removeRows(at:withAnimation:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
59 | case let .insert(_, row, _): tableView.insertRows(at: [row], withAnimation: self.insertionAnimation)
60 | default: fatalError("NSTableViews do not have sections")
AppKit.NSTableView:182:26: note: calls to instance method 'removeRows(at:withAnimation:)' from outside of its actor context are implicitly asynchronous
180 | open func insertRowsAtIndexes(_ indexes: IndexSet, withAnimation animationOptions: NSTableView.AnimationOptions = [])
181 | @available(macOS 10.7, *)
182 | @MainActor open func removeRows(at indexes: IndexSet, withAnimation animationOptions: NSTableView.AnimationOptions = [])
| `- note: calls to instance method 'removeRows(at:withAnimation:)' from outside of its actor context are implicitly asynchronous
183 | @available(macOS 10.7, *)
184 | @available(swift, obsoleted: 3, renamed: "removeRows(at:withAnimation:)")
/Users/admin/builder/spi-builder-workspace/Dwifft/Dwifft+AppKit.swift:59:52: warning: call to main actor-isolated instance method 'insertRows(at:withAnimation:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
50 | }
51 |
52 | override internal func processChanges(newState: SectionedValues<Int, Value>, diff: [SectionedDiffStep<Int, Value>]) {
| `- note: add '@MainActor' to make instance method 'processChanges(newState:diff:)' part of global actor 'MainActor'
53 | guard let tableView = self.tableView else { return }
54 | tableView.beginUpdates()
:
57 | switch result {
58 | case let .delete(_, row, _): tableView.removeRows(at: [row], withAnimation: self.deletionAnimation)
59 | case let .insert(_, row, _): tableView.insertRows(at: [row], withAnimation: self.insertionAnimation)
| `- warning: call to main actor-isolated instance method 'insertRows(at:withAnimation:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
60 | default: fatalError("NSTableViews do not have sections")
61 | }
AppKit.NSTableView:177:26: note: calls to instance method 'insertRows(at:withAnimation:)' from outside of its actor context are implicitly asynchronous
175 | @MainActor open func endUpdates()
176 | @available(macOS 10.7, *)
177 | @MainActor open func insertRows(at indexes: IndexSet, withAnimation animationOptions: NSTableView.AnimationOptions = [])
| `- note: calls to instance method 'insertRows(at:withAnimation:)' from outside of its actor context are implicitly asynchronous
178 | @available(macOS 10.7, *)
179 | @available(swift, obsoleted: 3, renamed: "insertRows(at:withAnimation:)")
/Users/admin/builder/spi-builder-workspace/Dwifft/Dwifft+AppKit.swift:63:19: warning: call to main actor-isolated instance method 'endUpdates()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
50 | }
51 |
52 | override internal func processChanges(newState: SectionedValues<Int, Value>, diff: [SectionedDiffStep<Int, Value>]) {
| `- note: add '@MainActor' to make instance method 'processChanges(newState:diff:)' part of global actor 'MainActor'
53 | guard let tableView = self.tableView else { return }
54 | tableView.beginUpdates()
:
61 | }
62 | }
63 | tableView.endUpdates()
| `- warning: call to main actor-isolated instance method 'endUpdates()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
64 | }
65 |
AppKit.NSTableView:175:26: note: calls to instance method 'endUpdates()' from outside of its actor context are implicitly asynchronous
173 | @MainActor open func beginUpdates()
174 | @available(macOS 10.7, *)
175 | @MainActor open func endUpdates()
| `- note: calls to instance method 'endUpdates()' from outside of its actor context are implicitly asynchronous
176 | @available(macOS 10.7, *)
177 | @MainActor open func insertRows(at indexes: IndexSet, withAnimation animationOptions: NSTableView.AnimationOptions = [])
/Users/admin/builder/spi-builder-workspace/Dwifft/Dwifft+AppKit.swift:129:35: warning: call to main actor-isolated instance method 'performBatchUpdates(_:completionHandler:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
125 | }
126 |
127 | override internal func processChanges(newState: SectionedValues<Section, Value>, diff: [SectionedDiffStep<Section, Value>]) {
| `- note: add '@MainActor' to make instance method 'processChanges(newState:diff:)' part of global actor 'MainActor'
128 | guard let collectionView = self.collectionView else { return }
129 | collectionView.animator().performBatchUpdates({
| `- warning: call to main actor-isolated instance method 'performBatchUpdates(_:completionHandler:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
130 | self._sectionedValues = newState
131 | for result in diff {
AppKit.NSCollectionView:167:26: note: calls to instance method 'performBatchUpdates(_:completionHandler:)' from outside of its actor context are implicitly asynchronous
165 | open func moveItemAtIndexPath(_ indexPath: IndexPath, toIndexPath newIndexPath: IndexPath)
166 | @available(macOS 10.11, *)
167 | @MainActor open func performBatchUpdates(_ updates: (() -> Void)?, completionHandler: ((Bool) -> Void)? = nil)
| `- note: calls to instance method 'performBatchUpdates(_:completionHandler:)' from outside of its actor context are implicitly asynchronous
168 | @available(macOS 10.11, *)
169 | open func performBatchUpdates(_ updates: (() -> Void)?) async -> Bool
/Users/admin/builder/spi-builder-workspace/Dwifft/Dwifft+AppKit.swift:129:24: warning: call to main actor-isolated instance method 'animator()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
125 | }
126 |
127 | override internal func processChanges(newState: SectionedValues<Section, Value>, diff: [SectionedDiffStep<Section, Value>]) {
| `- note: add '@MainActor' to make instance method 'processChanges(newState:diff:)' part of global actor 'MainActor'
128 | guard let collectionView = self.collectionView else { return }
129 | collectionView.animator().performBatchUpdates({
| `- warning: call to main actor-isolated instance method 'animator()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
130 | self._sectionedValues = newState
131 | for result in diff {
AppKit.NSView:363:26: note: calls to instance method 'animator()' from outside of its actor context are implicitly asynchronous
361 | open var effectiveAppearance: NSAppearance { get }
362 | @available(macOS 10.5, *)
363 | @MainActor open func animator() -> Self
| `- note: calls to instance method 'animator()' from outside of its actor context are implicitly asynchronous
364 | @available(macOS 10.5, *)
365 | open func animation(forKey key: NSAnimatablePropertyKey) -> Any?
/Users/admin/builder/spi-builder-workspace/Dwifft/Dwifft+AppKit.swift:133:68: warning: call to main actor-isolated instance method 'deleteItems(at:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
131 | for result in diff {
132 | switch result {
133 | case let .delete(section, item, _): collectionView.deleteItems(at: [IndexPath(item: item, section: section)])
| `- warning: call to main actor-isolated instance method 'deleteItems(at:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
134 | case let .insert(section, item, _): collectionView.insertItems(at: [IndexPath(item: item, section: section)])
135 | case let .sectionDelete(section, _): collectionView.deleteSections(IndexSet(integer: section))
AppKit.NSCollectionView:152:26: note: calls to instance method 'deleteItems(at:)' from outside of its actor context are implicitly asynchronous
150 | open func insertItemsAtIndexPaths(_ indexPaths: Set<IndexPath>)
151 | @available(macOS 10.11, *)
152 | @MainActor open func deleteItems(at indexPaths: Set<IndexPath>)
| `- note: calls to instance method 'deleteItems(at:)' from outside of its actor context are implicitly asynchronous
153 | @available(macOS 10.11, *)
154 | @available(swift, obsoleted: 3, renamed: "deleteItems(at:)")
/Users/admin/builder/spi-builder-workspace/Dwifft/Dwifft+AppKit.swift:134:68: warning: call to main actor-isolated instance method 'insertItems(at:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
132 | switch result {
133 | case let .delete(section, item, _): collectionView.deleteItems(at: [IndexPath(item: item, section: section)])
134 | case let .insert(section, item, _): collectionView.insertItems(at: [IndexPath(item: item, section: section)])
| `- warning: call to main actor-isolated instance method 'insertItems(at:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
135 | case let .sectionDelete(section, _): collectionView.deleteSections(IndexSet(integer: section))
136 | case let .sectionInsert(section, _):
AppKit.NSCollectionView:147:26: note: calls to instance method 'insertItems(at:)' from outside of its actor context are implicitly asynchronous
145 | open func moveSection(_ section: Int, toSection newSection: Int)
146 | @available(macOS 10.11, *)
147 | @MainActor open func insertItems(at indexPaths: Set<IndexPath>)
| `- note: calls to instance method 'insertItems(at:)' from outside of its actor context are implicitly asynchronous
148 | @available(macOS 10.11, *)
149 | @available(swift, obsoleted: 3, renamed: "insertItems(at:)")
/Users/admin/builder/spi-builder-workspace/Dwifft/Dwifft+AppKit.swift:135:69: warning: call to main actor-isolated instance method 'deleteSections' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
133 | case let .delete(section, item, _): collectionView.deleteItems(at: [IndexPath(item: item, section: section)])
134 | case let .insert(section, item, _): collectionView.insertItems(at: [IndexPath(item: item, section: section)])
135 | case let .sectionDelete(section, _): collectionView.deleteSections(IndexSet(integer: section))
| `- warning: call to main actor-isolated instance method 'deleteSections' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
136 | case let .sectionInsert(section, _):
137 | // NSCollectionViews don't seem to like it when inserting sections beyond numberOfSections
AppKit.NSCollectionView:141:26: note: calls to instance method 'deleteSections' from outside of its actor context are implicitly asynchronous
139 | @MainActor open func insertSections(_ sections: IndexSet)
140 | @available(macOS 10.11, *)
141 | @MainActor open func deleteSections(_ sections: IndexSet)
| `- note: calls to instance method 'deleteSections' from outside of its actor context are implicitly asynchronous
142 | @available(macOS 10.11, *)
143 | open func reloadSections(_ sections: IndexSet)
/Users/admin/builder/spi-builder-workspace/Dwifft/Dwifft+AppKit.swift:139:49: warning: main actor-isolated property 'numberOfSections' can not be referenced from a non-isolated context; this is an error in the Swift 6 language mode
137 | // NSCollectionViews don't seem to like it when inserting sections beyond numberOfSections
138 | // so adjust for that
139 | if section > collectionView.numberOfSections {
| `- warning: main actor-isolated property 'numberOfSections' can not be referenced from a non-isolated context; this is an error in the Swift 6 language mode
140 | collectionView.insertSections(IndexSet(integer: collectionView.numberOfSections))
141 | } else {
AppKit.NSCollectionView:39:14: note: property declared here
37 | open var backgroundColors: [NSColor]! { get set }
38 | @available(macOS 10.11, *)
39 | open var numberOfSections: Int { get }
| `- note: property declared here
40 | @available(macOS 10.11, *)
41 | open func numberOfItems(inSection section: Int) -> Int
/Users/admin/builder/spi-builder-workspace/Dwifft/Dwifft+AppKit.swift:140:40: warning: call to main actor-isolated instance method 'insertSections' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
138 | // so adjust for that
139 | if section > collectionView.numberOfSections {
140 | collectionView.insertSections(IndexSet(integer: collectionView.numberOfSections))
| `- warning: call to main actor-isolated instance method 'insertSections' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
141 | } else {
142 | collectionView.insertSections(IndexSet(integer: section))
AppKit.NSCollectionView:139:26: note: calls to instance method 'insertSections' from outside of its actor context are implicitly asynchronous
137 | open func indexPathsForVisibleSupplementaryElementsOfKind(_ elementKind: NSCollectionView.SupplementaryElementKind) -> Set<IndexPath>
138 | @available(macOS 10.11, *)
139 | @MainActor open func insertSections(_ sections: IndexSet)
| `- note: calls to instance method 'insertSections' from outside of its actor context are implicitly asynchronous
140 | @available(macOS 10.11, *)
141 | @MainActor open func deleteSections(_ sections: IndexSet)
/Users/admin/builder/spi-builder-workspace/Dwifft/Dwifft+AppKit.swift:140:88: warning: main actor-isolated property 'numberOfSections' can not be referenced from a non-isolated context; this is an error in the Swift 6 language mode
138 | // so adjust for that
139 | if section > collectionView.numberOfSections {
140 | collectionView.insertSections(IndexSet(integer: collectionView.numberOfSections))
| `- warning: main actor-isolated property 'numberOfSections' can not be referenced from a non-isolated context; this is an error in the Swift 6 language mode
141 | } else {
142 | collectionView.insertSections(IndexSet(integer: section))
AppKit.NSCollectionView:39:14: note: property declared here
37 | open var backgroundColors: [NSColor]! { get set }
38 | @available(macOS 10.11, *)
39 | open var numberOfSections: Int { get }
| `- note: property declared here
40 | @available(macOS 10.11, *)
41 | open func numberOfItems(inSection section: Int) -> Int
/Users/admin/builder/spi-builder-workspace/Dwifft/Dwifft+AppKit.swift:142:40: warning: call to main actor-isolated instance method 'insertSections' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
140 | collectionView.insertSections(IndexSet(integer: collectionView.numberOfSections))
141 | } else {
142 | collectionView.insertSections(IndexSet(integer: section))
| `- warning: call to main actor-isolated instance method 'insertSections' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
143 | }
144 | }
AppKit.NSCollectionView:139:26: note: calls to instance method 'insertSections' from outside of its actor context are implicitly asynchronous
137 | open func indexPathsForVisibleSupplementaryElementsOfKind(_ elementKind: NSCollectionView.SupplementaryElementKind) -> Set<IndexPath>
138 | @available(macOS 10.11, *)
139 | @MainActor open func insertSections(_ sections: IndexSet)
| `- note: calls to instance method 'insertSections' from outside of its actor context are implicitly asynchronous
140 | @available(macOS 10.11, *)
141 | @MainActor open func deleteSections(_ sections: IndexSet)
/Users/admin/builder/spi-builder-workspace/Dwifft/Dwifft+AppKit.swift:129:35: warning: sending task-isolated value of type '() -> Void' with later accesses to main actor-isolated context risks causing data races; this is an error in the Swift 6 language mode
127 | override internal func processChanges(newState: SectionedValues<Section, Value>, diff: [SectionedDiffStep<Section, Value>]) {
128 | guard let collectionView = self.collectionView else { return }
129 | collectionView.animator().performBatchUpdates({
| `- warning: sending task-isolated value of type '() -> Void' with later accesses to main actor-isolated context risks causing data races; this is an error in the Swift 6 language mode
130 | self._sectionedValues = newState
131 | for result in diff {
[6/8] Compiling Dwifft Dwifft+UIKit.swift
[7/8] Emitting module Dwifft
[8/8] Compiling Dwifft AbstractDiffCalculator.swift
Build complete! (23.09s)
Build complete.
{
"dependencies" : [
],
"manifest_display_name" : "Dwifft",
"name" : "Dwifft",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "8.0"
},
{
"name" : "tvos",
"version" : "9.0"
},
{
"name" : "macos",
"version" : "10.11"
}
],
"products" : [
{
"name" : "Dwifft",
"targets" : [
"Dwifft"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"swift_languages_versions" : [
"5"
],
"targets" : [
{
"c99name" : "Dwifft",
"module_type" : "SwiftTarget",
"name" : "Dwifft",
"path" : "Dwifft",
"product_memberships" : [
"Dwifft"
],
"sources" : [
"AbstractDiffCalculator.swift",
"Dwifft+AppKit.swift",
"Dwifft+UIKit.swift",
"Dwifft.swift",
"SectionedValues.swift"
],
"type" : "library"
}
],
"tools_version" : "5.1"
}
Done.