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

Swift 6 data race errors: 0

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4609320-1":/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: main
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
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
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 main
========================================
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-4609320-1":/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
[722/18942] Fetching swift-tools-support-core, swift-argument-parser
Fetched https://github.com/apple/swift-tools-support-core.git from cache (0.88s)
Fetched https://github.com/apple/swift-argument-parser.git from cache (1.18s)
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.69s)
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.50s)
Fetching https://github.com/apple/swift-system.git
[1/3919] Fetching swift-system
Fetched https://github.com/apple/swift-system.git from cache (0.31s)
Computing version for https://github.com/apple/swift-system.git
Computed https://github.com/apple/swift-system.git at 1.1.1 (0.41s)
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
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
Building for debugging...
[0/22] Write sources
[8/22] Compiling TSCclibc libc.c
[9/22] Compiling TSCclibc process.c
[10/22] Compiling CSystem shims.c
[11/22] Write swift-version-24593BA9C3E375BF.txt
[13/51] Emitting module Life
[14/51] Compiling Life Cell.swift
[15/51] Emitting module ArgumentParserToolInfo
[16/51] Compiling ArgumentParserToolInfo ToolInfo.swift
[17/51] Compiling Life Mode.swift
[18/51] Compiling Life World.swift
[19/53] Compiling SystemPackage PlatformString.swift
[20/53] Compiling SystemPackage SystemString.swift
[23/55] Emitting module SystemPackage
[24/55] Compiling SystemPackage Errno.swift
[25/55] Compiling SystemPackage FileDescriptor.swift
[26/55] Compiling SystemPackage FileHelpers.swift
[27/55] Compiling SystemPackage FileOperations.swift
[28/55] Compiling SystemPackage FilePath.swift
[29/55] Compiling SystemPackage FilePathComponentView.swift
[29/55] Wrapping AST for ArgumentParserToolInfo for debugging
[30/55] Wrapping AST for Life for debugging
[32/89] Compiling ArgumentParser InputOrigin.swift
[33/89] Compiling ArgumentParser Name.swift
[34/89] Compiling ArgumentParser OptionGroup.swift
[35/89] Compiling ArgumentParser CommandConfiguration.swift
[36/89] Compiling ArgumentParser EnumerableFlag.swift
[37/89] Compiling ArgumentParser ExpressibleByArgument.swift
[38/89] Compiling ArgumentParser ParsedValues.swift
[39/89] Compiling ArgumentParser ParserError.swift
[40/89] Emitting module TSCLibc
[41/89] Compiling TSCLibc libc.swift
[43/90] Compiling ArgumentParser HelpGenerator.swift
[44/90] Compiling ArgumentParser MessageInfo.swift
[45/90] Compiling ArgumentParser UsageGenerator.swift
[46/90] Compiling ArgumentParser SplitArguments.swift
[47/90] Compiling ArgumentParser DumpHelpGenerator.swift
[48/90] Compiling ArgumentParser HelpCommand.swift
[49/91] Wrapping AST for TSCLibc for debugging
[50/91] Wrapping AST for SystemPackage for debugging
[52/131] Emitting module TSCBasic
[53/136] Emitting module ArgumentParser
[54/140] Compiling TSCBasic CodableResult.swift
[55/140] Compiling TSCBasic CollectionAlgorithms.swift
[56/140] Compiling TSCBasic CollectionExtensions.swift
[57/140] Compiling TSCBasic Condition.swift
[58/140] Compiling TSCBasic DeltaAlgorithm.swift
[59/140] Compiling ArgumentParser CollectionExtensions.swift
[60/140] Compiling ArgumentParser SequenceExtensions.swift
[61/140] Compiling ArgumentParser StringExtensions.swift
[62/140] Compiling ArgumentParser Tree.swift
[63/140] Compiling TSCBasic PathShims.swift
[64/140] Compiling TSCBasic Process.swift
[65/140] Compiling TSCBasic ProcessEnv.swift
[66/140] Compiling TSCBasic ProcessSet.swift
[67/140] Compiling TSCBasic RegEx.swift
[68/140] Compiling TSCBasic DictionaryExtensions.swift
[69/140] Compiling TSCBasic DictionaryLiteralExtensions.swift
[70/140] Compiling TSCBasic EditDistance.swift
[71/140] Compiling TSCBasic FileInfo.swift
[72/140] Compiling TSCBasic FileSystem.swift
[73/140] Compiling TSCBasic Result.swift
[74/140] Compiling TSCBasic SortedArray.swift
[75/140] Compiling TSCBasic StringConversions.swift
[76/140] Compiling TSCBasic SynchronizedQueue.swift
[77/140] Compiling TSCBasic TemporaryFile.swift
[78/140] Compiling TSCBasic CacheableSequence.swift
[79/140] Compiling TSCBasic Closable.swift
[80/140] Compiling TSCBasic HashAlgorithms.swift
[81/140] Compiling TSCBasic JSON.swift
[82/140] Compiling TSCBasic DiagnosticsEngine.swift
[83/140] Compiling TSCBasic Await.swift
[84/140] Compiling TSCBasic Base64URL.swift
[85/140] Compiling TSCBasic ByteString.swift
[86/140] Compiling TSCBasic CStringArray.swift
[99/140] Compiling TSCBasic JSONMapper.swift
[100/140] Compiling TSCBasic KeyedPair.swift
[101/140] Compiling TSCBasic LazyCache.swift
[102/140] Compiling TSCBasic Lock.swift
[109/141] Wrapping AST for ArgumentParser for debugging
[114/141] Compiling TSCBasic OrderedSet.swift
[115/141] Compiling TSCBasic Path.swift
[132/141] Compiling TSCBasic TerminalController.swift
[133/141] Compiling TSCBasic Thread.swift
[134/141] Compiling TSCBasic Tuple.swift
[135/141] Compiling TSCBasic WritableByteStream.swift
[136/141] Compiling TSCBasic misc.swift
[137/142] Wrapping AST for TSCBasic for debugging
[139/178] Emitting module TSCUtility
[140/183] Compiling TSCUtility Archiver.swift
[141/183] Compiling TSCUtility ArgumentParser.swift
[142/183] Compiling TSCUtility ArgumentParserShellCompletion.swift
[143/183] Compiling TSCUtility Array+Extensions.swift
[144/183] Compiling TSCUtility Bits.swift
[145/183] Compiling TSCUtility Bitstream.swift
[146/183] Compiling TSCUtility BitstreamReader.swift
[147/183] Compiling TSCUtility BitstreamWriter.swift
[148/183] Compiling TSCUtility BuildFlags.swift
[149/183] Compiling TSCUtility CollectionExtensions.swift
[150/183] Compiling TSCUtility Hex.swift
[151/183] Compiling TSCUtility IndexStore.swift
[152/183] Compiling TSCUtility InterruptHandler.swift
[153/183] Compiling TSCUtility JSONMessageStreamingParser.swift
[154/183] Compiling TSCUtility Netrc.swift
[155/183] Compiling TSCUtility PolymorphicCodable.swift
[156/183] Compiling TSCUtility ProgressAnimation.swift
[157/183] Compiling TSCUtility SQLite.swift
[158/183] Compiling TSCUtility SerializedDiagnostics.swift
[159/183] Compiling TSCUtility SimplePersistence.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 StringExtensions.swift
[171/183] Compiling TSCUtility StringMangling.swift
[172/183] Compiling TSCUtility Tracing.swift
[173/183] Compiling TSCUtility Triple.swift
[174/183] Compiling TSCUtility URL.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] 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 {
[185/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))
[186/189] Wrapping AST for lifeCLI for debugging
[187/189] Write Objects.LinkFileList
[188/189] Linking life-cli
Build complete! (28.18s)
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.