Build Information
Successful build of SwiftUPnP, reference v1.1.0 (ca29e2
), with Swift 6.2 (beta) for macOS (SPM) on 20 Jun 2025 20:38:36 UTC.
Swift 6 data race errors: 0
Build Command
env DEVELOPER_DIR=/Applications/Xcode-26.0.0-Beta.app xcrun swift build --arch arm64
Build Log
========================================
RunAll
========================================
Builder version: 4.64.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/katoemba/SwiftUPnP.git
Reference: v1.1.0
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/katoemba/SwiftUPnP
* tag v1.1.0 -> FETCH_HEAD
HEAD is now at ca29e25 Updated to swift tools version 5.9.
Cloned https://github.com/katoemba/SwiftUPnP.git
Revision (git rev-parse @):
ca29e25e0604c87009768d73a8e8490796054831
SUCCESS checkout https://github.com/katoemba/SwiftUPnP.git at v1.1.0
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.2
Building package at path: $PWD
https://github.com/katoemba/SwiftUPnP.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-26.0.0-Beta.app xcrun swift build --arch arm64
Building for debugging...
[0/11] Write sources
[1/11] Write UPnPCodeGenerator-entitlement.plist
[4/11] Write sources
[5/11] Write swift-version-1EA4D86E10B52AF.txt
[6/76] Compiling CocoaAsyncSocket GCDAsyncSocket.m
[7/76] Compiling CocoaAsyncSocket GCDAsyncUdpSocket.m
[9/76] Emitting module XMLCoder
[10/76] Compiling XMLCoder DateBox.swift
[11/76] Compiling XMLCoder DecimalBox.swift
[12/76] Compiling XMLCoder DoubleBox.swift
[13/76] Compiling XMLCoder FloatBox.swift
[14/76] Compiling XMLCoder IntBox.swift
[15/81] Compiling XMLCoder XMLDecoder.swift
[16/81] Compiling XMLCoder XMLDecoderImplementation.swift
[17/81] Compiling XMLCoder XMLDecodingStorage.swift
[18/81] Compiling XMLCoder XMLKeyedDecodingContainer.swift
[19/81] Compiling XMLCoder XMLUnkeyedDecodingContainer.swift
[20/81] Compiling XMLCoder XMLStackParser.swift
[21/81] Compiling XMLCoder DecodingErrorExtension.swift
[22/81] Compiling XMLCoder DynamicNodeDecoding.swift
[23/81] Compiling XMLCoder SingleValueDecodingContainer.swift
[24/81] Compiling XMLCoder XMLChoiceDecodingContainer.swift
[25/81] Compiling XMLCoder DynamicNodeEncoding.swift
[26/81] Compiling XMLCoder EncodingErrorExtension.swift
[27/81] Compiling XMLCoder SingleValueEncodingContainer.swift
[28/81] Compiling XMLCoder XMLChoiceEncodingContainer.swift
[29/81] Compiling XMLCoder XMLEncoder.swift
[30/81] Compiling XMLCoder Attribute.swift
[31/81] Compiling XMLCoder BoolBox.swift
[32/81] Compiling XMLCoder Box.swift
[33/81] Compiling XMLCoder ChoiceBox.swift
[34/81] Compiling XMLCoder DataBox.swift
[35/81] Compiling XMLCoder KeyedStorage.swift
[36/81] Compiling XMLCoder Metatypes.swift
[37/81] Compiling XMLCoder String+Extensions.swift
[41/83] Emitting module Swifter
[42/83] Compiling XMLCoder UIntBox.swift
[43/83] Compiling XMLCoder URLBox.swift
[44/83] Compiling XMLCoder UnkeyedBox.swift
[45/83] Compiling XMLCoder ValueBox.swift
[46/83] Compiling XMLCoder Element.swift
[47/83] Compiling XMLCoder XMLChoiceCodingKey.swift
[48/83] Compiling XMLCoder XMLCoderElement.swift
[49/83] Compiling XMLCoder XMLDocumentType.swift
[50/83] Compiling XMLCoder XMLHeader.swift
[51/83] Compiling XMLCoder XMLKey.swift
[52/83] Compiling XMLCoder KeyedBox.swift
[53/83] Compiling XMLCoder NullBox.swift
[54/83] Compiling XMLCoder SharedBox.swift
[55/83] Compiling XMLCoder SingleKeyedBox.swift
[56/83] Compiling XMLCoder StringBox.swift
[57/83] Compiling XMLCoder ElementAndAttribute.swift
[58/83] Compiling XMLCoder ISO8601DateFormatter.swift
[74/83] Compiling XMLCoder XMLEncoderImplementation.swift
[75/83] Compiling XMLCoder XMLEncodingStorage.swift
[76/83] Compiling XMLCoder XMLKeyedEncodingContainer.swift
[77/83] Compiling XMLCoder XMLReferencingEncoder.swift
[78/83] Compiling XMLCoder XMLUnkeyedEncodingContainer.swift
[79/87] Compiling Swifter String+SHA1.swift
[80/87] Compiling Swifter WebSockets.swift
[81/117] Compiling UPnPCodeGenerator ServiceDefinition.swift
[82/117] Compiling UPnPCodeGenerator SourceGenerator.swift
[83/117] Emitting module UPnPCodeGenerator
[84/117] Compiling UPnPCodeGenerator main.swift
[84/117] Write Objects.LinkFileList
[85/117] Linking UPnPCodeGenerator
[86/117] Applying UPnPCodeGenerator
[88/117] Compiling SwiftUPnP XMLParserSupport.swift
[89/117] Compiling SwiftUPnP UPnPDevice.swift
[90/117] Compiling SwiftUPnP UPnPDeviceDefinition.swift
[91/120] Compiling SwiftUPnP OpenHomeVolume2Service.swift
[92/120] Compiling SwiftUPnP SSDPCocoaAsyncSocketDiscovery.swift
[93/120] Compiling SwiftUPnP SSDPDiscovery.swift
[94/120] Compiling SwiftUPnP UPnPRegistry.swift
/Users/admin/builder/spi-builder-workspace/Source/UPnP/UPnPService.swift:260:31: warning: capture of 'self' with non-sendable type 'UPnPService?' in a '@Sendable' closure [#SendableClosureCaptures]
30 | import os.log
31 |
32 | public class UPnPService: Equatable, Identifiable, Hashable {
| `- note: class 'UPnPService' does not conform to the 'Sendable' protocol
33 | public enum SubscriptionStatus {
34 | case unsubscribed
:
258 | Logger.swiftUPnP.debug("Will renew sid: \(subscriptionId) at: \(Date(timeIntervalSinceNow: Double(timeout - 10)))")
259 | DispatchQueue.main.asyncAfter(deadline: DispatchTime.now().advanced(by: .seconds(timeout - 10))) { [weak self] in
260 | guard let self else { return }
| `- warning: capture of 'self' with non-sendable type 'UPnPService?' in a '@Sendable' closure [#SendableClosureCaptures]
261 | Task {
262 | await self.renewSubscriptionToEvents()
[#SendableClosureCaptures]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures>
[95/120] Compiling SwiftUPnP UPnPService.swift
/Users/admin/builder/spi-builder-workspace/Source/UPnP/UPnPService.swift:260:31: warning: capture of 'self' with non-sendable type 'UPnPService?' in a '@Sendable' closure [#SendableClosureCaptures]
30 | import os.log
31 |
32 | public class UPnPService: Equatable, Identifiable, Hashable {
| `- note: class 'UPnPService' does not conform to the 'Sendable' protocol
33 | public enum SubscriptionStatus {
34 | case unsubscribed
:
258 | Logger.swiftUPnP.debug("Will renew sid: \(subscriptionId) at: \(Date(timeIntervalSinceNow: Double(timeout - 10)))")
259 | DispatchQueue.main.asyncAfter(deadline: DispatchTime.now().advanced(by: .seconds(timeout - 10))) { [weak self] in
260 | guard let self else { return }
| `- warning: capture of 'self' with non-sendable type 'UPnPService?' in a '@Sendable' closure [#SendableClosureCaptures]
261 | Task {
262 | await self.renewSubscriptionToEvents()
[#SendableClosureCaptures]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures>
[96/120] Compiling SwiftUPnP UPnPServiceDefinition.swift
/Users/admin/builder/spi-builder-workspace/Source/UPnP/UPnPService.swift:260:31: warning: capture of 'self' with non-sendable type 'UPnPService?' in a '@Sendable' closure [#SendableClosureCaptures]
30 | import os.log
31 |
32 | public class UPnPService: Equatable, Identifiable, Hashable {
| `- note: class 'UPnPService' does not conform to the 'Sendable' protocol
33 | public enum SubscriptionStatus {
34 | case unsubscribed
:
258 | Logger.swiftUPnP.debug("Will renew sid: \(subscriptionId) at: \(Date(timeIntervalSinceNow: Double(timeout - 10)))")
259 | DispatchQueue.main.asyncAfter(deadline: DispatchTime.now().advanced(by: .seconds(timeout - 10))) { [weak self] in
260 | guard let self else { return }
| `- warning: capture of 'self' with non-sendable type 'UPnPService?' in a '@Sendable' closure [#SendableClosureCaptures]
261 | Task {
262 | await self.renewSubscriptionToEvents()
[#SendableClosureCaptures]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures>
[97/120] Compiling SwiftUPnP SSDPNetworkDiscovery.swift
[98/120] Compiling SwiftUPnP UserAgentGenerator.swift
[99/120] Compiling SwiftUPnP IPHelper.swift
[100/120] Compiling SwiftUPnP OpenHomeRadio1Service.swift
[101/120] Compiling SwiftUPnP OpenHomeReceiver1Service.swift
[102/120] Compiling SwiftUPnP OpenHomeSender1Service.swift
[103/120] Compiling SwiftUPnP OpenHomeTime1Service.swift
/Users/admin/builder/spi-builder-workspace/Source/Profiles/OpenHome Profile/OpenHomeTransport1Service.swift:176:117: warning: keyword 'repeat' does not need to be escaped in argument list
174 | var action: SoapAction
175 | }
176 | try await post(action: "SetRepeat", envelope: Envelope(body: Body(action: SoapAction(urn: Attribute(serviceType), `repeat`: `repeat`))), log: log)
| `- warning: keyword 'repeat' does not need to be escaped in argument list
177 | }
178 |
[104/120] Compiling SwiftUPnP OpenHomeTransport1Service.swift
/Users/admin/builder/spi-builder-workspace/Source/Profiles/OpenHome Profile/OpenHomeTransport1Service.swift:176:117: warning: keyword 'repeat' does not need to be escaped in argument list
174 | var action: SoapAction
175 | }
176 | try await post(action: "SetRepeat", envelope: Envelope(body: Body(action: SoapAction(urn: Attribute(serviceType), `repeat`: `repeat`))), log: log)
| `- warning: keyword 'repeat' does not need to be escaped in argument list
177 | }
178 |
[105/120] Compiling SwiftUPnP OpenHomeVolume1Service.swift
/Users/admin/builder/spi-builder-workspace/Source/Profiles/OpenHome Profile/OpenHomeTransport1Service.swift:176:117: warning: keyword 'repeat' does not need to be escaped in argument list
174 | var action: SoapAction
175 | }
176 | try await post(action: "SetRepeat", envelope: Envelope(body: Body(action: SoapAction(urn: Attribute(serviceType), `repeat`: `repeat`))), log: log)
| `- warning: keyword 'repeat' does not need to be escaped in argument list
177 | }
178 |
[106/120] Emitting module SwiftUPnP
/Users/admin/builder/spi-builder-workspace/Source/Profiles/OpenHome Profile/OpenHomeTransport1Service.swift:176:117: warning: keyword 'repeat' does not need to be escaped in argument list
174 | var action: SoapAction
175 | }
176 | try await post(action: "SetRepeat", envelope: Envelope(body: Body(action: SoapAction(urn: Attribute(serviceType), `repeat`: `repeat`))), log: log)
| `- warning: keyword 'repeat' does not need to be escaped in argument list
177 | }
178 |
[107/120] Compiling SwiftUPnP AVTransport1Service.swift
[108/120] Compiling SwiftUPnP ConnectionManager1Service.swift
[109/120] Compiling SwiftUPnP ContentDirectory1Service+DIDL.swift
[110/120] Compiling SwiftUPnP ContentDirectory1Service.swift
[111/120] Compiling SwiftUPnP OpenHomePlaylistManager1Service.swift
[112/120] Compiling SwiftUPnP OpenHomeProduct1Service.swift
[113/120] Compiling SwiftUPnP OpenHomeProduct2Service.swift
[114/120] Compiling SwiftUPnP RenderingControl1Service.swift
[115/120] Compiling SwiftUPnP OpenHomeConfig1Service.swift
[116/120] Compiling SwiftUPnP OpenHomeCredentials1Service.swift
[117/120] Compiling SwiftUPnP OpenHomeInfo1Service.swift
[118/120] Compiling SwiftUPnP OpenHomePins1Service.swift
[119/120] Compiling SwiftUPnP OpenHomePlaylist1Service+DIDL.swift
[120/120] Compiling SwiftUPnP OpenHomePlaylist1Service.swift
Build complete! (23.73s)
Fetching https://github.com/httpswift/swifter
[1/6050] Fetching swifter
Fetched https://github.com/httpswift/swifter from cache (1.40s)
Fetching https://github.com/robbiehanson/CocoaAsyncSocket
[1/6425] Fetching cocoaasyncsocket
Fetched https://github.com/robbiehanson/CocoaAsyncSocket from cache (1.26s)
Fetching https://github.com/CoreOffice/XMLCoder.git
[1/10060] Fetching xmlcoder
Fetched https://github.com/CoreOffice/XMLCoder.git from cache (1.18s)
Computing version for https://github.com/CoreOffice/XMLCoder.git
Computed https://github.com/CoreOffice/XMLCoder.git at 0.17.1 (1.72s)
Creating working copy for https://github.com/robbiehanson/CocoaAsyncSocket
Working copy of https://github.com/robbiehanson/CocoaAsyncSocket resolved at master (5ddba5e)
Creating working copy for https://github.com/CoreOffice/XMLCoder.git
Working copy of https://github.com/CoreOffice/XMLCoder.git resolved at 0.17.1
Creating working copy for https://github.com/httpswift/swifter
Working copy of https://github.com/httpswift/swifter resolved at stable (1e4f51c)
Build complete.
{
"dependencies" : [
{
"identity" : "xmlcoder",
"requirement" : {
"range" : [
{
"lower_bound" : "0.13.1",
"upper_bound" : "1.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/CoreOffice/XMLCoder.git"
},
{
"identity" : "swifter",
"requirement" : {
"branch" : [
"stable"
]
},
"type" : "sourceControl",
"url" : "https://github.com/httpswift/swifter"
},
{
"identity" : "cocoaasyncsocket",
"requirement" : {
"branch" : [
"master"
]
},
"type" : "sourceControl",
"url" : "https://github.com/robbiehanson/CocoaAsyncSocket"
}
],
"manifest_display_name" : "SwiftUPnP",
"name" : "SwiftUPnP",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "14.0"
},
{
"name" : "macos",
"version" : "12.0"
},
{
"name" : "watchos",
"version" : "10.0"
}
],
"products" : [
{
"name" : "SwiftUPnP",
"targets" : [
"SwiftUPnP"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "UPnPCodeGenerator",
"targets" : [
"UPnPCodeGenerator"
],
"type" : {
"executable" : null
}
}
],
"targets" : [
{
"c99name" : "UPnPCodeGenerator",
"module_type" : "SwiftTarget",
"name" : "UPnPCodeGenerator",
"path" : "CodeGenerator",
"product_dependencies" : [
"XMLCoder"
],
"product_memberships" : [
"UPnPCodeGenerator"
],
"sources" : [
"ServiceDefinition.swift",
"SourceGenerator.swift",
"main.swift"
],
"type" : "executable"
},
{
"c99name" : "SwiftUPnP",
"module_type" : "SwiftTarget",
"name" : "SwiftUPnP",
"path" : "Source",
"product_dependencies" : [
"XMLCoder",
"Swifter",
"CocoaAsyncSocket"
],
"product_memberships" : [
"SwiftUPnP"
],
"sources" : [
"Profiles/AV Profile/AVTransport1Service.swift",
"Profiles/AV Profile/ConnectionManager1Service.swift",
"Profiles/AV Profile/ContentDirectory1Service+DIDL.swift",
"Profiles/AV Profile/ContentDirectory1Service.swift",
"Profiles/AV Profile/RenderingControl1Service.swift",
"Profiles/OpenHome Profile/OpenHomeConfig1Service.swift",
"Profiles/OpenHome Profile/OpenHomeCredentials1Service.swift",
"Profiles/OpenHome Profile/OpenHomeInfo1Service.swift",
"Profiles/OpenHome Profile/OpenHomePins1Service.swift",
"Profiles/OpenHome Profile/OpenHomePlaylist1Service+DIDL.swift",
"Profiles/OpenHome Profile/OpenHomePlaylist1Service.swift",
"Profiles/OpenHome Profile/OpenHomePlaylistManager1Service.swift",
"Profiles/OpenHome Profile/OpenHomeProduct1Service.swift",
"Profiles/OpenHome Profile/OpenHomeProduct2Service.swift",
"Profiles/OpenHome Profile/OpenHomeRadio1Service.swift",
"Profiles/OpenHome Profile/OpenHomeReceiver1Service.swift",
"Profiles/OpenHome Profile/OpenHomeSender1Service.swift",
"Profiles/OpenHome Profile/OpenHomeTime1Service.swift",
"Profiles/OpenHome Profile/OpenHomeTransport1Service.swift",
"Profiles/OpenHome Profile/OpenHomeVolume1Service.swift",
"Profiles/OpenHome Profile/OpenHomeVolume2Service.swift",
"SSDP/SSDPCocoaAsyncSocketDiscovery.swift",
"SSDP/SSDPDiscovery.swift",
"SSDP/SSDPNetworkDiscovery.swift",
"SSDP/UserAgentGenerator.swift",
"Support/IPHelper.swift",
"Support/XMLParserSupport.swift",
"UPnP/UPnPDevice.swift",
"UPnP/UPnPDeviceDefinition.swift",
"UPnP/UPnPRegistry.swift",
"UPnP/UPnPService.swift",
"UPnP/UPnPServiceDefinition.swift"
],
"type" : "library"
}
],
"tools_version" : "5.9"
}
Done.