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

Swift 6 data race errors: 0

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/netguru/ng-ios-network-module.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/netguru/ng-ios-network-module
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at ac81a63 BN-4308 [REFACTOR] Simplify view state refreshing
Cloned https://github.com/netguru/ng-ios-network-module.git
Revision (git rev-parse @):
ac81a63daecdde6df3efcdf935ac738d32876606
SUCCESS checkout https://github.com/netguru/ng-ios-network-module.git at main
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.0
Building package at path:  $workDir
https://github.com/netguru/ng-ios-network-module.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/4] Write sources
[3/4] Write swift-version-6F35C1178C84523A.txt
[5/21] Compiling NgNetworkModuleCore RequestBuilder.swift
[6/21] Compiling NgNetworkModuleCore NetworkRequestType.swift
[7/21] Compiling NgNetworkModuleCore NetworkSession.swift
[8/21] Compiling NgNetworkModuleCore NetworkRequest.swift
[9/21] Compiling NgNetworkModuleCore NetworkModuleAction.swift
/Users/admin/builder/spi-builder-workspace/Sources/NgNetworkModuleCore/NetworkModule/DefaultNetworkModule.swift:73:17: warning: capture of 'self' with non-sendable type 'DefaultNetworkModule?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  9 |
 10 | /// Default implementation of NetworkModule.
 11 | public final class DefaultNetworkModule: NetworkModule {
    |                    `- note: class 'DefaultNetworkModule' does not conform to the 'Sendable' protocol
 12 |     private let requestBuilder: RequestBuilder
 13 |     private let urlSession: NetworkSession
    :
 71 |         let task = urlSession.dataTask(with: urlRequest) { [weak self] data, response, error in
 72 |             if let error = error as NSError? {
 73 |                 self?.handle(error: error, completion: completion)
    |                 `- warning: capture of 'self' with non-sendable type 'DefaultNetworkModule?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 74 |             } else if let response = response as? HTTPURLResponse {
 75 |                 self?.handle(response: response, data: data, request: networkRequest, completion: completion)
/Users/admin/builder/spi-builder-workspace/Sources/NgNetworkModuleCore/NetworkModule/DefaultNetworkModule.swift:73:56: warning: capture of 'completion' with non-sendable type '((Result<NetworkResponse, NetworkError>) -> Void)?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 71 |         let task = urlSession.dataTask(with: urlRequest) { [weak self] data, response, error in
 72 |             if let error = error as NSError? {
 73 |                 self?.handle(error: error, completion: completion)
    |                                                        |- warning: capture of 'completion' with non-sendable type '((Result<NetworkResponse, NetworkError>) -> Void)?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
    |                                                        `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 74 |             } else if let response = response as? HTTPURLResponse {
 75 |                 self?.handle(response: response, data: data, request: networkRequest, completion: completion)
/Users/admin/builder/spi-builder-workspace/Sources/NgNetworkModuleCore/NetworkModule/DefaultNetworkModule.swift:75:71: warning: capture of 'networkRequest' with non-sendable type '(any NetworkRequest)?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 73 |                 self?.handle(error: error, completion: completion)
 74 |             } else if let response = response as? HTTPURLResponse {
 75 |                 self?.handle(response: response, data: data, request: networkRequest, completion: completion)
    |                                                                       `- warning: capture of 'networkRequest' with non-sendable type '(any NetworkRequest)?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 76 |             } else {
 77 |                 self?.execute(completionCallback: completion, result: .failure(NetworkError.unknown))
/Users/admin/builder/spi-builder-workspace/Sources/NgNetworkModuleCore/NetworkRequest/NetworkRequest.swift:11:17: note: protocol 'NetworkRequest' does not conform to the 'Sendable' protocol
  9 |
 10 | /// An abstraction describing networking module request.
 11 | public protocol NetworkRequest {
    |                 `- note: protocol 'NetworkRequest' does not conform to the 'Sendable' protocol
 12 |
 13 |     /// A request path.
[10/21] Compiling NgNetworkModuleCore DefaultNetworkModule.swift
/Users/admin/builder/spi-builder-workspace/Sources/NgNetworkModuleCore/NetworkModule/DefaultNetworkModule.swift:73:17: warning: capture of 'self' with non-sendable type 'DefaultNetworkModule?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  9 |
 10 | /// Default implementation of NetworkModule.
 11 | public final class DefaultNetworkModule: NetworkModule {
    |                    `- note: class 'DefaultNetworkModule' does not conform to the 'Sendable' protocol
 12 |     private let requestBuilder: RequestBuilder
 13 |     private let urlSession: NetworkSession
    :
 71 |         let task = urlSession.dataTask(with: urlRequest) { [weak self] data, response, error in
 72 |             if let error = error as NSError? {
 73 |                 self?.handle(error: error, completion: completion)
    |                 `- warning: capture of 'self' with non-sendable type 'DefaultNetworkModule?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 74 |             } else if let response = response as? HTTPURLResponse {
 75 |                 self?.handle(response: response, data: data, request: networkRequest, completion: completion)
/Users/admin/builder/spi-builder-workspace/Sources/NgNetworkModuleCore/NetworkModule/DefaultNetworkModule.swift:73:56: warning: capture of 'completion' with non-sendable type '((Result<NetworkResponse, NetworkError>) -> Void)?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 71 |         let task = urlSession.dataTask(with: urlRequest) { [weak self] data, response, error in
 72 |             if let error = error as NSError? {
 73 |                 self?.handle(error: error, completion: completion)
    |                                                        |- warning: capture of 'completion' with non-sendable type '((Result<NetworkResponse, NetworkError>) -> Void)?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
    |                                                        `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 74 |             } else if let response = response as? HTTPURLResponse {
 75 |                 self?.handle(response: response, data: data, request: networkRequest, completion: completion)
/Users/admin/builder/spi-builder-workspace/Sources/NgNetworkModuleCore/NetworkModule/DefaultNetworkModule.swift:75:71: warning: capture of 'networkRequest' with non-sendable type '(any NetworkRequest)?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 73 |                 self?.handle(error: error, completion: completion)
 74 |             } else if let response = response as? HTTPURLResponse {
 75 |                 self?.handle(response: response, data: data, request: networkRequest, completion: completion)
    |                                                                       `- warning: capture of 'networkRequest' with non-sendable type '(any NetworkRequest)?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 76 |             } else {
 77 |                 self?.execute(completionCallback: completion, result: .failure(NetworkError.unknown))
/Users/admin/builder/spi-builder-workspace/Sources/NgNetworkModuleCore/NetworkRequest/NetworkRequest.swift:11:17: note: protocol 'NetworkRequest' does not conform to the 'Sendable' protocol
  9 |
 10 | /// An abstraction describing networking module request.
 11 | public protocol NetworkRequest {
    |                 `- note: protocol 'NetworkRequest' does not conform to the 'Sendable' protocol
 12 |
 13 |     /// A request path.
[11/21] Compiling NgNetworkModuleCore AsynchronousOperationsExecutor.swift
/Users/admin/builder/spi-builder-workspace/Sources/NgNetworkModuleCore/Common/OperationsExecutor/AsynchronousOperationsExecutor.swift:24:13: warning: capture of 'block' with non-sendable type '() -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
22 |     public func execute(_ block: @escaping () -> Void) {
23 |         type.queue.async {
24 |             block()
   |             |- warning: capture of 'block' with non-sendable type '() -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
   |             `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
25 |         }
26 |     }
[12/21] Compiling NgNetworkModuleCore BackgroundQueueOperationsExecutor.swift
/Users/admin/builder/spi-builder-workspace/Sources/NgNetworkModuleCore/Common/OperationsExecutor/AsynchronousOperationsExecutor.swift:24:13: warning: capture of 'block' with non-sendable type '() -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
22 |     public func execute(_ block: @escaping () -> Void) {
23 |         type.queue.async {
24 |             block()
   |             |- warning: capture of 'block' with non-sendable type '() -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
   |             `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
25 |         }
26 |     }
[13/21] Compiling NgNetworkModuleCore MainQueueOperationsExecutor.swift
[14/21] Compiling NgNetworkModuleCore NetworkError.swift
[15/21] Compiling NgNetworkModuleCore NetworkErrorConvertible.swift
[16/21] Compiling NgNetworkModuleCore AddAuthenticationTokenNetworkModuleAction.swift
[17/21] Emitting module NgNetworkModuleCore
[18/21] Compiling NgNetworkModuleCore Data+Codable.swift
[19/21] Compiling NgNetworkModuleCore AsynchronousExecutorType.swift
[20/21] Compiling NgNetworkModuleCore AuthenticationTokenProvider.swift
[21/21] Compiling NgNetworkModuleCore NetworkModule.swift
[22/22] Compiling NgNetworkModuleCore NetworkResponse.swift
[23/29] Compiling ReactiveNgNetworkModule ReactiveNgNetworkModule.swift
[24/29] Compiling ConcurrentNgNetworkModule ConcurrentNgNetworkModule.swift
[25/29] Emitting module ConcurrentNgNetworkModule
[26/29] Emitting module ReactiveNgNetworkModule
[27/29] Compiling ReactiveNgNetworkModule NetworkResponsePublisher.swift
[28/29] Compiling ReactiveNgNetworkModule NetworkResponsePublisher+HandleAndDecode.swift
[29/29] Compiling ReactiveNgNetworkModule NetworkResponseSubscription.swift
Build complete! (23.33s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "NgNetworkModule",
  "name" : "NgNetworkModule",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "13.0"
    },
    {
      "name" : "macos",
      "version" : "10.15"
    }
  ],
  "products" : [
    {
      "name" : "NgNetworkModuleCore",
      "targets" : [
        "NgNetworkModuleCore"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "ReactiveNgNetworkModule",
      "targets" : [
        "ReactiveNgNetworkModule"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "ConcurrentNgNetworkModule",
      "targets" : [
        "ConcurrentNgNetworkModule"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "ReactiveNgNetworkModuleTests",
      "module_type" : "SwiftTarget",
      "name" : "ReactiveNgNetworkModuleTests",
      "path" : "Tests/ReactiveNgNetworkModuleTests",
      "sources" : [
        "Fakes/FakeNetworkModule.swift",
        "Fakes/FakeNetworkRequests.swift",
        "Fakes/FakeNetworkResponse.swift",
        "NetworkModule/NetworkModulePrimaryReactiveAPITests.swift",
        "NetworkModule/NetworkModuleSupplementaryReactiveAPITests.swift"
      ],
      "target_dependencies" : [
        "ReactiveNgNetworkModule"
      ],
      "type" : "test"
    },
    {
      "c99name" : "ReactiveNgNetworkModule",
      "module_type" : "SwiftTarget",
      "name" : "ReactiveNgNetworkModule",
      "path" : "Sources/ReactiveNgNetworkModule",
      "product_memberships" : [
        "ReactiveNgNetworkModule"
      ],
      "sources" : [
        "NetworkModule/ReactiveNgNetworkModule.swift",
        "Publishers/NetworkResponsePublisher+HandleAndDecode.swift",
        "Publishers/NetworkResponsePublisher.swift",
        "Subscriptions/NetworkResponseSubscription.swift"
      ],
      "target_dependencies" : [
        "NgNetworkModuleCore"
      ],
      "type" : "library"
    },
    {
      "c99name" : "NgNetworkModuleCoreTests",
      "module_type" : "SwiftTarget",
      "name" : "NgNetworkModuleCoreTests",
      "path" : "Tests/NgNetworkModuleCoreTests",
      "sources" : [
        "Common/BackgroundQueueOperationsExecutorTests.swift",
        "Common/MainQueueOperationsExecutorTests.swift",
        "NetworkError/NetworkErrorConvertibleTests.swift",
        "NetworkError/NetworkErrorTests.swift",
        "NetworkModule/Actions/AddAuthenticationTokenNetworkModuleActionTests.swift",
        "NetworkModule/Actions/Fakes/FakeAuthenticationTokenProvider.swift",
        "NetworkModule/Actions/NetworkModuleActionTests.swift",
        "NetworkModule/Fakes/FakeAsynchronousOperationsExecutor.swift",
        "NetworkModule/Fakes/FakeNetworkModuleAction.swift",
        "NetworkModule/Fakes/FakeNetworkSession.swift",
        "NetworkModule/Fakes/FakeRequestBuilder.swift",
        "NetworkModule/Helpers/AuthenticationTokenProviderTests.swift",
        "NetworkModule/NetworkModuleTests.swift",
        "NetworkReponse/NetworkResponseTests.swift",
        "NetworkRequest/Fakes/FakeNetworkRequest.swift",
        "NetworkRequest/NetworkRequestTests.swift",
        "NetworkRequest/NetworkRequestTypeTests.swift",
        "NetworkRequest/RequestBuilder/DefaultRequestBuilderTests.swift"
      ],
      "target_dependencies" : [
        "NgNetworkModuleCore"
      ],
      "type" : "test"
    },
    {
      "c99name" : "NgNetworkModuleCore",
      "module_type" : "SwiftTarget",
      "name" : "NgNetworkModuleCore",
      "path" : "Sources/NgNetworkModuleCore",
      "product_memberships" : [
        "NgNetworkModuleCore",
        "ReactiveNgNetworkModule",
        "ConcurrentNgNetworkModule"
      ],
      "sources" : [
        "Common/Extensions/Data+Codable.swift",
        "Common/OperationsExecutor/AsynchronousExecutorType.swift",
        "Common/OperationsExecutor/AsynchronousOperationsExecutor.swift",
        "Common/OperationsExecutor/BackgroundQueueOperationsExecutor.swift",
        "Common/OperationsExecutor/MainQueueOperationsExecutor.swift",
        "NetworkError/NetworkError.swift",
        "NetworkError/NetworkErrorConvertible.swift",
        "NetworkModule/Actions/AddAuthenticationTokenNetworkModuleAction.swift",
        "NetworkModule/Actions/NetworkModuleAction.swift",
        "NetworkModule/DefaultNetworkModule.swift",
        "NetworkModule/Helpers/AuthenticationTokenProvider.swift",
        "NetworkModule/NetworkModule.swift",
        "NetworkModule/Session/NetworkSession.swift",
        "NetworkRequest/NetworkRequest.swift",
        "NetworkRequest/NetworkRequestType.swift",
        "NetworkRequest/RequestBuilder/RequestBuilder.swift",
        "NetworkResponse/NetworkResponse.swift"
      ],
      "type" : "library"
    },
    {
      "c99name" : "ConcurrentNgNetworkModuleTests",
      "module_type" : "SwiftTarget",
      "name" : "ConcurrentNgNetworkModuleTests",
      "path" : "Tests/ConcurrentNgNetworkModuleTests",
      "sources" : [
        "Fakes/FakeNetworkModule.swift",
        "NetworkModule/ConcurrentNetworkModuleTests.swift"
      ],
      "target_dependencies" : [
        "ConcurrentNgNetworkModule"
      ],
      "type" : "test"
    },
    {
      "c99name" : "ConcurrentNgNetworkModule",
      "module_type" : "SwiftTarget",
      "name" : "ConcurrentNgNetworkModule",
      "path" : "Sources/ConcurrentNgNetworkModule",
      "product_memberships" : [
        "ConcurrentNgNetworkModule"
      ],
      "sources" : [
        "NetworkModule/ConcurrentNgNetworkModule.swift"
      ],
      "target_dependencies" : [
        "NgNetworkModuleCore"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.4"
}
Done.
This is a staging environment. For live and up-to-date package information, visit swiftpackageindex.com.