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 Embassy, reference master (8469f2), with Swift 6.0 for macOS (SPM) on 29 Nov 2024 06:12:24 UTC.

Swift 6 data race errors: 2

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.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/envoy/Embassy.git
Reference: master
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/envoy/Embassy
 * branch            master     -> FETCH_HEAD
 * [new branch]      master     -> origin/master
HEAD is now at 8469f2c Merge pull request #106 from mahyarwd/fix-4.1.5-build-error
Cloned https://github.com/envoy/Embassy.git
Revision (git rev-parse @):
8469f2c1b334a7c1c3566e2cb2f97826c7cca898
SUCCESS checkout https://github.com/envoy/Embassy.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": "embassy",
      "name": "Embassy",
      "url": "https://github.com/envoy/Embassy.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/Embassy",
      "dependencies": [
      ]
    }
  ]
}
Fetching https://github.com/envoy/Embassy.git
[1/1838] Fetching embassy
Fetched https://github.com/envoy/Embassy.git from cache (0.91s)
Creating working copy for https://github.com/envoy/Embassy.git
Working copy of https://github.com/envoy/Embassy.git resolved at master (8469f2c)
warning: '.resolve-product-dependencies': dependency 'embassy' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.0
Building package at path:  $PWD
https://github.com/envoy/Embassy.git
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/2] Write sources
[1/2] Write swift-version--7754E27361AE5C74.txt
[3/30] Emitting module Embassy
<unknown>:0: note: a function type must be marked '@Sendable' to conform to 'Sendable'
/Users/admin/builder/spi-builder-workspace/Sources/SystemLibrary.swift:100:20: warning: static property 'htons' is not concurrency-safe because non-'Sendable' type '(__uint16_t) -> __uint16_t' (aka '(UInt16) -> UInt16') may have shared mutable state; this is an error in the Swift 6 language mode
 98 |         static let select = Darwin.select
 99 |         static let isLittleEndian = Int(OSHostByteOrder()) == OSLittleEndian
100 |         static let htons  = isLittleEndian ? _OSSwapInt16 : { $0 }
    |                    |- warning: static property 'htons' is not concurrency-safe because non-'Sendable' type '(__uint16_t) -> __uint16_t' (aka '(UInt16) -> UInt16') may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'htons' 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
101 |         static let ntohs  = isLittleEndian ? _OSSwapInt16 : { $0 }
102 |         static let connect = Darwin.connect
<unknown>:0: note: a function type must be marked '@Sendable' to conform to 'Sendable'
/Users/admin/builder/spi-builder-workspace/Sources/SystemLibrary.swift:101:20: warning: static property 'ntohs' is not concurrency-safe because non-'Sendable' type '(__uint16_t) -> __uint16_t' (aka '(UInt16) -> UInt16') may have shared mutable state; this is an error in the Swift 6 language mode
 99 |         static let isLittleEndian = Int(OSHostByteOrder()) == OSLittleEndian
100 |         static let htons  = isLittleEndian ? _OSSwapInt16 : { $0 }
101 |         static let ntohs  = isLittleEndian ? _OSSwapInt16 : { $0 }
    |                    |- warning: static property 'ntohs' is not concurrency-safe because non-'Sendable' type '(__uint16_t) -> __uint16_t' (aka '(UInt16) -> UInt16') may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'ntohs' 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
