This is a staging environment. For live and up-to-date package information, visit swiftpackageindex.com.

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 Octoid with Swift 6.0 for Linux.

Swift 6 data race errors: 1

Build Command

bash -c docker run --rm -v "checkouts-4609320-0":/host -w "$workDir" 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 2>&1

Build Log

========================================
RunAll
========================================
Builder version: 4.40.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/elegantchaos/Octoid.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/elegantchaos/Octoid
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at 7640765 Added isEmpty
Cloned https://github.com/elegantchaos/Octoid.git
Revision (git rev-parse @):
7640765e7587b8654c4df78f2ce5e37f45380f96
SUCCESS checkout https://github.com/elegantchaos/Octoid.git at main
========================================
Build
========================================
Selected platform:         linux
Swift version:             6.0
Building package at path:  $workDir
https://github.com/elegantchaos/Octoid.git
Running build ...
bash -c docker run --rm -v "checkouts-4609320-0":/host -w "$workDir" 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 2>&1
Fetching https://github.com/elegantchaos/Logger.git
Fetching https://github.com/elegantchaos/CollectionExtensions.git
Fetching https://github.com/elegantchaos/Coercion.git
Fetching https://github.com/elegantchaos/DataFetcher.git
Fetching https://github.com/elegantchaos/XCTestExtensions.git
Fetching https://github.com/elegantchaos/JSONSession.git
[1/400] Fetching collectionextensions
[401/2247] Fetching collectionextensions, logger
[660/2554] Fetching collectionextensions, logger, jsonsession
[1946/3119] Fetching collectionextensions, logger, jsonsession, xctestextensions
[2237/3291] Fetching collectionextensions, logger, jsonsession, xctestextensions, datafetcher
[2671/3565] Fetching collectionextensions, logger, jsonsession, xctestextensions, datafetcher, coercion
Fetched https://github.com/elegantchaos/JSONSession.git from cache (0.28s)
Fetched https://github.com/elegantchaos/XCTestExtensions.git from cache (0.30s)
Fetched https://github.com/elegantchaos/Coercion.git from cache (0.31s)
Fetched https://github.com/elegantchaos/DataFetcher.git from cache (0.31s)
Fetched https://github.com/elegantchaos/CollectionExtensions.git from cache (0.31s)
Fetched https://github.com/elegantchaos/Logger.git from cache (0.31s)
Computing version for https://github.com/elegantchaos/XCTestExtensions.git
Computed https://github.com/elegantchaos/XCTestExtensions.git at 1.3.2 (0.52s)
Computing version for https://github.com/elegantchaos/JSONSession.git
Computed https://github.com/elegantchaos/JSONSession.git at 1.1.1 (0.55s)
Computing version for https://github.com/elegantchaos/Logger.git
Computed https://github.com/elegantchaos/Logger.git at 1.6.0 (0.55s)
Computing version for https://github.com/elegantchaos/CollectionExtensions.git
Computed https://github.com/elegantchaos/CollectionExtensions.git at 1.1.2 (0.54s)
Computing version for https://github.com/elegantchaos/DataFetcher.git
Computed https://github.com/elegantchaos/DataFetcher.git at 1.0.2 (0.54s)
Computing version for https://github.com/elegantchaos/Coercion.git
Computed https://github.com/elegantchaos/Coercion.git at 1.1.1 (0.53s)
Creating working copy for https://github.com/elegantchaos/XCTestExtensions.git
Working copy of https://github.com/elegantchaos/XCTestExtensions.git resolved at 1.3.2
Creating working copy for https://github.com/elegantchaos/JSONSession.git
Working copy of https://github.com/elegantchaos/JSONSession.git resolved at 1.1.1
Creating working copy for https://github.com/elegantchaos/DataFetcher.git
Working copy of https://github.com/elegantchaos/DataFetcher.git resolved at 1.0.2
Creating working copy for https://github.com/elegantchaos/Logger.git
Working copy of https://github.com/elegantchaos/Logger.git resolved at 1.6.0
Creating working copy for https://github.com/elegantchaos/Coercion.git
Working copy of https://github.com/elegantchaos/Coercion.git resolved at 1.1.1
Creating working copy for https://github.com/elegantchaos/CollectionExtensions.git
Working copy of https://github.com/elegantchaos/CollectionExtensions.git resolved at 1.1.2
Building for debugging...
[0/7] Write sources
[6/7] Write swift-version-24593BA9C3E375BF.txt
[8/35] Compiling Coercion IntConvertible.swift
[9/35] Compiling Coercion StandardConvertible.swift
[10/35] Compiling Coercion StringConvertible.swift
[11/35] Compiling Coercion UIntConvertible.swift
[12/36] Compiling Logger NSLogHandler.swift
[13/36] Compiling Logger PrintHandler.swift
[14/36] Compiling Logger OSLogHandler.swift
[15/36] Compiling Coercion String+Coercion.swift
[16/36] Compiling CollectionExtensions Set+Insertion.swift
[17/36] Compiling CollectionExtensions Sequence+Sorting.swift
[18/36] Compiling Coercion DateConvertible.swift
[19/36] Compiling Coercion DoubleConvertible.swift
[20/36] Compiling Coercion BoolConvertible.swift
[21/36] Compiling Coercion DataConvertible.swift
[22/36] Compiling Coercion Converter.swift
[23/36] Compiling Coercion Date+Coercion.swift
[24/36] Compiling Coercion BinaryInteger+Coercion.swift
[25/36] Compiling Coercion Bool+Coercion.swift
[26/36] Compiling Coercion Dictionary+Coercion.swift
[27/36] Compiling Coercion Double+Coercion.swift
[28/36] Emitting module Coercion
[29/37] Compiling CollectionExtensions Dictionaery+Helpers.swift
[30/37] Compiling CollectionExtensions Dictionary+Merging.swift
[31/37] Emitting module CollectionExtensions
[32/37] Compiling Logger Handler.swift
[33/37] Compiling Logger Channel.swift
[34/37] Compiling Logger Manager.swift
[35/37] Compiling Logger Context.swift
[36/37] Emitting module Logger
[40/43] Compiling DataFetcher MockDataFetcher.swift
[41/43] Compiling DataFetcher JSONDictionary.swift
[42/43] Emitting module DataFetcher
[43/43] Compiling DataFetcher DataFetcher.swift
[45/53] Compiling JSONSession Resource.swift
[46/54] Compiling JSONSession Query.swift
[47/54] Compiling JSONSession Request.swift
[48/54] Compiling JSONSession Failure.swift
[49/54] Compiling JSONSession Processor.swift
[50/54] Emitting module JSONSession
[51/54] Compiling JSONSession ProcessorGroup.swift
[52/54] Compiling JSONSession TimeExtensions.swift
[53/54] Compiling JSONSession ResourceResolver.swift
[54/54] Compiling JSONSession Session.swift
[56/65] Compiling Octoid JSONDictionary.swift
[57/66] Compiling Octoid UnchangedProcessor.swift
/host/spi-builder-workspace/Sources/Octoid/Session.swift:11:12: warning: let 'octoidChannel' is not concurrency-safe because non-'Sendable' type 'Channel' may have shared mutable state; this is an error in the Swift 6 language mode
 9 | import Logger
