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 ShipShape, reference main (2ef7da), with Swift 6.0 for macOS (SPM) on 4 Nov 2024 06:02:14 UTC.

Swift 6 data race errors: 1

Build Command

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

Build Log

========================================
RunAll
========================================
Builder version: 4.56.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/btfranklin/ShipShape.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/btfranklin/ShipShape
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at 2ef7da3 Update build.yml to remove tests
Cloned https://github.com/btfranklin/ShipShape.git
Revision (git rev-parse @):
2ef7da35de5fbbe5fd99f7ef8089d6f16724636d
SUCCESS checkout https://github.com/btfranklin/ShipShape.git at main
Fetching https://github.com/btfranklin/ControlledChaos
Fetching https://github.com/btfranklin/Greebler.git
Fetching https://github.com/btfranklin/Aesthete.git
[1/355] Fetching greebler
[271/480] Fetching greebler, controlledchaos
[396/1357] Fetching greebler, controlledchaos, aesthete
Fetched https://github.com/btfranklin/ControlledChaos from cache (0.91s)
Fetched https://github.com/btfranklin/Greebler.git from cache (0.91s)
Fetched https://github.com/btfranklin/Aesthete.git from cache (0.91s)
Computing version for https://github.com/btfranklin/Greebler.git
Computed https://github.com/btfranklin/Greebler.git at 0.8.0 (0.69s)
Computing version for https://github.com/btfranklin/Aesthete.git
Computed https://github.com/btfranklin/Aesthete.git at 1.6.1 (0.64s)
Computing version for https://github.com/btfranklin/ControlledChaos
Computed https://github.com/btfranklin/ControlledChaos at 1.3.2 (0.67s)
Creating working copy for https://github.com/btfranklin/Aesthete.git
Working copy of https://github.com/btfranklin/Aesthete.git resolved at 1.6.1
Creating working copy for https://github.com/btfranklin/ControlledChaos
Working copy of https://github.com/btfranklin/ControlledChaos resolved at 1.3.2
Creating working copy for https://github.com/btfranklin/Greebler.git
Working copy of https://github.com/btfranklin/Greebler.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": "shipshape",
      "name": "ShipShape",
      "url": "https://github.com/btfranklin/ShipShape.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/ShipShape",
      "dependencies": [
        {
          "identity": "controlledchaos",
          "name": "ControlledChaos",
          "url": "https://github.com/btfranklin/ControlledChaos",
          "version": "1.3.2",
          "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/ControlledChaos",
          "dependencies": [
          ]
        },
        {
          "identity": "aesthete",
          "name": "Aesthete",
          "url": "https://github.com/btfranklin/Aesthete.git",
          "version": "1.6.1",
          "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/Aesthete",
          "dependencies": [
            {
              "identity": "controlledchaos",
              "name": "ControlledChaos",
              "url": "https://github.com/btfranklin/ControlledChaos",
              "version": "1.3.2",
              "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/ControlledChaos",
              "dependencies": [
              ]
            }
          ]
        },
        {
          "identity": "greebler",
          "name": "Greebler",
          "url": "https://github.com/btfranklin/Greebler.git",
          "version": "0.8.0",
          "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/Greebler",
          "dependencies": [
            {
              "identity": "aesthete",
              "name": "Aesthete",
              "url": "https://github.com/btfranklin/Aesthete.git",
              "version": "1.6.1",
              "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/Aesthete",
              "dependencies": [
                {
                  "identity": "controlledchaos",
                  "name": "ControlledChaos",
                  "url": "https://github.com/btfranklin/ControlledChaos",
                  "version": "1.3.2",
                  "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/ControlledChaos",
                  "dependencies": [
                  ]
                }
              ]
            }
          ]
        }
      ]
    }
  ]
}
Fetching https://github.com/btfranklin/ShipShape.git
[1/189] Fetching shipshape
Fetched https://github.com/btfranklin/ShipShape.git from cache (0.67s)
Fetching https://github.com/btfranklin/Greebler.git from cache
Fetching https://github.com/btfranklin/Aesthete.git from cache
Fetching https://github.com/btfranklin/ControlledChaos from cache
Fetched https://github.com/btfranklin/Greebler.git from cache (0.51s)
Fetched https://github.com/btfranklin/ControlledChaos from cache (0.51s)
Fetched https://github.com/btfranklin/Aesthete.git from cache (0.51s)
Computing version for https://github.com/btfranklin/Greebler.git
Computed https://github.com/btfranklin/Greebler.git at 0.8.0 (0.02s)
Computing version for https://github.com/btfranklin/Aesthete.git
Computed https://github.com/btfranklin/Aesthete.git at 1.6.1 (0.02s)
Computing version for https://github.com/btfranklin/ControlledChaos
Computed https://github.com/btfranklin/ControlledChaos at 1.3.2 (0.02s)
Creating working copy for https://github.com/btfranklin/ControlledChaos
Working copy of https://github.com/btfranklin/ControlledChaos resolved at 1.3.2
Creating working copy for https://github.com/btfranklin/Aesthete.git
Working copy of https://github.com/btfranklin/Aesthete.git resolved at 1.6.1
Creating working copy for https://github.com/btfranklin/ShipShape.git
Working copy of https://github.com/btfranklin/ShipShape.git resolved at main (2ef7da3)
Creating working copy for https://github.com/btfranklin/Greebler.git
Working copy of https://github.com/btfranklin/Greebler.git resolved at 0.8.0
warning: '.resolve-product-dependencies': dependency 'shipshape' is not used by any target
Found 3 product dependencies
  - ControlledChaos
  - Aesthete
  - Greebler
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.0
Building package at path:  $PWD
https://github.com/btfranklin/ShipShape.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Building for debugging...
[0/5] Write sources
[4/5] Write swift-version--7754E27361AE5C74.txt
[6/11] Compiling ControlledChaos RandomItemBag.swift
[7/11] Compiling ControlledChaos SeededRandomNumberGenerator.swift
[8/11] Compiling ControlledChaos Bool+randomProbability.swift
[9/11] Emitting module ControlledChaos
[10/11] Compiling ControlledChaos Double+randomGaussian.swift
[11/11] Compiling ControlledChaos ProbabilityGroup.swift
[12/49] Emitting module Aesthete
[13/53] Compiling Aesthete Curve.swift
[14/53] Compiling Aesthete Ellipse.swift
[15/53] Compiling Aesthete EmptyPath.swift
[16/53] Compiling Aesthete Line.swift
[17/53] Compiling Aesthete CGFloat+randomGaussian.swift
[18/53] Compiling Aesthete CGPath+contains.swift
[19/53] Compiling Aesthete CGPoint+distanceTo.swift
[20/53] Compiling Aesthete CGPoint+random.swift
[21/53] Compiling Aesthete CGRect+corners and edges.swift
[22/53] Compiling Aesthete CGRect+intersects.swift
[23/53] Compiling Aesthete CGRect+orientation.swift
[24/53] Compiling Aesthete CGRect+randomlyDivide.swift
[25/53] Compiling Aesthete ColorScheme+makeShades.swift
[26/53] Compiling Aesthete ColorScheme+makeSplitComplementary.swift
[27/53] Compiling Aesthete ColorScheme+makeTriadic.swift
[28/53] Compiling Aesthete ColorScheme.swift
[29/53] Compiling Aesthete Path.swift
[30/53] Compiling Aesthete PathBuilder.swift
[31/53] Compiling Aesthete PathComponent.swift
[32/53] Compiling Aesthete Pathlet+Codable.swift
[33/53] Compiling Aesthete ColorScheme+makeAccentedAnalogous.swift
[34/53] Compiling Aesthete ColorScheme+makeAnalogous.swift
[35/53] Compiling Aesthete ColorScheme+makeComplementary.swift
[36/53] Compiling Aesthete ColorScheme+makeCompound.swift
[37/53] Compiling Aesthete ColorScheme+makeMonochromatic.swift
[38/53] Compiling Aesthete Pathlet.swift
[39/53] Compiling Aesthete QuadCurve.swift
[40/53] Compiling Aesthete Rectangle.swift
[41/53] Compiling Aesthete TransformedBy.swift
[42/53] Compiling Aesthete NSImage+drawKeepingAspectRatio.swift
[43/53] Compiling Aesthete HorizontalBaseTriangle.swift
[44/53] Compiling Aesthete RepeatableForm.swift
[45/53] Compiling Aesthete RepeatableLinearForm.swift
[46/53] Compiling Aesthete SymbolicForm.swift
[47/53] Compiling Aesthete Triangle.swift
[48/53] Compiling Aesthete Arc.swift
[49/53] Compiling Aesthete CompositePath.swift
[50/53] Compiling Aesthete HSBAColor.swift
[51/53] Compiling Aesthete CompositeDrawable.swift
[52/53] Compiling Aesthete Drawable.swift
[53/53] Compiling Aesthete CGColor+lightness.swift
[54/64] Compiling Greebler LightPanelGreebles.swift
[55/64] Compiling Greebler HoseGreebles.swift
[56/65] Compiling Greebler VentGreebles.swift
[57/65] Compiling Greebler EquipmentTrenchGreebles.swift
[58/65] Compiling Greebler PipeGreebles.swift
[59/65] Compiling Greebler PanelGreebles.swift
[60/65] Compiling Greebler CutawaySectionGreebles.swift
[61/65] Compiling Greebler CapitalShipSurfaceGreebles.swift
[62/65] Compiling Greebler CapitalShipWindowsGreebles.swift
[63/65] Compiling Greebler EquipmentGreebles.swift
[64/65] Emitting module Greebler
[65/65] Compiling Greebler WireGreebles.swift
[66/71] Compiling ShipShape SpaceShipPurpose.swift
[67/71] Compiling ShipShape SideViewSpaceShipShapeGreebledRenderer.swift
[68/71] Compiling ShipShape SideViewSpaceShipShape+designVerticalHalf.swift
/Users/admin/builder/spi-builder-workspace/Sources/ShipShape/Side View/SideViewSpaceShipShape.swift:20:16: warning: static property 'connectorProbabilities' is not concurrency-safe because non-'Sendable' type 'ProbabilityGroup<SideViewSpaceShipShape.ConnectorType>' may have shared mutable state; this is an error in the Swift 6 language mode
18 |     }
19 |
20 |     static let connectorProbabilities = ProbabilityGroup<ConnectorType>([
   |                `- warning: static property 'connectorProbabilities' is not concurrency-safe because non-'Sendable' type 'ProbabilityGroup<SideViewSpaceShipShape.ConnectorType>' may have shared mutable state; this is an error in the Swift 6 language mode
21 |         .line           :   50,
22 |         .convexCurve    :   25,
/Users/admin/builder/spi-builder-workspace/.build/checkouts/ControlledChaos/Sources/ControlledChaos/ProbabilityGroup.swift:5:15: note: generic struct 'ProbabilityGroup' does not conform to the 'Sendable' protocol
 3 | import Foundation
 4 |
 5 | public struct ProbabilityGroup<Item: Hashable & Codable>: Hashable {
   |               `- note: generic struct 'ProbabilityGroup' does not conform to the 'Sendable' protocol
 6 |
 7 |     enum CodingKeys: String, CodingKey {
/Users/admin/builder/spi-builder-workspace/Sources/ShipShape/Side View/SideViewSpaceShipShape.swift:4:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'ControlledChaos'
 2 |
 3 | import CoreGraphics
 4 | import ControlledChaos
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'ControlledChaos'
 5 | import Aesthete
 6 |
   :
18 |     }
19 |
20 |     static let connectorProbabilities = ProbabilityGroup<ConnectorType>([
   |                |- note: annotate 'connectorProbabilities' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
21 |         .line           :   50,
22 |         .convexCurve    :   25,
[69/71] Compiling ShipShape SideViewSpaceShipShape+designAugmentations.swift
[70/71] Emitting module ShipShape
/Users/admin/builder/spi-builder-workspace/Sources/ShipShape/Side View/SideViewSpaceShipShape.swift:20:16: warning: static property 'connectorProbabilities' is not concurrency-safe because non-'Sendable' type 'ProbabilityGroup<SideViewSpaceShipShape.ConnectorType>' may have shared mutable state; this is an error in the Swift 6 language mode
18 |     }
19 |
20 |     static let connectorProbabilities = ProbabilityGroup<ConnectorType>([
   |                `- warning: static property 'connectorProbabilities' is not concurrency-safe because non-'Sendable' type 'ProbabilityGroup<SideViewSpaceShipShape.ConnectorType>' may have shared mutable state; this is an error in the Swift 6 language mode
21 |         .line           :   50,
22 |         .convexCurve    :   25,
/Users/admin/builder/spi-builder-workspace/.build/checkouts/ControlledChaos/Sources/ControlledChaos/ProbabilityGroup.swift:5:15: note: generic struct 'ProbabilityGroup' does not conform to the 'Sendable' protocol
 3 | import Foundation
 4 |
 5 | public struct ProbabilityGroup<Item: Hashable & Codable>: Hashable {
   |               `- note: generic struct 'ProbabilityGroup' does not conform to the 'Sendable' protocol
 6 |
 7 |     enum CodingKeys: String, CodingKey {
/Users/admin/builder/spi-builder-workspace/Sources/ShipShape/Side View/SideViewSpaceShipShape.swift:4:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'ControlledChaos'
 2 |
 3 | import CoreGraphics
 4 | import ControlledChaos
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'ControlledChaos'
 5 | import Aesthete
 6 |
   :
18 |     }
19 |
20 |     static let connectorProbabilities = ProbabilityGroup<ConnectorType>([
   |                |- note: annotate 'connectorProbabilities' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
21 |         .line           :   50,
22 |         .convexCurve    :   25,
[71/71] Compiling ShipShape SideViewSpaceShipShape.swift
/Users/admin/builder/spi-builder-workspace/Sources/ShipShape/Side View/SideViewSpaceShipShape.swift:20:16: warning: static property 'connectorProbabilities' is not concurrency-safe because non-'Sendable' type 'ProbabilityGroup<SideViewSpaceShipShape.ConnectorType>' may have shared mutable state; this is an error in the Swift 6 language mode
18 |     }
19 |
20 |     static let connectorProbabilities = ProbabilityGroup<ConnectorType>([
   |                `- warning: static property 'connectorProbabilities' is not concurrency-safe because non-'Sendable' type 'ProbabilityGroup<SideViewSpaceShipShape.ConnectorType>' may have shared mutable state; this is an error in the Swift 6 language mode
21 |         .line           :   50,
22 |         .convexCurve    :   25,
/Users/admin/builder/spi-builder-workspace/.build/checkouts/ControlledChaos/Sources/ControlledChaos/ProbabilityGroup.swift:5:15: note: generic struct 'ProbabilityGroup' does not conform to the 'Sendable' protocol
 3 | import Foundation
 4 |
 5 | public struct ProbabilityGroup<Item: Hashable & Codable>: Hashable {
   |               `- note: generic struct 'ProbabilityGroup' does not conform to the 'Sendable' protocol
 6 |
 7 |     enum CodingKeys: String, CodingKey {
/Users/admin/builder/spi-builder-workspace/Sources/ShipShape/Side View/SideViewSpaceShipShape.swift:4:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'ControlledChaos'
 2 |
 3 | import CoreGraphics
 4 | import ControlledChaos
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'ControlledChaos'
 5 | import Aesthete
 6 |
   :
18 |     }
19 |
20 |     static let connectorProbabilities = ProbabilityGroup<ConnectorType>([
   |                |- note: annotate 'connectorProbabilities' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
21 |         .line           :   50,
22 |         .convexCurve    :   25,
Build complete! (20.00s)
Build complete.
{
  "dependencies" : [
    {
      "identity" : "controlledchaos",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.3.2",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/btfranklin/ControlledChaos"
    },
    {
      "identity" : "aesthete",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.6.1",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/btfranklin/Aesthete.git"
    },
    {
      "identity" : "greebler",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "0.8.0",
            "upper_bound" : "1.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/btfranklin/Greebler.git"
    }
  ],
  "manifest_display_name" : "ShipShape",
  "name" : "ShipShape",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "11.0"
    },
    {
      "name" : "ios",
      "version" : "13.0"
    }
  ],
  "products" : [
    {
      "name" : "ShipShape",
      "targets" : [
        "ShipShape"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "ShipShape",
      "module_type" : "SwiftTarget",
      "name" : "ShipShape",
      "path" : "Sources/ShipShape",
      "product_dependencies" : [
        "ControlledChaos",
        "Aesthete",
        "Greebler"
      ],
      "product_memberships" : [
        "ShipShape"
      ],
      "sources" : [
        "Side View/SideViewSpaceShipShape+designAugmentations.swift",
        "Side View/SideViewSpaceShipShape+designVerticalHalf.swift",
        "Side View/SideViewSpaceShipShape.swift",
        "Side View/SideViewSpaceShipShapeGreebledRenderer.swift",
        "SpaceShipPurpose.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.3"
}
Done.