102 |         static let connect = Darwin.connect
103 |         static let bind = Darwin.bind
[4/32] Compiling Embassy IOUtils.swift
[5/32] Compiling Embassy KqueueSelector.swift
[6/32] Compiling Embassy LogFormatter.swift
[7/32] Compiling Embassy LogHandler.swift
[8/32] Compiling Embassy Logger.swift
[9/32] Compiling Embassy MultiDictionary.swift
[10/32] Compiling Embassy TransformLogHandler.swift
[11/32] Compiling Embassy Transport.swift
[12/32] Compiling Embassy Atomic.swift
[13/32] Compiling Embassy DefaultHTTPServer.swift
[14/32] Compiling Embassy DefaultLogFormatter.swift
[15/32] Compiling Embassy FileLogHandler.swift
/Users/admin/builder/spi-builder-workspace/Sources/FileLogHandler.swift:29:32: warning: capture of 'self' with non-sendable type 'FileLogHandler' in a `@Sendable` closure; this is an error in the Swift 6 language mode
11 |
12 | /// A log handler which writes log records to given file handle
13 | public struct FileLogHandler: LogHandler {
   |               `- note: consider making struct 'FileLogHandler' conform to the 'Sendable' protocol
14 |     let fileHandle: FileHandle
15 |     public var formatter: LogFormatter?
   :
27 |     public func emit(record: LogRecord) {
28 |         queue.async {
29 |             if let formatter = self.formatter {
   |                                `- warning: capture of 'self' with non-sendable type 'FileLogHandler' in a `@Sendable` closure; this is an error in the Swift 6 language mode
30 |                 let msg = formatter.format(record: record) + "\n"
31 |                 self.fileHandle.write(msg.data(using: String.Encoding.utf8)!)
/Users/admin/builder/spi-builder-workspace/Sources/FileLogHandler.swift:30:52: warning: capture of 'record' with non-sendable type 'LogRecord' in a `@Sendable` closure; this is an error in the Swift 6 language mode
28 |         queue.async {
29 |             if let formatter = self.formatter {
30 |                 let msg = formatter.format(record: record) + "\n"
   |                                                    `- warning: capture of 'record' with non-sendable type 'LogRecord' in a `@Sendable` closure; this is an error in the Swift 6 language mode
31 |                 self.fileHandle.write(msg.data(using: String.Encoding.utf8)!)
32 |                 self.fileHandle.synchronizeFile()
/Users/admin/builder/spi-builder-workspace/Sources/Logger.swift:37:15: note: consider making struct 'LogRecord' conform to the 'Sendable' protocol
35 | }
36 |
37 | public struct LogRecord {
   |               `- note: consider making struct 'LogRecord' conform to the 'Sendable' protocol
38 |     let loggerName: String
39 |     let level: LogLevel
[16/32] Compiling Embassy HTTPConnection.swift
/Users/admin/builder/spi-builder-workspace/Sources/FileLogHandler.swift:29:32: warning: capture of 'self' with non-sendable type 'FileLogHandler' in a `@Sendable` closure; this is an error in the Swift 6 language mode
11 |
12 | /// A log handler which writes log records to given file handle
13 | public struct FileLogHandler: LogHandler {
   |               `- note: consider making struct 'FileLogHandler' conform to the 'Sendable' protocol
14 |     let fileHandle: FileHandle
15 |     public var formatter: LogFormatter?
   :
27 |     public func emit(record: LogRecord) {
28 |         queue.async {
29 |             if let formatter = self.formatter {
   |                                `- warning: capture of 'self' with non-sendable type 'FileLogHandler' in a `@Sendable` closure; this is an error in the Swift 6 language mode
30 |                 let msg = formatter.format(record: record) + "\n"
31 |                 self.fileHandle.write(msg.data(using: String.Encoding.utf8)!)
/Users/admin/builder/spi-builder-workspace/Sources/FileLogHandler.swift:30:52: warning: capture of 'record' with non-sendable type 'LogRecord' in a `@Sendable` closure; this is an error in the Swift 6 language mode
28 |         queue.async {
29 |             if let formatter = self.formatter {
30 |                 let msg = formatter.format(record: record) + "\n"
   |                                                    `- warning: capture of 'record' with non-sendable type 'LogRecord' in a `@Sendable` closure; this is an error in the Swift 6 language mode
31 |                 self.fileHandle.write(msg.data(using: String.Encoding.utf8)!)
32 |                 self.fileHandle.synchronizeFile()
/Users/admin/builder/spi-builder-workspace/Sources/Logger.swift:37:15: note: consider making struct 'LogRecord' conform to the 'Sendable' protocol
35 | }
36 |
37 | public struct LogRecord {
   |               `- note: consider making struct 'LogRecord' conform to the 'Sendable' protocol
38 |     let loggerName: String
39 |     let level: LogLevel
[17/32] Compiling Embassy HTTPHeaderParser.swift
/Users/admin/builder/spi-builder-workspace/Sources/FileLogHandler.swift:29:32: warning: capture of 'self' with non-sendable type 'FileLogHandler' in a `@Sendable` closure; this is an error in the Swift 6 language mode
11 |
12 | /// A log handler which writes log records to given file handle
13 | public struct FileLogHandler: LogHandler {
   |               `- note: consider making struct 'FileLogHandler' conform to the 'Sendable' protocol
14 |     let fileHandle: FileHandle
15 |     public var formatter: LogFormatter?
   :
27 |     public func emit(record: LogRecord) {
28 |         queue.async {
29 |             if let formatter = self.formatter {
   |                                `- warning: capture of 'self' with non-sendable type 'FileLogHandler' in a `@Sendable` closure; this is an error in the Swift 6 language mode
30 |                 let msg = formatter.format(record: record) + "\n"
31 |                 self.fileHandle.write(msg.data(using: String.Encoding.utf8)!)
/Users/admin/builder/spi-builder-workspace/Sources/FileLogHandler.swift:30:52: warning: capture of 'record' with non-sendable type 'LogRecord' in a `@Sendable` closure; this is an error in the Swift 6 language mode
28 |         queue.async {
29 |             if let formatter = self.formatter {
30 |                 let msg = formatter.format(record: record) + "\n"
   |                                                    `- warning: capture of 'record' with non-sendable type 'LogRecord' in a `@Sendable` closure; this is an error in the Swift 6 language mode
31 |                 self.fileHandle.write(msg.data(using: String.Encoding.utf8)!)
32 |                 self.fileHandle.synchronizeFile()
/Users/admin/builder/spi-builder-workspace/Sources/Logger.swift:37:15: note: consider making struct 'LogRecord' conform to the 'Sendable' protocol
35 | }
36 |
37 | public struct LogRecord {
   |               `- note: consider making struct 'LogRecord' conform to the 'Sendable' protocol
38 |     let loggerName: String
39 |     let level: LogLevel
[18/32] Compiling Embassy PrintLogHandler.swift
[19/32] Compiling Embassy PropagateLogHandler.swift
[20/32] Compiling Embassy SWSGI.swift
[21/32] Compiling Embassy SelectorEventLoop.swift
<unknown>:0: note: a function type must be marked '@Sendable' to conform to 'Sendable'
/Users/admin/builder/spi-builder-workspace/Sources/SystemLibrary.swift:100:20: warning: static property 'htons' is not concurrency-safe because non-'Sendable' type '(__uint16_t) -> __uint16_t' (aka '(UInt16) -> UInt16') may have shared mutable state; this is an error in the Swift 6 language mode
 98 |         static let select = Darwin.select
 99 |         static let isLittleEndian = Int(OSHostByteOrder()) == OSLittleEndian
100 |         static let htons  = isLittleEndian ? _OSSwapInt16 : { $0 }
    |                    |- warning: static property 'htons' is not concurrency-safe because non-'Sendable' type '(__uint16_t) -> __uint16_t' (aka '(UInt16) -> UInt16') may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'htons' 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
101 |         static let ntohs  = isLittleEndian ? _OSSwapInt16 : { $0 }
102 |         static let connect = Darwin.connect
<unknown>:0: note: a function type must be marked '@Sendable' to conform to 'Sendable'
/Users/admin/builder/spi-builder-workspace/Sources/SystemLibrary.swift:101:20: warning: static property 'ntohs' is not concurrency-safe because non-'Sendable' type '(__uint16_t) -> __uint16_t' (aka '(UInt16) -> UInt16') may have shared mutable state; this is an error in the Swift 6 language mode
 99 |         static let isLittleEndian = Int(OSHostByteOrder()) == OSLittleEndian
100 |         static let htons  = isLittleEndian ? _OSSwapInt16 : { $0 }
101 |         static let ntohs  = isLittleEndian ? _OSSwapInt16 : { $0 }
    |                    |- warning: static property 'ntohs' is not concurrency-safe because non-'Sendable' type '(__uint16_t) -> __uint16_t' (aka '(UInt16) -> UInt16') may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'ntohs' 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
102 |         static let connect = Darwin.connect
103 |         static let bind = Darwin.bind
/Users/admin/builder/spi-builder-workspace/Sources/TCPSocket.swift:291:17: warning: forming 'UnsafeRawPointer' to a variable of type 'StructType'; this is likely incorrect because 'StructType' may contain an object reference.
289 |             inet_ntop(
290 |                 family,
291 |                 &addrStruct,
    |                 `- warning: forming 'UnsafeRawPointer' to a variable of type 'StructType'; this is likely incorrect because 'StructType' may contain an object reference.
292 |                 pointer,
293 |                 socklen_t(addressLength)
[22/32] Compiling Embassy SystemLibrary.swift
<unknown>:0: note: a function type must be marked '@Sendable' to conform to 'Sendable'
/Users/admin/builder/spi-builder-workspace/Sources/SystemLibrary.swift:100:20: warning: static property 'htons' is not concurrency-safe because non-'Sendable' type '(__uint16_t) -> __uint16_t' (aka '(UInt16) -> UInt16') may have shared mutable state; this is an error in the Swift 6 language mode
 98 |         static let select = Darwin.select
 99 |         static let isLittleEndian = Int(OSHostByteOrder()) == OSLittleEndian
100 |         static let htons  = isLittleEndian ? _OSSwapInt16 : { $0 }
    |                    |- warning: static property 'htons' is not concurrency-safe because non-'Sendable' type '(__uint16_t) -> __uint16_t' (aka '(UInt16) -> UInt16') may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'htons' 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
101 |         static let ntohs  = isLittleEndian ? _OSSwapInt16 : { $0 }
102 |         static let connect = Darwin.connect
<unknown>:0: note: a function type must be marked '@Sendable' to conform to 'Sendable'
/Users/admin/builder/spi-builder-workspace/Sources/SystemLibrary.swift:101:20: warning: static property 'ntohs' is not concurrency-safe because non-'Sendable' type '(__uint16_t) -> __uint16_t' (aka '(UInt16) -> UInt16') may have shared mutable state; this is an error in the Swift 6 language mode
 99 |         static let isLittleEndian = Int(OSHostByteOrder()) == OSLittleEndian
100 |         static let htons  = isLittleEndian ? _OSSwapInt16 : { $0 }
101 |         static let ntohs  = isLittleEndian ? _OSSwapInt16 : { $0 }
    |                    |- warning: static property 'ntohs' is not concurrency-safe because non-'Sendable' type '(__uint16_t) -> __uint16_t' (aka '(UInt16) -> UInt16') may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'ntohs' 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
102 |         static let connect = Darwin.connect
103 |         static let bind = Darwin.bind
/Users/admin/builder/spi-builder-workspace/Sources/TCPSocket.swift:291:17: warning: forming 'UnsafeRawPointer' to a variable of type 'StructType'; this is likely incorrect because 'StructType' may contain an object reference.
289 |             inet_ntop(
290 |                 family,
291 |                 &addrStruct,
    |                 `- warning: forming 'UnsafeRawPointer' to a variable of type 'StructType'; this is likely incorrect because 'StructType' may contain an object reference.
292 |                 pointer,
293 |                 socklen_t(addressLength)
[23/32] Compiling Embassy TCPSocket.swift
<unknown>:0: note: a function type must be marked '@Sendable' to conform to 'Sendable'
/Users/admin/builder/spi-builder-workspace/Sources/SystemLibrary.swift:100:20: warning: static property 'htons' is not concurrency-safe because non-'Sendable' type '(__uint16_t) -> __uint16_t' (aka '(UInt16) -> UInt16') may have shared mutable state; this is an error in the Swift 6 language mode
 98 |         static let select = Darwin.select
 99 |         static let isLittleEndian = Int(OSHostByteOrder()) == OSLittleEndian
100 |         static let htons  = isLittleEndian ? _OSSwapInt16 : { $0 }
    |                    |- warning: static property 'htons' is not concurrency-safe because non-'Sendable' type '(__uint16_t) -> __uint16_t' (aka '(UInt16) -> UInt16') may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'htons' 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
101 |         static let ntohs  = isLittleEndian ? _OSSwapInt16 : { $0 }
102 |         static let connect = Darwin.connect
<unknown>:0: note: a function type must be marked '@Sendable' to conform to 'Sendable'
/Users/admin/builder/spi-builder-workspace/Sources/SystemLibrary.swift:101:20: warning: static property 'ntohs' is not concurrency-safe because non-'Sendable' type '(__uint16_t) -> __uint16_t' (aka '(UInt16) -> UInt16') may have shared mutable state; this is an error in the Swift 6 language mode
 99 |         static let isLittleEndian = Int(OSHostByteOrder()) == OSLittleEndian
100 |         static let htons  = isLittleEndian ? _OSSwapInt16 : { $0 }
101 |         static let ntohs  = isLittleEndian ? _OSSwapInt16 : { $0 }
    |                    |- warning: static property 'ntohs' is not concurrency-safe because non-'Sendable' type '(__uint16_t) -> __uint16_t' (aka '(UInt16) -> UInt16') may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: annotate 'ntohs' 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
102 |         static let connect = Darwin.connect
103 |         static let bind = Darwin.bind
/Users/admin/builder/spi-builder-workspace/Sources/TCPSocket.swift:291:17: warning: forming 'UnsafeRawPointer' to a variable of type 'StructType'; this is likely incorrect because 'StructType' may contain an object reference.
289 |             inet_ntop(
290 |                 family,
291 |                 &addrStruct,
    |                 `- warning: forming 'UnsafeRawPointer' to a variable of type 'StructType'; this is likely incorrect because 'StructType' may contain an object reference.
292 |                 pointer,
293 |                 socklen_t(addressLength)
[24/32] Compiling Embassy DefaultLogger.swift
[25/32] Compiling Embassy Errors.swift
[26/32] Compiling Embassy EventLoop.swift
[27/32] Compiling Embassy HTTPRequest.swift
[28/32] Compiling Embassy HTTPServer.swift
[29/32] Compiling Embassy HeapSort.swift
[30/32] Compiling Embassy SWSGIUtils.swift
[31/32] Compiling Embassy SelectSelector.swift
[32/32] Compiling Embassy Selector.swift
Build complete! (19.13s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "Embassy",
  "name" : "Embassy",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "Embassy",
      "targets" : [
        "Embassy"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "Embassy",
      "module_type" : "SwiftTarget",
      "name" : "Embassy",
      "path" : "Sources",
      "product_memberships" : [
        "Embassy"
      ],
      "sources" : [
        "Atomic.swift",
        "DefaultHTTPServer.swift",
        "DefaultLogFormatter.swift",
        "DefaultLogger.swift",
        "Errors.swift",
        "EventLoop.swift",
        "FileLogHandler.swift",
        "HTTPConnection.swift",
        "HTTPHeaderParser.swift",
        "HTTPRequest.swift",
        "HTTPServer.swift",
        "HeapSort.swift",
        "IOUtils.swift",
        "KqueueSelector.swift",
        "LogFormatter.swift",
        "LogHandler.swift",
        "Logger.swift",
        "MultiDictionary.swift",
        "PrintLogHandler.swift",
        "PropagateLogHandler.swift",
        "SWSGI.swift",
        "SWSGIUtils.swift",
        "SelectSelector.swift",
        "Selector.swift",
        "SelectorEventLoop.swift",
        "SystemLibrary.swift",
        "TCPSocket.swift",
        "TransformLogHandler.swift",
        "Transport.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "4.2"
}
Done.