Build Information
Successful build of PerfectNet, reference 4.0.0 (5707dc), with Swift 6.4 for macOS (SPM) on 16 Sep 2026 05:55:25 UTC.
Swift 6 data race errors: 0
Build Command
env DEVELOPER_DIR=/Applications/Xcode-27.0.0-Release.Candidate.app xcrun swift build --arch arm64Build Log
========================================
RunAll
========================================
Builder version: 5.1.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/perfectlysoft/perfect-net.git
Reference: 4.0.0
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/perfectlysoft/perfect-net
* tag 4.0.0 -> FETCH_HEAD
HEAD is now at 5707dcc Fixed compiler warnings
Cloned https://github.com/perfectlysoft/perfect-net.git
Revision (git rev-parse @):
5707dccfe39c57f61c9c172e766590cf5ae22bf8
SUCCESS checkout https://github.com/perfectlysoft/perfect-net.git at 4.0.0
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.4
Building package at path: $PWD
https://github.com/perfectlysoft/perfect-net.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-27.0.0-Release.Candidate.app xcrun swift build --arch arm64
Building for debugging...
[Constructing description]
[Planning deferred tasks]
[39 / 539]
[50 / 541] PerfectThread
[66 / 555] COpenSSL
[73 / 555]
[102 / 558] COpenSSL
[132 / 558] COpenSSL
[140 / 558] COpenSSL
[147 / 578]
[156 / 604]
[167 / 604] COpenSSL
[176 / 604]
[189 / 604]
[200 / 604] COpenSSL
[209 / 604] COpenSSL
[222 / 604] COpenSSL
[236 / 604] COpenSSL
[251 / 604] COpenSSL
[263 / 604] COpenSSL
[269 / 604] COpenSSL
[275 / 604]
[290 / 604] PerfectThread
[312 / 604] COpenSSL
[327 / 604] COpenSSL
[337 / 604] COpenSSL
[354 / 604] COpenSSL
[363 / 604] COpenSSL
[387 / 604] COpenSSL
[405 / 604] COpenSSL
[420 / 604] COpenSSL
[440 / 604] COpenSSL
[463 / 604] COpenSSL
[484 / 604] COpenSSL
[501 / 604] COpenSSL
[518 / 604] COpenSSL
[536 / 604] COpenSSL
[555 / 604] COpenSSL
[566 / 604] PerfectLib
[570 / 604] PerfectThread
[576 / 604] COpenSSL
[585 / 605] PerfectLib
[586 / 605] PerfectLib
[588 / 605] PerfectCrypto
[589 / 615]
[598 / 615] PerfectCrypto
[605 / 616] PerfectCrypto
[615 / 624] PerfectNet
[621 / 624] PerfectNet
Build complete! (9.10 sec)
Fetching https://github.com/PerfectlySoft/Perfect-Crypto.git
Fetching https://github.com/PerfectlySoft/Perfect-Thread.git
[1/612] Fetching perfect-crypto
[8/991] Fetching perfect-crypto, perfect-thread
Fetched https://github.com/PerfectlySoft/Perfect-Crypto.git (1.05s)
Fetched https://github.com/PerfectlySoft/Perfect-Thread.git (1.05s)
Computing version for https://github.com/PerfectlySoft/Perfect-Crypto.git
Computed https://github.com/PerfectlySoft/Perfect-Crypto.git at 4.0.0 (1.72s)
Fetching https://github.com/PerfectlySoft/PerfectLib.git
Fetching https://github.com/PerfectlySoft/Perfect-COpenSSL.git
[1/10784] Fetching perfectlib
[2158/14745] Fetching perfectlib, perfect-copenssl
Fetched https://github.com/PerfectlySoft/PerfectLib.git (7.69s)
Fetched https://github.com/PerfectlySoft/Perfect-COpenSSL.git (7.69s)
Computing version for https://github.com/PerfectlySoft/PerfectLib.git
Computed https://github.com/PerfectlySoft/PerfectLib.git at 4.0.1 (8.36s)
Computing version for https://github.com/PerfectlySoft/Perfect-COpenSSL.git
Computed https://github.com/PerfectlySoft/Perfect-COpenSSL.git at 4.0.2 (2.15s)
Computing version for https://github.com/PerfectlySoft/Perfect-Thread.git
Computed https://github.com/PerfectlySoft/Perfect-Thread.git at 3.0.7 (0.62s)
Creating working copy for https://github.com/PerfectlySoft/PerfectLib.git
Working copy of https://github.com/PerfectlySoft/PerfectLib.git resolved at 4.0.1
Creating working copy for https://github.com/PerfectlySoft/Perfect-COpenSSL.git
Working copy of https://github.com/PerfectlySoft/Perfect-COpenSSL.git resolved at 4.0.2
Creating working copy for https://github.com/PerfectlySoft/Perfect-Thread.git
Working copy of https://github.com/PerfectlySoft/Perfect-Thread.git resolved at 3.0.7
Creating working copy for https://github.com/PerfectlySoft/Perfect-Crypto.git
Working copy of https://github.com/PerfectlySoft/Perfect-Crypto.git resolved at 4.0.0
warning: /Users/admin/builder/spi-builder-workspace/Sources/PerfectNet/NetTCPSSL.swift:30:52 extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
/Users/admin/builder/spi-builder-workspace/Sources/PerfectNet/NetTCPSSL.swift:30:52: [1;33mwarning: [1;39mextraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode[0;0m
[0;36m28 |[0;0m
[0;36m29 |[0;0m private typealias passwordCallbackFunc = @convention(c) (UnsafeMutablePointer<Int8>?, Int32, Int32, UnsafeMutableRawPointer?) -> Int32
[0;36m30 |[0;0m public typealias VerifyCACallbackFunc = @convention (c) (Int32, UnsafeMutablePointer<X509_STORE_CTX>?) -> Int32
[0;36m|[0;0m `- [1;33mwarning: [1;39mextraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode[0;0m
[0;36m31 |[0;0m
[0;36m32 |[0;0m public struct OpenSSLVerifyMode: OptionSet {
/Users/admin/builder/spi-builder-workspace/Sources/PerfectNet/NetAddress.swift:97:26: [1;33mwarning: [1;39mvariable 'resultList' was never mutated; consider changing to 'let' constant[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/variable-never-mutated\VariableNeverMutated]8;;\]
[0;36m95 |[0;0m result = getaddrinfo(host, nil, &hints, &resultListPtr)
[0;36m96 |[0;0m }
[0;36m97 |[0;0m guard result == 0, var resultList = resultListPtr else {
[0;36m|[0;0m `- [1;33mwarning: [1;39mvariable 'resultList' was never mutated; consider changing to 'let' constant[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/variable-never-mutated\VariableNeverMutated]8;;\]
[0;36m98 |[0;0m return nil
[0;36m99 |[0;0m }
[#VariableNeverMutated]: <https://docs.swift.org/compiler/documentation/diagnostics/variable-never-mutated>
/Users/admin/builder/spi-builder-workspace/Sources/PerfectNet/NetNamedPipe.swift:41:7: [1;33mwarning: [1;39mvariable 'addr' was never mutated; consider changing to 'let' constant[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/variable-never-mutated\VariableNeverMutated]8;;\]
[0;36m39 |[0;0m
[0;36m40 |[0;0m public func sockName() -> (String, UInt16) {
[0;36m41 |[0;0m var addr = UnsafeMutablePointer<sockaddr_un>.allocate(capacity: 1)
[0;36m|[0;0m `- [1;33mwarning: [1;39mvariable 'addr' was never mutated; consider changing to 'let' constant[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/variable-never-mutated\VariableNeverMutated]8;;\]
[0;36m42 |[0;0m var len = UnsafeMutablePointer<socklen_t>.allocate(capacity: 1)
[0;36m43 |[0;0m defer {
/Users/admin/builder/spi-builder-workspace/Sources/PerfectNet/NetNamedPipe.swift:42:7: [1;33mwarning: [1;39mvariable 'len' was never mutated; consider changing to 'let' constant[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/variable-never-mutated\VariableNeverMutated]8;;\]
[0;36m40 |[0;0m public func sockName() -> (String, UInt16) {
[0;36m41 |[0;0m var addr = UnsafeMutablePointer<sockaddr_un>.allocate(capacity: 1)
[0;36m42 |[0;0m var len = UnsafeMutablePointer<socklen_t>.allocate(capacity: 1)
[0;36m|[0;0m `- [1;33mwarning: [1;39mvariable 'len' was never mutated; consider changing to 'let' constant[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/variable-never-mutated\VariableNeverMutated]8;;\]
[0;36m43 |[0;0m defer {
[0;36m44 |[0;0m addr.deallocate()
/Users/admin/builder/spi-builder-workspace/Sources/PerfectNet/NetNamedPipe.swift:70:7: [1;33mwarning: [1;39mvariable 'addr' was never mutated; consider changing to 'let' constant[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/variable-never-mutated\VariableNeverMutated]8;;\]
[0;36m68 |[0;0m
[0;36m69 |[0;0m public func peerName() -> (String, UInt16) {
[0;36m70 |[0;0m var addr = UnsafeMutablePointer<sockaddr_un>.allocate(capacity: 1)
[0;36m|[0;0m `- [1;33mwarning: [1;39mvariable 'addr' was never mutated; consider changing to 'let' constant[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/variable-never-mutated\VariableNeverMutated]8;;\]
[0;36m71 |[0;0m var len = UnsafeMutablePointer<socklen_t>.allocate(capacity: 1)
[0;36m72 |[0;0m defer {
/Users/admin/builder/spi-builder-workspace/Sources/PerfectNet/NetNamedPipe.swift:71:7: [1;33mwarning: [1;39mvariable 'len' was never mutated; consider changing to 'let' constant[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/variable-never-mutated\VariableNeverMutated]8;;\]
[0;36m69 |[0;0m public func peerName() -> (String, UInt16) {
[0;36m70 |[0;0m var addr = UnsafeMutablePointer<sockaddr_un>.allocate(capacity: 1)
[0;36m71 |[0;0m var len = UnsafeMutablePointer<socklen_t>.allocate(capacity: 1)
[0;36m|[0;0m `- [1;33mwarning: [1;39mvariable 'len' was never mutated; consider changing to 'let' constant[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/variable-never-mutated\VariableNeverMutated]8;;\]
[0;36m72 |[0;0m defer {
[0;36m73 |[0;0m addr.deallocate()
/Users/admin/builder/spi-builder-workspace/Sources/PerfectNet/NetNamedPipe.swift:209:7: [1;33mwarning: [1;39mvariable 'nothingPtr' was never mutated; consider changing to 'let' constant[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/variable-never-mutated\VariableNeverMutated]8;;\]
[0;36m207 |[0;0m var msghdr = UnsafeMutablePointer<Darwin.msghdr>.allocate(capacity: 1)
[0;36m208 |[0;0m #endif
[0;36m209 |[0;0m var nothingPtr = UnsafeMutablePointer<iovec>.allocate(capacity: 1)
[0;36m|[0;0m `- [1;33mwarning: [1;39mvariable 'nothingPtr' was never mutated; consider changing to 'let' constant[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/variable-never-mutated\VariableNeverMutated]8;;\]
[0;36m210 |[0;0m var nothing = UnsafeMutablePointer<CChar>.allocate(capacity: 1)
[0;36m211 |[0;0m let buffer = UnsafeMutableRawPointer.allocate(byteCount: length, alignment: 8)
/Users/admin/builder/spi-builder-workspace/Sources/PerfectNet/NetNamedPipe.swift:210:7: [1;33mwarning: [1;39mvariable 'nothing' was never mutated; consider changing to 'let' constant[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/variable-never-mutated\VariableNeverMutated]8;;\]
[0;36m208 |[0;0m #endif
[0;36m209 |[0;0m var nothingPtr = UnsafeMutablePointer<iovec>.allocate(capacity: 1)
[0;36m210 |[0;0m var nothing = UnsafeMutablePointer<CChar>.allocate(capacity: 1)
[0;36m|[0;0m `- [1;33mwarning: [1;39mvariable 'nothing' was never mutated; consider changing to 'let' constant[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/variable-never-mutated\VariableNeverMutated]8;;\]
[0;36m211 |[0;0m let buffer = UnsafeMutableRawPointer.allocate(byteCount: length, alignment: 8)
[0;36m212 |[0;0m defer {
/Users/admin/builder/spi-builder-workspace/Sources/PerfectNet/NetNamedPipe.swift:273:7: [1;33mwarning: [1;39mvariable 'nothingPtr' was never mutated; consider changing to 'let' constant[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/variable-never-mutated\VariableNeverMutated]8;;\]
[0;36m271 |[0;0m let length = MemoryLayout<cmsghdr>.size + MemoryLayout<Int32>.size
[0;36m272 |[0;0m var msghdrr = msghdr()
[0;36m273 |[0;0m var nothingPtr = UnsafeMutablePointer<iovec>.allocate(capacity: 1)
[0;36m|[0;0m `- [1;33mwarning: [1;39mvariable 'nothingPtr' was never mutated; consider changing to 'let' constant[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/variable-never-mutated\VariableNeverMutated]8;;\]
[0;36m274 |[0;0m var nothing = UnsafeMutablePointer<CChar>.allocate(capacity: 1)
[0;36m275 |[0;0m let buffer = UnsafeMutableRawPointer.allocate(byteCount: length, alignment: 8)
/Users/admin/builder/spi-builder-workspace/Sources/PerfectNet/NetNamedPipe.swift:274:7: [1;33mwarning: [1;39mvariable 'nothing' was never mutated; consider changing to 'let' constant[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/variable-never-mutated\VariableNeverMutated]8;;\]
[0;36m272 |[0;0m var msghdrr = msghdr()
[0;36m273 |[0;0m var nothingPtr = UnsafeMutablePointer<iovec>.allocate(capacity: 1)
[0;36m274 |[0;0m var nothing = UnsafeMutablePointer<CChar>.allocate(capacity: 1)
[0;36m|[0;0m `- [1;33mwarning: [1;39mvariable 'nothing' was never mutated; consider changing to 'let' constant[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/variable-never-mutated\VariableNeverMutated]8;;\]
[0;36m275 |[0;0m let buffer = UnsafeMutableRawPointer.allocate(byteCount: length, alignment: 8)
[0;36m276 |[0;0m defer {
[#VariableNeverMutated]: <https://docs.swift.org/compiler/documentation/diagnostics/variable-never-mutated>
/Users/admin/builder/spi-builder-workspace/Sources/PerfectNet/NetTCPSSL.swift:30:52: [1;33mwarning: [1;39mextraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode[0;0m
[0;36m28 |[0;0m
[0;36m29 |[0;0m private typealias passwordCallbackFunc = @convention(c) (UnsafeMutablePointer<Int8>?, Int32, Int32, UnsafeMutableRawPointer?) -> Int32
[0;36m30 |[0;0m public typealias VerifyCACallbackFunc = @convention (c) (Int32, UnsafeMutablePointer<X509_STORE_CTX>?) -> Int32
[0;36m|[0;0m `- [1;33mwarning: [1;39mextraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode[0;0m
[0;36m31 |[0;0m
[0;36m32 |[0;0m public struct OpenSSLVerifyMode: OptionSet {
Build complete.
{
"dependencies" : [
{
"identity" : "perfect-crypto",
"requirement" : {
"range" : [
{
"lower_bound" : "4.0.0",
"upper_bound" : "5.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/PerfectlySoft/Perfect-Crypto.git"
},
{
"identity" : "perfect-thread",
"requirement" : {
"range" : [
{
"lower_bound" : "3.0.0",
"upper_bound" : "4.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/PerfectlySoft/Perfect-Thread.git"
}
],
"manifest_display_name" : "PerfectNet",
"name" : "PerfectNet",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "10.15"
}
],
"products" : [
{
"name" : "PerfectNet",
"targets" : [
"PerfectNet"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "PerfectNetTests",
"module_type" : "SwiftTarget",
"name" : "PerfectNetTests",
"path" : "Tests/PerfectNetTests",
"product_dependencies" : [
"PerfectCrypto",
"PerfectThread"
],
"sources" : [
"PerfectNetTests.swift"
],
"target_dependencies" : [
"PerfectNet"
],
"type" : "test"
},
{
"c99name" : "PerfectNet",
"module_type" : "SwiftTarget",
"name" : "PerfectNet",
"path" : "Sources/PerfectNet",
"product_dependencies" : [
"PerfectCrypto",
"PerfectThread"
],
"product_memberships" : [
"PerfectNet"
],
"sources" : [
"Net.swift",
"NetAddress.swift",
"NetEvent.swift",
"NetNamedPipe.swift",
"NetTCP.swift",
"NetTCPSSL.swift",
"NetUDP.swift"
],
"type" : "library"
}
],
"tools_version" : "5.1"
}
Done.