Build Information
Successful build of TunnelMonitorKit, reference master (c15886), with Swift 6.4 for macOS (SPM) on 20 Sep 2026 16:04:44 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/flexjdev/TunnelMonitorKit.git
Reference: master
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/flexjdev/TunnelMonitorKit
* branch master -> FETCH_HEAD
* [new branch] master -> origin/master
HEAD is now at c15886a Merge pull request #9 from ChrisJanusiewicz/provider-mocking
Cloned https://github.com/flexjdev/TunnelMonitorKit.git
Revision (git rev-parse @):
c15886a6a045f0e4562475250c34c28ec5774fba
SUCCESS checkout https://github.com/flexjdev/TunnelMonitorKit.git at master
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.4
Building package at path: $PWD
https://github.com/flexjdev/TunnelMonitorKit.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-27.0.0-Release.Candidate.app xcrun swift build --arch arm64
Building for debugging...
[Planning deferred tasks]
[19 / 28]
[20 / 29] TunnelMonitorKit
[29 / 82]
[33 / 82]
[39 / 82]
[41 / 82]
[45 / 82]
[47 / 82]
[51 / 82]
[55 / 82]
[57 / 82]
[58 / 82]
[62 / 82]
[73 / 82] TunnelMonitorKit
[74 / 82] TunnelMonitorKit
[79 / 82] TunnelMonitorKit
Build complete! (9.21 sec)
/Users/admin/builder/spi-builder-workspace/Sources/TunnelMonitorKit/Util/NEProviderStopReason+StringConvertible.swift:11:1: [1;33mwarning: [1;39mextension declares a conformance of imported type 'NEProviderStopReason' to imported protocol 'CustomStringConvertible'; this will not behave correctly if the owners of 'NetworkExtension' introduce this conformance in the future[0;0m
[0;36m9 |[0;0m import NetworkExtension
[0;36m10 |[0;0m
[0;36m11 |[0;0m extension NEProviderStopReason: CustomStringConvertible {
[0;36m|[0;0m |- [1;33mwarning: [1;39mextension declares a conformance of imported type 'NEProviderStopReason' to imported protocol 'CustomStringConvertible'; this will not behave correctly if the owners of 'NetworkExtension' introduce this conformance in the future[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39madd '@retroactive' to silence this warning[0;0m
[0;36m12 |[0;0m
[0;36m13 |[0;0m /// A textual representation of this instance.
/Users/admin/builder/spi-builder-workspace/Sources/TunnelMonitorKit/Util/NEVPNStatus+Util.swift:11:1: [1;33mwarning: [1;39mextension declares a conformance of imported type 'NEVPNStatus' to imported protocol 'CustomStringConvertible'; this will not behave correctly if the owners of 'NetworkExtension' introduce this conformance in the future[0;0m
[0;36m9 |[0;0m import NetworkExtension
[0;36m10 |[0;0m
[0;36m11 |[0;0m extension NEVPNStatus: CustomStringConvertible {
[0;36m|[0;0m |- [1;33mwarning: [1;39mextension declares a conformance of imported type 'NEVPNStatus' to imported protocol 'CustomStringConvertible'; this will not behave correctly if the owners of 'NetworkExtension' introduce this conformance in the future[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39madd '@retroactive' to silence this warning[0;0m
[0;36m12 |[0;0m
[0;36m13 |[0;0m /// A textual representation of this instance
/Users/admin/builder/spi-builder-workspace/Sources/TunnelMonitorKit/Util/NEVPNStatus+Util.swift:28:1: [1;33mwarning: [1;39mextension declares a conformance of imported type 'NEVPNStatus' to imported protocol 'CaseIterable'; this will not behave correctly if the owners of 'NetworkExtension' introduce this conformance in the future[0;0m
[0;36m26 |[0;0m }
[0;36m27 |[0;0m
[0;36m28 |[0;0m extension NEVPNStatus: CaseIterable {
[0;36m|[0;0m |- [1;33mwarning: [1;39mextension declares a conformance of imported type 'NEVPNStatus' to imported protocol 'CaseIterable'; this will not behave correctly if the owners of 'NetworkExtension' introduce this conformance in the future[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39madd '@retroactive' to silence this warning[0;0m
[0;36m29 |[0;0m public static var allCases: [NEVPNStatus] {
[0;36m30 |[0;0m return [.invalid, .disconnected, .disconnecting, .connecting, .connected, .reasserting]
/Users/admin/builder/spi-builder-workspace/Sources/TunnelMonitorKit/Util/NEProviderStopReason+StringConvertible.swift:11:1: [1;33mwarning: [1;39mextension declares a conformance of imported type 'NEProviderStopReason' to imported protocol 'CustomStringConvertible'; this will not behave correctly if the owners of 'NetworkExtension' introduce this conformance in the future[0;0m
[0;36m9 |[0;0m import NetworkExtension
[0;36m10 |[0;0m
[0;36m11 |[0;0m extension NEProviderStopReason: CustomStringConvertible {
[0;36m|[0;0m |- [1;33mwarning: [1;39mextension declares a conformance of imported type 'NEProviderStopReason' to imported protocol 'CustomStringConvertible'; this will not behave correctly if the owners of 'NetworkExtension' introduce this conformance in the future[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39madd '@retroactive' to silence this warning[0;0m
[0;36m12 |[0;0m
[0;36m13 |[0;0m /// A textual representation of this instance.
/Users/admin/builder/spi-builder-workspace/Sources/TunnelMonitorKit/Util/NEVPNStatus+Util.swift:11:1: [1;33mwarning: [1;39mextension declares a conformance of imported type 'NEVPNStatus' to imported protocol 'CustomStringConvertible'; this will not behave correctly if the owners of 'NetworkExtension' introduce this conformance in the future[0;0m
[0;36m9 |[0;0m import NetworkExtension
[0;36m10 |[0;0m
[0;36m11 |[0;0m extension NEVPNStatus: CustomStringConvertible {
[0;36m|[0;0m |- [1;33mwarning: [1;39mextension declares a conformance of imported type 'NEVPNStatus' to imported protocol 'CustomStringConvertible'; this will not behave correctly if the owners of 'NetworkExtension' introduce this conformance in the future[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39madd '@retroactive' to silence this warning[0;0m
[0;36m12 |[0;0m
[0;36m13 |[0;0m /// A textual representation of this instance
/Users/admin/builder/spi-builder-workspace/Sources/TunnelMonitorKit/Util/NEVPNStatus+Util.swift:28:1: [1;33mwarning: [1;39mextension declares a conformance of imported type 'NEVPNStatus' to imported protocol 'CaseIterable'; this will not behave correctly if the owners of 'NetworkExtension' introduce this conformance in the future[0;0m
[0;36m26 |[0;0m }
[0;36m27 |[0;0m
[0;36m28 |[0;0m extension NEVPNStatus: CaseIterable {
[0;36m|[0;0m |- [1;33mwarning: [1;39mextension declares a conformance of imported type 'NEVPNStatus' to imported protocol 'CaseIterable'; this will not behave correctly if the owners of 'NetworkExtension' introduce this conformance in the future[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39madd '@retroactive' to silence this warning[0;0m
[0;36m29 |[0;0m public static var allCases: [NEVPNStatus] {
[0;36m30 |[0;0m return [.invalid, .disconnected, .disconnecting, .connecting, .connected, .reasserting]
Build complete.
{
"dependencies" : [
],
"manifest_display_name" : "TunnelMonitorKit",
"name" : "TunnelMonitorKit",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "11.0"
},
{
"name" : "macos",
"version" : "10.13"
}
],
"products" : [
{
"name" : "TunnelMonitorKit",
"targets" : [
"TunnelMonitorKit"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "TunnelMonitorKitTests",
"module_type" : "SwiftTarget",
"name" : "TunnelMonitorKitTests",
"path" : "Tests/TunnelMonitorKitTests",
"sources" : [
"MockingTests/TMMockTunnelProviderManagerTests.swift",
"MockingTests/TMTunnelProviderSessionMockTests.swift",
"TunnelCommunicationTests/MessageContainerTests.swift",
"TunnelCommunicationTests/MessageRouterTests.swift",
"TunnelCommunicationTests/TunnelMonitorTests.swift",
"TunnelConfigurationTests/PacketTunnelConfigurationTests.swift",
"UtilTests/NEIPv4RouteTests.swift"
],
"target_dependencies" : [
"TunnelMonitorKit"
],
"type" : "test"
},
{
"c99name" : "TunnelMonitorKit",
"module_type" : "SwiftTarget",
"name" : "TunnelMonitorKit",
"path" : "Sources/TunnelMonitorKit",
"product_memberships" : [
"TunnelMonitorKit"
],
"sources" : [
"Logging/TMLogger.swift",
"Logging/TMOSLogger.swift",
"Mocking/TMNativeTunnelProviderManager.swift",
"Mocking/TMPacketTunnelProvider.swift",
"Mocking/TMPacketTunnelProviderNative.swift",
"Mocking/TMTunnelProviderManager.swift",
"Mocking/TMTunnelProviderManagerFactory.swift",
"Mocking/TMTunnelProviderSession.swift",
"TunnelCommunication/MessageContainer.swift",
"TunnelCommunication/MessageRouter.swift",
"TunnelCommunication/TMCommunicationError.swift",
"TunnelCommunication/TunnelMonitor.swift",
"TunnelConfiguration/PacketTunnelConfiguration.swift",
"TunnelConfiguration/TunnelConfigurationError.swift",
"TunnelMonitorKit.swift",
"Util/NEIPv4Route+Util.swift",
"Util/NEProviderStopReason+StringConvertible.swift",
"Util/NEVPNStatus+Util.swift",
"Util/NSTextCheckingResult+Util.swift"
],
"type" : "library"
}
],
"tools_version" : "5.5"
}
Done.