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 SpanGrid, reference main (550b88), with Swift 6.0 for macOS (SPM) on 28 Nov 2024 06:40:49 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/sherlouk/SpanGrid.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/sherlouk/SpanGrid
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at 550b88d Remove DocC Plugin
Cloned https://github.com/sherlouk/SpanGrid.git
Revision (git rev-parse @):
550b88d78e6c5130e11f13a411c6017378ea575a
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/sherlouk/SpanGrid.git at main
Fetching https://github.com/pointfreeco/swift-snapshot-testing.git
Fetching https://github.com/apple/swift-log.git
[1/12447] Fetching swift-snapshot-testing
[2/16149] Fetching swift-snapshot-testing, swift-log
Fetched https://github.com/pointfreeco/swift-snapshot-testing.git from cache (2.30s)
Fetched https://github.com/apple/swift-log.git from cache (2.30s)
Computing version for https://github.com/apple/swift-log.git
Computed https://github.com/apple/swift-log.git at 1.4.2 (0.59s)
Computing version for https://github.com/pointfreeco/swift-snapshot-testing.git
Computed https://github.com/pointfreeco/swift-snapshot-testing.git at 1.9.0 (0.63s)
Creating working copy for https://github.com/apple/swift-log.git
Working copy of https://github.com/apple/swift-log.git resolved at 1.4.2
Creating working copy for https://github.com/pointfreeco/swift-snapshot-testing.git
Working copy of https://github.com/pointfreeco/swift-snapshot-testing.git resolved at 1.9.0
========================================
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": "spangrid",
      "name": "SpanGrid",
      "url": "https://github.com/sherlouk/SpanGrid.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/SpanGrid",
      "dependencies": [
        {
          "identity": "swift-log",
          "name": "swift-log",
          "url": "https://github.com/apple/swift-log.git",
          "version": "1.6.2",
          "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/swift-log",
          "dependencies": [
          ]
        }
      ]
    }
  ]
}
Fetching https://github.com/sherlouk/SpanGrid.git
[14/698] Fetching spangrid
Fetched https://github.com/sherlouk/SpanGrid.git from cache (2.23s)
Fetching https://github.com/apple/swift-log.git from cache
Fetched https://github.com/apple/swift-log.git from cache (0.54s)
Computing version for https://github.com/apple/swift-log.git
Computed https://github.com/apple/swift-log.git at 1.6.2 (0.46s)
Creating working copy for https://github.com/apple/swift-log.git
Working copy of https://github.com/apple/swift-log.git resolved at 1.6.2
Creating working copy for https://github.com/sherlouk/SpanGrid.git
Working copy of https://github.com/sherlouk/SpanGrid.git resolved at main (550b88d)
warning: '.resolve-product-dependencies': dependency 'spangrid' is not used by any target
Found 1 product dependencies
  - swift-log
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.0
Building package at path:  $PWD
https://github.com/sherlouk/SpanGrid.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/3] Write sources
[2/3] Write swift-version--7754E27361AE5C74.txt
[4/7] Emitting module Logging
[5/7] Compiling Logging LogHandler.swift
[6/7] Compiling Logging Logging.swift
[7/7] Compiling Logging Locks.swift
[8/26] Compiling SpanGrid SpanGridCellMetadata.swift
[9/26] Compiling SpanGrid SpanGridColumnSizeStrategy.swift
[10/26] Compiling SpanGrid SpanGridDetermineRowHeight.swift
/Users/admin/builder/spi-builder-workspace/Sources/Views/SpanGridDetermineRowHeight.swift:12:16: warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
10 |
11 | internal struct SpanGridRowPreferenceKey: PreferenceKey {
12 |     static var defaultValue: [Int: CGFloat] = [:]
   |                |- warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'defaultValue' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'defaultValue' 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
13 |
14 |     static func reduce(value: inout [Int: CGFloat], nextValue: () -> [Int: CGFloat]) {
[11/26] Compiling SpanGrid SpanGridKeyboardNavigationShortcuts.swift
/Users/admin/builder/spi-builder-workspace/Sources/Views/SpanGridDetermineRowHeight.swift:12:16: warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
10 |
11 | internal struct SpanGridRowPreferenceKey: PreferenceKey {
12 |     static var defaultValue: [Int: CGFloat] = [:]
   |                |- warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'defaultValue' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'defaultValue' 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
13 |
14 |     static func reduce(value: inout [Int: CGFloat], nextValue: () -> [Int: CGFloat]) {
[12/26] Compiling SpanGrid SpanGridWidthListener.swift
/Users/admin/builder/spi-builder-workspace/Sources/SpanGridWidthListener/SpanGridWidthListener.swift:50:69: warning: call to main actor-isolated static method 'getPublisher()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
25 |     }
26 |
27 |     func processNewSize(_ size: CGSize) {
   |          `- note: add '@MainActor' to make instance method 'processNewSize' part of global actor 'MainActor'
28 |         defer {
29 |             // No matter how we exit this function, lastKnownSize should be updated.
   :
48 |         }
49 |
50 |         NotificationCenter.default.post(name: SpanGridWidthListener.getPublisher().name, object: nil)
   |                                                                     `- warning: call to main actor-isolated static method 'getPublisher()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
51 |         logger.trace("Triggered notification.", metadata: metadata)
52 |     }
   :
54 |
55 | extension SpanGridWidthListener {
56 |     static func getPublisher() -> NotificationCenter.Publisher {
   |                 `- note: calls to static method 'getPublisher()' from outside of its actor context are implicitly asynchronous
57 |         NotificationCenter.default.publisher(for: Notification.Name(rawValue: "SpanGrid.SceneWidthChanged"))
58 |     }
[13/26] Compiling SpanGrid SpanGrid.swift
/Users/admin/builder/spi-builder-workspace/Sources/SpanGridWidthListener/SpanGridWidthListener.swift:50:69: warning: call to main actor-isolated static method 'getPublisher()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
25 |     }
26 |
27 |     func processNewSize(_ size: CGSize) {
   |          `- note: add '@MainActor' to make instance method 'processNewSize' part of global actor 'MainActor'
28 |         defer {
29 |             // No matter how we exit this function, lastKnownSize should be updated.
   :
48 |         }
49 |
50 |         NotificationCenter.default.post(name: SpanGridWidthListener.getPublisher().name, object: nil)
   |                                                                     `- warning: call to main actor-isolated static method 'getPublisher()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
51 |         logger.trace("Triggered notification.", metadata: metadata)
52 |     }
   :
54 |
55 | extension SpanGridWidthListener {
56 |     static func getPublisher() -> NotificationCenter.Publisher {
   |                 `- note: calls to static method 'getPublisher()' from outside of its actor context are implicitly asynchronous
57 |         NotificationCenter.default.publisher(for: Notification.Name(rawValue: "SpanGrid.SceneWidthChanged"))
58 |     }
[14/26] Compiling SpanGrid SpanGridLayoutSize.swift
[15/26] Compiling SpanGrid SpanGridRowSizeStrategy.swift
[16/26] Compiling SpanGrid SpanGridTraitCollection.swift
[17/26] Compiling SpanGrid SpanGridWidthListener+iOS+tvOS.swift
[18/26] Compiling SpanGrid SpanGridData.swift
[19/26] Compiling SpanGrid SpanGridKeyboardNavigationOptions.swift
[20/26] Emitting module SpanGrid
/Users/admin/builder/spi-builder-workspace/Sources/SpanGridWidthListener/SpanGridWidthListener+macOS.swift:13:13: warning: main actor-isolated property 'logger' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
10 | #if os(OSX)
11 | internal struct SpanGridWidthListener: NSViewControllerRepresentable {
12 |     internal class ViewController: NSViewController, SpanGridWidthListenerViewController {
   |                                                      `- note: add '@preconcurrency' to the 'SpanGridWidthListenerViewController' conformance to defer isolation checking to run time
13 |         let logger = Logger(label: "uk.sherlo.spangrid.width-listener")
   |             `- warning: main actor-isolated property 'logger' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
14 |         var lastKnownSize: CGSize?
15 |         let dynamicConfiguration: SpanGridDynamicColumnSizeStrategy.Configuration?
/Users/admin/builder/spi-builder-workspace/Sources/SpanGridWidthListener/SpanGridWidthListener.swift:13:9: note: 'logger' declared here
11 |
12 | protocol SpanGridWidthListenerViewController: AnyObject {
13 |     var logger: Logger { get }
   |         `- note: 'logger' declared here
14 |     var lastKnownSize: CGSize? { get set }
15 |     var dynamicConfiguration: SpanGridDynamicColumnSizeStrategy.Configuration? { get }
/Users/admin/builder/spi-builder-workspace/Sources/SpanGridWidthListener/SpanGridWidthListener+macOS.swift:14:13: warning: main actor-isolated property 'lastKnownSize' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
12 |     internal class ViewController: NSViewController, SpanGridWidthListenerViewController {
13 |         let logger = Logger(label: "uk.sherlo.spangrid.width-listener")
14 |         var lastKnownSize: CGSize?
   |             `- warning: main actor-isolated property 'lastKnownSize' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
15 |         let dynamicConfiguration: SpanGridDynamicColumnSizeStrategy.Configuration?
16 |
/Users/admin/builder/spi-builder-workspace/Sources/SpanGridWidthListener/SpanGridWidthListener.swift:14:9: note: 'lastKnownSize' declared here
12 | protocol SpanGridWidthListenerViewController: AnyObject {
13 |     var logger: Logger { get }
14 |     var lastKnownSize: CGSize? { get set }
   |         `- note: 'lastKnownSize' declared here
15 |     var dynamicConfiguration: SpanGridDynamicColumnSizeStrategy.Configuration? { get }
16 | }
/Users/admin/builder/spi-builder-workspace/Sources/SpanGridWidthListener/SpanGridWidthListener+macOS.swift:15:13: warning: main actor-isolated property 'dynamicConfiguration' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
13 |         let logger = Logger(label: "uk.sherlo.spangrid.width-listener")
14 |         var lastKnownSize: CGSize?
15 |         let dynamicConfiguration: SpanGridDynamicColumnSizeStrategy.Configuration?
   |             `- warning: main actor-isolated property 'dynamicConfiguration' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
16 |
17 |         override func loadView() {
/Users/admin/builder/spi-builder-workspace/Sources/SpanGridWidthListener/SpanGridWidthListener.swift:15:9: note: 'dynamicConfiguration' declared here
13 |     var logger: Logger { get }
14 |     var lastKnownSize: CGSize? { get set }
15 |     var dynamicConfiguration: SpanGridDynamicColumnSizeStrategy.Configuration? { get }
   |         `- note: 'dynamicConfiguration' declared here
16 | }
17 |
/Users/admin/builder/spi-builder-workspace/Sources/Views/SpanGridDetermineRowHeight.swift:12:16: warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
10 |
11 | internal struct SpanGridRowPreferenceKey: PreferenceKey {
12 |     static var defaultValue: [Int: CGFloat] = [:]
   |                |- warning: static property 'defaultValue' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'defaultValue' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'defaultValue' 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
13 |
14 |     static func reduce(value: inout [Int: CGFloat], nextValue: () -> [Int: CGFloat]) {
[21/26] Compiling SpanGrid SpanGridDynamicColumnSizeStrategy.swift
/Users/admin/builder/spi-builder-workspace/Sources/Business Logic/SpanGridKeyboardNavigation.swift:23:27: warning: main actor-isolated property 'data' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 15 |     private var currentSpanIndex: Int = 0
 16 |
 17 |     func setCurrentItem(newValue: Int) -> Bool {
    |          `- note: add '@MainActor' to make instance method 'setCurrentItem(newValue:)' part of global actor 'MainActor'
 18 |         guard let grid = grid else {
 19 |             logger.error("Lost grid reference, ignoring.", metadata: [ "value": .stringConvertible(newValue) ])
    :
 21 |         }
 22 |
 23 |         guard (0 ..< grid.data.count).contains(newValue) else {
    |                           `- warning: main actor-isolated property 'data' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 24 |             logger.info("Value out of bounds, ignoring.", metadata: [ "value": .stringConvertible(newValue) ])
 25 |             return false
/Users/admin/builder/spi-builder-workspace/Sources/Views/SpanGrid.swift:22:9: note: property declared here
 20 |
 21 |     /// An array containing all of the data for the grid.
 22 |     let data: [SpanGridData<Data>]
    |         `- note: property declared here
 23 |
 24 |     /// A closure which produces a SwiftUI view for every piece of data within the grid.
/Users/admin/builder/spi-builder-workspace/Sources/Business Logic/SpanGridKeyboardNavigation.swift:61:33: warning: main actor-isolated property 'data' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 59 |             let currentItem = strongSelf.currentItem ?? 0
 60 |             var mutableSpanIndex = strongSelf.currentSpanIndex
 61 |             let spanSize = grid.data[currentItem].data.layoutSize.spanSize(columnCount: columnCount)
    |                                 `- warning: main actor-isolated property 'data' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 62 |
 63 |             let originalSpanIndex = grid.spanIndexCalculator.getSpanIndex(forItemWithOffset: currentItem, columnCount: columnCount)
/Users/admin/builder/spi-builder-workspace/Sources/Views/SpanGrid.swift:22:9: note: property declared here
 20 |
 21 |     /// An array containing all of the data for the grid.
 22 |     let data: [SpanGridData<Data>]
    |         `- note: property declared here
 23 |
 24 |     /// A closure which produces a SwiftUI view for every piece of data within the grid.
/Users/admin/builder/spi-builder-workspace/Sources/Business Logic/SpanGridKeyboardNavigation.swift:63:42: warning: main actor-isolated property 'spanIndexCalculator' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 61 |             let spanSize = grid.data[currentItem].data.layoutSize.spanSize(columnCount: columnCount)
 62 |
 63 |             let originalSpanIndex = grid.spanIndexCalculator.getSpanIndex(forItemWithOffset: currentItem, columnCount: columnCount)
    |                                          `- warning: main actor-isolated property 'spanIndexCalculator' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 64 |             let spanIndexOffset = mutableSpanIndex - originalSpanIndex
 65 |
/Users/admin/builder/spi-builder-workspace/Sources/Views/SpanGrid.swift:38:9: note: property declared here
 36 |     /// Calculates the span index for each item in the grid.
 37 |     /// The "span index" is the sum of the column spans of all items before it.
 38 |     let spanIndexCalculator = SpanGridSpanIndexCalculator<Content, Data>()
    |         `- note: property declared here
 39 |
 40 |     /// Stores information about whether keyboard navigation is enabled, where supported.
/Users/admin/builder/spi-builder-workspace/Sources/Business Logic/SpanGridKeyboardNavigation.swift:66:35: warning: main actor-isolated property 'spanIndexCalculator' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 64 |             let spanIndexOffset = mutableSpanIndex - originalSpanIndex
 65 |
 66 |             let spanPrefix = grid.spanIndexCalculator.calculateCellPrefix(
    |                                   `- warning: main actor-isolated property 'spanIndexCalculator' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 67 |                 spanSize: spanSize,
 68 |                 columnCount: columnCount,
/Users/admin/builder/spi-builder-workspace/Sources/Views/SpanGrid.swift:38:9: note: property declared here
 36 |     /// Calculates the span index for each item in the grid.
 37 |     /// The "span index" is the sum of the column spans of all items before it.
 38 |     let spanIndexCalculator = SpanGridSpanIndexCalculator<Content, Data>()
    |         `- note: property declared here
 39 |
 40 |     /// Stores information about whether keyboard navigation is enabled, where supported.
/Users/admin/builder/spi-builder-workspace/Sources/Business Logic/SpanGridKeyboardNavigation.swift:98:38: warning: main actor-isolated property 'spanIndexCalculator' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 96 |             }
 97 |
 98 |             guard let newItem = grid.spanIndexCalculator.reverseLookup[mutableSpanIndex] else {
    |                                      `- warning: main actor-isolated property 'spanIndexCalculator' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 99 |                 strongSelf.logger.error("Unknown span index, ignoring. Input: '\(mutableSpanIndex)'.")
100 |                 return
/Users/admin/builder/spi-builder-workspace/Sources/Views/SpanGrid.swift:38:9: note: property declared here
 36 |     /// Calculates the span index for each item in the grid.
 37 |     /// The "span index" is the sum of the column spans of all items before it.
 38 |     let spanIndexCalculator = SpanGridSpanIndexCalculator<Content, Data>()
    |         `- note: property declared here
 39 |
 40 |     /// Stores information about whether keyboard navigation is enabled, where supported.
/Users/admin/builder/spi-builder-workspace/Sources/Business Logic/SpanGridKeyboardNavigation.swift:110:31: warning: main actor-isolated property 'spanIndexCalculator' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
107 |     }
108 |
109 |     func isInvalidCell(spanIndex: Int, columnCount: Int, grid: SpanGrid<Content, Data>) -> Bool {
    |          `- note: add '@MainActor' to make instance method 'isInvalidCell(spanIndex:columnCount:grid:)' part of global actor 'MainActor'
110 |         guard let item = grid.spanIndexCalculator.reverseLookup[spanIndex] else {
    |                               `- warning: main actor-isolated property 'spanIndexCalculator' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
111 |             logger.error("Unknown span index, ignoring. Input: '\(spanIndex)'.")
112 |             return false
/Users/admin/builder/spi-builder-workspace/Sources/Views/SpanGrid.swift:38:9: note: property declared here
 36 |     /// Calculates the span index for each item in the grid.
 37 |     /// The "span index" is the sum of the column spans of all items before it.
 38 |     let spanIndexCalculator = SpanGridSpanIndexCalculator<Content, Data>()
    |         `- note: property declared here
 39 |
 40 |     /// Stores information about whether keyboard navigation is enabled, where supported.
/Users/admin/builder/spi-builder-workspace/Sources/Business Logic/SpanGridKeyboardNavigation.swift:115:27: warning: main actor-isolated property 'data' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
107 |     }
108 |
109 |     func isInvalidCell(spanIndex: Int, columnCount: Int, grid: SpanGrid<Content, Data>) -> Bool {
    |          `- note: add '@MainActor' to make instance method 'isInvalidCell(spanIndex:columnCount:grid:)' part of global actor 'MainActor'
110 |         guard let item = grid.spanIndexCalculator.reverseLookup[spanIndex] else {
111 |             logger.error("Unknown span index, ignoring. Input: '\(spanIndex)'.")
    :
113 |         }
114 |
115 |         guard (0 ..< grid.data.count).contains(item) else {
    |                           `- warning: main actor-isolated property 'data' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
116 |             logger.trace("Span index places item out of bounds, ignoring. Input: '\(spanIndex)=\(item)'.")
117 |             return false
/Users/admin/builder/spi-builder-workspace/Sources/Views/SpanGrid.swift:22:9: note: property declared here
 20 |
 21 |     /// An array containing all of the data for the grid.
 22 |     let data: [SpanGridData<Data>]
    |         `- note: property declared here
 23 |
 24 |     /// A closure which produces a SwiftUI view for every piece of data within the grid.
/Users/admin/builder/spi-builder-workspace/Sources/Business Logic/SpanGridKeyboardNavigation.swift:120:29: warning: main actor-isolated property 'data' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
107 |     }
108 |
109 |     func isInvalidCell(spanIndex: Int, columnCount: Int, grid: SpanGrid<Content, Data>) -> Bool {
    |          `- note: add '@MainActor' to make instance method 'isInvalidCell(spanIndex:columnCount:grid:)' part of global actor 'MainActor'
110 |         guard let item = grid.spanIndexCalculator.reverseLookup[spanIndex] else {
111 |             logger.error("Unknown span index, ignoring. Input: '\(spanIndex)'.")
    :
118 |         }
119 |
120 |         let spanSize = grid.data[item].data.layoutSize.spanSize(columnCount: columnCount)
    |                             `- warning: main actor-isolated property 'data' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
121 |
122 |         let originalSpanIndex = grid.spanIndexCalculator.getSpanIndex(forItemWithOffset: item, columnCount: columnCount)
/Users/admin/builder/spi-builder-workspace/Sources/Views/SpanGrid.swift:22:9: note: property declared here
 20 |
 21 |     /// An array containing all of the data for the grid.
 22 |     let data: [SpanGridData<Data>]
    |         `- note: property declared here
 23 |
 24 |     /// A closure which produces a SwiftUI view for every piece of data within the grid.
/Users/admin/builder/spi-builder-workspace/Sources/Business Logic/SpanGridKeyboardNavigation.swift:122:38: warning: main actor-isolated property 'spanIndexCalculator' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
107 |     }
108 |
109 |     func isInvalidCell(spanIndex: Int, columnCount: Int, grid: SpanGrid<Content, Data>) -> Bool {
    |          `- note: add '@MainActor' to make instance method 'isInvalidCell(spanIndex:columnCount:grid:)' part of global actor 'MainActor'
110 |         guard let item = grid.spanIndexCalculator.reverseLookup[spanIndex] else {
111 |             logger.error("Unknown span index, ignoring. Input: '\(spanIndex)'.")
    :
120 |         let spanSize = grid.data[item].data.layoutSize.spanSize(columnCount: columnCount)
121 |
122 |         let originalSpanIndex = grid.spanIndexCalculator.getSpanIndex(forItemWithOffset: item, columnCount: columnCount)
    |                                      `- warning: main actor-isolated property 'spanIndexCalculator' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
123 |         let spanIndexOffset = spanIndex - originalSpanIndex
124 |
/Users/admin/builder/spi-builder-workspace/Sources/Views/SpanGrid.swift:38:9: note: property declared here
 36 |     /// Calculates the span index for each item in the grid.
 37 |     /// The "span index" is the sum of the column spans of all items before it.
 38 |     let spanIndexCalculator = SpanGridSpanIndexCalculator<Content, Data>()
    |         `- note: property declared here
 39 |
 40 |     /// Stores information about whether keyboard navigation is enabled, where supported.
/Users/admin/builder/spi-builder-workspace/Sources/Business Logic/SpanGridKeyboardNavigation.swift:125:31: warning: main actor-isolated property 'spanIndexCalculator' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
107 |     }
108 |
109 |     func isInvalidCell(spanIndex: Int, columnCount: Int, grid: SpanGrid<Content, Data>) -> Bool {
    |          `- note: add '@MainActor' to make instance method 'isInvalidCell(spanIndex:columnCount:grid:)' part of global actor 'MainActor'
110 |         guard let item = grid.spanIndexCalculator.reverseLookup[spanIndex] else {
111 |             logger.error("Unknown span index, ignoring. Input: '\(spanIndex)'.")
    :
123 |         let spanIndexOffset = spanIndex - originalSpanIndex
124 |
125 |         let spanPrefix = grid.spanIndexCalculator.calculateCellPrefix(spanSize: spanSize, columnCount: columnCount, spanIndex: originalSpanIndex)
    |                               `- warning: main actor-isolated property 'spanIndexCalculator' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
126 |
127 |         if spanIndexOffset < spanPrefix {
/Users/admin/builder/spi-builder-workspace/Sources/Views/SpanGrid.swift:38:9: note: property declared here
 36 |     /// Calculates the span index for each item in the grid.
 37 |     /// The "span index" is the sum of the column spans of all items before it.
 38 |     let spanIndexCalculator = SpanGridSpanIndexCalculator<Content, Data>()
    |         `- note: property declared here
 39 |
 40 |     /// Stores information about whether keyboard navigation is enabled, where supported.
[22/26] Compiling SpanGrid SpanGridKeyboardNavigation.swift
/Users/admin/builder/spi-builder-workspace/Sources/Business Logic/SpanGridKeyboardNavigation.swift:23:27: warning: main actor-isolated property 'data' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 15 |     private var currentSpanIndex: Int = 0
 16 |
 17 |     func setCurrentItem(newValue: Int) -> Bool {
    |          `- note: add '@MainActor' to make instance method 'setCurrentItem(newValue:)' part of global actor 'MainActor'
 18 |         guard let grid = grid else {
 19 |             logger.error("Lost grid reference, ignoring.", metadata: [ "value": .stringConvertible(newValue) ])
    :
 21 |         }
 22 |
 23 |         guard (0 ..< grid.data.count).contains(newValue) else {
    |                           `- warning: main actor-isolated property 'data' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 24 |             logger.info("Value out of bounds, ignoring.", metadata: [ "value": .stringConvertible(newValue) ])
 25 |             return false
/Users/admin/builder/spi-builder-workspace/Sources/Views/SpanGrid.swift:22:9: note: property declared here
 20 |
 21 |     /// An array containing all of the data for the grid.
 22 |     let data: [SpanGridData<Data>]
    |         `- note: property declared here
 23 |
 24 |     /// A closure which produces a SwiftUI view for every piece of data within the grid.
/Users/admin/builder/spi-builder-workspace/Sources/Business Logic/SpanGridKeyboardNavigation.swift:61:33: warning: main actor-isolated property 'data' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 59 |             let currentItem = strongSelf.currentItem ?? 0
 60 |             var mutableSpanIndex = strongSelf.currentSpanIndex
 61 |             let spanSize = grid.data[currentItem].data.layoutSize.spanSize(columnCount: columnCount)
    |                                 `- warning: main actor-isolated property 'data' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 62 |
 63 |             let originalSpanIndex = grid.spanIndexCalculator.getSpanIndex(forItemWithOffset: currentItem, columnCount: columnCount)
/Users/admin/builder/spi-builder-workspace/Sources/Views/SpanGrid.swift:22:9: note: property declared here
 20 |
 21 |     /// An array containing all of the data for the grid.
 22 |     let data: [SpanGridData<Data>]
    |         `- note: property declared here
 23 |
 24 |     /// A closure which produces a SwiftUI view for every piece of data within the grid.
/Users/admin/builder/spi-builder-workspace/Sources/Business Logic/SpanGridKeyboardNavigation.swift:63:42: warning: main actor-isolated property 'spanIndexCalculator' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 61 |             let spanSize = grid.data[currentItem].data.layoutSize.spanSize(columnCount: columnCount)
 62 |
 63 |             let originalSpanIndex = grid.spanIndexCalculator.getSpanIndex(forItemWithOffset: currentItem, columnCount: columnCount)
    |                                          `- warning: main actor-isolated property 'spanIndexCalculator' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 64 |             let spanIndexOffset = mutableSpanIndex - originalSpanIndex
 65 |
/Users/admin/builder/spi-builder-workspace/Sources/Views/SpanGrid.swift:38:9: note: property declared here
 36 |     /// Calculates the span index for each item in the grid.
 37 |     /// The "span index" is the sum of the column spans of all items before it.
 38 |     let spanIndexCalculator = SpanGridSpanIndexCalculator<Content, Data>()
    |         `- note: property declared here
 39 |
 40 |     /// Stores information about whether keyboard navigation is enabled, where supported.
/Users/admin/builder/spi-builder-workspace/Sources/Business Logic/SpanGridKeyboardNavigation.swift:66:35: warning: main actor-isolated property 'spanIndexCalculator' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 64 |             let spanIndexOffset = mutableSpanIndex - originalSpanIndex
 65 |
 66 |             let spanPrefix = grid.spanIndexCalculator.calculateCellPrefix(
    |                                   `- warning: main actor-isolated property 'spanIndexCalculator' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 67 |                 spanSize: spanSize,
 68 |                 columnCount: columnCount,
/Users/admin/builder/spi-builder-workspace/Sources/Views/SpanGrid.swift:38:9: note: property declared here
 36 |     /// Calculates the span index for each item in the grid.
 37 |     /// The "span index" is the sum of the column spans of all items before it.
 38 |     let spanIndexCalculator = SpanGridSpanIndexCalculator<Content, Data>()
    |         `- note: property declared here
 39 |
 40 |     /// Stores information about whether keyboard navigation is enabled, where supported.
/Users/admin/builder/spi-builder-workspace/Sources/Business Logic/SpanGridKeyboardNavigation.swift:98:38: warning: main actor-isolated property 'spanIndexCalculator' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 96 |             }
 97 |
 98 |             guard let newItem = grid.spanIndexCalculator.reverseLookup[mutableSpanIndex] else {
    |                                      `- warning: main actor-isolated property 'spanIndexCalculator' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 99 |                 strongSelf.logger.error("Unknown span index, ignoring. Input: '\(mutableSpanIndex)'.")
100 |                 return
/Users/admin/builder/spi-builder-workspace/Sources/Views/SpanGrid.swift:38:9: note: property declared here
 36 |     /// Calculates the span index for each item in the grid.
 37 |     /// The "span index" is the sum of the column spans of all items before it.
 38 |     let spanIndexCalculator = SpanGridSpanIndexCalculator<Content, Data>()
    |         `- note: property declared here
 39 |
 40 |     /// Stores information about whether keyboard navigation is enabled, where supported.
/Users/admin/builder/spi-builder-workspace/Sources/Business Logic/SpanGridKeyboardNavigation.swift:110:31: warning: main actor-isolated property 'spanIndexCalculator' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
107 |     }
108 |
109 |     func isInvalidCell(spanIndex: Int, columnCount: Int, grid: SpanGrid<Content, Data>) -> Bool {
    |          `- note: add '@MainActor' to make instance method 'isInvalidCell(spanIndex:columnCount:grid:)' part of global actor 'MainActor'
110 |         guard let item = grid.spanIndexCalculator.reverseLookup[spanIndex] else {
    |                               `- warning: main actor-isolated property 'spanIndexCalculator' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
111 |             logger.error("Unknown span index, ignoring. Input: '\(spanIndex)'.")
112 |             return false
/Users/admin/builder/spi-builder-workspace/Sources/Views/SpanGrid.swift:38:9: note: property declared here
 36 |     /// Calculates the span index for each item in the grid.
 37 |     /// The "span index" is the sum of the column spans of all items before it.
 38 |     let spanIndexCalculator = SpanGridSpanIndexCalculator<Content, Data>()
    |         `- note: property declared here
 39 |
 40 |     /// Stores information about whether keyboard navigation is enabled, where supported.
/Users/admin/builder/spi-builder-workspace/Sources/Business Logic/SpanGridKeyboardNavigation.swift:115:27: warning: main actor-isolated property 'data' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
107 |     }
108 |
109 |     func isInvalidCell(spanIndex: Int, columnCount: Int, grid: SpanGrid<Content, Data>) -> Bool {
    |          `- note: add '@MainActor' to make instance method 'isInvalidCell(spanIndex:columnCount:grid:)' part of global actor 'MainActor'
110 |         guard let item = grid.spanIndexCalculator.reverseLookup[spanIndex] else {
111 |             logger.error("Unknown span index, ignoring. Input: '\(spanIndex)'.")
    :
113 |         }
114 |
115 |         guard (0 ..< grid.data.count).contains(item) else {
    |                           `- warning: main actor-isolated property 'data' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
116 |             logger.trace("Span index places item out of bounds, ignoring. Input: '\(spanIndex)=\(item)'.")
117 |             return false
/Users/admin/builder/spi-builder-workspace/Sources/Views/SpanGrid.swift:22:9: note: property declared here
 20 |
 21 |     /// An array containing all of the data for the grid.
 22 |     let data: [SpanGridData<Data>]
    |         `- note: property declared here
 23 |
 24 |     /// A closure which produces a SwiftUI view for every piece of data within the grid.
/Users/admin/builder/spi-builder-workspace/Sources/Business Logic/SpanGridKeyboardNavigation.swift:120:29: warning: main actor-isolated property 'data' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
107 |     }
108 |
109 |     func isInvalidCell(spanIndex: Int, columnCount: Int, grid: SpanGrid<Content, Data>) -> Bool {
    |          `- note: add '@MainActor' to make instance method 'isInvalidCell(spanIndex:columnCount:grid:)' part of global actor 'MainActor'
110 |         guard let item = grid.spanIndexCalculator.reverseLookup[spanIndex] else {
111 |             logger.error("Unknown span index, ignoring. Input: '\(spanIndex)'.")
    :
118 |         }
119 |
120 |         let spanSize = grid.data[item].data.layoutSize.spanSize(columnCount: columnCount)
    |                             `- warning: main actor-isolated property 'data' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
121 |
122 |         let originalSpanIndex = grid.spanIndexCalculator.getSpanIndex(forItemWithOffset: item, columnCount: columnCount)
/Users/admin/builder/spi-builder-workspace/Sources/Views/SpanGrid.swift:22:9: note: property declared here
 20 |
 21 |     /// An array containing all of the data for the grid.
 22 |     let data: [SpanGridData<Data>]
    |         `- note: property declared here
 23 |
 24 |     /// A closure which produces a SwiftUI view for every piece of data within the grid.
/Users/admin/builder/spi-builder-workspace/Sources/Business Logic/SpanGridKeyboardNavigation.swift:122:38: warning: main actor-isolated property 'spanIndexCalculator' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
107 |     }
108 |
109 |     func isInvalidCell(spanIndex: Int, columnCount: Int, grid: SpanGrid<Content, Data>) -> Bool {
    |          `- note: add '@MainActor' to make instance method 'isInvalidCell(spanIndex:columnCount:grid:)' part of global actor 'MainActor'
110 |         guard let item = grid.spanIndexCalculator.reverseLookup[spanIndex] else {
111 |             logger.error("Unknown span index, ignoring. Input: '\(spanIndex)'.")
    :
120 |         let spanSize = grid.data[item].data.layoutSize.spanSize(columnCount: columnCount)
121 |
122 |         let originalSpanIndex = grid.spanIndexCalculator.getSpanIndex(forItemWithOffset: item, columnCount: columnCount)
    |                                      `- warning: main actor-isolated property 'spanIndexCalculator' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
123 |         let spanIndexOffset = spanIndex - originalSpanIndex
124 |
/Users/admin/builder/spi-builder-workspace/Sources/Views/SpanGrid.swift:38:9: note: property declared here
 36 |     /// Calculates the span index for each item in the grid.
 37 |     /// The "span index" is the sum of the column spans of all items before it.
 38 |     let spanIndexCalculator = SpanGridSpanIndexCalculator<Content, Data>()
    |         `- note: property declared here
 39 |
 40 |     /// Stores information about whether keyboard navigation is enabled, where supported.
/Users/admin/builder/spi-builder-workspace/Sources/Business Logic/SpanGridKeyboardNavigation.swift:125:31: warning: main actor-isolated property 'spanIndexCalculator' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
107 |     }
108 |
109 |     func isInvalidCell(spanIndex: Int, columnCount: Int, grid: SpanGrid<Content, Data>) -> Bool {
    |          `- note: add '@MainActor' to make instance method 'isInvalidCell(spanIndex:columnCount:grid:)' part of global actor 'MainActor'
110 |         guard let item = grid.spanIndexCalculator.reverseLookup[spanIndex] else {
111 |             logger.error("Unknown span index, ignoring. Input: '\(spanIndex)'.")
    :
123 |         let spanIndexOffset = spanIndex - originalSpanIndex
124 |
125 |         let spanPrefix = grid.spanIndexCalculator.calculateCellPrefix(spanSize: spanSize, columnCount: columnCount, spanIndex: originalSpanIndex)
    |                               `- warning: main actor-isolated property 'spanIndexCalculator' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
126 |
127 |         if spanIndexOffset < spanPrefix {
/Users/admin/builder/spi-builder-workspace/Sources/Views/SpanGrid.swift:38:9: note: property declared here
 36 |     /// Calculates the span index for each item in the grid.
 37 |     /// The "span index" is the sum of the column spans of all items before it.
 38 |     let spanIndexCalculator = SpanGridSpanIndexCalculator<Content, Data>()
    |         `- note: property declared here
 39 |
 40 |     /// Stores information about whether keyboard navigation is enabled, where supported.
[23/26] Compiling SpanGrid SpanGridRowHeightStorage.swift
/Users/admin/builder/spi-builder-workspace/Sources/Business Logic/SpanGridSpanIndexCalculator.swift:38:45: warning: main actor-isolated property 'data' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 20 |     var reverseLookup: [Int: Int] = [:]
 21 |
 22 |     func precalculateSpanIndex(columnCount: Int) {
    |          `- note: add '@MainActor' to make instance method 'precalculateSpanIndex(columnCount:)' part of global actor 'MainActor'
 23 |         guard cache.isEmpty || columnCount != lastColumnCount else {
 24 |             return
    :
 36 |
 37 |         var temporaryCache = [Int: Int]()
 38 |         temporaryCache.reserveCapacity(grid.data.count)
    |                                             `- warning: main actor-isolated property 'data' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 39 |
 40 |         var reverseCache = [Int: Int]()
/Users/admin/builder/spi-builder-workspace/Sources/Views/SpanGrid.swift:22:9: note: property declared here
 20 |
 21 |     /// An array containing all of the data for the grid.
 22 |     let data: [SpanGridData<Data>]
    |         `- note: property declared here
 23 |
 24 |     /// A closure which produces a SwiftUI view for every piece of data within the grid.
/Users/admin/builder/spi-builder-workspace/Sources/Business Logic/SpanGridSpanIndexCalculator.swift:42:43: warning: main actor-isolated property 'data' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 20 |     var reverseLookup: [Int: Int] = [:]
 21 |
 22 |     func precalculateSpanIndex(columnCount: Int) {
    |          `- note: add '@MainActor' to make instance method 'precalculateSpanIndex(columnCount:)' part of global actor 'MainActor'
 23 |         guard cache.isEmpty || columnCount != lastColumnCount else {
 24 |             return
    :
 40 |         var reverseCache = [Int: Int]()
 41 |         // reverseCache size will always be <= grid.data.count
 42 |         reverseCache.reserveCapacity(grid.data.count)
    |                                           `- warning: main actor-isolated property 'data' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 43 |
 44 |         var lastPartial = 0
/Users/admin/builder/spi-builder-workspace/Sources/Views/SpanGrid.swift:22:9: note: property declared here
 20 |
 21 |     /// An array containing all of the data for the grid.
 22 |     let data: [SpanGridData<Data>]
    |         `- note: property declared here
 23 |
 24 |     /// A closure which produces a SwiftUI view for every piece of data within the grid.
/Users/admin/builder/spi-builder-workspace/Sources/Business Logic/SpanGridSpanIndexCalculator.swift:47:40: warning: main actor-isolated property 'data' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 20 |     var reverseLookup: [Int: Int] = [:]
 21 |
 22 |     func precalculateSpanIndex(columnCount: Int) {
    |          `- note: add '@MainActor' to make instance method 'precalculateSpanIndex(columnCount:)' part of global actor 'MainActor'
 23 |         guard cache.isEmpty || columnCount != lastColumnCount else {
 24 |             return
    :
 45 |         var lastCellIndex = 0
 46 |
 47 |         let totalSpanIndex: Int = grid.data.reduce(0) { partialResult, gridData in
    |                                        `- warning: main actor-isolated property 'data' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 48 |             // Populate any gaps in the reverse lookup cache.
 49 |             // This is appropriate where the last cell had a span of more than 1.
/Users/admin/builder/spi-builder-workspace/Sources/Views/SpanGrid.swift:22:9: note: property declared here
 20 |
 21 |     /// An array containing all of the data for the grid.
 22 |     let data: [SpanGridData<Data>]
    |         `- note: property declared here
 23 |
 24 |     /// A closure which produces a SwiftUI view for every piece of data within the grid.
/Users/admin/builder/spi-builder-workspace/Sources/Business Logic/SpanGridSpanIndexCalculator.swift:65:29: warning: main actor-isolated property 'data' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 20 |     var reverseLookup: [Int: Int] = [:]
 21 |
 22 |     func precalculateSpanIndex(columnCount: Int) {
    |          `- note: add '@MainActor' to make instance method 'precalculateSpanIndex(columnCount:)' part of global actor 'MainActor'
 23 |         guard cache.isEmpty || columnCount != lastColumnCount else {
 24 |             return
    :
 63 |         }
 64 |
 65 |         temporaryCache[grid.data.count] = totalSpanIndex
    |                             `- warning: main actor-isolated property 'data' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 66 |         reverseCache[totalSpanIndex] = grid.data.count
 67 |
/Users/admin/builder/spi-builder-workspace/Sources/Views/SpanGrid.swift:22:9: note: property declared here
 20 |
 21 |     /// An array containing all of the data for the grid.
 22 |     let data: [SpanGridData<Data>]
    |         `- note: property declared here
 23 |
 24 |     /// A closure which produces a SwiftUI view for every piece of data within the grid.
/Users/admin/builder/spi-builder-workspace/Sources/Business Logic/SpanGridSpanIndexCalculator.swift:66:45: warning: main actor-isolated property 'data' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 20 |     var reverseLookup: [Int: Int] = [:]
 21 |
 22 |     func precalculateSpanIndex(columnCount: Int) {
    |          `- note: add '@MainActor' to make instance method 'precalculateSpanIndex(columnCount:)' part of global actor 'MainActor'
 23 |         guard cache.isEmpty || columnCount != lastColumnCount else {
 24 |             return
    :
 64 |
 65 |         temporaryCache[grid.data.count] = totalSpanIndex
 66 |         reverseCache[totalSpanIndex] = grid.data.count
    |                                             `- warning: main actor-isolated property 'data' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 67 |
 68 |         cache = temporaryCache
/Users/admin/builder/spi-builder-workspace/Sources/Views/SpanGrid.swift:22:9: note: property declared here
 20 |
 21 |     /// An array containing all of the data for the grid.
 22 |     let data: [SpanGridData<Data>]
    |         `- note: property declared here
 23 |
 24 |     /// A closure which produces a SwiftUI view for every piece of data within the grid.
/Users/admin/builder/spi-builder-workspace/Sources/Business Logic/SpanGridSpanIndexCalculator.swift:102:21: warning: main actor-isolated property 'data' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 81 |     }
 82 |
 83 |     func getSpanIndex(forItemWithOffset offset: Int, columnCount: Int) -> Int {
    |          `- note: add '@MainActor' to make instance method 'getSpanIndex(forItemWithOffset:columnCount:)' part of global actor 'MainActor'
 84 |         if columnCount == 1 {
 85 |             // Optimisation: In a single column grid there can never be a difference between item offset and span index.
    :
100 |         logger.warning("Cache was missed, calculating on the fly.")
101 |
102 |         return grid.data.prefix(offset).reduce(0) { partialResult, gridData in
    |                     `- warning: main actor-isolated property 'data' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
103 |             accumulateSpanIndex(partialResult: partialResult, gridData: gridData, columnCount: columnCount)
104 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Views/SpanGrid.swift:22:9: note: property declared here
 20 |
 21 |     /// An array containing all of the data for the grid.
 22 |     let data: [SpanGridData<Data>]
    |         `- note: property declared here
 23 |
 24 |     /// A closure which produces a SwiftUI view for every piece of data within the grid.
[24/26] Compiling SpanGrid SpanGridSpanIndexCalculator.swift
/Users/admin/builder/spi-builder-workspace/Sources/Business Logic/SpanGridSpanIndexCalculator.swift:38:45: warning: main actor-isolated property 'data' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 20 |     var reverseLookup: [Int: Int] = [:]
 21 |
 22 |     func precalculateSpanIndex(columnCount: Int) {
    |          `- note: add '@MainActor' to make instance method 'precalculateSpanIndex(columnCount:)' part of global actor 'MainActor'
 23 |         guard cache.isEmpty || columnCount != lastColumnCount else {
 24 |             return
    :
 36 |
 37 |         var temporaryCache = [Int: Int]()
 38 |         temporaryCache.reserveCapacity(grid.data.count)
    |                                             `- warning: main actor-isolated property 'data' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 39 |
 40 |         var reverseCache = [Int: Int]()
/Users/admin/builder/spi-builder-workspace/Sources/Views/SpanGrid.swift:22:9: note: property declared here
 20 |
 21 |     /// An array containing all of the data for the grid.
 22 |     let data: [SpanGridData<Data>]
    |         `- note: property declared here
 23 |
 24 |     /// A closure which produces a SwiftUI view for every piece of data within the grid.
/Users/admin/builder/spi-builder-workspace/Sources/Business Logic/SpanGridSpanIndexCalculator.swift:42:43: warning: main actor-isolated property 'data' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 20 |     var reverseLookup: [Int: Int] = [:]
 21 |
 22 |     func precalculateSpanIndex(columnCount: Int) {
    |          `- note: add '@MainActor' to make instance method 'precalculateSpanIndex(columnCount:)' part of global actor 'MainActor'
 23 |         guard cache.isEmpty || columnCount != lastColumnCount else {
 24 |             return
    :
 40 |         var reverseCache = [Int: Int]()
 41 |         // reverseCache size will always be <= grid.data.count
 42 |         reverseCache.reserveCapacity(grid.data.count)
    |                                           `- warning: main actor-isolated property 'data' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 43 |
 44 |         var lastPartial = 0
/Users/admin/builder/spi-builder-workspace/Sources/Views/SpanGrid.swift:22:9: note: property declared here
 20 |
 21 |     /// An array containing all of the data for the grid.
 22 |     let data: [SpanGridData<Data>]
    |         `- note: property declared here
 23 |
 24 |     /// A closure which produces a SwiftUI view for every piece of data within the grid.
/Users/admin/builder/spi-builder-workspace/Sources/Business Logic/SpanGridSpanIndexCalculator.swift:47:40: warning: main actor-isolated property 'data' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 20 |     var reverseLookup: [Int: Int] = [:]
 21 |
 22 |     func precalculateSpanIndex(columnCount: Int) {
    |          `- note: add '@MainActor' to make instance method 'precalculateSpanIndex(columnCount:)' part of global actor 'MainActor'
 23 |         guard cache.isEmpty || columnCount != lastColumnCount else {
 24 |             return
    :
 45 |         var lastCellIndex = 0
 46 |
 47 |         let totalSpanIndex: Int = grid.data.reduce(0) { partialResult, gridData in
    |                                        `- warning: main actor-isolated property 'data' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 48 |             // Populate any gaps in the reverse lookup cache.
 49 |             // This is appropriate where the last cell had a span of more than 1.
/Users/admin/builder/spi-builder-workspace/Sources/Views/SpanGrid.swift:22:9: note: property declared here
 20 |
 21 |     /// An array containing all of the data for the grid.
 22 |     let data: [SpanGridData<Data>]
    |         `- note: property declared here
 23 |
 24 |     /// A closure which produces a SwiftUI view for every piece of data within the grid.
/Users/admin/builder/spi-builder-workspace/Sources/Business Logic/SpanGridSpanIndexCalculator.swift:65:29: warning: main actor-isolated property 'data' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 20 |     var reverseLookup: [Int: Int] = [:]
 21 |
 22 |     func precalculateSpanIndex(columnCount: Int) {
    |          `- note: add '@MainActor' to make instance method 'precalculateSpanIndex(columnCount:)' part of global actor 'MainActor'
 23 |         guard cache.isEmpty || columnCount != lastColumnCount else {
 24 |             return
    :
 63 |         }
 64 |
 65 |         temporaryCache[grid.data.count] = totalSpanIndex
    |                             `- warning: main actor-isolated property 'data' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 66 |         reverseCache[totalSpanIndex] = grid.data.count
 67 |
/Users/admin/builder/spi-builder-workspace/Sources/Views/SpanGrid.swift:22:9: note: property declared here
 20 |
 21 |     /// An array containing all of the data for the grid.
 22 |     let data: [SpanGridData<Data>]
    |         `- note: property declared here
 23 |
 24 |     /// A closure which produces a SwiftUI view for every piece of data within the grid.
/Users/admin/builder/spi-builder-workspace/Sources/Business Logic/SpanGridSpanIndexCalculator.swift:66:45: warning: main actor-isolated property 'data' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 20 |     var reverseLookup: [Int: Int] = [:]
 21 |
 22 |     func precalculateSpanIndex(columnCount: Int) {
    |          `- note: add '@MainActor' to make instance method 'precalculateSpanIndex(columnCount:)' part of global actor 'MainActor'
 23 |         guard cache.isEmpty || columnCount != lastColumnCount else {
 24 |             return
    :
 64 |
 65 |         temporaryCache[grid.data.count] = totalSpanIndex
 66 |         reverseCache[totalSpanIndex] = grid.data.count
    |                                             `- warning: main actor-isolated property 'data' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 67 |
 68 |         cache = temporaryCache
/Users/admin/builder/spi-builder-workspace/Sources/Views/SpanGrid.swift:22:9: note: property declared here
 20 |
 21 |     /// An array containing all of the data for the grid.
 22 |     let data: [SpanGridData<Data>]
    |         `- note: property declared here
 23 |
 24 |     /// A closure which produces a SwiftUI view for every piece of data within the grid.
/Users/admin/builder/spi-builder-workspace/Sources/Business Logic/SpanGridSpanIndexCalculator.swift:102:21: warning: main actor-isolated property 'data' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 81 |     }
 82 |
 83 |     func getSpanIndex(forItemWithOffset offset: Int, columnCount: Int) -> Int {
    |          `- note: add '@MainActor' to make instance method 'getSpanIndex(forItemWithOffset:columnCount:)' part of global actor 'MainActor'
 84 |         if columnCount == 1 {
 85 |             // Optimisation: In a single column grid there can never be a difference between item offset and span index.
    :
100 |         logger.warning("Cache was missed, calculating on the fly.")
101 |
102 |         return grid.data.prefix(offset).reduce(0) { partialResult, gridData in
    |                     `- warning: main actor-isolated property 'data' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
103 |             accumulateSpanIndex(partialResult: partialResult, gridData: gridData, columnCount: columnCount)
104 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Views/SpanGrid.swift:22:9: note: property declared here
 20 |
 21 |     /// An array containing all of the data for the grid.
 22 |     let data: [SpanGridData<Data>]
    |         `- note: property declared here
 23 |
 24 |     /// A closure which produces a SwiftUI view for every piece of data within the grid.
[25/26] Compiling SpanGrid SpanGridWidthListener+macOS.swift
/Users/admin/builder/spi-builder-workspace/Sources/SpanGridWidthListener/SpanGridWidthListener+macOS.swift:13:13: warning: main actor-isolated property 'logger' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
10 | #if os(OSX)
11 | internal struct SpanGridWidthListener: NSViewControllerRepresentable {
12 |     internal class ViewController: NSViewController, SpanGridWidthListenerViewController {
   |                                                      `- note: add '@preconcurrency' to the 'SpanGridWidthListenerViewController' conformance to defer isolation checking to run time
13 |         let logger = Logger(label: "uk.sherlo.spangrid.width-listener")
   |             `- warning: main actor-isolated property 'logger' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
14 |         var lastKnownSize: CGSize?
15 |         let dynamicConfiguration: SpanGridDynamicColumnSizeStrategy.Configuration?
/Users/admin/builder/spi-builder-workspace/Sources/SpanGridWidthListener/SpanGridWidthListener.swift:13:9: note: 'logger' declared here
11 |
12 | protocol SpanGridWidthListenerViewController: AnyObject {
13 |     var logger: Logger { get }
   |         `- note: 'logger' declared here
14 |     var lastKnownSize: CGSize? { get set }
15 |     var dynamicConfiguration: SpanGridDynamicColumnSizeStrategy.Configuration? { get }
/Users/admin/builder/spi-builder-workspace/Sources/SpanGridWidthListener/SpanGridWidthListener+macOS.swift:14:13: warning: main actor-isolated property 'lastKnownSize' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
12 |     internal class ViewController: NSViewController, SpanGridWidthListenerViewController {
13 |         let logger = Logger(label: "uk.sherlo.spangrid.width-listener")
14 |         var lastKnownSize: CGSize?
   |             `- warning: main actor-isolated property 'lastKnownSize' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
15 |         let dynamicConfiguration: SpanGridDynamicColumnSizeStrategy.Configuration?
16 |
/Users/admin/builder/spi-builder-workspace/Sources/SpanGridWidthListener/SpanGridWidthListener.swift:14:9: note: 'lastKnownSize' declared here
12 | protocol SpanGridWidthListenerViewController: AnyObject {
13 |     var logger: Logger { get }
14 |     var lastKnownSize: CGSize? { get set }
   |         `- note: 'lastKnownSize' declared here
15 |     var dynamicConfiguration: SpanGridDynamicColumnSizeStrategy.Configuration? { get }
16 | }
/Users/admin/builder/spi-builder-workspace/Sources/SpanGridWidthListener/SpanGridWidthListener+macOS.swift:15:13: warning: main actor-isolated property 'dynamicConfiguration' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
13 |         let logger = Logger(label: "uk.sherlo.spangrid.width-listener")
14 |         var lastKnownSize: CGSize?
15 |         let dynamicConfiguration: SpanGridDynamicColumnSizeStrategy.Configuration?
   |             `- warning: main actor-isolated property 'dynamicConfiguration' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
16 |
17 |         override func loadView() {
/Users/admin/builder/spi-builder-workspace/Sources/SpanGridWidthListener/SpanGridWidthListener.swift:15:9: note: 'dynamicConfiguration' declared here
13 |     var logger: Logger { get }
14 |     var lastKnownSize: CGSize? { get set }
15 |     var dynamicConfiguration: SpanGridDynamicColumnSizeStrategy.Configuration? { get }
   |         `- note: 'dynamicConfiguration' declared here
16 | }
17 |
[26/26] Compiling SpanGrid SpanGridWidthListener+watchOS.swift
/Users/admin/builder/spi-builder-workspace/Sources/SpanGridWidthListener/SpanGridWidthListener+macOS.swift:13:13: warning: main actor-isolated property 'logger' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
10 | #if os(OSX)
11 | internal struct SpanGridWidthListener: NSViewControllerRepresentable {
12 |     internal class ViewController: NSViewController, SpanGridWidthListenerViewController {
   |                                                      `- note: add '@preconcurrency' to the 'SpanGridWidthListenerViewController' conformance to defer isolation checking to run time
13 |         let logger = Logger(label: "uk.sherlo.spangrid.width-listener")
   |             `- warning: main actor-isolated property 'logger' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
14 |         var lastKnownSize: CGSize?
15 |         let dynamicConfiguration: SpanGridDynamicColumnSizeStrategy.Configuration?
/Users/admin/builder/spi-builder-workspace/Sources/SpanGridWidthListener/SpanGridWidthListener.swift:13:9: note: 'logger' declared here
11 |
12 | protocol SpanGridWidthListenerViewController: AnyObject {
13 |     var logger: Logger { get }
   |         `- note: 'logger' declared here
14 |     var lastKnownSize: CGSize? { get set }
15 |     var dynamicConfiguration: SpanGridDynamicColumnSizeStrategy.Configuration? { get }
/Users/admin/builder/spi-builder-workspace/Sources/SpanGridWidthListener/SpanGridWidthListener+macOS.swift:14:13: warning: main actor-isolated property 'lastKnownSize' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
12 |     internal class ViewController: NSViewController, SpanGridWidthListenerViewController {
13 |         let logger = Logger(label: "uk.sherlo.spangrid.width-listener")
14 |         var lastKnownSize: CGSize?
   |             `- warning: main actor-isolated property 'lastKnownSize' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
15 |         let dynamicConfiguration: SpanGridDynamicColumnSizeStrategy.Configuration?
16 |
/Users/admin/builder/spi-builder-workspace/Sources/SpanGridWidthListener/SpanGridWidthListener.swift:14:9: note: 'lastKnownSize' declared here
12 | protocol SpanGridWidthListenerViewController: AnyObject {
13 |     var logger: Logger { get }
14 |     var lastKnownSize: CGSize? { get set }
   |         `- note: 'lastKnownSize' declared here
15 |     var dynamicConfiguration: SpanGridDynamicColumnSizeStrategy.Configuration? { get }
16 | }
/Users/admin/builder/spi-builder-workspace/Sources/SpanGridWidthListener/SpanGridWidthListener+macOS.swift:15:13: warning: main actor-isolated property 'dynamicConfiguration' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
13 |         let logger = Logger(label: "uk.sherlo.spangrid.width-listener")
14 |         var lastKnownSize: CGSize?
15 |         let dynamicConfiguration: SpanGridDynamicColumnSizeStrategy.Configuration?
   |             `- warning: main actor-isolated property 'dynamicConfiguration' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
16 |
17 |         override func loadView() {
/Users/admin/builder/spi-builder-workspace/Sources/SpanGridWidthListener/SpanGridWidthListener.swift:15:9: note: 'dynamicConfiguration' declared here
13 |     var logger: Logger { get }
14 |     var lastKnownSize: CGSize? { get set }
15 |     var dynamicConfiguration: SpanGridDynamicColumnSizeStrategy.Configuration? { get }
   |         `- note: 'dynamicConfiguration' declared here
16 | }
17 |
[27/27] Compiling SpanGrid SpanGridSpanView.swift
Build complete! (21.76s)
Build complete.
{
  "dependencies" : [
    {
      "identity" : "swift-snapshot-testing",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.9.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/pointfreeco/swift-snapshot-testing.git"
    },
    {
      "identity" : "swift-log",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.4.2",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-log.git"
    }
  ],
  "manifest_display_name" : "SpanGrid",
  "name" : "SpanGrid",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "14.0"
    },
    {
      "name" : "tvos",
      "version" : "14.0"
    },
    {
      "name" : "macos",
      "version" : "11.0"
    },
    {
      "name" : "watchos",
      "version" : "7.0"
    }
  ],
  "products" : [
    {
      "name" : "SpanGrid",
      "targets" : [
        "SpanGrid"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "SpanGridTests",
      "module_type" : "SwiftTarget",
      "name" : "SpanGridTests",
      "path" : "Tests",
      "product_dependencies" : [
        "SnapshotTesting"
      ],
      "sources" : [
        "SpanGridDynamicColumnSizeStrategyTests.swift",
        "SpanGridExampleImageGenerator.swift",
        "SpanGridKeyboardNavigationTests.swift",
        "SpanGridPerformanceTests.swift",
        "SpanGridRowSizeStrategyTests.swift",
        "SpanGridSpanTests.swift",
        "SpanGridWidthListenerTests.swift"
      ],
      "target_dependencies" : [
        "SpanGrid"
      ],
      "type" : "test"
    },
    {
      "c99name" : "SpanGrid",
      "module_type" : "SwiftTarget",
      "name" : "SpanGrid",
      "path" : "Sources",
      "product_dependencies" : [
        "Logging"
      ],
      "product_memberships" : [
        "SpanGrid"
      ],
      "sources" : [
        "Business Logic/SpanGridDynamicColumnSizeStrategy.swift",
        "Business Logic/SpanGridKeyboardNavigation.swift",
        "Business Logic/SpanGridRowHeightStorage.swift",
        "Business Logic/SpanGridSpanIndexCalculator.swift",
        "Models/SpanGridCellMetadata.swift",
        "Models/SpanGridColumnSizeStrategy.swift",
        "Models/SpanGridData.swift",
        "Models/SpanGridKeyboardNavigationOptions.swift",
        "Models/SpanGridLayoutSize.swift",
        "Models/SpanGridRowSizeStrategy.swift",
        "Models/SpanGridTraitCollection.swift",
        "SpanGridWidthListener/SpanGridWidthListener+iOS+tvOS.swift",
        "SpanGridWidthListener/SpanGridWidthListener+macOS.swift",
        "SpanGridWidthListener/SpanGridWidthListener+watchOS.swift",
        "SpanGridWidthListener/SpanGridWidthListener.swift",
        "Views/SpanGrid.swift",
        "Views/SpanGridDetermineRowHeight.swift",
        "Views/SpanGridKeyboardNavigationShortcuts.swift",
        "Views/SpanGridSpanView.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.3"
}
✅  Doc result (pending) reported
========================================
GenerateDocs
========================================
Generating docs at path:  $PWD/.docs/sherlouk/spangrid/main
Repository:               sherlouk/SpanGrid
Swift version used:       6.0
Target:                   SpanGrid
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/swift-docc-render-artifact/.git/
From https://github.com/swiftlang/swift-docc-render-artifact
 * branch            88815688627177b9716a01ca41da19397bd30e47 -> FETCH_HEAD
HEAD is now at 8881568 Update the artifact
Extracting symbol information for 'SpanGrid'...
Finished extracting symbol information for 'SpanGrid'. (5.46s)
Building documentation for 'SpanGrid'...
Finished building documentation for 'SpanGrid' (0.50s)
Generated documentation archive at:
  /Users/admin/builder/spi-builder-workspace/.docs/sherlouk/spangrid/main
Fetching https://github.com/swiftlang/swift-docc-plugin
Updating https://github.com/apple/swift-log.git
Updating https://github.com/pointfreeco/swift-snapshot-testing.git
Updated https://github.com/apple/swift-log.git (0.57s)
Updated https://github.com/pointfreeco/swift-snapshot-testing.git (0.57s)
[1/2038] Fetching swift-docc-plugin
Fetched https://github.com/swiftlang/swift-docc-plugin from cache (1.25s)
Computing version for https://github.com/apple/swift-log.git
Computed https://github.com/apple/swift-log.git at 1.4.2 (0.53s)
Computing version for https://github.com/pointfreeco/swift-snapshot-testing.git
Computed https://github.com/pointfreeco/swift-snapshot-testing.git at 1.9.0 (0.56s)
Computing version for https://github.com/swiftlang/swift-docc-plugin
Computed https://github.com/swiftlang/swift-docc-plugin at 1.4.3 (0.53s)
Fetching https://github.com/swiftlang/swift-docc-symbolkit
[1/3186] Fetching swift-docc-symbolkit
Fetched https://github.com/swiftlang/swift-docc-symbolkit from cache (1.26s)
Computing version for https://github.com/swiftlang/swift-docc-symbolkit
Computed https://github.com/swiftlang/swift-docc-symbolkit at 1.0.0 (0.56s)
Creating working copy for https://github.com/swiftlang/swift-docc-plugin
Working copy of https://github.com/swiftlang/swift-docc-plugin resolved at 1.4.3
Creating working copy for https://github.com/swiftlang/swift-docc-symbolkit
Working copy of https://github.com/swiftlang/swift-docc-symbolkit resolved at 1.0.0
Building for debugging...
[0/8] Write sources
[3/8] Write snippet-extract-tool-entitlement.plist
[4/8] Write swift-version--7754E27361AE5C74.txt
[6/53] Compiling SymbolKit Names.swift
[7/53] Compiling SymbolKit SPI.swift
[8/53] Compiling SymbolKit Snippet.swift
[9/53] Compiling SymbolKit Extension.swift
[10/57] Compiling SymbolKit Identifier.swift
[11/57] Compiling SymbolKit KindIdentifier.swift
[12/57] Compiling SymbolKit Location.swift
[13/57] Compiling SymbolKit Mutability.swift
[14/57] Compiling SymbolKit SourceRange.swift
[15/57] Compiling SymbolKit Metadata.swift
[16/57] Compiling SymbolKit Module.swift
[17/57] Compiling SymbolKit OperatingSystem.swift
[18/57] Compiling SymbolKit Platform.swift
[19/57] Emitting module SymbolKit
[20/57] Compiling SymbolKit Symbol.swift
[21/57] Compiling SymbolKit SymbolKind.swift
[22/57] Compiling SymbolKit SymbolGraph.swift
[23/57] Compiling SymbolKit GraphCollector.swift
[24/57] Compiling SymbolKit Mixin+Equals.swift
[25/57] Compiling SymbolKit Mixin+Hash.swift
[26/57] Compiling SymbolKit Mixin.swift
[27/57] Compiling SymbolKit LineList.swift
[28/57] Compiling SymbolKit Position.swift
[29/57] Compiling SymbolKit DeclarationFragments.swift
[30/57] Compiling SymbolKit Fragment.swift
[31/57] Compiling SymbolKit FragmentKind.swift
[32/57] Compiling SymbolKit FunctionParameter.swift
[33/57] Compiling SymbolKit FunctionSignature.swift
[34/57] Compiling SymbolKit Relationship.swift
[35/57] Compiling SymbolKit RelationshipKind.swift
[36/57] Compiling SymbolKit SourceOrigin.swift
[37/57] Compiling SymbolKit GenericConstraints.swift
[38/57] Compiling SymbolKit Swift.swift
[39/57] Compiling SymbolKit GenericConstraint.swift
[40/57] Compiling SymbolKit GenericParameter.swift
[41/57] Compiling SymbolKit Generics.swift
[42/57] Compiling SymbolKit Namespace.swift
[43/57] Compiling SymbolKit SemanticVersion.swift
[44/57] Compiling SymbolKit AccessControl.swift
[45/57] Compiling SymbolKit Availability.swift
[46/57] Compiling SymbolKit AvailabilityItem.swift
[47/57] Compiling SymbolKit Domain.swift
[48/57] Compiling SymbolKit UnifiedSymbol+Encodable.swift
[49/57] Compiling SymbolKit UnifiedSymbol.swift
[50/57] Compiling SymbolKit UnifiedSymbolGraph+Encodable.swift
[51/57] Compiling SymbolKit UnifiedSymbolGraph.swift
[52/57] Compiling Snippets SnippetParser.swift
[53/57] Compiling Snippets Snippet.swift
[54/57] Emitting module Snippets
[55/61] Compiling snippet_extract URL+Status.swift
[56/61] Compiling snippet_extract SymbolGraph+Snippet.swift
[57/61] Compiling snippet_extract SnippetBuildCommand.swift
[58/61] Emitting module snippet_extract
[58/61] Write Objects.LinkFileList
[59/61] Linking snippet-extract-tool
[60/61] Applying snippet-extract-tool
Build of product 'snippet-extract' complete! (3.37s)
Building for debugging...
[0/1] Write swift-version--7754E27361AE5C74.txt
[2/5] Compiling Logging Logging.swift
[3/5] Compiling Logging LogHandler.swift
[4/5] Compiling Logging Locks.swift
[5/5] Emitting module Logging
[6/24] Compiling SpanGrid SpanGridWidthListener+macOS.swift
[7/24] Compiling SpanGrid SpanGridWidthListener+watchOS.swift
[8/24] Compiling SpanGrid SpanGridTraitCollection.swift
[9/24] Compiling SpanGrid SpanGridWidthListener+iOS+tvOS.swift
[10/25] Compiling SpanGrid SpanGridLayoutSize.swift
[11/25] Compiling SpanGrid SpanGridRowSizeStrategy.swift
[12/25] Compiling SpanGrid SpanGridDetermineRowHeight.swift
[13/25] Compiling SpanGrid SpanGridKeyboardNavigationShortcuts.swift
[14/25] Compiling SpanGrid SpanGridData.swift
[15/25] Compiling SpanGrid SpanGridKeyboardNavigationOptions.swift
[16/25] Compiling SpanGrid SpanGridRowHeightStorage.swift
[17/25] Compiling SpanGrid SpanGridSpanIndexCalculator.swift
[18/25] Compiling SpanGrid SpanGridDynamicColumnSizeStrategy.swift
[19/25] Compiling SpanGrid SpanGridKeyboardNavigation.swift
[20/25] Emitting module SpanGrid
[21/25] Compiling SpanGrid SpanGridWidthListener.swift
[22/25] Compiling SpanGrid SpanGrid.swift
[23/25] Compiling SpanGrid SpanGridCellMetadata.swift
[24/25] Compiling SpanGrid SpanGridColumnSizeStrategy.swift
[25/25] Compiling SpanGrid SpanGridSpanView.swift
Build of target: 'SpanGrid' complete! (1.32s)
    1564
12	/Users/admin/builder/spi-builder-workspace/.docs/sherlouk/spangrid/main
✅  Doc result (uploading) reported
========================================
SyncDocs
========================================
Doc archive source directory: $PWD/.docs/sherlouk/spangrid/main
File count: 1564
Doc size:   12.0MB
Preparing doc bundle ...
Uploading prod-sherlouk-spangrid-main-a4a0390a.zip to s3://spi-docs-inbox/prod-sherlouk-spangrid-main-a4a0390a.zip
Copying... [11%]
Copying... [22%]
Copying... [31%]
Copying... [42%]
Copying... [50%]
Copying... [62%]
Copying... [73%]
Copying... [81%]
Copying... [92%]
Copying... [100%]
Done.