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 Stitch with Swift 6.0 for macOS (SPM).

Swift 6 data race errors: 3

Build Command

env DEVELOPER_DIR=/Applications/Xcode-15.3.0.app xcrun --toolchain org.swift.600202405261a swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete

Build Log

========================================
RunAll
========================================
Builder version: 4.40.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/entrhq/stitch.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/entrhq/stitch
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at e26561e Updated readme with examples
Cloned https://github.com/entrhq/stitch.git
Revision (git rev-parse @):
e26561e44eafa1f951d7568100c6bb1b817e275c
SUCCESS checkout https://github.com/entrhq/stitch.git at main
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.0
Building package at path:  $workDir
https://github.com/entrhq/stitch.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-15.3.0.app xcrun --toolchain org.swift.600202405261a swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-6F35C1178C84523A.txt
[3/12] Compiling Stitch Stitch.swift
[4/12] Compiling Stitch ErasedObservableObject.swift
[5/12] Compiling Stitch Preconditions.swift
/Users/admin/builder/spi-builder-workspace/Sources/Stitch/Foundation/Preconditions.swift:33:23: warning: static property 'closure' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
31 |     /// Wrapper closure for executing swift's default precondition whilst providing
32 |     /// the ability to swap out at run time for testing.
33 |     public static var closure: (Bool, String, StaticString, UInt) -> Void = defaultPreconditionClosure
   |                       |- warning: static property 'closure' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'closure' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: annotate 'closure' 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
34 |     public static let defaultPreconditionClosure = {Swift.precondition($0, $1, file: $2, line: $3)}
35 | }
<unknown>:0: note: a function type must be marked '@Sendable' to conform to 'Sendable'
/Users/admin/builder/spi-builder-workspace/Sources/Stitch/Foundation/Preconditions.swift:34:23: warning: static property 'defaultPreconditionClosure' is not concurrency-safe because non-'Sendable' type '(Bool, String, StaticString, UInt) -> ()' may have shared mutable state; this is an error in the Swift 6 language mode
32 |     /// the ability to swap out at run time for testing.
33 |     public static var closure: (Bool, String, StaticString, UInt) -> Void = defaultPreconditionClosure
34 |     public static let defaultPreconditionClosure = {Swift.precondition($0, $1, file: $2, line: $3)}
   |                       |- warning: static property 'defaultPreconditionClosure' is not concurrency-safe because non-'Sendable' type '(Bool, String, StaticString, UInt) -> ()' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'defaultPreconditionClosure' 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
