The Swift Package Index logo.Swift Package Index

Build Information

Successful build of simshot, reference main (183e89), with Swift 6.1 for macOS (SPM) on 31 Oct 2026 05:36:10 UTC.

Swift 6 data race errors: 3

Build Command

env DEVELOPER_DIR=/Applications/Xcode-16.3.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: 5.1.4
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/kichiemon/simshot.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/kichiemon/simshot
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at 183e89e feat: verify flags folders with more than 10 screenshots
Cloned https://github.com/kichiemon/simshot.git
Revision (git rev-parse @):
183e89e73c70ef3c4d85766954c0026a4a5c6da7
SUCCESS checkout https://github.com/kichiemon/simshot.git at main
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.1
Building package at path:  $PWD
https://github.com/kichiemon/simshot.git
https://github.com/kichiemon/simshot.git
{
  "dependencies" : [
  ],
  "manifest_display_name" : "simshot",
  "name" : "simshot",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "13.0"
    }
  ],
  "products" : [
    {
      "name" : "simshot",
      "targets" : [
        "simshot"
      ],
      "type" : {
        "executable" : null
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "simshotTests",
      "module_type" : "SwiftTarget",
      "name" : "simshotTests",
      "path" : "Tests/simshotTests",
      "sources" : [
        "ArgParserTests.swift",
        "DoctorTests.swift",
        "InitConfigTests.swift",
        "ProcessRunnerTests.swift",
        "ResizerFailureTests.swift",
        "ResizerTests.swift",
        "ShotSpecTests.swift",
        "SimctlProcessTests.swift",
        "VerifierTests.swift"
      ],
      "target_dependencies" : [
        "SimshotCore"
      ],
      "type" : "test"
    },
    {
      "c99name" : "simshot",
      "module_type" : "SwiftTarget",
      "name" : "simshot",
      "path" : "Sources/simshot",
      "product_memberships" : [
        "simshot"
      ],
      "sources" : [
        "CLI.swift",
        "Doctor.swift",
        "Help.swift",
        "InitRunner.swift",
        "ShootRunner.swift",
        "VerifyRunner.swift"
      ],
      "target_dependencies" : [
        "SimshotCore"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "SimshotCore",
      "module_type" : "SwiftTarget",
      "name" : "SimshotCore",
      "path" : "Sources/SimshotCore",
      "product_memberships" : [
        "simshot"
      ],
      "sources" : [
        "DeviceSpec.swift",
        "Doctor.swift",
        "InitConfig.swift",
        "Options.swift",
        "ProcessRunner.swift",
        "Resizer.swift",
        "ShotSpec.swift",
        "Simctl.swift",
        "Support.swift",
        "Verifier.swift",
        "XcodeBuild.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.9"
}
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.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/7] Write sources
[0/7] Write simshot-entitlement.plist
[3/7] Write swift-version-2F0A5646E1D333AE.txt
[5/18] Compiling SimshotCore ShotSpec.swift
[6/18] Compiling SimshotCore Support.swift
/Users/admin/builder/spi-builder-workspace/Sources/SimshotCore/Support.swift:41:23: warning: static property 'verbose' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
39 | public enum Log {
40 |     /// When `true`, `detail` messages are printed.
41 |     public static var verbose = false
   |                       |- warning: static property 'verbose' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'verbose' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: add '@MainActor' to make static property 'verbose' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
42 |
43 |     /// Print a normal progress message to stdout.
[7/18] Compiling SimshotCore Verifier.swift
[8/19] Compiling SimshotCore Options.swift
[9/19] Compiling SimshotCore ProcessRunner.swift
/Users/admin/builder/spi-builder-workspace/Sources/SimshotCore/ProcessRunner.swift:23:16: warning: static property 'handler' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 21 |     /// The underlying implementation. Overridable so tests can inject fake
 22 |     /// processes without spawning real commands.
 23 |     static var handler: (String, [String], TimeInterval, Bool) throws -> ProcessResult = realRun
    |                |- warning: static property 'handler' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'handler' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: add '@MainActor' to make static property 'handler' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 24 |
 25 |     /// Run an external command with a hard timeout, capturing its output.
/Users/admin/builder/spi-builder-workspace/Sources/SimshotCore/ProcessRunner.swift:73:17: warning: mutation of captured var 'stdoutData' in concurrently-executing code
 71 |                 let data = stdoutPipe.fileHandleForReading.readDataToEndOfFile()
 72 |                 lock.lock()
 73 |                 stdoutData.append(data)
    |                 `- warning: mutation of captured var 'stdoutData' in concurrently-executing code
 74 |                 lock.unlock()
 75 |             }
/Users/admin/builder/spi-builder-workspace/Sources/SimshotCore/ProcessRunner.swift:79:17: warning: mutation of captured var 'stderrData' in concurrently-executing code
 77 |                 let data = stderrPipe.fileHandleForReading.readDataToEndOfFile()
 78 |                 lock.lock()
 79 |                 stderrData.append(data)
    |                 `- warning: mutation of captured var 'stderrData' in concurrently-executing code
 80 |                 lock.unlock()
 81 |             }
[10/19] Compiling SimshotCore Simctl.swift
[11/19] Emitting module SimshotCore
/Users/admin/builder/spi-builder-workspace/Sources/SimshotCore/DeviceSpec.swift:36:23: warning: static property 'appStoreTargets' is not concurrency-safe because non-'Sendable' type '[AppStoreTarget]' may have shared mutable state; this is an error in the Swift 6 language mode
  2 |
  3 | /// A single App Store screenshot size target (device + name + dimensions).
  4 | public struct AppStoreTarget: Equatable {
    |               `- note: consider making struct 'AppStoreTarget' conform to the 'Sendable' protocol
  5 |     public let size: CGSize
  6 |     public let name: String
    :
 34 |     /// Order matters: `matchTarget` breaks an aspect-ratio tie by first match,
 35 |     /// so the preferred sizes (largest iPhone, iPad 13") come first.
 36 |     public static let appStoreTargets: [AppStoreTarget] = [
    |                       |- warning: static property 'appStoreTargets' is not concurrency-safe because non-'Sendable' type '[AppStoreTarget]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'appStoreTargets' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 37 |         // iPhone — Dynamic Island (large display)
 38 |         AppStoreTarget(
/Users/admin/builder/spi-builder-workspace/Sources/SimshotCore/ProcessRunner.swift:23:16: warning: static property 'handler' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 21 |     /// The underlying implementation. Overridable so tests can inject fake
 22 |     /// processes without spawning real commands.
 23 |     static var handler: (String, [String], TimeInterval, Bool) throws -> ProcessResult = realRun
    |                |- warning: static property 'handler' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'handler' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: add '@MainActor' to make static property 'handler' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 24 |
 25 |     /// Run an external command with a hard timeout, capturing its output.
/Users/admin/builder/spi-builder-workspace/Sources/SimshotCore/Support.swift:41:23: warning: static property 'verbose' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
39 | public enum Log {
40 |     /// When `true`, `detail` messages are printed.
41 |     public static var verbose = false
   |                       |- warning: static property 'verbose' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'verbose' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: add '@MainActor' to make static property 'verbose' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
42 |
43 |     /// Print a normal progress message to stdout.
[12/19] Compiling SimshotCore InitConfig.swift
[13/19] Compiling SimshotCore DeviceSpec.swift
/Users/admin/builder/spi-builder-workspace/Sources/SimshotCore/DeviceSpec.swift:36:23: warning: static property 'appStoreTargets' is not concurrency-safe because non-'Sendable' type '[AppStoreTarget]' may have shared mutable state; this is an error in the Swift 6 language mode
  2 |
  3 | /// A single App Store screenshot size target (device + name + dimensions).
  4 | public struct AppStoreTarget: Equatable {
    |               `- note: consider making struct 'AppStoreTarget' conform to the 'Sendable' protocol
  5 |     public let size: CGSize
  6 |     public let name: String
    :
 34 |     /// Order matters: `matchTarget` breaks an aspect-ratio tie by first match,
 35 |     /// so the preferred sizes (largest iPhone, iPad 13") come first.
 36 |     public static let appStoreTargets: [AppStoreTarget] = [
    |                       |- warning: static property 'appStoreTargets' is not concurrency-safe because non-'Sendable' type '[AppStoreTarget]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'appStoreTargets' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 37 |         // iPhone — Dynamic Island (large display)
 38 |         AppStoreTarget(
[14/19] Compiling SimshotCore Doctor.swift
/Users/admin/builder/spi-builder-workspace/Sources/SimshotCore/DeviceSpec.swift:36:23: warning: static property 'appStoreTargets' is not concurrency-safe because non-'Sendable' type '[AppStoreTarget]' may have shared mutable state; this is an error in the Swift 6 language mode
  2 |
  3 | /// A single App Store screenshot size target (device + name + dimensions).
  4 | public struct AppStoreTarget: Equatable {
    |               `- note: consider making struct 'AppStoreTarget' conform to the 'Sendable' protocol
  5 |     public let size: CGSize
  6 |     public let name: String
    :
 34 |     /// Order matters: `matchTarget` breaks an aspect-ratio tie by first match,
 35 |     /// so the preferred sizes (largest iPhone, iPad 13") come first.
 36 |     public static let appStoreTargets: [AppStoreTarget] = [
    |                       |- warning: static property 'appStoreTargets' is not concurrency-safe because non-'Sendable' type '[AppStoreTarget]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'appStoreTargets' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 37 |         // iPhone — Dynamic Island (large display)
 38 |         AppStoreTarget(
[15/19] Compiling SimshotCore Resizer.swift
[16/19] Compiling SimshotCore XcodeBuild.swift
[17/26] Compiling simshot ShootRunner.swift
/Users/admin/builder/spi-builder-workspace/Sources/simshot/ShootRunner.swift:12:13: warning: reference to static property 'verbose' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
 10 |
 11 |     public func run() throws {
 12 |         Log.verbose = options.verbose
    |             `- warning: reference to static property 'verbose' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
 13 |
 14 |         // 1. Build (or use an existing .app).
/Users/admin/builder/spi-builder-workspace/Sources/SimshotCore/Support.swift:41:23: note: static property declared here
39 | public enum Log {
40 |     /// When `true`, `detail` messages are printed.
41 |     public static var verbose = false
   |                       `- note: static property declared here
42 |
43 |     /// Print a normal progress message to stdout.
[18/26] Compiling simshot Help.swift
[19/26] Compiling simshot InitRunner.swift
[20/26] Compiling simshot Doctor.swift
[21/26] Compiling simshot CLI.swift
[22/26] Emitting module simshot
[23/26] Compiling simshot VerifyRunner.swift
[23/26] Write Objects.LinkFileList
[24/26] Linking simshot
[25/26] Applying simshot
Build complete! (6.72s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "simshot",
  "name" : "simshot",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "13.0"
    }
  ],
  "products" : [
    {
      "name" : "simshot",
      "targets" : [
        "simshot"
      ],
      "type" : {
        "executable" : null
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "simshotTests",
      "module_type" : "SwiftTarget",
      "name" : "simshotTests",
      "path" : "Tests/simshotTests",
      "sources" : [
        "ArgParserTests.swift",
        "DoctorTests.swift",
        "InitConfigTests.swift",
        "ProcessRunnerTests.swift",
        "ResizerFailureTests.swift",
        "ResizerTests.swift",
        "ShotSpecTests.swift",
        "SimctlProcessTests.swift",
        "VerifierTests.swift"
      ],
      "target_dependencies" : [
        "SimshotCore"
      ],
      "type" : "test"
    },
    {
      "c99name" : "simshot",
      "module_type" : "SwiftTarget",
      "name" : "simshot",
      "path" : "Sources/simshot",
      "product_memberships" : [
        "simshot"
      ],
      "sources" : [
        "CLI.swift",
        "Doctor.swift",
        "Help.swift",
        "InitRunner.swift",
        "ShootRunner.swift",
        "VerifyRunner.swift"
      ],
      "target_dependencies" : [
        "SimshotCore"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "SimshotCore",
      "module_type" : "SwiftTarget",
      "name" : "SimshotCore",
      "path" : "Sources/SimshotCore",
      "product_memberships" : [
        "simshot"
      ],
      "sources" : [
        "DeviceSpec.swift",
        "Doctor.swift",
        "InitConfig.swift",
        "Options.swift",
        "ProcessRunner.swift",
        "Resizer.swift",
        "ShotSpec.swift",
        "Simctl.swift",
        "Support.swift",
        "Verifier.swift",
        "XcodeBuild.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.9"
}
Done.