10 |
11 | public let octoidChannel = Channel("com.elegantchaos.Octoid")
   |            `- warning: let 'octoidChannel' is not concurrency-safe because non-'Sendable' type 'Channel' may have shared mutable state; this is an error in the Swift 6 language mode
12 |
13 | #if canImport(FoundationNetworking)
/host/spi-builder-workspace/.build/checkouts/Logger/Sources/Logger/Channel.swift:15:14: note: class 'Channel' does not conform to the 'Sendable' protocol
 13 |  */
 14 |
 15 | public class Channel {
    |              `- note: class 'Channel' does not conform to the 'Sendable' protocol
 16 |
 17 |     /**
/host/spi-builder-workspace/Sources/Octoid/Session.swift:9:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Logger'
 7 | import Foundation
 8 | import JSONSession
 9 | import Logger
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Logger'
10 |
11 | public let octoidChannel = Channel("com.elegantchaos.Octoid")
   |            |- note: annotate 'octoidChannel' 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
12 |
13 | #if canImport(FoundationNetworking)
[58/66] Compiling Octoid Session.swift
/host/spi-builder-workspace/Sources/Octoid/Session.swift:11:12: warning: let 'octoidChannel' is not concurrency-safe because non-'Sendable' type 'Channel' may have shared mutable state; this is an error in the Swift 6 language mode
 9 | import Logger
10 |
11 | public let octoidChannel = Channel("com.elegantchaos.Octoid")
   |            `- warning: let 'octoidChannel' is not concurrency-safe because non-'Sendable' type 'Channel' may have shared mutable state; this is an error in the Swift 6 language mode
12 |
13 | #if canImport(FoundationNetworking)
/host/spi-builder-workspace/.build/checkouts/Logger/Sources/Logger/Channel.swift:15:14: note: class 'Channel' does not conform to the 'Sendable' protocol
 13 |  */
 14 |
 15 | public class Channel {
    |              `- note: class 'Channel' does not conform to the 'Sendable' protocol
 16 |
 17 |     /**
/host/spi-builder-workspace/Sources/Octoid/Session.swift:9:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Logger'
 7 | import Foundation
 8 | import JSONSession
 9 | import Logger
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Logger'
10 |
11 | public let octoidChannel = Channel("com.elegantchaos.Octoid")
   |            |- note: annotate 'octoidChannel' 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
12 |
13 | #if canImport(FoundationNetworking)
[59/66] Compiling Octoid MessageProcessor.swift
/host/spi-builder-workspace/Sources/Octoid/Session.swift:11:12: warning: let 'octoidChannel' is not concurrency-safe because non-'Sendable' type 'Channel' may have shared mutable state; this is an error in the Swift 6 language mode
 9 | import Logger
10 |
11 | public let octoidChannel = Channel("com.elegantchaos.Octoid")
   |            `- warning: let 'octoidChannel' is not concurrency-safe because non-'Sendable' type 'Channel' may have shared mutable state; this is an error in the Swift 6 language mode
12 |
13 | #if canImport(FoundationNetworking)
/host/spi-builder-workspace/.build/checkouts/Logger/Sources/Logger/Channel.swift:15:14: note: class 'Channel' does not conform to the 'Sendable' protocol
 13 |  */
 14 |
 15 | public class Channel {
    |              `- note: class 'Channel' does not conform to the 'Sendable' protocol
 16 |
 17 |     /**
/host/spi-builder-workspace/Sources/Octoid/Session.swift:9:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Logger'
 7 | import Foundation
 8 | import JSONSession
 9 | import Logger
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Logger'
10 |
11 | public let octoidChannel = Channel("com.elegantchaos.Octoid")
   |            |- note: annotate 'octoidChannel' 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
12 |
13 | #if canImport(FoundationNetworking)
[60/66] Compiling Octoid WorkflowRuns.swift
[61/66] Emitting module Octoid
/host/spi-builder-workspace/Sources/Octoid/Session.swift:11:12: warning: let 'octoidChannel' is not concurrency-safe because non-'Sendable' type 'Channel' may have shared mutable state; this is an error in the Swift 6 language mode
 9 | import Logger
10 |
11 | public let octoidChannel = Channel("com.elegantchaos.Octoid")
   |            `- warning: let 'octoidChannel' is not concurrency-safe because non-'Sendable' type 'Channel' may have shared mutable state; this is an error in the Swift 6 language mode
12 |
13 | #if canImport(FoundationNetworking)
/host/spi-builder-workspace/.build/checkouts/Logger/Sources/Logger/Channel.swift:15:14: note: class 'Channel' does not conform to the 'Sendable' protocol
 13 |  */
 14 |
 15 | public class Channel {
    |              `- note: class 'Channel' does not conform to the 'Sendable' protocol
 16 |
 17 |     /**
/host/spi-builder-workspace/Sources/Octoid/Session.swift:9:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Logger'
 7 | import Foundation
 8 | import JSONSession
 9 | import Logger
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Logger'
10 |
11 | public let octoidChannel = Channel("com.elegantchaos.Octoid")
   |            |- note: annotate 'octoidChannel' 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
12 |
13 | #if canImport(FoundationNetworking)
[62/66] Compiling Octoid Commit.swift
[63/66] Compiling Octoid Events.swift
[64/66] Compiling Octoid Actor.swift
[65/66] Compiling Octoid Author.swift
[66/66] Compiling Octoid GraphAPI.swift
Build complete! (35.81s)
Build complete.
{
  "dependencies" : [
    {
      "identity" : "collectionextensions",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.1.1",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/elegantchaos/CollectionExtensions.git"
    },
    {
      "identity" : "logger",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.6.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/elegantchaos/Logger.git"
    },
    {
      "identity" : "jsonsession",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.1.1",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/elegantchaos/JSONSession.git"
    },
    {
      "identity" : "xctestextensions",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.3.2",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/elegantchaos/XCTestExtensions.git"
    }
  ],
  "manifest_display_name" : "Octoid",
  "name" : "Octoid",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "10.15"
    },
    {
      "name" : "maccatalyst",
      "version" : "13.0"
    },
    {
      "name" : "ios",
      "version" : "13.0"
    },
    {
      "name" : "tvos",
      "version" : "13.0"
    },
    {
      "name" : "watchos",
      "version" : "6.0"
    }
  ],
  "products" : [
    {
      "name" : "Octoid",
      "targets" : [
        "Octoid"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "OctoidTests",
      "module_type" : "SwiftTarget",
      "name" : "OctoidTests",
      "path" : "Tests/OctoidTests",
      "product_dependencies" : [
        "XCTestExtensions"
      ],
      "resources" : [
        {
          "path" : "/host/spi-builder-workspace/Tests/OctoidTests/Resources/runs.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Tests/OctoidTests/Resources/events.json",
          "rule" : {
            "process" : {
            }
          }
        }
      ],
      "sources" : [
        "OctoidTests.swift",
        "XCTestManifests.swift"
      ],
      "target_dependencies" : [
        "Octoid"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Octoid",
      "module_type" : "SwiftTarget",
      "name" : "Octoid",
      "path" : "Sources/Octoid",
      "product_dependencies" : [
        "CollectionExtensions",
        "Logger",
        "JSONSession"
      ],
      "product_memberships" : [
        "Octoid"
      ],
      "sources" : [
        "Actor.swift",
        "Author.swift",
        "Commit.swift",
        "Events.swift",
        "GraphAPI.swift",
        "JSONDictionary.swift",
        "MessageProcessor.swift",
        "Session.swift",
        "UnchangedProcessor.swift",
        "WorkflowRuns.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.6"
}
Done.
This is a staging environment. For live and up-to-date package information, visit swiftpackageindex.com.