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 PowerMetricsKit, reference main (3be0fd), with Swift 6.0 for macOS (SPM) on 16 Sep 2024 05:27:58 UTC.

Swift 6 data race errors: 0

Build Command

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

Build Log

========================================
RunAll
========================================
Builder version: 4.53.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/Androp0v/PowerMetricsKit.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/Androp0v/PowerMetricsKit
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at 3be0fd2 Create LICENSE
Cloned https://github.com/Androp0v/PowerMetricsKit.git
Revision (git rev-parse @):
3be0fd2d61785d848a32b6f5ea59aacad7739909
SUCCESS checkout https://github.com/Androp0v/PowerMetricsKit.git at main
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.0
Building package at path:  $PWD
https://github.com/Androp0v/PowerMetricsKit.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.0.0-Release.Candidate.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
[1/1] Compiling plugin Swift-DocC
[2/2] Compiling plugin Swift-DocC Preview
Building for debugging...
[2/7] Write sources
[3/7] Write swift-version-117DEE11B69C53C9.txt
[4/7] Compiling SampleThreads get_backtrace.c
/Users/admin/builder/spi-builder-workspace/Sources/SampleThreads/get_cpu_usage.c:23:45: warning: passing 'int *' to parameter of type 'natural_t *' (aka 'unsigned int *') converts between pointers to integer types with different sign [-Wpointer-sign]
   23 |                                             &num_CPUs,
      |                                             ^~~~~~~~~
/Applications/Xcode-16.0.0-Release.Candidate.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.0.sdk/usr/include/mach/mach_host.h:140:13: note: passing argument to parameter 'out_processor_count' here
  140 |         natural_t *out_processor_count,
      |                    ^
1 warning generated.
[5/7] Compiling SampleThreads get_cpu_usage.c
[6/7] Compiling SampleThreads sample_threads.c
[8/35] Emitting module PowerMetricsKit
/Users/admin/builder/spi-builder-workspace/Sources/PowerMetricsKit/SampleThreads/BacktraceGraph.swift:50:9: warning: non-breaking space (U+00A0) used instead of regular space
 48 |         }
 49 |         nodeLock.lock()
 50 |         defer {
    |         `- warning: non-breaking space (U+00A0) used instead of regular space
 51 |             nodeLock.unlock()
 52 |         }
/Users/admin/builder/spi-builder-workspace/Sources/PowerMetricsKit/SampleThreads/Models/RingBuffer.swift:36:60: warning: non-breaking space (U+00A0) used instead of regular space
 34 |         }
 35 |         guard isFull else {
 36 |             return Array(array.prefix(index)).compactMap { $0 }
    |                                                            `- warning: non-breaking space (U+00A0) used instead of regular space
 37 |         }
 38 |         if index == (length - 1) {
/Users/admin/builder/spi-builder-workspace/Sources/PowerMetricsKit/SampleThreads/Models/RingBuffer.swift:41:77: warning: non-breaking space (U+00A0) used instead of regular space
 39 |             return array.map { $0! }
 40 |         } else {
 41 |             let firstHalf = Array(array.suffix(length - index - 1)).map { $0! }
    |                                                                             `- warning: non-breaking space (U+00A0) used instead of regular space
 42 |             let secondHalf = Array(array.prefix(index + 1)).map { $0! }
 43 |             return firstHalf + secondHalf
/Users/admin/builder/spi-builder-workspace/Sources/PowerMetricsKit/SampleThreads/Models/RingBuffer.swift:42:69: warning: non-breaking space (U+00A0) used instead of regular space
 40 |         } else {
 41 |             let firstHalf = Array(array.suffix(length - index - 1)).map { $0! }
 42 |             let secondHalf = Array(array.prefix(index + 1)).map { $0! }
    |                                                                     `- warning: non-breaking space (U+00A0) used instead of regular space
 43 |             return firstHalf + secondHalf
 44 |         }
