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 Life, reference 1.0.1 (230acd), with Swift 6.0 for Linux on 28 Nov 2024 11:11:12 UTC.

Swift 6 data race errors: 0

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4606859-0":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu -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 2>&1

Build Log

========================================
RunAll
========================================
Builder version: 4.58.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/zntfdr/Life.git
Reference: 1.0.1
Initialized empty Git repository in /host/spi-builder-workspace/.git/
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: 	git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: 	git branch -m <name>
From https://github.com/zntfdr/Life
 * tag               1.0.1      -> FETCH_HEAD
HEAD is now at 230acd2 Merge pull request #3 from zntfdr/swift-5.5-migration
Cloned https://github.com/zntfdr/Life.git
Revision (git rev-parse @):
230acd22b5441ed10eee376dd6d4da4b9c9978ed
SUCCESS checkout https://github.com/zntfdr/Life.git at 1.0.1
========================================
Build
========================================
Selected platform:         linux
Swift version:             6.0
Building package at path:  $PWD
https://github.com/zntfdr/Life.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-0":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu -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 2>&1
basic-6.0-latest: Pulling from finestructure/spi-images
Digest: sha256:47d26c99ca4f1ac0a332c85fd5b13ff4390e72115219984a57a68fe9d1063a05
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.0-latest
Fetching https://github.com/apple/swift-argument-parser.git
Fetching https://github.com/apple/swift-tools-support-core.git
[1/6547] Fetching swift-tools-support-core
[6548/18942] Fetching swift-tools-support-core, swift-argument-parser
Fetched https://github.com/apple/swift-tools-support-core.git from cache (0.72s)
Fetched https://github.com/apple/swift-argument-parser.git from cache (0.73s)
Computing version for https://github.com/apple/swift-argument-parser.git
Computed https://github.com/apple/swift-argument-parser.git at 1.0.3 (0.47s)
Computing version for https://github.com/apple/swift-tools-support-core.git
Computed https://github.com/apple/swift-tools-support-core.git at 0.2.7 (0.55s)
Fetching https://github.com/apple/swift-system.git
[1/3919] Fetching swift-system
Fetched https://github.com/apple/swift-system.git from cache (0.34s)
Computing version for https://github.com/apple/swift-system.git
Computed https://github.com/apple/swift-system.git at 1.1.1 (0.47s)
Creating working copy for https://github.com/apple/swift-system.git
Working copy of https://github.com/apple/swift-system.git resolved at 1.1.1
Creating working copy for https://github.com/apple/swift-tools-support-core.git
Working copy of https://github.com/apple/swift-tools-support-core.git resolved at 0.2.7
Creating working copy for https://github.com/apple/swift-argument-parser.git
Working copy of https://github.com/apple/swift-argument-parser.git resolved at 1.0.3
Building for debugging...
[0/22] Write sources
[8/22] Compiling TSCclibc process.c
[9/22] Compiling CSystem shims.c
[10/22] Compiling TSCclibc libc.c
[11/22] Write swift-version-24593BA9C3E375BF.txt
[13/51] Emitting module SystemPackage
[14/53] Compiling SystemPackage Util.swift
[15/53] Compiling SystemPackage UtilConsumers.swift
[16/53] Compiling SystemPackage FilePathSyntax.swift
[17/53] Compiling SystemPackage FilePathWindows.swift
[18/53] Compiling SystemPackage FilePermissions.swift
[19/53] Emitting module ArgumentParserToolInfo
[20/53] Compiling ArgumentParserToolInfo ToolInfo.swift
[21/54] Compiling Life World.swift
[22/54] Emitting module Life
[23/54] Compiling Life Cell.swift
[24/54] Compiling Life Mode.swift
[25/55] Compiling SystemPackage PlatformString.swift
[26/55] Compiling SystemPackage SystemString.swift
[29/55] Compiling SystemPackage Errno.swift
[30/55] Compiling SystemPackage FileDescriptor.swift
[31/55] Compiling SystemPackage FileHelpers.swift
[31/55] Wrapping AST for ArgumentParserToolInfo for debugging
[33/55] Compiling SystemPackage FileOperations.swift
[34/55] Compiling SystemPackage FilePath.swift
[35/55] Compiling SystemPackage FilePathComponentView.swift
[36/55] Compiling SystemPackage FilePathComponents.swift
[37/55] Compiling SystemPackage FilePathParsing.swift
[38/55] Compiling SystemPackage FilePathString.swift
[38/55] Wrapping AST for Life for debugging
[40/89] Compiling ArgumentParser ParsableArguments.swift
[41/89] Compiling ArgumentParser ParsableArgumentsValidation.swift
[42/89] Compiling ArgumentParser ParsableCommand.swift
[43/89] Emitting module TSCLibc
[44/89] Compiling TSCLibc libc.swift
[45/90] Compiling ArgumentParser Errors.swift
[46/90] Compiling ArgumentParser Flag.swift
[47/90] Compiling ArgumentParser NameSpecification.swift
[49/91] Wrapping AST for TSCLibc for debugging
[50/91] Wrapping AST for SystemPackage for debugging
[52/131] Emitting module ArgumentParser
[53/135] Emitting module TSCBasic
[54/140] Compiling TSCBasic Await.swift
[55/140] Compiling TSCBasic Base64URL.swift
[56/140] Compiling TSCBasic ByteString.swift
[57/140] Compiling TSCBasic CStringArray.swift
[58/140] Compiling TSCBasic CacheableSequence.swift
[59/140] Compiling TSCBasic Closable.swift
[60/140] Compiling TSCBasic HashAlgorithms.swift
[61/140] Compiling TSCBasic JSON.swift
[62/140] Compiling TSCBasic JSONMapper.swift
[63/140] Compiling TSCBasic KeyedPair.swift
[64/140] Compiling ArgumentParser CollectionExtensions.swift
[65/140] Compiling ArgumentParser SequenceExtensions.swift
[66/140] Compiling ArgumentParser StringExtensions.swift
[67/140] Compiling ArgumentParser Tree.swift
[68/140] Compiling TSCBasic TerminalController.swift
[69/140] Compiling TSCBasic Thread.swift
[70/140] Compiling TSCBasic Tuple.swift
[71/140] Compiling TSCBasic WritableByteStream.swift
[72/140] Compiling TSCBasic misc.swift
[83/140] Compiling TSCBasic LazyCache.swift
[84/140] Compiling TSCBasic Lock.swift
[88/140] Compiling TSCBasic SynchronizedQueue.swift
[89/140] Compiling TSCBasic TemporaryFile.swift
[90/140] Compiling TSCBasic CodableResult.swift
[91/140] Compiling TSCBasic CollectionAlgorithms.swift
[92/140] Compiling TSCBasic CollectionExtensions.swift
[93/140] Compiling TSCBasic Condition.swift
[94/140] Compiling TSCBasic DeltaAlgorithm.swift
[96/140] Compiling TSCBasic PathShims.swift
[97/140] Compiling TSCBasic Process.swift
[98/140] Compiling TSCBasic ProcessEnv.swift
[99/140] Compiling TSCBasic ProcessSet.swift
[100/140] Compiling TSCBasic RegEx.swift
[101/140] Compiling TSCBasic ObjectIdentifierProtocol.swift
[102/140] Compiling TSCBasic OrderedDictionary.swift
[103/140] Compiling TSCBasic OrderedSet.swift
[104/140] Compiling TSCBasic Path.swift
[107/140] Compiling TSCBasic DictionaryExtensions.swift
[108/140] Compiling TSCBasic DictionaryLiteralExtensions.swift
[109/140] Compiling TSCBasic EditDistance.swift
[120/140] Compiling TSCBasic FileInfo.swift
[121/140] Compiling TSCBasic FileSystem.swift
[122/140] Compiling TSCBasic GraphAlgorithms.swift
[123/140] Compiling TSCBasic OSLog.swift
[135/142] Wrapping AST for ArgumentParser for debugging
[137/142] Wrapping AST for TSCBasic for debugging
[139/178] Emitting module TSCUtility
[140/183] Compiling TSCUtility PolymorphicCodable.swift
[141/183] Compiling TSCUtility ProgressAnimation.swift
[142/183] Compiling TSCUtility SQLite.swift
[143/183] Compiling TSCUtility SerializedDiagnostics.swift
[144/183] Compiling TSCUtility SimplePersistence.swift
[145/183] Compiling TSCUtility Hex.swift
[146/183] Compiling TSCUtility IndexStore.swift
[147/183] Compiling TSCUtility InterruptHandler.swift
[148/183] Compiling TSCUtility JSONMessageStreamingParser.swift
[149/183] Compiling TSCUtility Netrc.swift
[150/183] Compiling TSCUtility Bitstream.swift
[151/183] Compiling TSCUtility BitstreamReader.swift
[152/183] Compiling TSCUtility BitstreamWriter.swift
[153/183] Compiling TSCUtility BuildFlags.swift
[154/183] Compiling TSCUtility CollectionExtensions.swift
[155/183] Compiling TSCUtility StringExtensions.swift
[156/183] Compiling TSCUtility StringMangling.swift
[157/183] Compiling TSCUtility Tracing.swift
[158/183] Compiling TSCUtility Triple.swift
[159/183] Compiling TSCUtility URL.swift
[160/183] Compiling TSCUtility Context.swift
[161/183] Compiling TSCUtility Diagnostics.swift
[162/183] Compiling TSCUtility FSWatch.swift
[163/183] Compiling TSCUtility FloatingPointExtensions.swift
[164/183] Compiling TSCUtility Git.swift
[165/183] Compiling TSCUtility OSLog.swift
[166/183] Compiling TSCUtility OrderedZip.swift
[167/183] Compiling TSCUtility PersistenceCache.swift
[168/183] Compiling TSCUtility PkgConfig.swift
[169/183] Compiling TSCUtility Platform.swift
[170/183] Compiling TSCUtility Archiver.swift
[171/183] Compiling TSCUtility ArgumentParser.swift
[172/183] Compiling TSCUtility ArgumentParserShellCompletion.swift
[173/183] Compiling TSCUtility Array+Extensions.swift
[174/183] Compiling TSCUtility Bits.swift
[175/183] Compiling TSCUtility Verbosity.swift
[176/183] Compiling TSCUtility Version.swift
[177/183] Compiling TSCUtility Versioning.swift
[178/183] Compiling TSCUtility dlopen.swift
[179/183] Compiling TSCUtility misc.swift
[180/184] Wrapping AST for TSCUtility for debugging
[182/188] Compiling lifeCLI Mode.swift
/host/spi-builder-workspace/Sources/lifeCLI/Mode.swift:4:1: warning: extension declares a conformance of imported type 'Mode' to imported protocol 'ExpressibleByArgument'; this will not behave correctly if the owners of 'Life' introduce this conformance in the future
 2 | import Life
 3 |
 4 | extension Mode: ExpressibleByArgument {
   | |- warning: extension declares a conformance of imported type 'Mode' to imported protocol 'ExpressibleByArgument'; this will not behave correctly if the owners of 'Life' introduce this conformance in the future
   | `- note: add '@retroactive' to silence this warning
 5 |   public init?(argument: String) {
 6 |     switch argument {
[183/188] Compiling lifeCLI Life.swift
[184/188] Compiling lifeCLI Command.swift
/host/spi-builder-workspace/Sources/lifeCLI/Command.swift:25:7: warning: reference to var 'stdoutStream' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
23 |     while !world.aliveCells.isEmpty {
24 |       printWorld(world)
25 |       stdoutStream.flush()
   |       `- warning: reference to var 'stdoutStream' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
26 |       usleep(generationPeriod)
27 |       world.spawnNextGeneration()
/host/spi-builder-workspace/.build/checkouts/swift-tools-support-core/Sources/TSCBasic/WritableByteStream.swift:783:12: note: var declared here
781 |
782 | /// Public stdout stream instance.
783 | public var stdoutStream: ThreadSafeOutputByteStream = try! ThreadSafeOutputByteStream(LocalFileOutputByteStream(
    |            `- note: var declared here
784 |     filePointer: TSCLibc.stdout,
785 |     closeOnDeinit: false))
/host/spi-builder-workspace/Sources/lifeCLI/Command.swift:30:5: warning: reference to var 'stdoutStream' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
28 |       clearWorld()
29 |     }
30 |     stdoutStream.flush()
   |     `- warning: reference to var 'stdoutStream' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
31 |   }
32 |
/host/spi-builder-workspace/.build/checkouts/swift-tools-support-core/Sources/TSCBasic/WritableByteStream.swift:783:12: note: var declared here
781 |
782 | /// Public stdout stream instance.
783 | public var stdoutStream: ThreadSafeOutputByteStream = try! ThreadSafeOutputByteStream(LocalFileOutputByteStream(
    |            `- note: var declared here
784 |     filePointer: TSCLibc.stdout,
785 |     closeOnDeinit: false))
/host/spi-builder-workspace/Sources/lifeCLI/Command.swift:48:7: warning: reference to var 'stdoutStream' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
46 |   func clearWorld() {
47 |     for _ in 0..<rows {
48 |       stdoutStream <<< "\u{001B}[2K\r\u{001B}[1A" // clear entire row & go up one row
   |       `- warning: reference to var 'stdoutStream' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
49 |     }
50 |   }
/host/spi-builder-workspace/.build/checkouts/swift-tools-support-core/Sources/TSCBasic/WritableByteStream.swift:783:12: note: var declared here
781 |
782 | /// Public stdout stream instance.
783 | public var stdoutStream: ThreadSafeOutputByteStream = try! ThreadSafeOutputByteStream(LocalFileOutputByteStream(
    |            `- note: var declared here
784 |     filePointer: TSCLibc.stdout,
785 |     closeOnDeinit: false))
/host/spi-builder-workspace/Sources/lifeCLI/Command.swift:60:7: warning: reference to var 'stdoutStream' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
58 |         line += world.isCellAlive(cell) ? "█" : " "
59 |       }
60 |       stdoutStream <<< "\(line)\u{001B}[0m\n"
   |       `- warning: reference to var 'stdoutStream' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
61 |     }
62 |   }
/host/spi-builder-workspace/.build/checkouts/swift-tools-support-core/Sources/TSCBasic/WritableByteStream.swift:783:12: note: var declared here
781 |
782 | /// Public stdout stream instance.
783 | public var stdoutStream: ThreadSafeOutputByteStream = try! ThreadSafeOutputByteStream(LocalFileOutputByteStream(
    |            `- note: var declared here
784 |     filePointer: TSCLibc.stdout,
785 |     closeOnDeinit: false))
[185/188] Emitting module lifeCLI
/host/spi-builder-workspace/Sources/lifeCLI/Mode.swift:4:1: warning: extension declares a conformance of imported type 'Mode' to imported protocol 'ExpressibleByArgument'; this will not behave correctly if the owners of 'Life' introduce this conformance in the future
 2 | import Life
 3 |
 4 | extension Mode: ExpressibleByArgument {
   | |- warning: extension declares a conformance of imported type 'Mode' to imported protocol 'ExpressibleByArgument'; this will not behave correctly if the owners of 'Life' introduce this conformance in the future
   | `- note: add '@retroactive' to silence this warning
 5 |   public init?(argument: String) {
 6 |     switch argument {
[186/189] Wrapping AST for lifeCLI for debugging
[187/189] Write Objects.LinkFileList
[188/189] Linking life-cli
Build complete! (27.84s)
Build complete.
{
  "dependencies" : [
    {
      "identity" : "swift-argument-parser",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.0.1",
            "upper_bound" : "1.1.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-argument-parser.git"
    },
    {
      "identity" : "swift-tools-support-core",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "0.2.4",
            "upper_bound" : "0.3.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-tools-support-core.git"
    }
  ],
  "manifest_display_name" : "Life",
  "name" : "Life",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "Life",
      "targets" : [
        "Life"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "life-cli",
      "targets" : [
        "lifeCLI"
      ],
      "type" : {
        "executable" : null
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "lifeCLI",
      "module_type" : "SwiftTarget",
      "name" : "lifeCLI",
      "path" : "Sources/lifeCLI",
      "product_dependencies" : [
        "SwiftToolsSupport-auto",
        "ArgumentParser"
      ],
      "product_memberships" : [
        "life-cli"
      ],
      "sources" : [
        "Command.swift",
        "Life.swift",
        "Mode.swift"
      ],
      "target_dependencies" : [
        "Life"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "LifeTests",
      "module_type" : "SwiftTarget",
      "name" : "LifeTests",
      "path" : "Tests/LifeTests",
      "sources" : [
        "CellTests.swift",
        "WorldAddTests.swift",
        "WorldContainsTests.swift",
        "WorldGenerationTests.swift",
        "WorldInitializationTests.swift",
        "WorldIsAliveTests.swift",
        "WorldNeighborsTests.swift",
        "WorldOscillatorPatternTests.swift",
        "WorldRemoveTests.swift",
        "WorldResetTests.swift",
        "WorldStillPatternTests.swift"
      ],
      "target_dependencies" : [
        "Life"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Life",
      "module_type" : "SwiftTarget",
      "name" : "Life",
      "path" : "Sources/Life",
      "product_memberships" : [
        "Life",
        "life-cli"
      ],
      "sources" : [
        "Cell.swift",
        "Mode.swift",
        "World.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.5"
}
basic-6.0-latest: Pulling from finestructure/spi-images
Digest: sha256:47d26c99ca4f1ac0a332c85fd5b13ff4390e72115219984a57a68fe9d1063a05
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.0-latest
Done.