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 w3w-swift-voice-api, reference main (9c9d1c), with Swift 6.0 for macOS (SPM) on 2 Dec 2024 11:06:50 UTC.

Swift 6 data race errors: 3

Build Command

env DEVELOPER_DIR=/Applications/Xcode-16.1.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.58.2
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/what3words/w3w-swift-voice-api.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/what3words/w3w-swift-voice-api
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at 9c9d1c8 Merge pull request #2 from what3words/staging
Cloned https://github.com/what3words/w3w-swift-voice-api.git
Revision (git rev-parse @):
9c9d1c811d1f73f56c2e250ccb521aaee8adff49
SUCCESS checkout https://github.com/what3words/w3w-swift-voice-api.git at main
Fetching https://github.com/what3words/w3w-swift-core.git
[7/306] Fetching w3w-swift-core
Fetched https://github.com/what3words/w3w-swift-core.git from cache (0.77s)
Computing version for https://github.com/what3words/w3w-swift-core.git
Computed https://github.com/what3words/w3w-swift-core.git at 1.1.2 (0.54s)
Creating working copy for https://github.com/what3words/w3w-swift-core.git
Working copy of https://github.com/what3words/w3w-swift-core.git resolved at 1.1.2
========================================
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": "w3w-swift-voice-api",
      "name": "w3w-swift-voice-api",
      "url": "https://github.com/what3words/w3w-swift-voice-api.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/w3w-swift-voice-api",
      "dependencies": [
        {
          "identity": "w3w-swift-core",
          "name": "w3w-swift-core",
          "url": "https://github.com/what3words/w3w-swift-core.git",
          "version": "1.1.2",
          "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/w3w-swift-core",
          "dependencies": [
          ]
        }
      ]
    }
  ]
}
Fetching https://github.com/what3words/w3w-swift-voice-api.git
[1/55] Fetching w3w-swift-voice-api
Fetched https://github.com/what3words/w3w-swift-voice-api.git from cache (1.08s)
Fetching https://github.com/what3words/w3w-swift-core.git from cache
Fetched https://github.com/what3words/w3w-swift-core.git from cache (0.45s)
Computing version for https://github.com/what3words/w3w-swift-core.git
Computed https://github.com/what3words/w3w-swift-core.git at 1.1.2 (0.02s)
Creating working copy for https://github.com/what3words/w3w-swift-core.git
Working copy of https://github.com/what3words/w3w-swift-core.git resolved at 1.1.2
Creating working copy for https://github.com/what3words/w3w-swift-voice-api.git
Working copy of https://github.com/what3words/w3w-swift-voice-api.git resolved at main (9c9d1c8)
warning: '.resolve-product-dependencies': dependency 'w3w-swift-voice-api' is not used by any target
Found 1 product dependencies
  - w3w-swift-core
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.0
Building package at path:  $PWD
https://github.com/what3words/w3w-swift-voice-api.git
{
  "dependencies" : [
    {
      "identity" : "w3w-swift-core",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.0.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/what3words/w3w-swift-core.git"
    }
  ],
  "manifest_display_name" : "w3w-swift-voice-api",
  "name" : "w3w-swift-voice-api",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "10.12"
    },
    {
      "name" : "ios",
      "version" : "10.0"
    },
    {
      "name" : "tvos",
      "version" : "10.0"
    },
    {
      "name" : "watchos",
      "version" : "2.0"
    }
  ],
  "products" : [
    {
      "name" : "W3WSwiftVoiceApi",
      "targets" : [
        "W3WSwiftVoiceApi"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "w3w_swift_wrapper_voiceTests",
      "module_type" : "SwiftTarget",
      "name" : "w3w-swift-wrapper-voiceTests",
      "path" : "Tests/w3w-swift-wrapper-voiceTests",
      "sources" : [
        "w3w_swift_wrapperTests.swift"
      ],
      "target_dependencies" : [
        "W3WSwiftVoiceApi"
      ],
      "type" : "test"
    },
    {
      "c99name" : "W3WSwiftVoiceApi",
      "module_type" : "SwiftTarget",
      "name" : "W3WSwiftVoiceApi",
      "path" : "Sources/W3WSwiftVoiceApi",
      "product_dependencies" : [
        "W3WSwiftCore"
      ],
      "product_memberships" : [
        "W3WSwiftVoiceApi"
      ],
      "sources" : [
        "Export.swift",
        "Extensions/W3WError.swift",
        "Extensions/W3WVoiceSuggestion.swift",
        "Json/JsonVoiceError.swift",
        "Json/JsonVoiceLanguage.swift",
        "Json/JsonVoiceLanguages.swift",
        "Json/JsonVoiceResponse.swift",
        "Json/JsonVoiceSuggestion.swift",
        "Json/W3WJsonVoiceError.swift",
        "Network/W3WApiCall.swift",
        "Network/W3WVoiceSocket.swift",
        "Network/W3WebSocket.swift",
        "Types/W3WTypes.swift",
        "W3WSettings.swift",
        "W3WVoiceApi.swift",
        "WatchOS/W3WVoiceUpload.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.6"
}
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.1.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/3] Write sources
[2/3] Write swift-version--7754E27361AE5C74.txt
[4/50] Emitting module W3WSwiftCore
[5/55] Compiling W3WSwiftCore W3WAudioStreamProtocol.swift
[6/55] Compiling W3WSwiftCore W3WVoiceListeningState.swift
[7/55] Compiling W3WSwiftCore W3WVoiceProtocol.swift
[8/55] Compiling W3WSwiftCore W3WVoiceSuggestion+W3WSwiftCore.swift
[9/55] Compiling W3WSwiftCore W3WSettings+W3WSwiftCore.swift
[10/55] Compiling W3WSwiftCore W3WDuration.swift
[11/55] Compiling W3WSwiftCore ClosureDefinitions.swift
[12/55] Compiling W3WSwiftCore W3WError+W3WSwiftCore.swift
[13/55] Compiling W3WSwiftCore W3WMeasurementSystem.swift
[14/55] Compiling W3WSwiftCore W3WUtilitiesProtocol.swift
[15/55] Compiling W3WSwiftCore W3WCountry.swift
[16/55] Compiling W3WSwiftCore W3WLanguage.swift
[17/55] Compiling W3WSwiftCore W3WRanked.swift
[18/55] Compiling W3WSwiftCore W3WSquare.swift
[19/55] Compiling W3WSwiftCore W3WSuggestion.swift
[20/55] Compiling W3WSwiftCore W3WGpsStatus.swift
[21/55] Compiling W3WSwiftCore W3WProtocolV3.swift
[22/55] Compiling W3WSwiftCore W3WProtocolV4.swift
[23/55] Compiling W3WSwiftCore W3WMockTranslation.swift
[24/55] Compiling W3WSwiftCore W3WTranslate.swift
[25/55] Compiling W3WSwiftCore ApiExtension.swift
[26/55] Compiling W3WSwiftCore SdkExtension.swift
[27/55] Compiling W3WSwiftCore SdkTypes.swift
[28/55] Compiling W3WSwiftCore W3WGpsReading.swift
[29/55] Compiling W3WSwiftCore W3WGpsState.swift
[30/55] Compiling W3WSwiftCore W3WEventsSubscriptions.swift
[31/55] Compiling W3WSwiftCore W3WLive.swift
[32/55] Compiling W3WSwiftCore W3WRegex.swift
[33/55] Compiling W3WSwiftCore W3WDebouncer.swift
[34/55] Compiling W3WSwiftCore W3WThread.swift
[35/55] Compiling W3WSwiftCore W3WTranslationsProtocol.swift
[36/55] Compiling W3WSwiftCore W3WJson.swift
[37/55] Compiling W3WSwiftCore W3WRequest.swift
[38/55] Compiling W3WSwiftCore W3WEvent.swift
[39/55] Compiling W3WSwiftCore W3WEventSubscriberProtocol.swift
[40/55] Compiling W3WSwiftCore W3WInputType.swift
[41/55] Compiling W3WSwiftCore W3WOption.swift
[42/55] Compiling W3WSwiftCore W3WOptionAcceptorProtocol.swift
[43/55] Compiling W3WSwiftCore W3WOptionProtocol.swift
[44/55] Compiling W3WSwiftCore W3WOptions.swift
[45/55] Compiling W3WSwiftCore W3WBox.swift
[46/55] Compiling W3WSwiftCore W3WCircle.swift
[47/55] Compiling W3WSwiftCore W3WDistance.swift
[48/55] Compiling W3WSwiftCore W3WLine.swift
[49/55] Compiling W3WSwiftCore W3WPolygon.swift
[50/55] Compiling W3WSwiftCore W3WUser.swift
[51/55] Compiling W3WSwiftCore W3WAudioRecorder.swift
[52/55] Compiling W3WSwiftCore W3WAudioRecording.swift
[53/55] Compiling W3WSwiftCore W3WAudioStream.swift
[54/55] Compiling W3WSwiftCore W3WEncoding.swift
[55/55] Compiling W3WSwiftCore W3WMicrophone.swift
[56/71] Compiling W3WSwiftVoiceApi W3WVoiceApi.swift
[57/72] Compiling W3WSwiftVoiceApi W3WVoiceUpload.swift
/Users/admin/builder/spi-builder-workspace/Sources/W3WSwiftVoiceApi/WatchOS/W3WVoiceUpload.swift:119:9: warning: capture of 'callback' with non-sendable type 'W3WVoiceSuggestionsResponse' (aka '(Optional<Array<W3WVoiceSuggestion>>, Optional<W3WError>) -> ()') in a `@Sendable` closure; this is an error in the Swift 6 language mode
117 |       print("Got Reply From Server")
118 |       if error != nil {
119 |         callback(nil, W3WError.voiceSocketError(error: W3WVoiceSocketError.other(error: error ?? W3WError.unknown)))
    |         |- warning: capture of 'callback' with non-sendable type 'W3WVoiceSuggestionsResponse' (aka '(Optional<Array<W3WVoiceSuggestion>>, Optional<W3WError>) -> ()') 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'
120 |         return
121 |
/Users/admin/builder/spi-builder-workspace/Sources/W3WSwiftVoiceApi/WatchOS/W3WVoiceUpload.swift:123:9: warning: capture of 'self' with non-sendable type 'W3WVoiceUploadApi' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 12 |
 13 | /// Communicates with the Speechmatics API
 14 | public class W3WVoiceUploadApi {
    |              `- note: class 'W3WVoiceUploadApi' does not conform to the 'Sendable' protocol
 15 |
 16 |   let endpoint: String!
    :
121 |
122 |       } else if let d = data {
123 |         self.recieved(data: d, callback: callback)
    |         `- warning: capture of 'self' with non-sendable type 'W3WVoiceUploadApi' in a `@Sendable` closure; this is an error in the Swift 6 language mode
124 |         return
125 |
/Users/admin/builder/spi-builder-workspace/Sources/W3WSwiftVoiceApi/WatchOS/W3WVoiceUpload.swift:173:66: warning: reference to static property 'defaultLanguage' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
171 |     // if no language is specified then add a default one
172 |     if !checkForLanguageOption(options: options) {
173 |       filteredOptions.append(W3WOption.voiceLanguage(W3WSettings.defaultLanguage))
    |                                                                  `- warning: reference to static property 'defaultLanguage' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
174 |     }
175 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/w3w-swift-core/Sources/W3WSwiftCore/W3WSettings+W3WSwiftCore.swift:21:21: note: static property declared here
19 |
20 |   // language to defaul to when not provided in a call
21 |   public static var defaultLanguage = W3WBaseLanguage(code: "en", name: "English", nativeName: "English")
   |                     `- note: static property declared here
22 |
23 |
/Users/admin/builder/spi-builder-workspace/Sources/W3WSwiftVoiceApi/WatchOS/W3WVoiceUpload.swift:185:56: warning: reference to static property 'defaultLanguage' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
183 |
184 |   func addLanguageOption() -> String {
185 |     let language = W3WOption.voiceLanguage(W3WSettings.defaultLanguage)
    |                                                        `- warning: reference to static property 'defaultLanguage' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
186 |     return language.key() + "=" + language.asString()
187 |   }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/w3w-swift-core/Sources/W3WSwiftCore/W3WSettings+W3WSwiftCore.swift:21:21: note: static property declared here
19 |
20 |   // language to defaul to when not provided in a call
21 |   public static var defaultLanguage = W3WBaseLanguage(code: "en", name: "English", nativeName: "English")
   |                     `- note: static property declared here
22 |
23 |
[58/72] Compiling W3WSwiftVoiceApi W3WSettings.swift
[59/72] Compiling W3WSwiftVoiceApi W3WJsonVoiceError.swift
[60/72] Compiling W3WSwiftVoiceApi W3WApiCall.swift
[61/72] Compiling W3WSwiftVoiceApi JsonVoiceLanguage.swift
[62/72] Compiling W3WSwiftVoiceApi JsonVoiceLanguages.swift
[63/72] Compiling W3WSwiftVoiceApi JsonVoiceResponse.swift
[64/72] Compiling W3WSwiftVoiceApi JsonVoiceSuggestion.swift
[65/72] Emitting module W3WSwiftVoiceApi
/Users/admin/builder/spi-builder-workspace/Sources/W3WSwiftVoiceApi/Network/W3WVoiceSocket.swift:62:30: warning: reference to static property 'defaultLanguage' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
 60 |
 61 |   /// default language
 62 |   var language = W3WSettings.defaultLanguage
    |                              `- warning: reference to static property 'defaultLanguage' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
 63 |
 64 |   /// Socket session
/Users/admin/builder/spi-builder-workspace/.build/checkouts/w3w-swift-core/Sources/W3WSwiftCore/W3WSettings+W3WSwiftCore.swift:21:21: note: static property declared here
19 |
20 |   // language to defaul to when not provided in a call
21 |   public static var defaultLanguage = W3WBaseLanguage(code: "en", name: "English", nativeName: "English")
   |                     `- note: static property declared here
22 |
23 |
/Users/admin/builder/spi-builder-workspace/Sources/W3WSwiftVoiceApi/Network/W3WebSocket.swift:1699:14: warning: static property 'bufferSize' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
1697 |   fileprivate var opened: Bool
1698 |
1699 |   static var bufferSize = 0x2000
     |              |- warning: static property 'bufferSize' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |              |- note: convert 'bufferSize' to a 'let' constant to make 'Sendable' shared state immutable
     |              |- note: annotate 'bufferSize' 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
1700 |
1701 |   open override var hash: Int { return id }
/Users/admin/builder/spi-builder-workspace/Sources/W3WSwiftVoiceApi/Network/W3WebSocket.swift:1690:13: warning: let 'manager' is not concurrency-safe because non-'Sendable' type 'W3Manager' may have shared mutable state; this is an error in the Swift 6 language mode
1608 | // using fewers threads. Helps tremendously with lowing system resources when many conncurrent
1609 | // sockets are opened.
1610 | private class W3Manager {
     |               `- note: class 'W3Manager' does not conform to the 'Sendable' protocol
1611 |   var queue = DispatchQueue(label: "SwiftWebSocketInstance", attributes: [])
1612 |   var once = Int()
     :
1688 | }
1689 |
1690 | private let manager = W3Manager()
     |             |- warning: let 'manager' is not concurrency-safe because non-'Sendable' type 'W3Manager' may have shared mutable state; this is an error in the Swift 6 language mode
     |             |- note: annotate 'manager' 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
1691 |
1692 | /// WebSocket objects are bidirectional network streams that communicate over HTTP. RFC 6455.
[66/72] Compiling W3WSwiftVoiceApi Export.swift
[67/72] Compiling W3WSwiftVoiceApi W3WError.swift
[68/72] Compiling W3WSwiftVoiceApi W3WTypes.swift
[69/72] Compiling W3WSwiftVoiceApi W3WVoiceSocket.swift
/Users/admin/builder/spi-builder-workspace/Sources/W3WSwiftVoiceApi/Network/W3WVoiceSocket.swift:62:30: warning: reference to static property 'defaultLanguage' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
 60 |
 61 |   /// default language
 62 |   var language = W3WSettings.defaultLanguage
    |                              `- warning: reference to static property 'defaultLanguage' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
 63 |
 64 |   /// Socket session
/Users/admin/builder/spi-builder-workspace/.build/checkouts/w3w-swift-core/Sources/W3WSwiftCore/W3WSettings+W3WSwiftCore.swift:21:21: note: static property declared here
19 |
20 |   // language to defaul to when not provided in a call
21 |   public static var defaultLanguage = W3WBaseLanguage(code: "en", name: "English", nativeName: "English")
   |                     `- note: static property declared here
22 |
23 |
/Users/admin/builder/spi-builder-workspace/Sources/W3WSwiftVoiceApi/Network/W3WebSocket.swift:1699:14: warning: static property 'bufferSize' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
1697 |   fileprivate var opened: Bool
1698 |
1699 |   static var bufferSize = 0x2000
     |              |- warning: static property 'bufferSize' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |              |- note: convert 'bufferSize' to a 'let' constant to make 'Sendable' shared state immutable
     |              |- note: annotate 'bufferSize' 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
1700 |
1701 |   open override var hash: Int { return id }
/Users/admin/builder/spi-builder-workspace/Sources/W3WSwiftVoiceApi/Network/W3WebSocket.swift:1690:13: warning: let 'manager' is not concurrency-safe because non-'Sendable' type 'W3Manager' may have shared mutable state; this is an error in the Swift 6 language mode
1608 | // using fewers threads. Helps tremendously with lowing system resources when many conncurrent
1609 | // sockets are opened.
1610 | private class W3Manager {
     |               `- note: class 'W3Manager' does not conform to the 'Sendable' protocol
1611 |   var queue = DispatchQueue(label: "SwiftWebSocketInstance", attributes: [])
1612 |   var once = Int()
     :
1688 | }
1689 |
1690 | private let manager = W3Manager()
     |             |- warning: let 'manager' is not concurrency-safe because non-'Sendable' type 'W3Manager' may have shared mutable state; this is an error in the Swift 6 language mode
     |             |- note: annotate 'manager' 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
1691 |
1692 | /// WebSocket objects are bidirectional network streams that communicate over HTTP. RFC 6455.
/Users/admin/builder/spi-builder-workspace/Sources/W3WSwiftVoiceApi/Network/W3WebSocket.swift:655:13: warning: capture of 'self' with non-sendable type 'W3InnerWebSocket' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 544 |
 545 | /// WebSocket objects are bidirectional network streams that communicate over HTTP. RFC 6455.
 546 | private class W3InnerWebSocket: Hashable {
     |               `- note: class 'W3InnerWebSocket' does not conform to the 'Sendable' protocol
 547 |   var id : Int
 548 |   var mutex = pthread_mutex_t()
     :
 653 |     if stub{
 654 |       manager.queue.asyncAfter(deadline: DispatchTime.now() + Double(0) / Double(NSEC_PER_SEC)){
 655 |         _ = self
     |             `- warning: capture of 'self' with non-sendable type 'W3InnerWebSocket' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 656 |       }
 657 |     } else {
/Users/admin/builder/spi-builder-workspace/Sources/W3WSwiftVoiceApi/Network/W3WebSocket.swift:659:21: warning: capture of 'self' with non-sendable type 'W3InnerWebSocket' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 544 |
 545 | /// WebSocket objects are bidirectional network streams that communicate over HTTP. RFC 6455.
 546 | private class W3InnerWebSocket: Hashable {
     |               `- note: class 'W3InnerWebSocket' does not conform to the 'Sendable' protocol
 547 |   var id : Int
 548 |   var mutex = pthread_mutex_t()
     :
 657 |     } else {
 658 |       manager.queue.asyncAfter(deadline: DispatchTime.now() + Double(0) / Double(NSEC_PER_SEC)){
 659 |         manager.add(self)
     |                     `- warning: capture of 'self' with non-sendable type 'W3InnerWebSocket' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 660 |       }
 661 |     }
/Users/admin/builder/spi-builder-workspace/Sources/W3WSwiftVoiceApi/Network/W3WebSocket.swift:861:15: warning: capture of 'self' with non-sendable type 'W3InnerWebSocket' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 544 |
 545 | /// WebSocket objects are bidirectional network streams that communicate over HTTP. RFC 6455.
 546 | private class W3InnerWebSocket: Hashable {
     |               `- note: class 'W3InnerWebSocket' does not conform to the 'Sendable' protocol
 547 |   var id : Int
 548 |   var mutex = pthread_mutex_t()
     :
 859 |           } else {
 860 |             manager.queue.asyncAfter(deadline: DispatchTime.now() + Double(0) / Double(NSEC_PER_SEC)){
 861 |               self.lock()
     |               `- warning: capture of 'self' with non-sendable type 'W3InnerWebSocket' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 862 |               self.frames += [frame]
 863 |               self.unlock()
/Users/admin/builder/spi-builder-workspace/Sources/W3WSwiftVoiceApi/Network/W3WebSocket.swift:862:31: warning: capture of 'frame' with non-sendable type 'W3Frame' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 346 | }
 347 |
 348 | private class W3Frame {
     |               `- note: class 'W3Frame' does not conform to the 'Sendable' protocol
 349 |   var inflate = false
 350 |   var code = OpCode.continue
     :
 860 |             manager.queue.asyncAfter(deadline: DispatchTime.now() + Double(0) / Double(NSEC_PER_SEC)){
 861 |               self.lock()
 862 |               self.frames += [frame]
     |                               `- warning: capture of 'frame' with non-sendable type 'W3Frame' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 863 |               self.unlock()
 864 |               manager.signal()
/Users/admin/builder/spi-builder-workspace/Sources/W3WSwiftVoiceApi/Network/W3WebSocket.swift:1625:29: warning: capture of 'self' with non-sendable type 'W3Manager' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1608 | // using fewers threads. Helps tremendously with lowing system resources when many conncurrent
1609 | // sockets are opened.
1610 | private class W3Manager {
     |               `- note: class 'W3Manager' does not conform to the 'Sendable' protocol
1611 |   var queue = DispatchQueue(label: "SwiftWebSocketInstance", attributes: [])
1612 |   var once = Int()
     :
1623 |         var wait = true
1624 |         wss.removeAll()
1625 |         pthread_mutex_lock(&self.mutex)
     |                             `- warning: capture of 'self' with non-sendable type 'W3Manager' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1626 |         for ws in self.websockets {
1627 |           wss.append(ws)
[70/72] Compiling W3WSwiftVoiceApi W3WebSocket.swift
/Users/admin/builder/spi-builder-workspace/Sources/W3WSwiftVoiceApi/Network/W3WVoiceSocket.swift:62:30: warning: reference to static property 'defaultLanguage' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
 60 |
 61 |   /// default language
 62 |   var language = W3WSettings.defaultLanguage
    |                              `- warning: reference to static property 'defaultLanguage' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
 63 |
 64 |   /// Socket session
/Users/admin/builder/spi-builder-workspace/.build/checkouts/w3w-swift-core/Sources/W3WSwiftCore/W3WSettings+W3WSwiftCore.swift:21:21: note: static property declared here
19 |
20 |   // language to defaul to when not provided in a call
21 |   public static var defaultLanguage = W3WBaseLanguage(code: "en", name: "English", nativeName: "English")
   |                     `- note: static property declared here
22 |
23 |
/Users/admin/builder/spi-builder-workspace/Sources/W3WSwiftVoiceApi/Network/W3WebSocket.swift:1699:14: warning: static property 'bufferSize' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
1697 |   fileprivate var opened: Bool
1698 |
1699 |   static var bufferSize = 0x2000
     |              |- warning: static property 'bufferSize' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |              |- note: convert 'bufferSize' to a 'let' constant to make 'Sendable' shared state immutable
     |              |- note: annotate 'bufferSize' 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
1700 |
1701 |   open override var hash: Int { return id }
/Users/admin/builder/spi-builder-workspace/Sources/W3WSwiftVoiceApi/Network/W3WebSocket.swift:1690:13: warning: let 'manager' is not concurrency-safe because non-'Sendable' type 'W3Manager' may have shared mutable state; this is an error in the Swift 6 language mode
1608 | // using fewers threads. Helps tremendously with lowing system resources when many conncurrent
1609 | // sockets are opened.
1610 | private class W3Manager {
     |               `- note: class 'W3Manager' does not conform to the 'Sendable' protocol
1611 |   var queue = DispatchQueue(label: "SwiftWebSocketInstance", attributes: [])
1612 |   var once = Int()
     :
1688 | }
1689 |
1690 | private let manager = W3Manager()
     |             |- warning: let 'manager' is not concurrency-safe because non-'Sendable' type 'W3Manager' may have shared mutable state; this is an error in the Swift 6 language mode
     |             |- note: annotate 'manager' 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
1691 |
1692 | /// WebSocket objects are bidirectional network streams that communicate over HTTP. RFC 6455.
/Users/admin/builder/spi-builder-workspace/Sources/W3WSwiftVoiceApi/Network/W3WebSocket.swift:655:13: warning: capture of 'self' with non-sendable type 'W3InnerWebSocket' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 544 |
 545 | /// WebSocket objects are bidirectional network streams that communicate over HTTP. RFC 6455.
 546 | private class W3InnerWebSocket: Hashable {
     |               `- note: class 'W3InnerWebSocket' does not conform to the 'Sendable' protocol
 547 |   var id : Int
 548 |   var mutex = pthread_mutex_t()
     :
 653 |     if stub{
 654 |       manager.queue.asyncAfter(deadline: DispatchTime.now() + Double(0) / Double(NSEC_PER_SEC)){
 655 |         _ = self
     |             `- warning: capture of 'self' with non-sendable type 'W3InnerWebSocket' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 656 |       }
 657 |     } else {
/Users/admin/builder/spi-builder-workspace/Sources/W3WSwiftVoiceApi/Network/W3WebSocket.swift:659:21: warning: capture of 'self' with non-sendable type 'W3InnerWebSocket' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 544 |
 545 | /// WebSocket objects are bidirectional network streams that communicate over HTTP. RFC 6455.
 546 | private class W3InnerWebSocket: Hashable {
     |               `- note: class 'W3InnerWebSocket' does not conform to the 'Sendable' protocol
 547 |   var id : Int
 548 |   var mutex = pthread_mutex_t()
     :
 657 |     } else {
 658 |       manager.queue.asyncAfter(deadline: DispatchTime.now() + Double(0) / Double(NSEC_PER_SEC)){
 659 |         manager.add(self)
     |                     `- warning: capture of 'self' with non-sendable type 'W3InnerWebSocket' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 660 |       }
 661 |     }
/Users/admin/builder/spi-builder-workspace/Sources/W3WSwiftVoiceApi/Network/W3WebSocket.swift:861:15: warning: capture of 'self' with non-sendable type 'W3InnerWebSocket' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 544 |
 545 | /// WebSocket objects are bidirectional network streams that communicate over HTTP. RFC 6455.
 546 | private class W3InnerWebSocket: Hashable {
     |               `- note: class 'W3InnerWebSocket' does not conform to the 'Sendable' protocol
 547 |   var id : Int
 548 |   var mutex = pthread_mutex_t()
     :
 859 |           } else {
 860 |             manager.queue.asyncAfter(deadline: DispatchTime.now() + Double(0) / Double(NSEC_PER_SEC)){
 861 |               self.lock()
     |               `- warning: capture of 'self' with non-sendable type 'W3InnerWebSocket' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 862 |               self.frames += [frame]
 863 |               self.unlock()
/Users/admin/builder/spi-builder-workspace/Sources/W3WSwiftVoiceApi/Network/W3WebSocket.swift:862:31: warning: capture of 'frame' with non-sendable type 'W3Frame' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 346 | }
 347 |
 348 | private class W3Frame {
     |               `- note: class 'W3Frame' does not conform to the 'Sendable' protocol
 349 |   var inflate = false
 350 |   var code = OpCode.continue
     :
 860 |             manager.queue.asyncAfter(deadline: DispatchTime.now() + Double(0) / Double(NSEC_PER_SEC)){
 861 |               self.lock()
 862 |               self.frames += [frame]
     |                               `- warning: capture of 'frame' with non-sendable type 'W3Frame' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 863 |               self.unlock()
 864 |               manager.signal()
/Users/admin/builder/spi-builder-workspace/Sources/W3WSwiftVoiceApi/Network/W3WebSocket.swift:1625:29: warning: capture of 'self' with non-sendable type 'W3Manager' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1608 | // using fewers threads. Helps tremendously with lowing system resources when many conncurrent
1609 | // sockets are opened.
1610 | private class W3Manager {
     |               `- note: class 'W3Manager' does not conform to the 'Sendable' protocol
1611 |   var queue = DispatchQueue(label: "SwiftWebSocketInstance", attributes: [])
1612 |   var once = Int()
     :
1623 |         var wait = true
1624 |         wss.removeAll()
1625 |         pthread_mutex_lock(&self.mutex)
     |                             `- warning: capture of 'self' with non-sendable type 'W3Manager' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1626 |         for ws in self.websockets {
1627 |           wss.append(ws)
[71/72] Compiling W3WSwiftVoiceApi W3WVoiceSuggestion.swift
[72/72] Compiling W3WSwiftVoiceApi JsonVoiceError.swift
Build complete! (27.02s)
Build complete.
{
  "dependencies" : [
    {
      "identity" : "w3w-swift-core",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.0.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/what3words/w3w-swift-core.git"
    }
  ],
  "manifest_display_name" : "w3w-swift-voice-api",
  "name" : "w3w-swift-voice-api",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "10.12"
    },
    {
      "name" : "ios",
      "version" : "10.0"
    },
    {
      "name" : "tvos",
      "version" : "10.0"
    },
    {
      "name" : "watchos",
      "version" : "2.0"
    }
  ],
  "products" : [
    {
      "name" : "W3WSwiftVoiceApi",
      "targets" : [
        "W3WSwiftVoiceApi"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "w3w_swift_wrapper_voiceTests",
      "module_type" : "SwiftTarget",
      "name" : "w3w-swift-wrapper-voiceTests",
      "path" : "Tests/w3w-swift-wrapper-voiceTests",
      "sources" : [
        "w3w_swift_wrapperTests.swift"
      ],
      "target_dependencies" : [
        "W3WSwiftVoiceApi"
      ],
      "type" : "test"
    },
    {
      "c99name" : "W3WSwiftVoiceApi",
      "module_type" : "SwiftTarget",
      "name" : "W3WSwiftVoiceApi",
      "path" : "Sources/W3WSwiftVoiceApi",
      "product_dependencies" : [
        "W3WSwiftCore"
      ],
      "product_memberships" : [
        "W3WSwiftVoiceApi"
      ],
      "sources" : [
        "Export.swift",
        "Extensions/W3WError.swift",
        "Extensions/W3WVoiceSuggestion.swift",
        "Json/JsonVoiceError.swift",
        "Json/JsonVoiceLanguage.swift",
        "Json/JsonVoiceLanguages.swift",
        "Json/JsonVoiceResponse.swift",
        "Json/JsonVoiceSuggestion.swift",
        "Json/W3WJsonVoiceError.swift",
        "Network/W3WApiCall.swift",
        "Network/W3WVoiceSocket.swift",
        "Network/W3WebSocket.swift",
        "Types/W3WTypes.swift",
        "W3WSettings.swift",
        "W3WVoiceApi.swift",
        "WatchOS/W3WVoiceUpload.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.6"
}
Done.