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 ignorio, reference 0.6.0 (255266), with Swift 6.1 for macOS (SPM) on 24 Apr 2025 09:19:03 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: 4.61.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/josefdolezal/ignorio.git
Reference: 0.6.0
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/josefdolezal/ignorio
 * tag               0.6.0      -> FETCH_HEAD
HEAD is now at 255266a Update for swift 5
Cloned https://github.com/josefdolezal/ignorio.git
Revision (git rev-parse @):
255266ab0b86f431396cc815f16021d138b2cd55
SUCCESS checkout https://github.com/josefdolezal/ignorio.git at 0.6.0
Fetching https://github.com/kylef/Commander.git
Fetching https://github.com/kylef/Spectre.git
[1/1021] Fetching spectre
[165/2609] Fetching spectre, commander
Fetched https://github.com/kylef/Spectre.git from cache (0.92s)
Fetched https://github.com/kylef/Commander.git from cache (0.93s)
Computing version for https://github.com/kylef/Commander.git
Computed https://github.com/kylef/Commander.git at 0.8.0 (1.52s)
Computing version for https://github.com/kylef/Spectre.git
Computed https://github.com/kylef/Spectre.git at 0.8.0 (0.57s)
Creating working copy for https://github.com/kylef/Commander.git
Working copy of https://github.com/kylef/Commander.git resolved at 0.8.0
Creating working copy for https://github.com/kylef/Spectre.git
Working copy of https://github.com/kylef/Spectre.git resolved at 0.8.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": "ignorio",
      "name": "ignorio",
      "url": "https://github.com/josefdolezal/ignorio.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/ignorio",
      "dependencies": [
        {
          "identity": "commander",
          "name": "Commander",
          "url": "https://github.com/kylef/Commander.git",
          "version": "0.8.0",
          "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/Commander",
          "dependencies": [
            {
              "identity": "spectre",
              "name": "Spectre",
              "url": "https://github.com/kylef/Spectre.git",
              "version": "0.10.1",
              "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/Spectre",
              "dependencies": [
              ]
            }
          ]
        }
      ]
    }
  ]
}
Fetching https://github.com/josefdolezal/ignorio.git
[6/252] Fetching ignorio
Fetched https://github.com/josefdolezal/ignorio.git from cache (0.95s)
Fetching https://github.com/kylef/Commander.git from cache
Fetched https://github.com/kylef/Commander.git from cache (0.47s)
Computing version for https://github.com/kylef/Commander.git
Computed https://github.com/kylef/Commander.git at 0.8.0 (0.53s)
Fetching https://github.com/kylef/Spectre.git from cache
Fetched https://github.com/kylef/Spectre.git from cache (0.47s)
Computing version for https://github.com/kylef/Spectre.git
Computed https://github.com/kylef/Spectre.git at 0.10.1 (1.14s)
Creating working copy for https://github.com/kylef/Commander.git
Working copy of https://github.com/kylef/Commander.git resolved at 0.8.0
Creating working copy for https://github.com/kylef/Spectre.git
Working copy of https://github.com/kylef/Spectre.git resolved at 0.10.1
Creating working copy for https://github.com/josefdolezal/ignorio.git
Working copy of https://github.com/josefdolezal/ignorio.git resolved at 0.6.0 (255266a)
Found 1 product dependencies
  - Commander
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.1
Building package at path:  $PWD
https://github.com/josefdolezal/ignorio.git
https://github.com/josefdolezal/ignorio.git
{
  "dependencies" : [
    {
      "identity" : "commander",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "0.8.0",
            "upper_bound" : "0.9.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/kylef/Commander.git"
    }
  ],
  "manifest_display_name" : "ignorio",
  "name" : "ignorio",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "ignorio",
      "targets" : [
        "ignorio"
      ],
      "type" : {
        "executable" : null
      }
    },
    {
      "name" : "IgnorioKit",
      "targets" : [
        "IgnorioKit"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "ignorio",
      "module_type" : "SwiftTarget",
      "name" : "ignorio",
      "path" : "Sources/ignorio",
      "product_dependencies" : [
        "Commander"
      ],
      "product_memberships" : [
        "ignorio"
      ],
      "sources" : [
        "Commands/CreateCommand.swift",
        "Commands/ListCommand.swift",
        "Commands/SearchCommand.swift",
        "IgnorioError.swift",
        "Validators/TypesValidator.swift",
        "main.swift"
      ],
      "target_dependencies" : [
        "IgnorioKit"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "IgnorioKitTests",
      "module_type" : "SwiftTarget",
      "name" : "IgnorioKitTests",
      "path" : "Tests/IgnorioKitTests",
      "sources" : [
        "APIActionsTests.swift",
        "ContentValidations/UnknownTypesValidatorTests.swift"
      ],
      "target_dependencies" : [
        "IgnorioKit"
      ],
      "type" : "test"
    },
    {
      "c99name" : "IgnorioKit",
      "module_type" : "SwiftTarget",
      "name" : "IgnorioKit",
      "path" : "Sources/IgnorioKit",
      "product_memberships" : [
        "ignorio",
        "IgnorioKit"
      ],
      "sources" : [
        "APIActions.swift",
        "ContentValidations/UnknownTypesValidator.swift",
        "GitignoreioAPI.swift",
        "GitignoreioProvider.swift",
        "IgnorioKitError.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "4.0"
}
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/8] Write sources
[1/8] Write ignorio-entitlement.plist
[2/8] Write sources
[4/8] Write swift-version-2F0A5646E1D333AE.txt
[6/24] Compiling Commander Commands.swift
[7/24] Compiling Commander Group.swift
[8/24] Compiling Commander Error.swift
[9/24] Compiling Commander CommandType.swift
[10/24] Compiling Commander Command.swift
[11/24] Compiling Commander ArgumentDescription.swift
[12/24] Compiling Commander ArgumentConvertible.swift
[13/24] Emitting module Commander
[14/24] Compiling Commander CommandRunner.swift
[15/24] Compiling Commander ArgumentParser.swift
[16/24] Compiling IgnorioKit GitignoreioProvider.swift
/Users/admin/builder/spi-builder-workspace/Sources/IgnorioKit/GitignoreioProvider.swift:51:17: warning: mutation of captured var 'result' in concurrently-executing code
49 |             // Create failure result with underlying error if occured
50 |             if let error = error {
51 |                 result = .failure(IgnorioKitError.networkError(underlying: error))
   |                 `- warning: mutation of captured var 'result' in concurrently-executing code
52 |
53 |                 semaphore.signal()
/Users/admin/builder/spi-builder-workspace/Sources/IgnorioKit/GitignoreioProvider.swift:59:17: warning: mutation of captured var 'result' in concurrently-executing code
57 |             // Unwrap response text or create failure result
58 |             guard let data = data, let responseText = String(data: data, encoding: .utf8) else {
59 |                 result = .failure(IgnorioKitError.unexpectedResponseFormat)
   |                 `- warning: mutation of captured var 'result' in concurrently-executing code
60 |
61 |                 semaphore.signal()
/Users/admin/builder/spi-builder-workspace/Sources/IgnorioKit/GitignoreioProvider.swift:66:13: warning: mutation of captured var 'result' in concurrently-executing code
64 |
65 |             // Create success result
66 |             result = .success(responseText)
   |             `- warning: mutation of captured var 'result' in concurrently-executing code
67 |             semaphore.signal()
68 |         }
[17/24] Compiling IgnorioKit IgnorioKitError.swift
[18/24] Compiling IgnorioKit GitignoreioAPI.swift
[19/24] Emitting module IgnorioKit
[20/24] Compiling IgnorioKit APIActions.swift
[21/24] Compiling IgnorioKit UnknownTypesValidator.swift
[22/31] Compiling ignorio main.swift
[23/31] Compiling ignorio TypesValidator.swift
[24/31] Compiling ignorio SearchCommand.swift
/Users/admin/builder/spi-builder-workspace/Sources/ignorio/Commands/SearchCommand.swift:12:5: warning: let 'searchCommand' is not concurrency-safe because non-'Sendable' type 'any CommandType' may have shared mutable state; this is an error in the Swift 6 language mode
10 | import IgnorioKit
11 |
12 | let searchCommand = command(
   |     `- warning: let 'searchCommand' is not concurrency-safe because non-'Sendable' type 'any CommandType' may have shared mutable state; this is an error in the Swift 6 language mode
13 |     Argument<String>("TYPE", description: "Search for TYPE in available types at gitignore.io")
14 | ) { type in
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Commander/Sources/Commander/CommandType.swift:2:17: note: protocol 'CommandType' does not conform to the 'Sendable' protocol
 1 | /// Represents a command that can be run, given an argument parser
 2 | public protocol CommandType {
   |                 `- note: protocol 'CommandType' does not conform to the 'Sendable' protocol
 3 |   func run(_ parser:ArgumentParser) throws
 4 | }
/Users/admin/builder/spi-builder-workspace/Sources/ignorio/Commands/SearchCommand.swift:9:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Commander'
 7 | //
 8 |
 9 | import Commander
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Commander'
10 | import IgnorioKit
11 |
12 | let searchCommand = command(
   |     |- note: add '@MainActor' to make let 'searchCommand' part of global actor 'MainActor'
   |     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
13 |     Argument<String>("TYPE", description: "Search for TYPE in available types at gitignore.io")
14 | ) { type in
[25/31] Compiling ignorio IgnorioError.swift
[26/31] Compiling ignorio CreateCommand.swift
/Users/admin/builder/spi-builder-workspace/Sources/ignorio/Commands/CreateCommand.swift:14:5: warning: let 'createCommand' is not concurrency-safe because non-'Sendable' type 'any CommandType' may have shared mutable state; this is an error in the Swift 6 language mode
12 |
13 | /// Command for .gitignore file fetch
14 | let createCommand = command(
   |     `- warning: let 'createCommand' is not concurrency-safe because non-'Sendable' type 'any CommandType' may have shared mutable state; this is an error in the Swift 6 language mode
15 |     VariadicArgument<String>("TYPES", description: "Collection of types separated with space",
16 |                              validator: typesValidator)
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Commander/Sources/Commander/CommandType.swift:2:17: note: protocol 'CommandType' does not conform to the 'Sendable' protocol
 1 | /// Represents a command that can be run, given an argument parser
 2 | public protocol CommandType {
   |                 `- note: protocol 'CommandType' does not conform to the 'Sendable' protocol
 3 |   func run(_ parser:ArgumentParser) throws
 4 | }
/Users/admin/builder/spi-builder-workspace/Sources/ignorio/Commands/CreateCommand.swift:10:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Commander'
 8 |
 9 | import Foundation
10 | import Commander
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Commander'
11 | import IgnorioKit
12 |
13 | /// Command for .gitignore file fetch
14 | let createCommand = command(
   |     |- note: add '@MainActor' to make let 'createCommand' part of global actor 'MainActor'
   |     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
15 |     VariadicArgument<String>("TYPES", description: "Collection of types separated with space",
16 |                              validator: typesValidator)
[27/31] Compiling ignorio ListCommand.swift
/Users/admin/builder/spi-builder-workspace/Sources/ignorio/Commands/ListCommand.swift:13:5: warning: let 'listCommnad' is not concurrency-safe because non-'Sendable' type 'any CommandType' may have shared mutable state; this is an error in the Swift 6 language mode
11 |
12 | /// Commands which lists supported types for fetch command
13 | let listCommnad = command {
   |     `- warning: let 'listCommnad' is not concurrency-safe because non-'Sendable' type 'any CommandType' may have shared mutable state; this is an error in the Swift 6 language mode
14 |     let alphabeticList = try listSupportedTypes()
15 |     let list = alphabeticList
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Commander/Sources/Commander/CommandType.swift:2:17: note: protocol 'CommandType' does not conform to the 'Sendable' protocol
 1 | /// Represents a command that can be run, given an argument parser
 2 | public protocol CommandType {
   |                 `- note: protocol 'CommandType' does not conform to the 'Sendable' protocol
 3 |   func run(_ parser:ArgumentParser) throws
 4 | }
/Users/admin/builder/spi-builder-workspace/Sources/ignorio/Commands/ListCommand.swift:9:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Commander'
 7 | //
 8 |
 9 | import Commander
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Commander'
10 | import IgnorioKit
11 |
12 | /// Commands which lists supported types for fetch command
13 | let listCommnad = command {
   |     |- note: add '@MainActor' to make let 'listCommnad' part of global actor 'MainActor'
   |     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
14 |     let alphabeticList = try listSupportedTypes()
15 |     let list = alphabeticList
[28/31] Emitting module ignorio
/Users/admin/builder/spi-builder-workspace/Sources/ignorio/Commands/CreateCommand.swift:14:5: warning: let 'createCommand' is not concurrency-safe because non-'Sendable' type 'any CommandType' may have shared mutable state; this is an error in the Swift 6 language mode
12 |
13 | /// Command for .gitignore file fetch
14 | let createCommand = command(
   |     `- warning: let 'createCommand' is not concurrency-safe because non-'Sendable' type 'any CommandType' may have shared mutable state; this is an error in the Swift 6 language mode
15 |     VariadicArgument<String>("TYPES", description: "Collection of types separated with space",
16 |                              validator: typesValidator)
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Commander/Sources/Commander/CommandType.swift:2:17: note: protocol 'CommandType' does not conform to the 'Sendable' protocol
 1 | /// Represents a command that can be run, given an argument parser
 2 | public protocol CommandType {
   |                 `- note: protocol 'CommandType' does not conform to the 'Sendable' protocol
 3 |   func run(_ parser:ArgumentParser) throws
 4 | }
/Users/admin/builder/spi-builder-workspace/Sources/ignorio/Commands/CreateCommand.swift:10:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Commander'
 8 |
 9 | import Foundation
10 | import Commander
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Commander'
11 | import IgnorioKit
12 |
13 | /// Command for .gitignore file fetch
14 | let createCommand = command(
   |     |- note: add '@MainActor' to make let 'createCommand' part of global actor 'MainActor'
   |     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
15 |     VariadicArgument<String>("TYPES", description: "Collection of types separated with space",
16 |                              validator: typesValidator)
/Users/admin/builder/spi-builder-workspace/Sources/ignorio/Commands/ListCommand.swift:13:5: warning: let 'listCommnad' is not concurrency-safe because non-'Sendable' type 'any CommandType' may have shared mutable state; this is an error in the Swift 6 language mode
11 |
12 | /// Commands which lists supported types for fetch command
13 | let listCommnad = command {
   |     `- warning: let 'listCommnad' is not concurrency-safe because non-'Sendable' type 'any CommandType' may have shared mutable state; this is an error in the Swift 6 language mode
14 |     let alphabeticList = try listSupportedTypes()
15 |     let list = alphabeticList
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Commander/Sources/Commander/CommandType.swift:2:17: note: protocol 'CommandType' does not conform to the 'Sendable' protocol
 1 | /// Represents a command that can be run, given an argument parser
 2 | public protocol CommandType {
   |                 `- note: protocol 'CommandType' does not conform to the 'Sendable' protocol
 3 |   func run(_ parser:ArgumentParser) throws
 4 | }
/Users/admin/builder/spi-builder-workspace/Sources/ignorio/Commands/ListCommand.swift:9:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Commander'
 7 | //
 8 |
 9 | import Commander
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Commander'
10 | import IgnorioKit
11 |
12 | /// Commands which lists supported types for fetch command
13 | let listCommnad = command {
   |     |- note: add '@MainActor' to make let 'listCommnad' part of global actor 'MainActor'
   |     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
14 |     let alphabeticList = try listSupportedTypes()
15 |     let list = alphabeticList
/Users/admin/builder/spi-builder-workspace/Sources/ignorio/Commands/SearchCommand.swift:12:5: warning: let 'searchCommand' is not concurrency-safe because non-'Sendable' type 'any CommandType' may have shared mutable state; this is an error in the Swift 6 language mode
10 | import IgnorioKit
11 |
12 | let searchCommand = command(
   |     `- warning: let 'searchCommand' is not concurrency-safe because non-'Sendable' type 'any CommandType' may have shared mutable state; this is an error in the Swift 6 language mode
13 |     Argument<String>("TYPE", description: "Search for TYPE in available types at gitignore.io")
14 | ) { type in
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Commander/Sources/Commander/CommandType.swift:2:17: note: protocol 'CommandType' does not conform to the 'Sendable' protocol
 1 | /// Represents a command that can be run, given an argument parser
 2 | public protocol CommandType {
   |                 `- note: protocol 'CommandType' does not conform to the 'Sendable' protocol
 3 |   func run(_ parser:ArgumentParser) throws
 4 | }
/Users/admin/builder/spi-builder-workspace/Sources/ignorio/Commands/SearchCommand.swift:9:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Commander'
 7 | //
 8 |
 9 | import Commander
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Commander'
10 | import IgnorioKit
11 |
12 | let searchCommand = command(
   |     |- note: add '@MainActor' to make let 'searchCommand' part of global actor 'MainActor'
   |     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
13 |     Argument<String>("TYPE", description: "Search for TYPE in available types at gitignore.io")
14 | ) { type in
[28/31] Write Objects.LinkFileList
[29/31] Linking ignorio
[30/31] Applying ignorio
Build complete! (6.60s)
Build complete.
{
  "dependencies" : [
    {
      "identity" : "commander",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "0.8.0",
            "upper_bound" : "0.9.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/kylef/Commander.git"
    }
  ],
  "manifest_display_name" : "ignorio",
  "name" : "ignorio",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "ignorio",
      "targets" : [
        "ignorio"
      ],
      "type" : {
        "executable" : null
      }
    },
    {
      "name" : "IgnorioKit",
      "targets" : [
        "IgnorioKit"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "ignorio",
      "module_type" : "SwiftTarget",
      "name" : "ignorio",
      "path" : "Sources/ignorio",
      "product_dependencies" : [
        "Commander"
      ],
      "product_memberships" : [
        "ignorio"
      ],
      "sources" : [
        "Commands/CreateCommand.swift",
        "Commands/ListCommand.swift",
        "Commands/SearchCommand.swift",
        "IgnorioError.swift",
        "Validators/TypesValidator.swift",
        "main.swift"
      ],
      "target_dependencies" : [
        "IgnorioKit"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "IgnorioKitTests",
      "module_type" : "SwiftTarget",
      "name" : "IgnorioKitTests",
      "path" : "Tests/IgnorioKitTests",
      "sources" : [
        "APIActionsTests.swift",
        "ContentValidations/UnknownTypesValidatorTests.swift"
      ],
      "target_dependencies" : [
        "IgnorioKit"
      ],
      "type" : "test"
    },
    {
      "c99name" : "IgnorioKit",
      "module_type" : "SwiftTarget",
      "name" : "IgnorioKit",
      "path" : "Sources/IgnorioKit",
      "product_memberships" : [
        "ignorio",
        "IgnorioKit"
      ],
      "sources" : [
        "APIActions.swift",
        "ContentValidations/UnknownTypesValidator.swift",
        "GitignoreioAPI.swift",
        "GitignoreioProvider.swift",
        "IgnorioKitError.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "4.0"
}
Done.