The Swift Package Index logo.Swift Package Index

Has it really been five years since Swift Package Index launched? Read our anniversary blog post!

Build Information

Successful build of BasicServiceLocator, reference master (81f896), with Swift 6.1 for macOS (SPM) on 16 Jul 2025 09:33:00 UTC.

Swift 6 data race errors: 0

Build Command

env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -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

Build Log

========================================
RunAll
========================================
Builder version: 4.64.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/iballan/BasicServiceLocator.git
Reference: master
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/iballan/BasicServiceLocator
 * branch            master     -> FETCH_HEAD
 * [new branch]      master     -> origin/master
HEAD is now at 81f8967 BIG UPDATE
Cloned https://github.com/iballan/BasicServiceLocator.git
Revision (git rev-parse @):
81f8967f31e197cfa01072f0eab5389863c4c56b
SUCCESS checkout https://github.com/iballan/BasicServiceLocator.git at master
========================================
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": "basicservicelocator",
      "name": "BasicServiceLocator",
      "url": "https://github.com/iballan/BasicServiceLocator.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/BasicServiceLocator",
      "dependencies": [
      ]
    }
  ]
}
Fetching https://github.com/iballan/BasicServiceLocator.git
[1/58] Fetching basicservicelocator
Fetched https://github.com/iballan/BasicServiceLocator.git from cache (0.60s)
Creating working copy for https://github.com/iballan/BasicServiceLocator.git
Working copy of https://github.com/iballan/BasicServiceLocator.git resolved at master (81f8967)
warning: '.resolve-product-dependencies': dependency 'basicservicelocator' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.1
Building package at path:  $PWD
https://github.com/iballan/BasicServiceLocator.git
https://github.com/iballan/BasicServiceLocator.git
{
  "dependencies" : [
  ],
  "manifest_display_name" : "BasicServiceLocator",
  "name" : "BasicServiceLocator",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "11.0"
    }
  ],
  "products" : [
    {
      "name" : "BasicServiceLocator",
      "targets" : [
        "BasicServiceLocator"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "swift_languages_versions" : [
    "5"
  ],
  "targets" : [
    {
      "c99name" : "BasicServiceLocatorTests",
      "module_type" : "SwiftTarget",
      "name" : "BasicServiceLocatorTests",
      "path" : "Tests/BasicServiceLocatorTests",
      "sources" : [
        "BasicServiceLocatorTests.swift"
      ],
      "target_dependencies" : [
        "BasicServiceLocator"
      ],
      "type" : "test"
    },
    {
      "c99name" : "BasicServiceLocator",
      "module_type" : "SwiftTarget",
      "name" : "BasicServiceLocator",
      "path" : "Sources/BasicServiceLocator",
      "product_memberships" : [
        "BasicServiceLocator"
      ],
      "sources" : [
        "BasicServiceLocator.swift",
        "ServiceLocator.swift",
        "ServiceLocatorError.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.8"
}
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -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
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-2F0A5646E1D333AE.txt
[3/6] Compiling BasicServiceLocator ServiceLocator.swift
[4/6] Compiling BasicServiceLocator BasicServiceLocator.swift
/Users/admin/builder/spi-builder-workspace/Sources/BasicServiceLocator/BasicServiceLocator.swift:49:13: warning: capture of 'self' with non-sendable type 'BasicServiceLocator' in a '@Sendable' closure
 26 |
 27 | /// Basic Service Locator is the container and resolver of the Services
 28 | final public class BasicServiceLocator: ServiceLocator {
    |                    `- note: class 'BasicServiceLocator' does not conform to the 'Sendable' protocol
 29 |     /// Service registry
 30 |     private lazy var reg: Dictionary<String, RegistryRec> = [:]
    :
 47 |         let key = typeName(type)
 48 |         syncQueue.async(flags: .barrier) {
 49 |             self.reg[key] = .Recipe(lazyInstance)
    |             `- warning: capture of 'self' with non-sendable type 'BasicServiceLocator' in a '@Sendable' closure
 50 |         }
 51 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BasicServiceLocator/BasicServiceLocator.swift:49:37: warning: capture of 'lazyInstance' with non-sendable type '() -> T' in a '@Sendable' closure
 47 |         let key = typeName(type)
 48 |         syncQueue.async(flags: .barrier) {
 49 |             self.reg[key] = .Recipe(lazyInstance)
    |                                     |- warning: capture of 'lazyInstance' with non-sendable type '() -> T' in a '@Sendable' closure
    |                                     `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 50 |         }
 51 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BasicServiceLocator/BasicServiceLocator.swift:60:13: warning: capture of 'self' with non-sendable type 'BasicServiceLocator' in a '@Sendable' closure
 26 |
 27 | /// Basic Service Locator is the container and resolver of the Services
 28 | final public class BasicServiceLocator: ServiceLocator {
    |                    `- note: class 'BasicServiceLocator' does not conform to the 'Sendable' protocol
 29 |     /// Service registry
 30 |     private lazy var reg: Dictionary<String, RegistryRec> = [:]
    :
 58 |         let key = typeName(type)
 59 |         syncQueue.async(flags: .barrier) {
 60 |             self.reg[key] = .Instance(instance)
    |             `- warning: capture of 'self' with non-sendable type 'BasicServiceLocator' in a '@Sendable' closure
 61 |         }
 62 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BasicServiceLocator/BasicServiceLocator.swift:60:39: warning: capture of 'instance' with non-sendable type 'T' in a '@Sendable' closure
 55 |     ///   - type: Service Type to help resolve the name of the service instance
 56 |     ///   - instance: The service instance
 57 |     public func registerService<T>(_ type: T.Type, instance: T) {
    |                                 `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
 58 |         let key = typeName(type)
 59 |         syncQueue.async(flags: .barrier) {
 60 |             self.reg[key] = .Instance(instance)
    |                                       `- warning: capture of 'instance' with non-sendable type 'T' in a '@Sendable' closure
 61 |         }
 62 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BasicServiceLocator/BasicServiceLocator.swift:71:13: warning: capture of 'self' with non-sendable type 'BasicServiceLocator' in a '@Sendable' closure
 26 |
 27 | /// Basic Service Locator is the container and resolver of the Services
 28 | final public class BasicServiceLocator: ServiceLocator {
    |                    `- note: class 'BasicServiceLocator' does not conform to the 'Sendable' protocol
 29 |     /// Service registry
 30 |     private lazy var reg: Dictionary<String, RegistryRec> = [:]
    :
 69 |         let key = typeName(type)
 70 |         syncQueue.async(flags: .barrier) {
 71 |             self.reg[key] = .Transient(factory)
    |             `- warning: capture of 'self' with non-sendable type 'BasicServiceLocator' in a '@Sendable' closure
 72 |         }
 73 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BasicServiceLocator/BasicServiceLocator.swift:71:40: warning: capture of 'factory' with non-sendable type '() -> T' in a '@Sendable' closure
 69 |         let key = typeName(type)
 70 |         syncQueue.async(flags: .barrier) {
 71 |             self.reg[key] = .Transient(factory)
    |                                        |- warning: capture of 'factory' with non-sendable type '() -> T' in a '@Sendable' closure
    |                                        `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 72 |         }
 73 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BasicServiceLocator/BasicServiceLocator.swift:94:17: warning: capture of 'self' with non-sendable type 'BasicServiceLocator' in a '@Sendable' closure
 26 |
 27 | /// Basic Service Locator is the container and resolver of the Services
 28 | final public class BasicServiceLocator: ServiceLocator {
    |                    `- note: class 'BasicServiceLocator' does not conform to the 'Sendable' protocol
 29 |     /// Service registry
 30 |     private lazy var reg: Dictionary<String, RegistryRec> = [:]
    :
 92 |         if case .Recipe = record, let concreteInstance = instance {
 93 |             syncQueue.async(flags: .barrier) {
 94 |                 self.reg[key] = .Instance(concreteInstance)
    |                 `- warning: capture of 'self' with non-sendable type 'BasicServiceLocator' in a '@Sendable' closure
 95 |             }
 96 |         }
/Users/admin/builder/spi-builder-workspace/Sources/BasicServiceLocator/BasicServiceLocator.swift:94:43: warning: capture of 'concreteInstance' with non-sendable type 'T' in a '@Sendable' closure
 76 |     /// - Parameter type: Service Type for the service to be located
 77 |     /// - Returns: Return the service needed
 78 |     public func getService<T>(_ type: T.Type) throws -> T {
    |                            `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
 79 |         let key = typeName(T.self)
 80 |         var registryRec: RegistryRec?
    :
 92 |         if case .Recipe = record, let concreteInstance = instance {
 93 |             syncQueue.async(flags: .barrier) {
 94 |                 self.reg[key] = .Instance(concreteInstance)
    |                                           `- warning: capture of 'concreteInstance' with non-sendable type 'T' in a '@Sendable' closure
 95 |             }
 96 |         }
/Users/admin/builder/spi-builder-workspace/Sources/BasicServiceLocator/BasicServiceLocator.swift:110:13: warning: capture of 'self' with non-sendable type 'BasicServiceLocator' in a '@Sendable' closure
 26 |
 27 | /// Basic Service Locator is the container and resolver of the Services
 28 | final public class BasicServiceLocator: ServiceLocator {
    |                    `- note: class 'BasicServiceLocator' does not conform to the 'Sendable' protocol
 29 |     /// Service registry
 30 |     private lazy var reg: Dictionary<String, RegistryRec> = [:]
    :
108 |         let key = typeName(type)
109 |         syncQueue.async(flags: .barrier) {
110 |             self.reg.removeValue(forKey: key)
    |             `- warning: capture of 'self' with non-sendable type 'BasicServiceLocator' in a '@Sendable' closure
111 |         }
112 |     }
[5/6] Emitting module BasicServiceLocator
[6/6] Compiling BasicServiceLocator ServiceLocatorError.swift
Build complete! (4.62s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "BasicServiceLocator",
  "name" : "BasicServiceLocator",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "11.0"
    }
  ],
  "products" : [
    {
      "name" : "BasicServiceLocator",
      "targets" : [
        "BasicServiceLocator"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "swift_languages_versions" : [
    "5"
  ],
  "targets" : [
    {
      "c99name" : "BasicServiceLocatorTests",
      "module_type" : "SwiftTarget",
      "name" : "BasicServiceLocatorTests",
      "path" : "Tests/BasicServiceLocatorTests",
      "sources" : [
        "BasicServiceLocatorTests.swift"
      ],
      "target_dependencies" : [
        "BasicServiceLocator"
      ],
      "type" : "test"
    },
    {
      "c99name" : "BasicServiceLocator",
      "module_type" : "SwiftTarget",
      "name" : "BasicServiceLocator",
      "path" : "Sources/BasicServiceLocator",
      "product_memberships" : [
        "BasicServiceLocator"
      ],
      "sources" : [
        "BasicServiceLocator.swift",
        "ServiceLocator.swift",
        "ServiceLocatorError.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.8"
}
Done.