[9/38] Compiling PowerMetricsKit Power.swift
/Users/admin/builder/spi-builder-workspace/Sources/PowerMetricsKit/SampleThreads/Models/RingBuffer.swift:36:60: warning: non-breaking space (U+00A0) used instead of regular space
 34 |         }
 35 |         guard isFull else {
 36 |             return Array(array.prefix(index)).compactMap { $0 }
    |                                                            `- warning: non-breaking space (U+00A0) used instead of regular space
 37 |         }
 38 |         if index == (length - 1) {
/Users/admin/builder/spi-builder-workspace/Sources/PowerMetricsKit/SampleThreads/Models/RingBuffer.swift:41:77: warning: non-breaking space (U+00A0) used instead of regular space
 39 |             return array.map { $0! }
 40 |         } else {
 41 |             let firstHalf = Array(array.suffix(length - index - 1)).map { $0! }
    |                                                                             `- warning: non-breaking space (U+00A0) used instead of regular space
 42 |             let secondHalf = Array(array.prefix(index + 1)).map { $0! }
 43 |             return firstHalf + secondHalf
/Users/admin/builder/spi-builder-workspace/Sources/PowerMetricsKit/SampleThreads/Models/RingBuffer.swift:42:69: warning: non-breaking space (U+00A0) used instead of regular space
 40 |         } else {
 41 |             let firstHalf = Array(array.suffix(length - index - 1)).map { $0! }
 42 |             let secondHalf = Array(array.prefix(index + 1)).map { $0! }
    |                                                                     `- warning: non-breaking space (U+00A0) used instead of regular space
 43 |             return firstHalf + secondHalf
 44 |         }
[10/38] Compiling PowerMetricsKit PowerMetricsConfig.swift
/Users/admin/builder/spi-builder-workspace/Sources/PowerMetricsKit/SampleThreads/Models/RingBuffer.swift:36:60: warning: non-breaking space (U+00A0) used instead of regular space
 34 |         }
 35 |         guard isFull else {
 36 |             return Array(array.prefix(index)).compactMap { $0 }
    |                                                            `- warning: non-breaking space (U+00A0) used instead of regular space
 37 |         }
 38 |         if index == (length - 1) {
/Users/admin/builder/spi-builder-workspace/Sources/PowerMetricsKit/SampleThreads/Models/RingBuffer.swift:41:77: warning: non-breaking space (U+00A0) used instead of regular space
 39 |             return array.map { $0! }
 40 |         } else {
 41 |             let firstHalf = Array(array.suffix(length - index - 1)).map { $0! }
    |                                                                             `- warning: non-breaking space (U+00A0) used instead of regular space
 42 |             let secondHalf = Array(array.prefix(index + 1)).map { $0! }
 43 |             return firstHalf + secondHalf
/Users/admin/builder/spi-builder-workspace/Sources/PowerMetricsKit/SampleThreads/Models/RingBuffer.swift:42:69: warning: non-breaking space (U+00A0) used instead of regular space
 40 |         } else {
 41 |             let firstHalf = Array(array.suffix(length - index - 1)).map { $0! }
 42 |             let secondHalf = Array(array.prefix(index + 1)).map { $0! }
    |                                                                     `- warning: non-breaking space (U+00A0) used instead of regular space
 43 |             return firstHalf + secondHalf
 44 |         }
