Build Information
Successful build of lcl-speedtest, reference 1.0.7 (1b5a79), with Swift 6.4 for macOS (SPM) on 21 Sep 2026 22:16:35 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/Local-Connectivity-Lab/lcl-speedtest.git
Reference: 1.0.7
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/Local-Connectivity-Lab/lcl-speedtest
* tag 1.0.7 -> FETCH_HEAD
HEAD is now at 1b5a795 Update lcl-websocket to 1.1.1 (#11)
Cloned https://github.com/Local-Connectivity-Lab/lcl-speedtest.git
Revision (git rev-parse @):
1b5a79555025c0646cf88a8290c42d9c26e616b4
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/Local-Connectivity-Lab/lcl-speedtest.git at 1.0.7
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.4
Building package at path: $PWD
https://github.com/Local-Connectivity-Lab/lcl-speedtest.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-27.0.0-Release.Candidate.app xcrun swift build --arch arm64
Building for debugging...
[Computing dependencies]
[Pre-planning 1 / 1167]
[Planning deferred tasks]
[Constructing 2014 / 2916]
[142 / 846] Demo-product
[221 / 846]
[234 / 852] NIOConcurrencyHelpers
[238 / 852] CNIOWindows
[246 / 885] CNIOWindows
[257 / 919]
[261 / 919]
[274 / 956]
[283 / 956] InternalCollectionsUtilities
[291 / 956]
[292 / 956]
[294 / 956]
[296 / 956]
[311 / 956] Atomics
[315 / 956]
[322 / 956] CNIOBoringSSL
[324 / 956] CNIOBoringSSL
[332 / 956] CNIOBoringSSL
[339 / 956] CNIOBoringSSL
[341 / 956] CNIOBoringSSL
[344 / 956] _NIODataStructures
[366 / 956] CNIOBoringSSL
[373 / 956] CNIOBoringSSL
[377 / 956] CNIOBoringSSL
[383 / 956] CNIOBoringSSL
[387 / 956] CNIOBoringSSL
[393 / 956] CNIOBoringSSL
[397 / 956] CNIOBoringSSL
[399 / 956] CNIOBoringSSL
[403 / 956] CNIOBoringSSL
[405 / 956] CNIOBoringSSL
[406 / 956] CNIOBoringSSL
[411 / 956] CNIOBoringSSL
[412 / 956] CNIOBoringSSL
[418 / 956] CNIOBoringSSL
[421 / 956] CNIOBoringSSL
[422 / 956] CNIOBoringSSL
[423 / 956] CNIOBoringSSL
[427 / 956] CNIOBoringSSL
[431 / 956] CNIOBoringSSL
[432 / 956] CNIOBoringSSL
[433 / 956] CNIOBoringSSL
[436 / 956] CNIOBoringSSL
[439 / 956] CNIOBoringSSL
[442 / 956] CNIOBoringSSL
[448 / 956] CNIOBoringSSL
[455 / 956] CNIOBoringSSL
[466 / 956] CNIOBoringSSL
[475 / 956] CNIOBoringSSL
[478 / 956] CNIOBoringSSL
[479 / 956] CNIOBoringSSL
[484 / 956] CNIOBoringSSL
[485 / 956] CNIOBoringSSL
[489 / 956] CNIOBoringSSL
[496 / 956] CNIOBoringSSL
[498 / 956] CNIOBoringSSL
[500 / 956] CNIOBoringSSL
[502 / 956] CNIOBoringSSL
[507 / 956] CNIOBoringSSL
[508 / 956] CNIOBoringSSL
[511 / 956] CNIOBoringSSL
[513 / 956] CNIOBoringSSL
[516 / 956] CNIOBoringSSL
[520 / 956] CNIOBoringSSL
[522 / 956] CNIOBoringSSL
[529 / 956] CNIOBoringSSL
[540 / 956] CNIOBoringSSL
[544 / 956] CNIOBoringSSL
[546 / 956] CNIOBoringSSL
[552 / 956] CNIOBoringSSL
[556 / 956] CNIOBoringSSL
[559 / 956] CNIOBoringSSL
[567 / 956] CNIOBoringSSL
[579 / 956] CNIOBoringSSL
[581 / 956] CNIOBoringSSL
[583 / 956] CNIOBoringSSL
[592 / 956] CNIOBoringSSL
[593 / 956] CNIOBoringSSL
[599 / 956] CNIOBoringSSL
[602 / 956] CNIOBoringSSL
[606 / 956] CNIOBoringSSL
[611 / 956] CNIOBoringSSL
[615 / 956] CNIOBoringSSL
[618 / 956] CNIOBoringSSL
[619 / 956] CNIOBoringSSL
[622 / 956] CNIOBoringSSL
[627 / 956] CNIOBoringSSL
[632 / 956] CNIOBoringSSL
[634 / 956] CNIOBoringSSL
[643 / 956] CNIOBoringSSL
[654 / 956] CNIOBoringSSL
[661 / 956] CNIOBoringSSL
[667 / 956] CNIOBoringSSL
[669 / 956] CNIOBoringSSL
[673 / 956] CNIOBoringSSL
[676 / 956] CNIOBoringSSL
[679 / 956] CNIOBoringSSL
[687 / 956] CNIOBoringSSL
[697 / 956] CNIOBoringSSL
[707 / 956] CNIOBoringSSL
[708 / 956] CNIOBoringSSL
[709 / 956] CNIOBoringSSL
[716 / 956] CNIOBoringSSL
[717 / 956] CNIOBoringSSL
[721 / 956]
[738 / 956] _NIODataStructures
[746 / 956] NIOConcurrencyHelpers
[751 / 956]
[753 / 956]
[756 / 956] _AtomicsShims
[758 / 956] _NIODataStructures
[763 / 956]
[768 / 956] Logging
[770 / 956] Logging-product
[779 / 956] NIOConcurrencyHelpers
[787 / 956] ContainersPreview
[798 / 956] CNIOAtomics
[808 / 958] Atomics-product
[815 / 974]
[829 / 974]
[833 / 974]
[836 / 975] ContainersPreview
[844 / 986]
[849 / 986] ContainersPreview
[857 / 987] ContainersPreview
[864 / 998] ContainersPreview
[869 / 998] CNIOBoringSSLShims
[874 / 998] ContainersPreview
[876 / 998] DequeModule
[885 / 999] NIOCore
[888 / 1016]
[890 / 1016]
[900 / 1016] NIOCore
[901 / 1016] NIOCore
[902 / 1016] NIOCore
[902 / 1016] CNIOAtomics
[902 / 1016] NIOCore
[902 / 1016] CNIOAtomics
[904 / 1016] NIOCore
[915 / 1019] NIOEmbedded
[919 / 1023] NIOEmbedded
[925 / 1023] NIOFoundationEssentialsCompat
[939 / 1055]
[942 / 1055]
[943 / 1055]
[944 / 1055]
[945 / 1055]
[956 / 1055] NIOPosix
[957 / 1055] NIOFoundationEssentialsCompat
[965 / 1055] NIOFoundationEssentialsCompat
[965 / 1055] NIOPosix
[972 / 1056] NIOFoundationEssentialsCompat
[976 / 1058] NIO
[986 / 1061] NIOPosix
[996 / 1079] NIOHTTP1
[1007 / 1083] NIOTLS-product
[1018 / 1083] NIOHTTP1
[1020 / 1083] NIOFoundationCompat-product
[1028 / 1085] NIOTransportServices
[1030 / 1086]
[1031 / 1086] NIOHTTP1
[1032 / 1098]
[1039 / 1098] NIOWebSocket
[1042 / 1113] NIOSSL
[1048 / 1126] NIOWebSocket
[1055 / 1126]
[1063 / 1126] NIOTransportServices
[1067 / 1126] NIOTransportServices
[1077 / 1126] NIOTransportServices-product
[1080 / 1126] NIOSSL
[1081 / 1126] NIOSSL
[1089 / 1126] NIOSSL
[1092 / 1126] NIOTransportServices
[1096 / 1127] NIO
[1099 / 1127] NIO-product
[1101 / 1127] NIOSSL
[1110 / 1175]
[1116 / 1175]
[1121 / 1175]
[1126 / 1175]
[1128 / 1175]
[1132 / 1175]
[1136 / 1175]
[1137 / 1175]
[1138 / 1175]
[1139 / 1175]
[1140 / 1175]
[1151 / 1175] LCLWebSocket
[1158 / 1176] LCLWebSocket
[1171 / 1187] LCLSpeedtest
[1182 / 1188] LCLSpeedtest
[1183 / 1188] Demo-product
[1185 / 1190] Demo-product
[1188 / 1190] Demo-product
Build complete! (39.70 sec)
Fetching https://github.com/apple/swift-nio.git
Fetching https://github.com/apple/swift-log.git
Fetching https://github.com/Local-Connectivity-Lab/lcl-websocket.git
[1/8132] Fetching swift-log
[2/8769] Fetching swift-log, lcl-websocket
[8770/94834] Fetching swift-log, lcl-websocket, swift-nio
Fetched https://github.com/apple/swift-log.git (10.31s)
Fetched https://github.com/apple/swift-nio.git (10.31s)
Fetched https://github.com/Local-Connectivity-Lab/lcl-websocket.git (10.32s)
Computing version for https://github.com/Local-Connectivity-Lab/lcl-websocket.git
warning: 'lcl-websocket': /Package.swift:9:48: warning: 'v4' is deprecated: watchOS 9.0 is the oldest supported version [#DeprecatedDeclaration]
7 | name: "LCLWebSocket",
8 | platforms: [
9 | .macOS(.v10_15), .iOS(.v13), .watchOS(.v4), .tvOS(.v13), .visionOS(.v1),
| `- warning: 'v4' is deprecated: watchOS 9.0 is the oldest supported version [#DeprecatedDeclaration]
10 | ],
11 | products: [
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
Computed https://github.com/Local-Connectivity-Lab/lcl-websocket.git at 1.1.1 (10.93s)
Fetching https://github.com/apple/swift-nio-transport-services.git
Fetching https://github.com/apple/swift-nio-ssl.git
Fetching https://github.com/apple/swift-atomics.git
[1/2863] Fetching swift-nio-transport-services
[2/4738] Fetching swift-nio-transport-services, swift-atomics
[605/20803] Fetching swift-nio-transport-services, swift-atomics, swift-nio-ssl
Fetched https://github.com/apple/swift-nio-ssl.git (11.78s)
Fetched https://github.com/apple/swift-atomics.git (11.78s)
Fetched https://github.com/apple/swift-nio-transport-services.git (11.78s)
Computing version for https://github.com/apple/swift-atomics.git
Computed https://github.com/apple/swift-atomics.git at 1.3.1 (12.37s)
Computing version for https://github.com/apple/swift-nio-transport-services.git
Computed https://github.com/apple/swift-nio-transport-services.git at 1.28.0 (0.58s)
Computing version for https://github.com/apple/swift-log.git
Computed https://github.com/apple/swift-log.git at 1.15.1 (0.56s)
Computing version for https://github.com/apple/swift-nio-ssl.git
Computed https://github.com/apple/swift-nio-ssl.git at 2.37.5 (0.69s)
Computing version for https://github.com/apple/swift-nio.git
Computed https://github.com/apple/swift-nio.git at 2.103.0 (0.66s)
Fetching https://github.com/apple/swift-system.git
Fetching https://github.com/apple/swift-collections.git
[1/6898] Fetching swift-system
[898/34552] Fetching swift-system, swift-collections
Fetched https://github.com/apple/swift-system.git (2.68s)
Fetched https://github.com/apple/swift-collections.git (2.68s)
Computing version for https://github.com/apple/swift-collections.git
Computed https://github.com/apple/swift-collections.git at 1.6.0 (3.38s)
Computing version for https://github.com/apple/swift-system.git
Computed https://github.com/apple/swift-system.git at 1.8.1 (0.56s)
Creating working copy for https://github.com/apple/swift-nio.git
Working copy of https://github.com/apple/swift-nio.git resolved at 2.103.0
Creating working copy for https://github.com/apple/swift-nio-transport-services.git
Working copy of https://github.com/apple/swift-nio-transport-services.git resolved at 1.28.0
Creating working copy for https://github.com/apple/swift-system.git
Working copy of https://github.com/apple/swift-system.git resolved at 1.8.1
Creating working copy for https://github.com/apple/swift-collections.git
Working copy of https://github.com/apple/swift-collections.git resolved at 1.6.0
Creating working copy for https://github.com/Local-Connectivity-Lab/lcl-websocket.git
Working copy of https://github.com/Local-Connectivity-Lab/lcl-websocket.git resolved at 1.1.1
Creating working copy for https://github.com/apple/swift-nio-ssl.git
Working copy of https://github.com/apple/swift-nio-ssl.git resolved at 2.37.5
Creating working copy for https://github.com/apple/swift-atomics.git
Working copy of https://github.com/apple/swift-atomics.git resolved at 1.3.1
Creating working copy for https://github.com/apple/swift-log.git
Working copy of https://github.com/apple/swift-log.git resolved at 1.15.1
warning: 'lcl-websocket': /Users/admin/builder/spi-builder-workspace/.build/checkouts/lcl-websocket/Package.swift:9:48: warning: 'v4' is deprecated: watchOS 9.0 is the oldest supported version [#DeprecatedDeclaration]
7 | name: "LCLWebSocket",
8 | platforms: [
9 | .macOS(.v10_15), .iOS(.v13), .watchOS(.v4), .tvOS(.v13), .visionOS(.v1),
| `- warning: 'v4' is deprecated: watchOS 9.0 is the oldest supported version [#DeprecatedDeclaration]
10 | ],
11 | products: [
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
/Users/admin/builder/spi-builder-workspace/Sources/LCLSpeedtest/DownloadClient.swift:75:44: [1;33mwarning: [1;39mcapture of 'self' with non-Sendable type 'DownloadClient' in a '@Sendable' closure[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
[0;36m17 |[0;0m import NIOWebSocket
[0;36m18 |[0;0m
[0;36m19 |[0;0m internal final class DownloadClient: SpeedTestable {
[0;36m|[0;0m `- [1;39mnote: [1;39mclass 'DownloadClient' does not conform to the 'Sendable' protocol[0;0m
[0;36m20 |[0;0m private let url: URL
[0;36m21 |[0;0m private let eventloopGroup: MultiThreadedEventLoopGroup
[0;36m:[0;0m
[0;36m73 |[0;0m onFinish(
[0;36m74 |[0;0m DownloadClient.generateMeasurementProgress(
[0;36m75 |[0;0m startTime: self.startTime,
[0;36m|[0;0m `- [1;33mwarning: [1;39mcapture of 'self' with non-Sendable type 'DownloadClient' in a '@Sendable' closure[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
[0;36m76 |[0;0m numBytes: self.totalBytes,
[0;36m77 |[0;0m direction: .download
/Users/admin/builder/spi-builder-workspace/Sources/LCLSpeedtest/DownloadClient.swift:88:44: [1;33mwarning: [1;39mcapture of 'self' with non-Sendable type 'DownloadClient' in a '@Sendable' closure[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
[0;36m17 |[0;0m import NIOWebSocket
[0;36m18 |[0;0m
[0;36m19 |[0;0m internal final class DownloadClient: SpeedTestable {
[0;36m|[0;0m `- [1;39mnote: [1;39mclass 'DownloadClient' does not conform to the 'Sendable' protocol[0;0m
[0;36m20 |[0;0m private let url: URL
[0;36m21 |[0;0m private let eventloopGroup: MultiThreadedEventLoopGroup
[0;36m:[0;0m
[0;36m86 |[0;0m onFinish(
[0;36m87 |[0;0m DownloadClient.generateMeasurementProgress(
[0;36m88 |[0;0m startTime: self.startTime,
[0;36m|[0;0m `- [1;33mwarning: [1;39mcapture of 'self' with non-Sendable type 'DownloadClient' in a '@Sendable' closure[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
[0;36m89 |[0;0m numBytes: self.totalBytes,
[0;36m90 |[0;0m direction: .download
/Users/admin/builder/spi-builder-workspace/Sources/LCLSpeedtest/DownloadClient.swift:124:35: [1;33mwarning: [1;39mcapture of 'measurement' with non-Sendable type 'SpeedTestMeasurement' in a '@Sendable' closure[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
[0;36m122 |[0;0m if let onMeasurement = self.onMeasurement {
[0;36m123 |[0;0m self.emitter.async {
[0;36m124 |[0;0m onMeasurement(measurement)
[0;36m|[0;0m `- [1;33mwarning: [1;39mcapture of 'measurement' with non-Sendable type 'SpeedTestMeasurement' in a '@Sendable' closure[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
[0;36m125 |[0;0m }
[0;36m126 |[0;0m }
/Users/admin/builder/spi-builder-workspace/Sources/LCLSpeedtest/Models/Measurement.swift:91:15: [1;39mnote: [1;39mconsider making struct 'SpeedTestMeasurement' conform to the 'Sendable' protocol[0;0m
[0;36m89 |[0;0m }
[0;36m90 |[0;0m
[0;36m91 |[0;0m public struct SpeedTestMeasurement: Codable {
[0;36m|[0;0m `- [1;39mnote: [1;39mconsider making struct 'SpeedTestMeasurement' conform to the 'Sendable' protocol[0;0m
[0;36m92 |[0;0m public var appInfo: AppInfo?
[0;36m93 |[0;0m public let bbrInfo: BBRInfo?
/Users/admin/builder/spi-builder-workspace/Sources/LCLSpeedtest/DownloadClient.swift:141:40: [1;33mwarning: [1;39mcapture of 'self' with non-Sendable type 'DownloadClient' in a '@Sendable' closure[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
[0;36m17 |[0;0m import NIOWebSocket
[0;36m18 |[0;0m
[0;36m19 |[0;0m internal final class DownloadClient: SpeedTestable {
[0;36m|[0;0m `- [1;39mnote: [1;39mclass 'DownloadClient' does not conform to the 'Sendable' protocol[0;0m
[0;36m20 |[0;0m private let url: URL
[0;36m21 |[0;0m private let eventloopGroup: MultiThreadedEventLoopGroup
[0;36m:[0;0m
[0;36m139 |[0;0m onProgress(
[0;36m140 |[0;0m DownloadClient.generateMeasurementProgress(
[0;36m141 |[0;0m startTime: self.startTime,
[0;36m|[0;0m `- [1;33mwarning: [1;39mcapture of 'self' with non-Sendable type 'DownloadClient' in a '@Sendable' closure[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
[0;36m142 |[0;0m numBytes: self.totalBytes,
[0;36m143 |[0;0m direction: .download
[#SendableClosureCaptures]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures>
/Users/admin/builder/spi-builder-workspace/Sources/LCLSpeedtest/UploadClient.swift:76:44: [1;33mwarning: [1;39mcapture of 'self' with non-Sendable type 'UploadClient' in a '@Sendable' closure[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
[0;36m17 |[0;0m import NIOWebSocket
[0;36m18 |[0;0m
[0;36m19 |[0;0m internal final class UploadClient: SpeedTestable {
[0;36m|[0;0m `- [1;39mnote: [1;39mclass 'UploadClient' does not conform to the 'Sendable' protocol[0;0m
[0;36m20 |[0;0m private let url: URL
[0;36m21 |[0;0m private let eventloopGroup: MultiThreadedEventLoopGroup
[0;36m:[0;0m
[0;36m74 |[0;0m onFinish(
[0;36m75 |[0;0m UploadClient.generateMeasurementProgress(
[0;36m76 |[0;0m startTime: self.startTime,
[0;36m|[0;0m `- [1;33mwarning: [1;39mcapture of 'self' with non-Sendable type 'UploadClient' in a '@Sendable' closure[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
[0;36m77 |[0;0m numBytes: self.totalBytes,
[0;36m78 |[0;0m direction: .upload
/Users/admin/builder/spi-builder-workspace/Sources/LCLSpeedtest/UploadClient.swift:89:44: [1;33mwarning: [1;39mcapture of 'self' with non-Sendable type 'UploadClient' in a '@Sendable' closure[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
[0;36m17 |[0;0m import NIOWebSocket
[0;36m18 |[0;0m
[0;36m19 |[0;0m internal final class UploadClient: SpeedTestable {
[0;36m|[0;0m `- [1;39mnote: [1;39mclass 'UploadClient' does not conform to the 'Sendable' protocol[0;0m
[0;36m20 |[0;0m private let url: URL
[0;36m21 |[0;0m private let eventloopGroup: MultiThreadedEventLoopGroup
[0;36m:[0;0m
[0;36m87 |[0;0m onFinish(
[0;36m88 |[0;0m UploadClient.generateMeasurementProgress(
[0;36m89 |[0;0m startTime: self.startTime,
[0;36m|[0;0m `- [1;33mwarning: [1;39mcapture of 'self' with non-Sendable type 'UploadClient' in a '@Sendable' closure[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
[0;36m90 |[0;0m numBytes: self.totalBytes,
[0;36m91 |[0;0m direction: .upload
/Users/admin/builder/spi-builder-workspace/Sources/LCLSpeedtest/UploadClient.swift:123:35: [1;33mwarning: [1;39mcapture of 'measurement' with non-Sendable type 'SpeedTestMeasurement' in a '@Sendable' closure[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
[0;36m121 |[0;0m if let onMeasurement = self.onMeasurement {
[0;36m122 |[0;0m self.emitter.async {
[0;36m123 |[0;0m onMeasurement(measurement)
[0;36m|[0;0m `- [1;33mwarning: [1;39mcapture of 'measurement' with non-Sendable type 'SpeedTestMeasurement' in a '@Sendable' closure[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
[0;36m124 |[0;0m }
[0;36m125 |[0;0m }
/Users/admin/builder/spi-builder-workspace/Sources/LCLSpeedtest/Models/Measurement.swift:91:15: [1;39mnote: [1;39mconsider making struct 'SpeedTestMeasurement' conform to the 'Sendable' protocol[0;0m
[0;36m89 |[0;0m }
[0;36m90 |[0;0m
[0;36m91 |[0;0m public struct SpeedTestMeasurement: Codable {
[0;36m|[0;0m `- [1;39mnote: [1;39mconsider making struct 'SpeedTestMeasurement' conform to the 'Sendable' protocol[0;0m
[0;36m92 |[0;0m public var appInfo: AppInfo?
[0;36m93 |[0;0m public let bbrInfo: BBRInfo?
[#SendableClosureCaptures]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures>
Build complete.
{
"dependencies" : [
{
"identity" : "swift-nio",
"requirement" : {
"range" : [
{
"lower_bound" : "2.81.0",
"upper_bound" : "3.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-nio.git"
},
{
"identity" : "swift-log",
"requirement" : {
"range" : [
{
"lower_bound" : "1.5.3",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-log.git"
},
{
"identity" : "lcl-websocket",
"requirement" : {
"range" : [
{
"lower_bound" : "1.1.1",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/Local-Connectivity-Lab/lcl-websocket.git"
}
],
"manifest_display_name" : "lcl-speedtest",
"name" : "lcl-speedtest",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "10.15"
},
{
"name" : "ios",
"version" : "14.0"
},
{
"name" : "tvos",
"version" : "13.0"
},
{
"name" : "watchos",
"version" : "6.0"
}
],
"products" : [
{
"name" : "LCLSpeedtest",
"targets" : [
"LCLSpeedtest"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "Demo",
"targets" : [
"Demo"
],
"type" : {
"executable" : null
}
}
],
"targets" : [
{
"c99name" : "LCLSpeedtest",
"module_type" : "SwiftTarget",
"name" : "LCLSpeedtest",
"path" : "Sources/LCLSpeedtest",
"product_dependencies" : [
"NIO",
"NIOCore",
"NIOPosix",
"NIOConcurrencyHelpers",
"Logging",
"LCLWebSocket"
],
"product_memberships" : [
"LCLSpeedtest",
"Demo"
],
"sources" : [
"Constants.swift",
"DownloadClient.swift",
"Errors.swift",
"Models/Measurement.swift",
"Models/TestServer.swift",
"Models/TestType.swift",
"Networking.swift",
"SpeedTestClient.swift",
"SpeedTestable.swift",
"UploadClient.swift",
"Utils/WebSocketClosCode+Extension.swift"
],
"type" : "library"
},
{
"c99name" : "Demo",
"module_type" : "SwiftTarget",
"name" : "Demo",
"path" : "Sources/Demo",
"product_memberships" : [
"Demo"
],
"sources" : [
"Client.swift"
],
"target_dependencies" : [
"LCLSpeedtest"
],
"type" : "executable"
}
],
"tools_version" : "5.9"
}
Done.