The Swift Package Index logo.Swift Package Index

Has it really been five years since Swift Package Index launched? Read our anniversary blog post!

Build Information

Successful build of PowerMetricsKit, reference 1.1.1 (e7ef50), with Swift 6.0 for macOS (SPM) on 2 Dec 2024 17:18:41 UTC.

Swift 6 data race errors: 0

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

Build Log

========================================
RunAll
========================================
Builder version: 4.58.3
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/Androp0v/PowerMetricsKit.git
Reference: 1.1.1
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/Androp0v/PowerMetricsKit
 * tag               1.1.1      -> FETCH_HEAD
HEAD is now at e7ef509 Fix compilation errors for iOS
Cloned https://github.com/Androp0v/PowerMetricsKit.git
Revision (git rev-parse @):
e7ef5098b177b7dc43f4a60cdd6580a41fbd2577
SUCCESS checkout https://github.com/Androp0v/PowerMetricsKit.git at 1.1.1
Fetching https://github.com/apple/swift-docc-plugin
Fetching https://github.com/apple/swift-docc-symbolkit
[1/2044] Fetching swift-docc-plugin
[226/5242] Fetching swift-docc-plugin, swift-docc-symbolkit
Fetched https://github.com/apple/swift-docc-plugin from cache (1.27s)
Fetched https://github.com/apple/swift-docc-symbolkit from cache (1.27s)
Computing version for https://github.com/apple/swift-docc-plugin
Computed https://github.com/apple/swift-docc-plugin at 1.3.0 (3.22s)
Computing version for https://github.com/apple/swift-docc-symbolkit
Computed https://github.com/apple/swift-docc-symbolkit at 1.0.0 (0.61s)
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
========================================
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": "powermetricskit",
      "name": "PowerMetricsKit",
      "url": "https://github.com/Androp0v/PowerMetricsKit.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/PowerMetricsKit",
      "dependencies": [
      ]
    }
  ]
}
Fetching https://github.com/Androp0v/PowerMetricsKit.git
[1/5140] Fetching powermetricskit
Fetched https://github.com/Androp0v/PowerMetricsKit.git from cache (1.65s)
Creating working copy for https://github.com/Androp0v/PowerMetricsKit.git
Working copy of https://github.com/Androp0v/PowerMetricsKit.git resolved at 1.1.1 (e7ef509)
warning: '.resolve-product-dependencies': dependency 'powermetricskit' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.0
Building package at path:  $PWD
https://github.com/Androp0v/PowerMetricsKit.git
{
  "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"
}
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
[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--7754E27361AE5C74.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.1.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.1.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 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
[13/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
[14/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
[15/38] Compiling PowerMetricsKit CPUUsage.swift
[16/38] Compiling PowerMetricsKit CoreType.swift
[17/38] Compiling PowerMetricsKit CoreUsage.swift
[18/38] Compiling PowerMetricsKit SampleThreadsResult.swift
[19/38] Compiling PowerMetricsKit ThreadSample.swift
[20/38] Compiling PowerMetricsKit SampleThreadsManager.swift
[21/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 {
[22/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 {
[23/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 {
[24/38] Compiling PowerMetricsKit ThreadPowerChartModel.swift
[25/38] Compiling PowerMetricsKit ThreadPowerRow.swift
[26/38] Compiling PowerMetricsKit ChartType.swift
[27/38] Compiling PowerMetricsKit BacktraceRowContentView.swift
[28/38] Compiling PowerMetricsKit BacktraceRowView.swift
[29/38] Compiling PowerMetricsKit CallStackView.swift
[30/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 |
[31/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 |
[32/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 |
[33/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))
[34/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))
[35/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))
[36/38] Compiling PowerMetricsKit PowerWidgetOptionsView.swift
[37/38] Compiling PowerMetricsKit PowerWidgetView.swift
[38/38] Compiling PowerMetricsKit PowerWidgetViewModel.swift
Build complete! (33.49s)
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.