[11/38] Compiling PowerMetricsKit RingBuffer.swift
/Users/admin/builder/spi-builder-workspace/Sources/PowerMetricsKit/SampleThreads/Models/RingBuffer.swift:36:60: warning: non-breaking space (U+00A0) used instead of regular space
 34 |         }
 35 |         guard isFull else {
 36 |             return Array(array.prefix(index)).compactMap { $0 }
    |                                                            `- warning: non-breaking space (U+00A0) used instead of regular space
 37 |         }
 38 |         if index == (length - 1) {
/Users/admin/builder/spi-builder-workspace/Sources/PowerMetricsKit/SampleThreads/Models/RingBuffer.swift:41:77: warning: non-breaking space (U+00A0) used instead of regular space
 39 |             return array.map { $0! }
 40 |         } else {
 41 |             let firstHalf = Array(array.suffix(length - index - 1)).map { $0! }
    |                                                                             `- warning: non-breaking space (U+00A0) used instead of regular space
 42 |             let secondHalf = Array(array.prefix(index + 1)).map { $0! }
 43 |             return firstHalf + secondHalf
/Users/admin/builder/spi-builder-workspace/Sources/PowerMetricsKit/SampleThreads/Models/RingBuffer.swift:42:69: warning: non-breaking space (U+00A0) used instead of regular space
 40 |         } else {
 41 |             let firstHalf = Array(array.suffix(length - index - 1)).map { $0! }
 42 |             let secondHalf = Array(array.prefix(index + 1)).map { $0! }
    |                                                                     `- warning: non-breaking space (U+00A0) used instead of regular space
 43 |             return firstHalf + secondHalf
 44 |         }
[12/38] Compiling PowerMetricsKit CPUUsage.swift
[13/38] Compiling PowerMetricsKit CoreType.swift
[14/38] Compiling PowerMetricsKit CoreUsage.swift
[15/38] Compiling PowerMetricsKit SampleThreadsResult.swift
[16/38] Compiling PowerMetricsKit ThreadSample.swift
[17/38] Compiling PowerMetricsKit SampleThreadsManager.swift
[18/38] Compiling PowerMetricsKit SampledResultsHistory.swift
/Users/admin/builder/spi-builder-workspace/Sources/PowerMetricsKit/SampleThreads/SymbolicateBacktraces.swift:31:46: warning: value 'symbolNamePointer' was defined but never used; consider replacing with boolean test
29 |             let imageName = (String(cString: dlInfo.dli_fname) as NSString).lastPathComponent
30 |             let addressInImage = address - (unsafeBitCast(dlInfo.dli_fbase, to: UInt64.self))
31 |             let symbolName: String? = if let symbolNamePointer = dlInfo.dli_sname {
   |                                              `- warning: value 'symbolNamePointer' was defined but never used; consider replacing with boolean test
32 |                 (String(cString: dlInfo.dli_sname) as NSString).lastPathComponent
33 |             } else {
[19/38] Compiling PowerMetricsKit SymbolicateBacktraces.swift
/Users/admin/builder/spi-builder-workspace/Sources/PowerMetricsKit/SampleThreads/SymbolicateBacktraces.swift:31:46: warning: value 'symbolNamePointer' was defined but never used; consider replacing with boolean test
29 |             let imageName = (String(cString: dlInfo.dli_fname) as NSString).lastPathComponent
30 |             let addressInImage = address - (unsafeBitCast(dlInfo.dli_fbase, to: UInt64.self))
31 |             let symbolName: String? = if let symbolNamePointer = dlInfo.dli_sname {
   |                                              `- warning: value 'symbolNamePointer' was defined but never used; consider replacing with boolean test
32 |                 (String(cString: dlInfo.dli_sname) as NSString).lastPathComponent
33 |             } else {
[20/38] Compiling PowerMetricsKit BacktraceInfoView.swift
/Users/admin/builder/spi-builder-workspace/Sources/PowerMetricsKit/SampleThreads/SymbolicateBacktraces.swift:31:46: warning: value 'symbolNamePointer' was defined but never used; consider replacing with boolean test
29 |             let imageName = (String(cString: dlInfo.dli_fname) as NSString).lastPathComponent
30 |             let addressInImage = address - (unsafeBitCast(dlInfo.dli_fbase, to: UInt64.self))
31 |             let symbolName: String? = if let symbolNamePointer = dlInfo.dli_sname {
   |                                              `- warning: value 'symbolNamePointer' was defined but never used; consider replacing with boolean test
32 |                 (String(cString: dlInfo.dli_sname) as NSString).lastPathComponent
33 |             } else {
[21/38] Compiling PowerMetricsKit BacktraceGraph.swift
/Users/admin/builder/spi-builder-workspace/Sources/PowerMetricsKit/SampleThreads/BacktraceGraph.swift:50:9: warning: non-breaking space (U+00A0) used instead of regular space
 48 |         }
 49 |         nodeLock.lock()
 50 |         defer {
    |         `- warning: non-breaking space (U+00A0) used instead of regular space
 51 |             nodeLock.unlock()
 52 |         }
/Users/admin/builder/spi-builder-workspace/Sources/PowerMetricsKit/SampleThreads/BacktraceGraph.swift:27:16: warning: variable 'insertionPoint' was never mutated; consider changing to 'let' constant
 25 |
 26 |     private func insertInGraph(at insertionPoint: MutableBacktraceInfo?, newInfo: MutableBacktraceInfo) {
 27 |         if var insertionPoint {
    |                `- warning: variable 'insertionPoint' was never mutated; consider changing to 'let' constant
 28 |             // precondition(addressToBacktrace.keys.contains(insertionPoint.address))
 29 |             insertionPoint.children.append(newInfo)
/Users/admin/builder/spi-builder-workspace/Sources/PowerMetricsKit/SampleThreads/BacktraceGraph.swift:53:16: warning: variable 'existingInfo' was never mutated; consider changing to 'let' constant
 51 |             nodeLock.unlock()
 52 |         }
 53 |         if var existingInfo = _nodes.first(where: { $0.address == outermostAddress }) {
    |                `- warning: variable 'existingInfo' was never mutated; consider changing to 'let' constant
 54 |
 55 |             // Add the energy information from the new backtrace to the outermost node
/Users/admin/builder/spi-builder-workspace/Sources/PowerMetricsKit/SampleThreads/BacktraceGraph.swift:72:31: warning: variable 'matchingChild' was never mutated; consider changing to 'let' constant
 70 |                         remainingAddresses: Array(remainingAddresses)
 71 |                     )
 72 |                 } else if var matchingChild = insertionPoint.children.first(where: { $0.address == nextAddress }) {
    |                               `- warning: variable 'matchingChild' was never mutated; consider changing to 'let' constant
 73 |                     // Add the energy information from the new backtrace to the children
 74 |                     matchingChild.energy += newBacktrace.energy ?? .zero
[22/38] Compiling PowerMetricsKit CPUUsageManager.swift
/Users/admin/builder/spi-builder-workspace/Sources/PowerMetricsKit/SampleThreads/BacktraceGraph.swift:50:9: warning: non-breaking space (U+00A0) used instead of regular space
 48 |         }
 49 |         nodeLock.lock()
 50 |         defer {
    |         `- warning: non-breaking space (U+00A0) used instead of regular space
 51 |             nodeLock.unlock()
 52 |         }
/Users/admin/builder/spi-builder-workspace/Sources/PowerMetricsKit/SampleThreads/BacktraceGraph.swift:27:16: warning: variable 'insertionPoint' was never mutated; consider changing to 'let' constant
 25 |
 26 |     private func insertInGraph(at insertionPoint: MutableBacktraceInfo?, newInfo: MutableBacktraceInfo) {
 27 |         if var insertionPoint {
    |                `- warning: variable 'insertionPoint' was never mutated; consider changing to 'let' constant
 28 |             // precondition(addressToBacktrace.keys.contains(insertionPoint.address))
 29 |             insertionPoint.children.append(newInfo)
/Users/admin/builder/spi-builder-workspace/Sources/PowerMetricsKit/SampleThreads/BacktraceGraph.swift:53:16: warning: variable 'existingInfo' was never mutated; consider changing to 'let' constant
 51 |             nodeLock.unlock()
 52 |         }
 53 |         if var existingInfo = _nodes.first(where: { $0.address == outermostAddress }) {
    |                `- warning: variable 'existingInfo' was never mutated; consider changing to 'let' constant
 54 |
 55 |             // Add the energy information from the new backtrace to the outermost node
/Users/admin/builder/spi-builder-workspace/Sources/PowerMetricsKit/SampleThreads/BacktraceGraph.swift:72:31: warning: variable 'matchingChild' was never mutated; consider changing to 'let' constant
 70 |                         remainingAddresses: Array(remainingAddresses)
 71 |                     )
 72 |                 } else if var matchingChild = insertionPoint.children.first(where: { $0.address == nextAddress }) {
    |                               `- warning: variable 'matchingChild' was never mutated; consider changing to 'let' constant
 73 |                     // Add the energy information from the new backtrace to the children
 74 |                     matchingChild.energy += newBacktrace.energy ?? .zero
[23/38] Compiling PowerMetricsKit Backtrace.swift
/Users/admin/builder/spi-builder-workspace/Sources/PowerMetricsKit/SampleThreads/BacktraceGraph.swift:50:9: warning: non-breaking space (U+00A0) used instead of regular space
 48 |         }
 49 |         nodeLock.lock()
 50 |         defer {
    |         `- warning: non-breaking space (U+00A0) used instead of regular space
 51 |             nodeLock.unlock()
 52 |         }
/Users/admin/builder/spi-builder-workspace/Sources/PowerMetricsKit/SampleThreads/BacktraceGraph.swift:27:16: warning: variable 'insertionPoint' was never mutated; consider changing to 'let' constant
 25 |
 26 |     private func insertInGraph(at insertionPoint: MutableBacktraceInfo?, newInfo: MutableBacktraceInfo) {
 27 |         if var insertionPoint {
    |                `- warning: variable 'insertionPoint' was never mutated; consider changing to 'let' constant
 28 |             // precondition(addressToBacktrace.keys.contains(insertionPoint.address))
 29 |             insertionPoint.children.append(newInfo)
/Users/admin/builder/spi-builder-workspace/Sources/PowerMetricsKit/SampleThreads/BacktraceGraph.swift:53:16: warning: variable 'existingInfo' was never mutated; consider changing to 'let' constant
 51 |             nodeLock.unlock()
 52 |         }
 53 |         if var existingInfo = _nodes.first(where: { $0.address == outermostAddress }) {
    |                `- warning: variable 'existingInfo' was never mutated; consider changing to 'let' constant
 54 |
 55 |             // Add the energy information from the new backtrace to the outermost node
/Users/admin/builder/spi-builder-workspace/Sources/PowerMetricsKit/SampleThreads/BacktraceGraph.swift:72:31: warning: variable 'matchingChild' was never mutated; consider changing to 'let' constant
 70 |                         remainingAddresses: Array(remainingAddresses)
 71 |                     )
 72 |                 } else if var matchingChild = insertionPoint.children.first(where: { $0.address == nextAddress }) {
    |                               `- warning: variable 'matchingChild' was never mutated; consider changing to 'let' constant
 73 |                     // Add the energy information from the new backtrace to the children
 74 |                     matchingChild.energy += newBacktrace.energy ?? .zero
[24/38] Compiling PowerMetricsKit ThreadPowerChartModel.swift
[25/38] Compiling PowerMetricsKit ThreadPowerRow.swift
[26/38] Compiling PowerMetricsKit ChartType.swift
[27/38] Compiling PowerMetricsKit CoreUsageChart.swift
/Users/admin/builder/spi-builder-workspace/Sources/PowerMetricsKit/Views/Charts/CoreUsageChart/CoreUsageChart.swift:44:33: warning: non-constant range: argument must be an integer literal
42 |             if let cpuUsage = cpuUsageManager.getCPUUsage() {
43 |                 Grid {
44 |                     ForEach(0..<numberOfRows(cpuUsage: cpuUsage)) { rowIndex in
   |                                 `- warning: non-constant range: argument must be an integer literal
45 |                         GridRow {
46 |                             ForEach(0..<numberOfColumns(row: rowIndex, cpuUsage: cpuUsage)) { columnIndex in
/Users/admin/builder/spi-builder-workspace/Sources/PowerMetricsKit/Views/Charts/CoreUsageChart/CoreUsageChart.swift:46:41: warning: non-constant range: argument must be an integer literal
44 |                     ForEach(0..<numberOfRows(cpuUsage: cpuUsage)) { rowIndex in
45 |                         GridRow {
46 |                             ForEach(0..<numberOfColumns(row: rowIndex, cpuUsage: cpuUsage)) { columnIndex in
   |                                         `- warning: non-constant range: argument must be an integer literal
47 |                                 CoreUsageMeter(
48 |                                     usage: cpuUsage.coreUsages[rowIndex * 4 + columnIndex],
/Users/admin/builder/spi-builder-workspace/Sources/PowerMetricsKit/Views/Charts/CoreUsageChart/CoreUsageMeter.swift:28:29: warning: non-constant range: argument must be an integer literal
26 |         ZStack(alignment: .topLeading) {
27 |             VStack(spacing: spacing) {
28 |                 ForEach(0..<numberOfLevels) { level in
   |                             `- warning: non-constant range: argument must be an integer literal
29 |                     Rectangle()
30 |                         .foregroundStyle(levelColor(for: level))
[28/38] Compiling PowerMetricsKit CoreUsageMeter.swift
/Users/admin/builder/spi-builder-workspace/Sources/PowerMetricsKit/Views/Charts/CoreUsageChart/CoreUsageChart.swift:44:33: warning: non-constant range: argument must be an integer literal
42 |             if let cpuUsage = cpuUsageManager.getCPUUsage() {
43 |                 Grid {
44 |                     ForEach(0..<numberOfRows(cpuUsage: cpuUsage)) { rowIndex in
   |                                 `- warning: non-constant range: argument must be an integer literal
45 |                         GridRow {
46 |                             ForEach(0..<numberOfColumns(row: rowIndex, cpuUsage: cpuUsage)) { columnIndex in
/Users/admin/builder/spi-builder-workspace/Sources/PowerMetricsKit/Views/Charts/CoreUsageChart/CoreUsageChart.swift:46:41: warning: non-constant range: argument must be an integer literal
44 |                     ForEach(0..<numberOfRows(cpuUsage: cpuUsage)) { rowIndex in
45 |                         GridRow {
46 |                             ForEach(0..<numberOfColumns(row: rowIndex, cpuUsage: cpuUsage)) { columnIndex in
   |                                         `- warning: non-constant range: argument must be an integer literal
47 |                                 CoreUsageMeter(
48 |                                     usage: cpuUsage.coreUsages[rowIndex * 4 + columnIndex],
/Users/admin/builder/spi-builder-workspace/Sources/PowerMetricsKit/Views/Charts/CoreUsageChart/CoreUsageMeter.swift:28:29: warning: non-constant range: argument must be an integer literal
26 |         ZStack(alignment: .topLeading) {
27 |             VStack(spacing: spacing) {
28 |                 ForEach(0..<numberOfLevels) { level in
   |                             `- warning: non-constant range: argument must be an integer literal
29 |                     Rectangle()
30 |                         .foregroundStyle(levelColor(for: level))
[29/38] Compiling PowerMetricsKit ThreadPowerChart.swift
/Users/admin/builder/spi-builder-workspace/Sources/PowerMetricsKit/Views/Charts/CoreUsageChart/CoreUsageChart.swift:44:33: warning: non-constant range: argument must be an integer literal
42 |             if let cpuUsage = cpuUsageManager.getCPUUsage() {
43 |                 Grid {
44 |                     ForEach(0..<numberOfRows(cpuUsage: cpuUsage)) { rowIndex in
   |                                 `- warning: non-constant range: argument must be an integer literal
45 |                         GridRow {
46 |                             ForEach(0..<numberOfColumns(row: rowIndex, cpuUsage: cpuUsage)) { columnIndex in
/Users/admin/builder/spi-builder-workspace/Sources/PowerMetricsKit/Views/Charts/CoreUsageChart/CoreUsageChart.swift:46:41: warning: non-constant range: argument must be an integer literal
44 |                     ForEach(0..<numberOfRows(cpuUsage: cpuUsage)) { rowIndex in
45 |                         GridRow {
46 |                             ForEach(0..<numberOfColumns(row: rowIndex, cpuUsage: cpuUsage)) { columnIndex in
   |                                         `- warning: non-constant range: argument must be an integer literal
47 |                                 CoreUsageMeter(
48 |                                     usage: cpuUsage.coreUsages[rowIndex * 4 + columnIndex],
/Users/admin/builder/spi-builder-workspace/Sources/PowerMetricsKit/Views/Charts/CoreUsageChart/CoreUsageMeter.swift:28:29: warning: non-constant range: argument must be an integer literal
26 |         ZStack(alignment: .topLeading) {
27 |             VStack(spacing: spacing) {
28 |                 ForEach(0..<numberOfLevels) { level in
   |                             `- warning: non-constant range: argument must be an integer literal
29 |                     Rectangle()
30 |                         .foregroundStyle(levelColor(for: level))
[30/38] Compiling PowerMetricsKit PowerWidgetOptionsView.swift
[31/38] Compiling PowerMetricsKit PowerWidgetView.swift
[32/38] Compiling PowerMetricsKit PowerWidgetViewModel.swift
[33/38] Compiling PowerMetricsKit BacktraceRowContentView.swift
[34/38] Compiling PowerMetricsKit BacktraceRowView.swift
[35/38] Compiling PowerMetricsKit CallStackView.swift
[36/38] Compiling PowerMetricsKit CallStackViewModel.swift
/Users/admin/builder/spi-builder-workspace/Sources/PowerMetricsKit/Views/CallStack/CallStackViewModel.swift:31:17: warning: initialization of immutable value 'sortedFlatBacktraces' was never used; consider replacing with assignment to '_' or removing it
29 |                     .sorted(by: { $0.energy > $1.energy })
30 |             }
31 |             let sortedFlatBacktraces = await symbolicator.flatBacktraces
   |                 `- warning: initialization of immutable value 'sortedFlatBacktraces' was never used; consider replacing with assignment to '_' or removing it
32 |                 .sorted(by: { $0.energy > $1.energy })
33 |
[37/38] Compiling PowerMetricsKit Color+Extensions.swift
/Users/admin/builder/spi-builder-workspace/Sources/PowerMetricsKit/Views/CallStack/CallStackViewModel.swift:31:17: warning: initialization of immutable value 'sortedFlatBacktraces' was never used; consider replacing with assignment to '_' or removing it
29 |                     .sorted(by: { $0.energy > $1.energy })
30 |             }
31 |             let sortedFlatBacktraces = await symbolicator.flatBacktraces
   |                 `- warning: initialization of immutable value 'sortedFlatBacktraces' was never used; consider replacing with assignment to '_' or removing it
32 |                 .sorted(by: { $0.energy > $1.energy })
33 |
[38/38] Compiling PowerMetricsKit CoreTypePowerChart.swift
/Users/admin/builder/spi-builder-workspace/Sources/PowerMetricsKit/Views/CallStack/CallStackViewModel.swift:31:17: warning: initialization of immutable value 'sortedFlatBacktraces' was never used; consider replacing with assignment to '_' or removing it
29 |                     .sorted(by: { $0.energy > $1.energy })
30 |             }
31 |             let sortedFlatBacktraces = await symbolicator.flatBacktraces
   |                 `- warning: initialization of immutable value 'sortedFlatBacktraces' was never used; consider replacing with assignment to '_' or removing it
32 |                 .sorted(by: { $0.energy > $1.energy })
33 |
Build complete! (45.47s)
Fetching https://github.com/apple/swift-docc-symbolkit
Fetching https://github.com/apple/swift-docc-plugin
[1/2038] Fetching swift-docc-plugin
[226/5113] Fetching swift-docc-plugin, swift-docc-symbolkit
Fetched https://github.com/apple/swift-docc-plugin from cache (1.34s)
Fetched https://github.com/apple/swift-docc-symbolkit from cache (1.34s)
Computing version for https://github.com/apple/swift-docc-plugin
Computed https://github.com/apple/swift-docc-plugin at 1.3.0 (3.06s)
Computing version for https://github.com/apple/swift-docc-symbolkit
Computed https://github.com/apple/swift-docc-symbolkit at 1.0.0 (0.66s)
Creating working copy for https://github.com/apple/swift-docc-plugin
Working copy of https://github.com/apple/swift-docc-plugin resolved at 1.3.0
Creating working copy for https://github.com/apple/swift-docc-symbolkit
Working copy of https://github.com/apple/swift-docc-symbolkit resolved at 1.0.0
Build complete.
{
  "dependencies" : [
    {
      "identity" : "swift-docc-plugin",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.0.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-docc-plugin"
    }
  ],
  "manifest_display_name" : "PowerMetricsKit",
  "name" : "PowerMetricsKit",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "17.0"
    },
    {
      "name" : "macos",
      "version" : "14.0"
    }
  ],
  "products" : [
    {
      "name" : "PowerMetricsKit",
      "targets" : [
        "PowerMetricsKit"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "swift_languages_versions" : [
    "5",
    "6"
  ],
  "targets" : [
    {
      "c99name" : "SampleThreads",
      "module_type" : "ClangTarget",
      "name" : "SampleThreads",
      "path" : "Sources/SampleThreads",
      "product_memberships" : [
        "PowerMetricsKit"
      ],
      "sources" : [
        "get_backtrace.c",
        "get_cpu_usage.c",
        "sample_threads.c"
      ],
      "type" : "library"
    },
    {
      "c99name" : "PowerMetricsKit",
      "module_type" : "SwiftTarget",
      "name" : "PowerMetricsKit",
      "path" : "Sources/PowerMetricsKit",
      "product_memberships" : [
        "PowerMetricsKit"
      ],
      "sources" : [
        "SampleThreads/BacktraceGraph.swift",
        "SampleThreads/CPUUsageManager.swift",
        "SampleThreads/Models/Backtrace.swift",
        "SampleThreads/Models/CPUUsage.swift",
        "SampleThreads/Models/CoreType.swift",
        "SampleThreads/Models/CoreUsage.swift",
        "SampleThreads/Models/Power.swift",
        "SampleThreads/Models/PowerMetricsConfig.swift",
        "SampleThreads/Models/RingBuffer.swift",
        "SampleThreads/Models/SampleThreadsResult.swift",
        "SampleThreads/Models/ThreadSample.swift",
        "SampleThreads/SampleThreadsManager.swift",
        "SampleThreads/SampledResultsHistory.swift",
        "SampleThreads/SymbolicateBacktraces.swift",
        "Views/CallStack/BacktraceInfoView.swift",
        "Views/CallStack/BacktraceRowContentView.swift",
        "Views/CallStack/BacktraceRowView.swift",
        "Views/CallStack/CallStackView.swift",
        "Views/CallStack/CallStackViewModel.swift",
        "Views/Charts/Color+Extensions.swift",
        "Views/Charts/CoreTypePowerChart.swift",
        "Views/Charts/CoreUsageChart/CoreUsageChart.swift",
        "Views/Charts/CoreUsageChart/CoreUsageMeter.swift",
        "Views/Charts/ThreadPowerChart/ThreadPowerChart.swift",
        "Views/Charts/ThreadPowerChart/ThreadPowerChartModel.swift",
        "Views/Charts/ThreadPowerChart/ThreadPowerRow.swift",
        "Views/Models/ChartType.swift",
        "Views/PowerWidgetOptionsView.swift",
        "Views/PowerWidgetView.swift",
        "Views/PowerWidgetViewModel.swift"
      ],
      "target_dependencies" : [
        "SampleThreads"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.9"
}
Done.