35 | }
36 |
[6/12] Compiling Stitch AnyObservableObject.swift
[7/12] Compiling Stitch DependencyKey.swift
[8/12] Compiling Stitch DependencyMocker.swift
/Users/admin/builder/spi-builder-workspace/Sources/Stitch/Dependencies/DependencyMap.swift:55:25: warning: static property 'map' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
53 | ///
54 | public class DependencyMap: DependencyLifecycleScope {
55 |     internal static var map = DependencyMap()
   |                         |- warning: static property 'map' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
   |                         |- note: convert 'map' to a 'let' constant to make 'Sendable' shared state immutable
   |                         |- note: annotate 'map' 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
56 | }
57 |
[9/12] Compiling Stitch StitchObservable.swift
/Users/admin/builder/spi-builder-workspace/Sources/Stitch/Injection/StitchObservable.swift:32:37: warning: main actor-isolated property 'wrappedValue' can not be referenced from a non-isolated context; this is an error in the Swift 6 language mode
30 |         ) -> Binding<Subject> {
31 |             Binding(
32 |                 get: { self.wrapped.wrappedValue[keyPath: keyPath] },
   |                                     `- warning: main actor-isolated property 'wrappedValue' can not be referenced from a non-isolated context; this is an error in the Swift 6 language mode
33 |                 set: { self.wrapped.wrappedValue[keyPath: keyPath] = $0 }
34 |             )
   :
37 |
38 |     private let keyPath: WritableKeyPath<DependencyMap, Dependency>
39 |     public var wrappedValue: Dependency {
   |                `- note: property declared here
40 |         get { resolve(keyPath) }
41 |         set {
/Users/admin/builder/spi-builder-workspace/Sources/Stitch/Injection/StitchObservable.swift:33:37: warning: main actor-isolated property 'wrappedValue' can not be referenced from a non-isolated context; this is an error in the Swift 6 language mode
31 |             Binding(
32 |                 get: { self.wrapped.wrappedValue[keyPath: keyPath] },
33 |                 set: { self.wrapped.wrappedValue[keyPath: keyPath] = $0 }
   |                                     `- warning: main actor-isolated property 'wrappedValue' can not be referenced from a non-isolated context; this is an error in the Swift 6 language mode
34 |             )
35 |         }
   :
37 |
38 |     private let keyPath: WritableKeyPath<DependencyMap, Dependency>
39 |     public var wrappedValue: Dependency {
   |                `- note: property declared here
40 |         get { resolve(keyPath) }
41 |         set {
[10/12] Compiling Stitch DependencyMap.swift
/Users/admin/builder/spi-builder-workspace/Sources/Stitch/Dependencies/DependencyMap.swift:55:25: warning: static property 'map' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
53 | ///
54 | public class DependencyMap: DependencyLifecycleScope {
55 |     internal static var map = DependencyMap()
   |                         |- warning: static property 'map' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
   |                         |- note: convert 'map' to a 'let' constant to make 'Sendable' shared state immutable
   |                         |- note: annotate 'map' 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
56 | }
57 |
[11/12] Compiling Stitch DependencyLifecycleScope.swift
/Users/admin/builder/spi-builder-workspace/Sources/Stitch/Dependencies/DependencyMap.swift:55:25: warning: static property 'map' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
53 | ///
54 | public class DependencyMap: DependencyLifecycleScope {
55 |     internal static var map = DependencyMap()
   |                         |- warning: static property 'map' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
   |                         |- note: convert 'map' to a 'let' constant to make 'Sendable' shared state immutable
   |                         |- note: annotate 'map' 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
56 | }
57 |
[12/12] Emitting module Stitch
/Users/admin/builder/spi-builder-workspace/Sources/Stitch/Dependencies/DependencyMap.swift:55:25: warning: static property 'map' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
53 | ///
54 | public class DependencyMap: DependencyLifecycleScope {
55 |     internal static var map = DependencyMap()
   |                         |- warning: static property 'map' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
   |                         |- note: convert 'map' to a 'let' constant to make 'Sendable' shared state immutable
   |                         |- note: annotate 'map' 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
56 | }
57 |
/Users/admin/builder/spi-builder-workspace/Sources/Stitch/Foundation/Preconditions.swift:33:23: warning: static property 'closure' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
31 |     /// Wrapper closure for executing swift's default precondition whilst providing
32 |     /// the ability to swap out at run time for testing.
33 |     public static var closure: (Bool, String, StaticString, UInt) -> Void = defaultPreconditionClosure
   |                       |- warning: static property 'closure' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'closure' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: annotate 'closure' 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
34 |     public static let defaultPreconditionClosure = {Swift.precondition($0, $1, file: $2, line: $3)}
35 | }
<unknown>:0: note: a function type must be marked '@Sendable' to conform to 'Sendable'
/Users/admin/builder/spi-builder-workspace/Sources/Stitch/Foundation/Preconditions.swift:34:23: warning: static property 'defaultPreconditionClosure' is not concurrency-safe because non-'Sendable' type '(Bool, String, StaticString, UInt) -> ()' may have shared mutable state; this is an error in the Swift 6 language mode
32 |     /// the ability to swap out at run time for testing.
33 |     public static var closure: (Bool, String, StaticString, UInt) -> Void = defaultPreconditionClosure
34 |     public static let defaultPreconditionClosure = {Swift.precondition($0, $1, file: $2, line: $3)}
   |                       |- warning: static property 'defaultPreconditionClosure' is not concurrency-safe because non-'Sendable' type '(Bool, String, StaticString, UInt) -> ()' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'defaultPreconditionClosure' 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
35 | }
36 |
[13/13] Compiling Stitch StitchPublished.swift
Build complete! (32.61s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "Stitch",
  "name" : "Stitch",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "13.0"
    },
    {
      "name" : "macos",
      "version" : "10.15"
    }
  ],
  "products" : [
    {
      "name" : "Stitch",
      "targets" : [
        "Stitch"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "StitchTests",
      "module_type" : "SwiftTarget",
      "name" : "StitchTests",
      "path" : "Tests/StitchTests",
      "sources" : [
        "Mocks/TestObject.swift",
        "Mocks/TestObservableObject.swift",
        "Tests/StitchNonObservablePreconditionPropertyWrapperTest.swift",
        "Tests/StitchObservablePropertyWrapperTest.swift",
        "Tests/StitchPropertyWrapperTest.swift",
        "Tests/StitchPublishedPropertyWrapperTests.swift",
        "Utility/Publisher+sinkToExpectation.swift",
        "Utility/XCTestCase+expectingPreconditionFailure.swift"
      ],
      "target_dependencies" : [
        "Stitch"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Stitch",
      "module_type" : "SwiftTarget",
      "name" : "Stitch",
      "path" : "Sources/Stitch",
      "product_memberships" : [
        "Stitch"
      ],
      "sources" : [
        "Dependencies/DependencyKey.swift",
        "Dependencies/DependencyLifecycleScope.swift",
        "Dependencies/DependencyMap.swift",
        "Dependencies/DependencyMocker.swift",
        "Foundation/Observables/AnyObservableObject.swift",
        "Foundation/Observables/ErasedObservableObject.swift",
        "Foundation/Preconditions.swift",
        "Injection/Stitch.swift",
        "Injection/StitchObservable.swift",
        "Injection/StitchPublished.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.7"
}
Done.
This is a staging environment. For live and up-to-date package information, visit swiftpackageindex.com.