Build Information
Failed to build NautilusTelemetry, reference v1.7.2 (8f8399), with Swift 6.1 for macOS (SPM) on 23 Apr 2026 14:03:02 UTC.
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64Build Log
17 |
18 | // MARK: Lifecycle
:
46 | public var aggregationTemporality = AggregationTemporality.delta
47 |
48 | public var isEmpty: Bool { lock.withLock { values.isEmpty } }
| `- warning: capture of 'self' with non-sendable type 'ExponentialHistogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
49 |
50 | /// Record a value. Positive, negative, and zero values are all allowed (unlike `Histogram`),
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/ExponentialHistogram.swift:61:15: warning: type 'any Instrument' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
59 | let now = ContinuousClock.now
60 |
61 | return lock.withLock {
| `- warning: type 'any Instrument' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
62 | let copy = Self(name: name, unit: unit, description: description)
63 | copy.startTime = startTime
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Instrument.swift:12:17: note: protocol 'Instrument' does not conform to the 'Sendable' protocol
10 | // MARK: - Instrument
11 |
12 | public protocol Instrument: AnyObject {
| `- note: protocol 'Instrument' does not conform to the 'Sendable' protocol
13 | /// The name of the instrument.
14 | var name: String { get }
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/ExponentialHistogram.swift:62:26: warning: capture of 'self' with non-sendable type 'ExponentialHistogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
14 | /// Raw recorded values are retained until the next snapshot, allowing the exporter to pick
15 | /// the scale that best represents the observed range within a fixed bucket count.
16 | public class ExponentialHistogram<T: MetricNumeric>: Instrument, ExportableInstrument {
| `- note: generic class 'ExponentialHistogram' does not conform to the 'Sendable' protocol
17 |
18 | // MARK: Lifecycle
:
60 |
61 | return lock.withLock {
62 | let copy = Self(name: name, unit: unit, description: description)
| `- warning: capture of 'self' with non-sendable type 'ExponentialHistogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
63 | copy.startTime = startTime
64 | copy.endTime = now
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Histogram.swift:37:45: warning: capture of 'self' with non-sendable type 'Histogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public class Histogram<T: MetricNumeric>: Instrument, ExportableInstrument {
| `- note: generic class 'Histogram' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
35 | public var aggregationTemporality = AggregationTemporality.delta
36 |
37 | public var isEmpty: Bool { lock.withLock { values.isEmpty } }
| `- warning: capture of 'self' with non-sendable type 'Histogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
38 |
39 | public func record(_ number: T, attributes: TelemetryAttributes = [:]) {
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Histogram.swift:53:15: warning: type 'any Instrument' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
51 | let now = ContinuousClock.now
52 |
53 | return lock.withLock {
| `- warning: type 'any Instrument' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
54 | let copy = Self(name: name, unit: unit, description: description, explicitBounds: values.explicitBounds)
55 | copy.startTime = startTime
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Instrument.swift:12:17: note: protocol 'Instrument' does not conform to the 'Sendable' protocol
10 | // MARK: - Instrument
11 |
12 | public protocol Instrument: AnyObject {
| `- note: protocol 'Instrument' does not conform to the 'Sendable' protocol
13 | /// The name of the instrument.
14 | var name: String { get }
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Histogram.swift:54:26: warning: capture of 'self' with non-sendable type 'Histogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public class Histogram<T: MetricNumeric>: Instrument, ExportableInstrument {
| `- note: generic class 'Histogram' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
52 |
53 | return lock.withLock {
54 | let copy = Self(name: name, unit: unit, description: description, explicitBounds: values.explicitBounds)
| `- warning: capture of 'self' with non-sendable type 'Histogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
55 | copy.startTime = startTime
56 | copy.endTime = now
[76/93] Compiling NautilusTelemetry ResourceAttributes.swift
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Instrumentation/NetworkMonitor.swift:113:18: error: 'LinkQuality' is not a member type of struct 'Network.NWPath'
111 |
112 | @available(iOS 26.0, macOS 26.0, *)
113 | extension NWPath.LinkQuality: @retroactive CustomStringConvertible {
| `- error: 'LinkQuality' is not a member type of struct 'Network.NWPath'
114 | public var description: String {
115 | switch self {
Network.NWPath:2:15: note: 'NWPath' declared here
1 | @available(macOS 10.14, iOS 12.0, watchOS 5.0, tvOS 12.0, *)
2 | public struct NWPath : Equatable, CustomDebugStringConvertible, Sendable {
| `- note: 'NWPath' declared here
3 | public var debugDescription: String { get }
4 | public enum Status : Sendable {
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Instrumentation/NetworkMonitor.swift:29:59: error: value of type 'NWPath' has no member 'linkQuality'
27 |
28 | if #available(iOS 26.0, macOS 26.0, *) {
29 | attributes["network.path.link_quality"] = networkPath.linkQuality.description
| `- error: value of type 'NWPath' has no member 'linkQuality'
30 | }
31 | }
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Instrumentation/NetworkMonitor.swift:48:4: warning: capture of 'self' with non-sendable type 'NetworkMonitor?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | // MARK: - NetworkMonitor
10 |
11 | public final class NetworkMonitor {
| `- note: class 'NetworkMonitor' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
46 | public func start() {
47 | pathMonitor.pathUpdateHandler = { [weak self] path in
48 | self?.networkPath.withLock { $0 = path }
| `- warning: capture of 'self' with non-sendable type 'NetworkMonitor?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
49 | }
50 | pathMonitor.start(queue: pathMonitorQueue)
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Counter.swift:32:45: warning: capture of 'self' with non-sendable type 'Counter<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public class Counter<T: MetricNumeric>: Instrument, ExportableInstrument {
| `- note: generic class 'Counter' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
30 | public var isMonotonic: Bool { true }
31 |
32 | public var isEmpty: Bool { lock.withLock { values.isEmpty } }
| `- warning: capture of 'self' with non-sendable type 'Counter<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
33 |
34 | public func add(_ number: T, attributes: TelemetryAttributes = [:]) {
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Counter.swift:48:15: warning: type 'any Instrument' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
46 | let now = ContinuousClock.now
47 |
48 | return lock.withLock {
| `- warning: type 'any Instrument' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
49 | let copy = Self(name: name, unit: unit, description: description)
50 | copy.startTime = startTime
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Instrument.swift:12:17: note: protocol 'Instrument' does not conform to the 'Sendable' protocol
10 | // MARK: - Instrument
11 |
12 | public protocol Instrument: AnyObject {
| `- note: protocol 'Instrument' does not conform to the 'Sendable' protocol
13 | /// The name of the instrument.
14 | var name: String { get }
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Counter.swift:49:26: warning: capture of 'self' with non-sendable type 'Counter<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public class Counter<T: MetricNumeric>: Instrument, ExportableInstrument {
| `- note: generic class 'Counter' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
47 |
48 | return lock.withLock {
49 | let copy = Self(name: name, unit: unit, description: description)
| `- warning: capture of 'self' with non-sendable type 'Counter<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
50 | copy.startTime = startTime
51 | copy.endTime = now
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/ExponentialHistogram.swift:48:45: warning: capture of 'self' with non-sendable type 'ExponentialHistogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
14 | /// Raw recorded values are retained until the next snapshot, allowing the exporter to pick
15 | /// the scale that best represents the observed range within a fixed bucket count.
16 | public class ExponentialHistogram<T: MetricNumeric>: Instrument, ExportableInstrument {
| `- note: generic class 'ExponentialHistogram' does not conform to the 'Sendable' protocol
17 |
18 | // MARK: Lifecycle
:
46 | public var aggregationTemporality = AggregationTemporality.delta
47 |
48 | public var isEmpty: Bool { lock.withLock { values.isEmpty } }
| `- warning: capture of 'self' with non-sendable type 'ExponentialHistogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
49 |
50 | /// Record a value. Positive, negative, and zero values are all allowed (unlike `Histogram`),
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/ExponentialHistogram.swift:61:15: warning: type 'any Instrument' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
59 | let now = ContinuousClock.now
60 |
61 | return lock.withLock {
| `- warning: type 'any Instrument' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
62 | let copy = Self(name: name, unit: unit, description: description)
63 | copy.startTime = startTime
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Instrument.swift:12:17: note: protocol 'Instrument' does not conform to the 'Sendable' protocol
10 | // MARK: - Instrument
11 |
12 | public protocol Instrument: AnyObject {
| `- note: protocol 'Instrument' does not conform to the 'Sendable' protocol
13 | /// The name of the instrument.
14 | var name: String { get }
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/ExponentialHistogram.swift:62:26: warning: capture of 'self' with non-sendable type 'ExponentialHistogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
14 | /// Raw recorded values are retained until the next snapshot, allowing the exporter to pick
15 | /// the scale that best represents the observed range within a fixed bucket count.
16 | public class ExponentialHistogram<T: MetricNumeric>: Instrument, ExportableInstrument {
| `- note: generic class 'ExponentialHistogram' does not conform to the 'Sendable' protocol
17 |
18 | // MARK: Lifecycle
:
60 |
61 | return lock.withLock {
62 | let copy = Self(name: name, unit: unit, description: description)
| `- warning: capture of 'self' with non-sendable type 'ExponentialHistogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
63 | copy.startTime = startTime
64 | copy.endTime = now
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Histogram.swift:37:45: warning: capture of 'self' with non-sendable type 'Histogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public class Histogram<T: MetricNumeric>: Instrument, ExportableInstrument {
| `- note: generic class 'Histogram' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
35 | public var aggregationTemporality = AggregationTemporality.delta
36 |
37 | public var isEmpty: Bool { lock.withLock { values.isEmpty } }
| `- warning: capture of 'self' with non-sendable type 'Histogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
38 |
39 | public func record(_ number: T, attributes: TelemetryAttributes = [:]) {
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Histogram.swift:53:15: warning: type 'any Instrument' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
51 | let now = ContinuousClock.now
52 |
53 | return lock.withLock {
| `- warning: type 'any Instrument' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
54 | let copy = Self(name: name, unit: unit, description: description, explicitBounds: values.explicitBounds)
55 | copy.startTime = startTime
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Instrument.swift:12:17: note: protocol 'Instrument' does not conform to the 'Sendable' protocol
10 | // MARK: - Instrument
11 |
12 | public protocol Instrument: AnyObject {
| `- note: protocol 'Instrument' does not conform to the 'Sendable' protocol
13 | /// The name of the instrument.
14 | var name: String { get }
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Histogram.swift:54:26: warning: capture of 'self' with non-sendable type 'Histogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public class Histogram<T: MetricNumeric>: Instrument, ExportableInstrument {
| `- note: generic class 'Histogram' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
52 |
53 | return lock.withLock {
54 | let copy = Self(name: name, unit: unit, description: description, explicitBounds: values.explicitBounds)
| `- warning: capture of 'self' with non-sendable type 'Histogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
55 | copy.startTime = startTime
56 | copy.endTime = now
[77/93] Compiling NautilusTelemetry Counter.swift
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Instrumentation/NetworkMonitor.swift:113:18: error: 'LinkQuality' is not a member type of struct 'Network.NWPath'
111 |
112 | @available(iOS 26.0, macOS 26.0, *)
113 | extension NWPath.LinkQuality: @retroactive CustomStringConvertible {
| `- error: 'LinkQuality' is not a member type of struct 'Network.NWPath'
114 | public var description: String {
115 | switch self {
Network.NWPath:2:15: note: 'NWPath' declared here
1 | @available(macOS 10.14, iOS 12.0, watchOS 5.0, tvOS 12.0, *)
2 | public struct NWPath : Equatable, CustomDebugStringConvertible, Sendable {
| `- note: 'NWPath' declared here
3 | public var debugDescription: String { get }
4 | public enum Status : Sendable {
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Instrumentation/NetworkMonitor.swift:29:59: error: value of type 'NWPath' has no member 'linkQuality'
27 |
28 | if #available(iOS 26.0, macOS 26.0, *) {
29 | attributes["network.path.link_quality"] = networkPath.linkQuality.description
| `- error: value of type 'NWPath' has no member 'linkQuality'
30 | }
31 | }
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Instrumentation/NetworkMonitor.swift:48:4: warning: capture of 'self' with non-sendable type 'NetworkMonitor?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | // MARK: - NetworkMonitor
10 |
11 | public final class NetworkMonitor {
| `- note: class 'NetworkMonitor' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
46 | public func start() {
47 | pathMonitor.pathUpdateHandler = { [weak self] path in
48 | self?.networkPath.withLock { $0 = path }
| `- warning: capture of 'self' with non-sendable type 'NetworkMonitor?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
49 | }
50 | pathMonitor.start(queue: pathMonitorQueue)
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Counter.swift:32:45: warning: capture of 'self' with non-sendable type 'Counter<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public class Counter<T: MetricNumeric>: Instrument, ExportableInstrument {
| `- note: generic class 'Counter' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
30 | public var isMonotonic: Bool { true }
31 |
32 | public var isEmpty: Bool { lock.withLock { values.isEmpty } }
| `- warning: capture of 'self' with non-sendable type 'Counter<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
33 |
34 | public func add(_ number: T, attributes: TelemetryAttributes = [:]) {
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Counter.swift:48:15: warning: type 'any Instrument' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
46 | let now = ContinuousClock.now
47 |
48 | return lock.withLock {
| `- warning: type 'any Instrument' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
49 | let copy = Self(name: name, unit: unit, description: description)
50 | copy.startTime = startTime
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Instrument.swift:12:17: note: protocol 'Instrument' does not conform to the 'Sendable' protocol
10 | // MARK: - Instrument
11 |
12 | public protocol Instrument: AnyObject {
| `- note: protocol 'Instrument' does not conform to the 'Sendable' protocol
13 | /// The name of the instrument.
14 | var name: String { get }
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Counter.swift:49:26: warning: capture of 'self' with non-sendable type 'Counter<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public class Counter<T: MetricNumeric>: Instrument, ExportableInstrument {
| `- note: generic class 'Counter' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
47 |
48 | return lock.withLock {
49 | let copy = Self(name: name, unit: unit, description: description)
| `- warning: capture of 'self' with non-sendable type 'Counter<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
50 | copy.startTime = startTime
51 | copy.endTime = now
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/ExponentialHistogram.swift:48:45: warning: capture of 'self' with non-sendable type 'ExponentialHistogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
14 | /// Raw recorded values are retained until the next snapshot, allowing the exporter to pick
15 | /// the scale that best represents the observed range within a fixed bucket count.
16 | public class ExponentialHistogram<T: MetricNumeric>: Instrument, ExportableInstrument {
| `- note: generic class 'ExponentialHistogram' does not conform to the 'Sendable' protocol
17 |
18 | // MARK: Lifecycle
:
46 | public var aggregationTemporality = AggregationTemporality.delta
47 |
48 | public var isEmpty: Bool { lock.withLock { values.isEmpty } }
| `- warning: capture of 'self' with non-sendable type 'ExponentialHistogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
49 |
50 | /// Record a value. Positive, negative, and zero values are all allowed (unlike `Histogram`),
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/ExponentialHistogram.swift:61:15: warning: type 'any Instrument' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
59 | let now = ContinuousClock.now
60 |
61 | return lock.withLock {
| `- warning: type 'any Instrument' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
62 | let copy = Self(name: name, unit: unit, description: description)
63 | copy.startTime = startTime
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Instrument.swift:12:17: note: protocol 'Instrument' does not conform to the 'Sendable' protocol
10 | // MARK: - Instrument
11 |
12 | public protocol Instrument: AnyObject {
| `- note: protocol 'Instrument' does not conform to the 'Sendable' protocol
13 | /// The name of the instrument.
14 | var name: String { get }
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/ExponentialHistogram.swift:62:26: warning: capture of 'self' with non-sendable type 'ExponentialHistogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
14 | /// Raw recorded values are retained until the next snapshot, allowing the exporter to pick
15 | /// the scale that best represents the observed range within a fixed bucket count.
16 | public class ExponentialHistogram<T: MetricNumeric>: Instrument, ExportableInstrument {
| `- note: generic class 'ExponentialHistogram' does not conform to the 'Sendable' protocol
17 |
18 | // MARK: Lifecycle
:
60 |
61 | return lock.withLock {
62 | let copy = Self(name: name, unit: unit, description: description)
| `- warning: capture of 'self' with non-sendable type 'ExponentialHistogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
63 | copy.startTime = startTime
64 | copy.endTime = now
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Histogram.swift:37:45: warning: capture of 'self' with non-sendable type 'Histogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public class Histogram<T: MetricNumeric>: Instrument, ExportableInstrument {
| `- note: generic class 'Histogram' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
35 | public var aggregationTemporality = AggregationTemporality.delta
36 |
37 | public var isEmpty: Bool { lock.withLock { values.isEmpty } }
| `- warning: capture of 'self' with non-sendable type 'Histogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
38 |
39 | public func record(_ number: T, attributes: TelemetryAttributes = [:]) {
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Histogram.swift:53:15: warning: type 'any Instrument' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
51 | let now = ContinuousClock.now
52 |
53 | return lock.withLock {
| `- warning: type 'any Instrument' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
54 | let copy = Self(name: name, unit: unit, description: description, explicitBounds: values.explicitBounds)
55 | copy.startTime = startTime
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Instrument.swift:12:17: note: protocol 'Instrument' does not conform to the 'Sendable' protocol
10 | // MARK: - Instrument
11 |
12 | public protocol Instrument: AnyObject {
| `- note: protocol 'Instrument' does not conform to the 'Sendable' protocol
13 | /// The name of the instrument.
14 | var name: String { get }
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Histogram.swift:54:26: warning: capture of 'self' with non-sendable type 'Histogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public class Histogram<T: MetricNumeric>: Instrument, ExportableInstrument {
| `- note: generic class 'Histogram' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
52 |
53 | return lock.withLock {
54 | let copy = Self(name: name, unit: unit, description: description, explicitBounds: values.explicitBounds)
| `- warning: capture of 'self' with non-sendable type 'Histogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
55 | copy.startTime = startTime
56 | copy.endTime = now
[78/93] Compiling NautilusTelemetry ExponentialHistogram.swift
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Instrumentation/NetworkMonitor.swift:113:18: error: 'LinkQuality' is not a member type of struct 'Network.NWPath'
111 |
112 | @available(iOS 26.0, macOS 26.0, *)
113 | extension NWPath.LinkQuality: @retroactive CustomStringConvertible {
| `- error: 'LinkQuality' is not a member type of struct 'Network.NWPath'
114 | public var description: String {
115 | switch self {
Network.NWPath:2:15: note: 'NWPath' declared here
1 | @available(macOS 10.14, iOS 12.0, watchOS 5.0, tvOS 12.0, *)
2 | public struct NWPath : Equatable, CustomDebugStringConvertible, Sendable {
| `- note: 'NWPath' declared here
3 | public var debugDescription: String { get }
4 | public enum Status : Sendable {
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Instrumentation/NetworkMonitor.swift:29:59: error: value of type 'NWPath' has no member 'linkQuality'
27 |
28 | if #available(iOS 26.0, macOS 26.0, *) {
29 | attributes["network.path.link_quality"] = networkPath.linkQuality.description
| `- error: value of type 'NWPath' has no member 'linkQuality'
30 | }
31 | }
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Instrumentation/NetworkMonitor.swift:48:4: warning: capture of 'self' with non-sendable type 'NetworkMonitor?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | // MARK: - NetworkMonitor
10 |
11 | public final class NetworkMonitor {
| `- note: class 'NetworkMonitor' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
46 | public func start() {
47 | pathMonitor.pathUpdateHandler = { [weak self] path in
48 | self?.networkPath.withLock { $0 = path }
| `- warning: capture of 'self' with non-sendable type 'NetworkMonitor?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
49 | }
50 | pathMonitor.start(queue: pathMonitorQueue)
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Counter.swift:32:45: warning: capture of 'self' with non-sendable type 'Counter<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public class Counter<T: MetricNumeric>: Instrument, ExportableInstrument {
| `- note: generic class 'Counter' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
30 | public var isMonotonic: Bool { true }
31 |
32 | public var isEmpty: Bool { lock.withLock { values.isEmpty } }
| `- warning: capture of 'self' with non-sendable type 'Counter<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
33 |
34 | public func add(_ number: T, attributes: TelemetryAttributes = [:]) {
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Counter.swift:48:15: warning: type 'any Instrument' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
46 | let now = ContinuousClock.now
47 |
48 | return lock.withLock {
| `- warning: type 'any Instrument' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
49 | let copy = Self(name: name, unit: unit, description: description)
50 | copy.startTime = startTime
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Instrument.swift:12:17: note: protocol 'Instrument' does not conform to the 'Sendable' protocol
10 | // MARK: - Instrument
11 |
12 | public protocol Instrument: AnyObject {
| `- note: protocol 'Instrument' does not conform to the 'Sendable' protocol
13 | /// The name of the instrument.
14 | var name: String { get }
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Counter.swift:49:26: warning: capture of 'self' with non-sendable type 'Counter<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public class Counter<T: MetricNumeric>: Instrument, ExportableInstrument {
| `- note: generic class 'Counter' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
47 |
48 | return lock.withLock {
49 | let copy = Self(name: name, unit: unit, description: description)
| `- warning: capture of 'self' with non-sendable type 'Counter<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
50 | copy.startTime = startTime
51 | copy.endTime = now
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/ExponentialHistogram.swift:48:45: warning: capture of 'self' with non-sendable type 'ExponentialHistogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
14 | /// Raw recorded values are retained until the next snapshot, allowing the exporter to pick
15 | /// the scale that best represents the observed range within a fixed bucket count.
16 | public class ExponentialHistogram<T: MetricNumeric>: Instrument, ExportableInstrument {
| `- note: generic class 'ExponentialHistogram' does not conform to the 'Sendable' protocol
17 |
18 | // MARK: Lifecycle
:
46 | public var aggregationTemporality = AggregationTemporality.delta
47 |
48 | public var isEmpty: Bool { lock.withLock { values.isEmpty } }
| `- warning: capture of 'self' with non-sendable type 'ExponentialHistogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
49 |
50 | /// Record a value. Positive, negative, and zero values are all allowed (unlike `Histogram`),
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/ExponentialHistogram.swift:61:15: warning: type 'any Instrument' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
59 | let now = ContinuousClock.now
60 |
61 | return lock.withLock {
| `- warning: type 'any Instrument' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
62 | let copy = Self(name: name, unit: unit, description: description)
63 | copy.startTime = startTime
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Instrument.swift:12:17: note: protocol 'Instrument' does not conform to the 'Sendable' protocol
10 | // MARK: - Instrument
11 |
12 | public protocol Instrument: AnyObject {
| `- note: protocol 'Instrument' does not conform to the 'Sendable' protocol
13 | /// The name of the instrument.
14 | var name: String { get }
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/ExponentialHistogram.swift:62:26: warning: capture of 'self' with non-sendable type 'ExponentialHistogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
14 | /// Raw recorded values are retained until the next snapshot, allowing the exporter to pick
15 | /// the scale that best represents the observed range within a fixed bucket count.
16 | public class ExponentialHistogram<T: MetricNumeric>: Instrument, ExportableInstrument {
| `- note: generic class 'ExponentialHistogram' does not conform to the 'Sendable' protocol
17 |
18 | // MARK: Lifecycle
:
60 |
61 | return lock.withLock {
62 | let copy = Self(name: name, unit: unit, description: description)
| `- warning: capture of 'self' with non-sendable type 'ExponentialHistogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
63 | copy.startTime = startTime
64 | copy.endTime = now
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Histogram.swift:37:45: warning: capture of 'self' with non-sendable type 'Histogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public class Histogram<T: MetricNumeric>: Instrument, ExportableInstrument {
| `- note: generic class 'Histogram' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
35 | public var aggregationTemporality = AggregationTemporality.delta
36 |
37 | public var isEmpty: Bool { lock.withLock { values.isEmpty } }
| `- warning: capture of 'self' with non-sendable type 'Histogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
38 |
39 | public func record(_ number: T, attributes: TelemetryAttributes = [:]) {
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Histogram.swift:53:15: warning: type 'any Instrument' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
51 | let now = ContinuousClock.now
52 |
53 | return lock.withLock {
| `- warning: type 'any Instrument' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
54 | let copy = Self(name: name, unit: unit, description: description, explicitBounds: values.explicitBounds)
55 | copy.startTime = startTime
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Instrument.swift:12:17: note: protocol 'Instrument' does not conform to the 'Sendable' protocol
10 | // MARK: - Instrument
11 |
12 | public protocol Instrument: AnyObject {
| `- note: protocol 'Instrument' does not conform to the 'Sendable' protocol
13 | /// The name of the instrument.
14 | var name: String { get }
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Histogram.swift:54:26: warning: capture of 'self' with non-sendable type 'Histogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public class Histogram<T: MetricNumeric>: Instrument, ExportableInstrument {
| `- note: generic class 'Histogram' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
52 |
53 | return lock.withLock {
54 | let copy = Self(name: name, unit: unit, description: description, explicitBounds: values.explicitBounds)
| `- warning: capture of 'self' with non-sendable type 'Histogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
55 | copy.startTime = startTime
56 | copy.endTime = now
[79/93] Compiling NautilusTelemetry ExponentialHistogramValues.swift
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Instrumentation/NetworkMonitor.swift:113:18: error: 'LinkQuality' is not a member type of struct 'Network.NWPath'
111 |
112 | @available(iOS 26.0, macOS 26.0, *)
113 | extension NWPath.LinkQuality: @retroactive CustomStringConvertible {
| `- error: 'LinkQuality' is not a member type of struct 'Network.NWPath'
114 | public var description: String {
115 | switch self {
Network.NWPath:2:15: note: 'NWPath' declared here
1 | @available(macOS 10.14, iOS 12.0, watchOS 5.0, tvOS 12.0, *)
2 | public struct NWPath : Equatable, CustomDebugStringConvertible, Sendable {
| `- note: 'NWPath' declared here
3 | public var debugDescription: String { get }
4 | public enum Status : Sendable {
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Instrumentation/NetworkMonitor.swift:29:59: error: value of type 'NWPath' has no member 'linkQuality'
27 |
28 | if #available(iOS 26.0, macOS 26.0, *) {
29 | attributes["network.path.link_quality"] = networkPath.linkQuality.description
| `- error: value of type 'NWPath' has no member 'linkQuality'
30 | }
31 | }
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Instrumentation/NetworkMonitor.swift:48:4: warning: capture of 'self' with non-sendable type 'NetworkMonitor?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | // MARK: - NetworkMonitor
10 |
11 | public final class NetworkMonitor {
| `- note: class 'NetworkMonitor' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
46 | public func start() {
47 | pathMonitor.pathUpdateHandler = { [weak self] path in
48 | self?.networkPath.withLock { $0 = path }
| `- warning: capture of 'self' with non-sendable type 'NetworkMonitor?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
49 | }
50 | pathMonitor.start(queue: pathMonitorQueue)
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Counter.swift:32:45: warning: capture of 'self' with non-sendable type 'Counter<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public class Counter<T: MetricNumeric>: Instrument, ExportableInstrument {
| `- note: generic class 'Counter' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
30 | public var isMonotonic: Bool { true }
31 |
32 | public var isEmpty: Bool { lock.withLock { values.isEmpty } }
| `- warning: capture of 'self' with non-sendable type 'Counter<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
33 |
34 | public func add(_ number: T, attributes: TelemetryAttributes = [:]) {
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Counter.swift:48:15: warning: type 'any Instrument' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
46 | let now = ContinuousClock.now
47 |
48 | return lock.withLock {
| `- warning: type 'any Instrument' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
49 | let copy = Self(name: name, unit: unit, description: description)
50 | copy.startTime = startTime
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Instrument.swift:12:17: note: protocol 'Instrument' does not conform to the 'Sendable' protocol
10 | // MARK: - Instrument
11 |
12 | public protocol Instrument: AnyObject {
| `- note: protocol 'Instrument' does not conform to the 'Sendable' protocol
13 | /// The name of the instrument.
14 | var name: String { get }
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Counter.swift:49:26: warning: capture of 'self' with non-sendable type 'Counter<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public class Counter<T: MetricNumeric>: Instrument, ExportableInstrument {
| `- note: generic class 'Counter' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
47 |
48 | return lock.withLock {
49 | let copy = Self(name: name, unit: unit, description: description)
| `- warning: capture of 'self' with non-sendable type 'Counter<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
50 | copy.startTime = startTime
51 | copy.endTime = now
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/ExponentialHistogram.swift:48:45: warning: capture of 'self' with non-sendable type 'ExponentialHistogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
14 | /// Raw recorded values are retained until the next snapshot, allowing the exporter to pick
15 | /// the scale that best represents the observed range within a fixed bucket count.
16 | public class ExponentialHistogram<T: MetricNumeric>: Instrument, ExportableInstrument {
| `- note: generic class 'ExponentialHistogram' does not conform to the 'Sendable' protocol
17 |
18 | // MARK: Lifecycle
:
46 | public var aggregationTemporality = AggregationTemporality.delta
47 |
48 | public var isEmpty: Bool { lock.withLock { values.isEmpty } }
| `- warning: capture of 'self' with non-sendable type 'ExponentialHistogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
49 |
50 | /// Record a value. Positive, negative, and zero values are all allowed (unlike `Histogram`),
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/ExponentialHistogram.swift:61:15: warning: type 'any Instrument' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
59 | let now = ContinuousClock.now
60 |
61 | return lock.withLock {
| `- warning: type 'any Instrument' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
62 | let copy = Self(name: name, unit: unit, description: description)
63 | copy.startTime = startTime
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Instrument.swift:12:17: note: protocol 'Instrument' does not conform to the 'Sendable' protocol
10 | // MARK: - Instrument
11 |
12 | public protocol Instrument: AnyObject {
| `- note: protocol 'Instrument' does not conform to the 'Sendable' protocol
13 | /// The name of the instrument.
14 | var name: String { get }
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/ExponentialHistogram.swift:62:26: warning: capture of 'self' with non-sendable type 'ExponentialHistogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
14 | /// Raw recorded values are retained until the next snapshot, allowing the exporter to pick
15 | /// the scale that best represents the observed range within a fixed bucket count.
16 | public class ExponentialHistogram<T: MetricNumeric>: Instrument, ExportableInstrument {
| `- note: generic class 'ExponentialHistogram' does not conform to the 'Sendable' protocol
17 |
18 | // MARK: Lifecycle
:
60 |
61 | return lock.withLock {
62 | let copy = Self(name: name, unit: unit, description: description)
| `- warning: capture of 'self' with non-sendable type 'ExponentialHistogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
63 | copy.startTime = startTime
64 | copy.endTime = now
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Histogram.swift:37:45: warning: capture of 'self' with non-sendable type 'Histogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public class Histogram<T: MetricNumeric>: Instrument, ExportableInstrument {
| `- note: generic class 'Histogram' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
35 | public var aggregationTemporality = AggregationTemporality.delta
36 |
37 | public var isEmpty: Bool { lock.withLock { values.isEmpty } }
| `- warning: capture of 'self' with non-sendable type 'Histogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
38 |
39 | public func record(_ number: T, attributes: TelemetryAttributes = [:]) {
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Histogram.swift:53:15: warning: type 'any Instrument' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
51 | let now = ContinuousClock.now
52 |
53 | return lock.withLock {
| `- warning: type 'any Instrument' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
54 | let copy = Self(name: name, unit: unit, description: description, explicitBounds: values.explicitBounds)
55 | copy.startTime = startTime
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Instrument.swift:12:17: note: protocol 'Instrument' does not conform to the 'Sendable' protocol
10 | // MARK: - Instrument
11 |
12 | public protocol Instrument: AnyObject {
| `- note: protocol 'Instrument' does not conform to the 'Sendable' protocol
13 | /// The name of the instrument.
14 | var name: String { get }
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Histogram.swift:54:26: warning: capture of 'self' with non-sendable type 'Histogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public class Histogram<T: MetricNumeric>: Instrument, ExportableInstrument {
| `- note: generic class 'Histogram' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
52 |
53 | return lock.withLock {
54 | let copy = Self(name: name, unit: unit, description: description, explicitBounds: values.explicitBounds)
| `- warning: capture of 'self' with non-sendable type 'Histogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
55 | copy.startTime = startTime
56 | copy.endTime = now
[80/93] Compiling NautilusTelemetry Histogram.swift
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Instrumentation/NetworkMonitor.swift:113:18: error: 'LinkQuality' is not a member type of struct 'Network.NWPath'
111 |
112 | @available(iOS 26.0, macOS 26.0, *)
113 | extension NWPath.LinkQuality: @retroactive CustomStringConvertible {
| `- error: 'LinkQuality' is not a member type of struct 'Network.NWPath'
114 | public var description: String {
115 | switch self {
Network.NWPath:2:15: note: 'NWPath' declared here
1 | @available(macOS 10.14, iOS 12.0, watchOS 5.0, tvOS 12.0, *)
2 | public struct NWPath : Equatable, CustomDebugStringConvertible, Sendable {
| `- note: 'NWPath' declared here
3 | public var debugDescription: String { get }
4 | public enum Status : Sendable {
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Instrumentation/NetworkMonitor.swift:29:59: error: value of type 'NWPath' has no member 'linkQuality'
27 |
28 | if #available(iOS 26.0, macOS 26.0, *) {
29 | attributes["network.path.link_quality"] = networkPath.linkQuality.description
| `- error: value of type 'NWPath' has no member 'linkQuality'
30 | }
31 | }
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Instrumentation/NetworkMonitor.swift:48:4: warning: capture of 'self' with non-sendable type 'NetworkMonitor?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | // MARK: - NetworkMonitor
10 |
11 | public final class NetworkMonitor {
| `- note: class 'NetworkMonitor' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
46 | public func start() {
47 | pathMonitor.pathUpdateHandler = { [weak self] path in
48 | self?.networkPath.withLock { $0 = path }
| `- warning: capture of 'self' with non-sendable type 'NetworkMonitor?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
49 | }
50 | pathMonitor.start(queue: pathMonitorQueue)
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Counter.swift:32:45: warning: capture of 'self' with non-sendable type 'Counter<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public class Counter<T: MetricNumeric>: Instrument, ExportableInstrument {
| `- note: generic class 'Counter' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
30 | public var isMonotonic: Bool { true }
31 |
32 | public var isEmpty: Bool { lock.withLock { values.isEmpty } }
| `- warning: capture of 'self' with non-sendable type 'Counter<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
33 |
34 | public func add(_ number: T, attributes: TelemetryAttributes = [:]) {
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Counter.swift:48:15: warning: type 'any Instrument' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
46 | let now = ContinuousClock.now
47 |
48 | return lock.withLock {
| `- warning: type 'any Instrument' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
49 | let copy = Self(name: name, unit: unit, description: description)
50 | copy.startTime = startTime
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Instrument.swift:12:17: note: protocol 'Instrument' does not conform to the 'Sendable' protocol
10 | // MARK: - Instrument
11 |
12 | public protocol Instrument: AnyObject {
| `- note: protocol 'Instrument' does not conform to the 'Sendable' protocol
13 | /// The name of the instrument.
14 | var name: String { get }
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Counter.swift:49:26: warning: capture of 'self' with non-sendable type 'Counter<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public class Counter<T: MetricNumeric>: Instrument, ExportableInstrument {
| `- note: generic class 'Counter' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
47 |
48 | return lock.withLock {
49 | let copy = Self(name: name, unit: unit, description: description)
| `- warning: capture of 'self' with non-sendable type 'Counter<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
50 | copy.startTime = startTime
51 | copy.endTime = now
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/ExponentialHistogram.swift:48:45: warning: capture of 'self' with non-sendable type 'ExponentialHistogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
14 | /// Raw recorded values are retained until the next snapshot, allowing the exporter to pick
15 | /// the scale that best represents the observed range within a fixed bucket count.
16 | public class ExponentialHistogram<T: MetricNumeric>: Instrument, ExportableInstrument {
| `- note: generic class 'ExponentialHistogram' does not conform to the 'Sendable' protocol
17 |
18 | // MARK: Lifecycle
:
46 | public var aggregationTemporality = AggregationTemporality.delta
47 |
48 | public var isEmpty: Bool { lock.withLock { values.isEmpty } }
| `- warning: capture of 'self' with non-sendable type 'ExponentialHistogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
49 |
50 | /// Record a value. Positive, negative, and zero values are all allowed (unlike `Histogram`),
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/ExponentialHistogram.swift:61:15: warning: type 'any Instrument' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
59 | let now = ContinuousClock.now
60 |
61 | return lock.withLock {
| `- warning: type 'any Instrument' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
62 | let copy = Self(name: name, unit: unit, description: description)
63 | copy.startTime = startTime
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Instrument.swift:12:17: note: protocol 'Instrument' does not conform to the 'Sendable' protocol
10 | // MARK: - Instrument
11 |
12 | public protocol Instrument: AnyObject {
| `- note: protocol 'Instrument' does not conform to the 'Sendable' protocol
13 | /// The name of the instrument.
14 | var name: String { get }
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/ExponentialHistogram.swift:62:26: warning: capture of 'self' with non-sendable type 'ExponentialHistogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
14 | /// Raw recorded values are retained until the next snapshot, allowing the exporter to pick
15 | /// the scale that best represents the observed range within a fixed bucket count.
16 | public class ExponentialHistogram<T: MetricNumeric>: Instrument, ExportableInstrument {
| `- note: generic class 'ExponentialHistogram' does not conform to the 'Sendable' protocol
17 |
18 | // MARK: Lifecycle
:
60 |
61 | return lock.withLock {
62 | let copy = Self(name: name, unit: unit, description: description)
| `- warning: capture of 'self' with non-sendable type 'ExponentialHistogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
63 | copy.startTime = startTime
64 | copy.endTime = now
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Histogram.swift:37:45: warning: capture of 'self' with non-sendable type 'Histogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public class Histogram<T: MetricNumeric>: Instrument, ExportableInstrument {
| `- note: generic class 'Histogram' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
35 | public var aggregationTemporality = AggregationTemporality.delta
36 |
37 | public var isEmpty: Bool { lock.withLock { values.isEmpty } }
| `- warning: capture of 'self' with non-sendable type 'Histogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
38 |
39 | public func record(_ number: T, attributes: TelemetryAttributes = [:]) {
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Histogram.swift:53:15: warning: type 'any Instrument' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
51 | let now = ContinuousClock.now
52 |
53 | return lock.withLock {
| `- warning: type 'any Instrument' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
54 | let copy = Self(name: name, unit: unit, description: description, explicitBounds: values.explicitBounds)
55 | copy.startTime = startTime
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Instrument.swift:12:17: note: protocol 'Instrument' does not conform to the 'Sendable' protocol
10 | // MARK: - Instrument
11 |
12 | public protocol Instrument: AnyObject {
| `- note: protocol 'Instrument' does not conform to the 'Sendable' protocol
13 | /// The name of the instrument.
14 | var name: String { get }
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Histogram.swift:54:26: warning: capture of 'self' with non-sendable type 'Histogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public class Histogram<T: MetricNumeric>: Instrument, ExportableInstrument {
| `- note: generic class 'Histogram' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
52 |
53 | return lock.withLock {
54 | let copy = Self(name: name, unit: unit, description: description, explicitBounds: values.explicitBounds)
| `- warning: capture of 'self' with non-sendable type 'Histogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
55 | copy.startTime = startTime
56 | copy.endTime = now
[81/93] Compiling NautilusTelemetry HistogramValues.swift
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Instrumentation/NetworkMonitor.swift:113:18: error: 'LinkQuality' is not a member type of struct 'Network.NWPath'
111 |
112 | @available(iOS 26.0, macOS 26.0, *)
113 | extension NWPath.LinkQuality: @retroactive CustomStringConvertible {
| `- error: 'LinkQuality' is not a member type of struct 'Network.NWPath'
114 | public var description: String {
115 | switch self {
Network.NWPath:2:15: note: 'NWPath' declared here
1 | @available(macOS 10.14, iOS 12.0, watchOS 5.0, tvOS 12.0, *)
2 | public struct NWPath : Equatable, CustomDebugStringConvertible, Sendable {
| `- note: 'NWPath' declared here
3 | public var debugDescription: String { get }
4 | public enum Status : Sendable {
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Instrumentation/NetworkMonitor.swift:29:59: error: value of type 'NWPath' has no member 'linkQuality'
27 |
28 | if #available(iOS 26.0, macOS 26.0, *) {
29 | attributes["network.path.link_quality"] = networkPath.linkQuality.description
| `- error: value of type 'NWPath' has no member 'linkQuality'
30 | }
31 | }
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Instrumentation/NetworkMonitor.swift:48:4: warning: capture of 'self' with non-sendable type 'NetworkMonitor?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | // MARK: - NetworkMonitor
10 |
11 | public final class NetworkMonitor {
| `- note: class 'NetworkMonitor' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
46 | public func start() {
47 | pathMonitor.pathUpdateHandler = { [weak self] path in
48 | self?.networkPath.withLock { $0 = path }
| `- warning: capture of 'self' with non-sendable type 'NetworkMonitor?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
49 | }
50 | pathMonitor.start(queue: pathMonitorQueue)
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Counter.swift:32:45: warning: capture of 'self' with non-sendable type 'Counter<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public class Counter<T: MetricNumeric>: Instrument, ExportableInstrument {
| `- note: generic class 'Counter' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
30 | public var isMonotonic: Bool { true }
31 |
32 | public var isEmpty: Bool { lock.withLock { values.isEmpty } }
| `- warning: capture of 'self' with non-sendable type 'Counter<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
33 |
34 | public func add(_ number: T, attributes: TelemetryAttributes = [:]) {
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Counter.swift:48:15: warning: type 'any Instrument' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
46 | let now = ContinuousClock.now
47 |
48 | return lock.withLock {
| `- warning: type 'any Instrument' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
49 | let copy = Self(name: name, unit: unit, description: description)
50 | copy.startTime = startTime
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Instrument.swift:12:17: note: protocol 'Instrument' does not conform to the 'Sendable' protocol
10 | // MARK: - Instrument
11 |
12 | public protocol Instrument: AnyObject {
| `- note: protocol 'Instrument' does not conform to the 'Sendable' protocol
13 | /// The name of the instrument.
14 | var name: String { get }
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Counter.swift:49:26: warning: capture of 'self' with non-sendable type 'Counter<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public class Counter<T: MetricNumeric>: Instrument, ExportableInstrument {
| `- note: generic class 'Counter' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
47 |
48 | return lock.withLock {
49 | let copy = Self(name: name, unit: unit, description: description)
| `- warning: capture of 'self' with non-sendable type 'Counter<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
50 | copy.startTime = startTime
51 | copy.endTime = now
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/ExponentialHistogram.swift:48:45: warning: capture of 'self' with non-sendable type 'ExponentialHistogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
14 | /// Raw recorded values are retained until the next snapshot, allowing the exporter to pick
15 | /// the scale that best represents the observed range within a fixed bucket count.
16 | public class ExponentialHistogram<T: MetricNumeric>: Instrument, ExportableInstrument {
| `- note: generic class 'ExponentialHistogram' does not conform to the 'Sendable' protocol
17 |
18 | // MARK: Lifecycle
:
46 | public var aggregationTemporality = AggregationTemporality.delta
47 |
48 | public var isEmpty: Bool { lock.withLock { values.isEmpty } }
| `- warning: capture of 'self' with non-sendable type 'ExponentialHistogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
49 |
50 | /// Record a value. Positive, negative, and zero values are all allowed (unlike `Histogram`),
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/ExponentialHistogram.swift:61:15: warning: type 'any Instrument' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
59 | let now = ContinuousClock.now
60 |
61 | return lock.withLock {
| `- warning: type 'any Instrument' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
62 | let copy = Self(name: name, unit: unit, description: description)
63 | copy.startTime = startTime
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Instrument.swift:12:17: note: protocol 'Instrument' does not conform to the 'Sendable' protocol
10 | // MARK: - Instrument
11 |
12 | public protocol Instrument: AnyObject {
| `- note: protocol 'Instrument' does not conform to the 'Sendable' protocol
13 | /// The name of the instrument.
14 | var name: String { get }
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/ExponentialHistogram.swift:62:26: warning: capture of 'self' with non-sendable type 'ExponentialHistogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
14 | /// Raw recorded values are retained until the next snapshot, allowing the exporter to pick
15 | /// the scale that best represents the observed range within a fixed bucket count.
16 | public class ExponentialHistogram<T: MetricNumeric>: Instrument, ExportableInstrument {
| `- note: generic class 'ExponentialHistogram' does not conform to the 'Sendable' protocol
17 |
18 | // MARK: Lifecycle
:
60 |
61 | return lock.withLock {
62 | let copy = Self(name: name, unit: unit, description: description)
| `- warning: capture of 'self' with non-sendable type 'ExponentialHistogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
63 | copy.startTime = startTime
64 | copy.endTime = now
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Histogram.swift:37:45: warning: capture of 'self' with non-sendable type 'Histogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public class Histogram<T: MetricNumeric>: Instrument, ExportableInstrument {
| `- note: generic class 'Histogram' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
35 | public var aggregationTemporality = AggregationTemporality.delta
36 |
37 | public var isEmpty: Bool { lock.withLock { values.isEmpty } }
| `- warning: capture of 'self' with non-sendable type 'Histogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
38 |
39 | public func record(_ number: T, attributes: TelemetryAttributes = [:]) {
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Histogram.swift:53:15: warning: type 'any Instrument' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
51 | let now = ContinuousClock.now
52 |
53 | return lock.withLock {
| `- warning: type 'any Instrument' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
54 | let copy = Self(name: name, unit: unit, description: description, explicitBounds: values.explicitBounds)
55 | copy.startTime = startTime
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Instrument.swift:12:17: note: protocol 'Instrument' does not conform to the 'Sendable' protocol
10 | // MARK: - Instrument
11 |
12 | public protocol Instrument: AnyObject {
| `- note: protocol 'Instrument' does not conform to the 'Sendable' protocol
13 | /// The name of the instrument.
14 | var name: String { get }
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Metrics/Histogram.swift:54:26: warning: capture of 'self' with non-sendable type 'Histogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public class Histogram<T: MetricNumeric>: Instrument, ExportableInstrument {
| `- note: generic class 'Histogram' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
52 |
53 | return lock.withLock {
54 | let copy = Self(name: name, unit: unit, description: description, explicitBounds: values.explicitBounds)
| `- warning: capture of 'self' with non-sendable type 'Histogram<T>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
55 | copy.startTime = startTime
56 | copy.endTime = now
[82/93] Compiling NautilusTelemetry Tracer+URLRequest.swift
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:56:8: warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
54 |
55 | public var root: Span {
56 | lock.withLock {
| `- warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
57 | if let root = _root {
58 | return root
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Span.swift:42:20: note: class 'Span' does not conform to the 'Sendable' protocol
40 | /// Implements a pared down version of the spec
41 | /// Not thread safe -- it's assumed that Span will only be modified from a single thread.
42 | public final class Span: TelemetryAttributesContainer, Identifiable {
| `- note: class 'Span' does not conform to the 'Sendable' protocol
43 |
44 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:57:18: warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public final class Tracer {
| `- note: class 'Tracer' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
55 | public var root: Span {
56 | lock.withLock {
57 | if let root = _root {
| `- warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
58 | return root
59 | } else {
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:71:24: warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
69 | idleTimer?.suspend()
70 |
71 | let priorRoot = lock.withLock {
| `- warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
72 | let priorRoot = _root
73 | traceId = Identifiers.generateTraceId()
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Span.swift:42:20: note: class 'Span' does not conform to the 'Sendable' protocol
40 | /// Implements a pared down version of the spec
41 | /// Not thread safe -- it's assumed that Span will only be modified from a single thread.
42 | public final class Span: TelemetryAttributesContainer, Identifiable {
| `- note: class 'Span' does not conform to the 'Sendable' protocol
43 |
44 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:72:20: warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public final class Tracer {
| `- note: class 'Tracer' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
70 |
71 | let priorRoot = lock.withLock {
72 | let priorRoot = _root
| `- warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
73 | traceId = Identifiers.generateTraceId()
74 | _root = nil // will be recreated on next access
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:276:4: warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public final class Tracer {
| `- note: class 'Tracer' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
274 | func retire(span: Span) {
275 | lock.withLock {
276 | retiredSpans.append(span)
| `- warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
277 | }
278 |
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:276:24: warning: capture of 'span' with non-sendable type 'Span' in a '@Sendable' closure; this is an error in the Swift 6 language mode
274 | func retire(span: Span) {
275 | lock.withLock {
276 | retiredSpans.append(span)
| `- warning: capture of 'span' with non-sendable type 'Span' in a '@Sendable' closure; this is an error in the Swift 6 language mode
277 | }
278 |
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Span.swift:42:20: note: class 'Span' does not conform to the 'Sendable' protocol
40 | /// Implements a pared down version of the spec
41 | /// Not thread safe -- it's assumed that Span will only be modified from a single thread.
42 | public final class Span: TelemetryAttributesContainer, Identifiable {
| `- note: class 'Span' does not conform to the 'Sendable' protocol
43 |
44 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:287:36: warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
285 | purgeStaleCacheEntries()
286 |
287 | let spansToReport: [Span] = lock.withLock {
| `- warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
288 | // copy and empty the array.
289 | let spans = retiredSpans
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Span.swift:42:20: note: class 'Span' does not conform to the 'Sendable' protocol
40 | /// Implements a pared down version of the spec
41 | /// Not thread safe -- it's assumed that Span will only be modified from a single thread.
42 | public final class Span: TelemetryAttributesContainer, Identifiable {
| `- note: class 'Span' does not conform to the 'Sendable' protocol
43 |
44 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:289:16: warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public final class Tracer {
| `- note: class 'Tracer' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
287 | let spansToReport: [Span] = lock.withLock {
288 | // copy and empty the array.
289 | let spans = retiredSpans
| `- warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
290 | retiredSpans.removeAll()
291 | return spans
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:374:4: warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public final class Tracer {
| `- note: class 'Tracer' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
372 | private func purgeStaleCacheEntries() {
373 | lock.withLock {
374 | cachedDurationHistograms = cachedDurationHistograms.filter { $0.value.value != nil }
| `- warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
375 | cachedCounters = cachedCounters.filter { $0.value.value != nil }
376 | }
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/URLTemplateMatcher.swift:171:21: warning: static property 'parameterRegex' is not concurrency-safe because non-'Sendable' type 'Regex<Substring>' may have shared mutable state; this is an error in the Swift 6 language mode
169 |
170 | /// Regex for matching parameters like {} and {id} in both path and query
171 | private static let parameterRegex = /\{[a-zA-Z0-9-_]*\}/
| |- warning: static property 'parameterRegex' is not concurrency-safe because non-'Sendable' type 'Regex<Substring>' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'parameterRegex' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
172 |
173 | private let pathRegex: Regex<Substring>
_StringProcessing.Regex:2:15: note: generic struct 'Regex' does not conform to the 'Sendable' protocol
1 | @available(macOS 13.0, iOS 16.0, watchOS 9.0, tvOS 16.0, *)
2 | public struct Regex<Output> : RegexComponent {
| `- note: generic struct 'Regex' does not conform to the 'Sendable' protocol
3 | public var regex: Regex<Output> { get }
4 | @available(iOS 16.0, tvOS 16.0, watchOS 9.0, macOS 13.0, *)
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/FlushTimer.swift:47:8: warning: capture of 'self' with non-sendable type 'FlushTimer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
7 | // MARK: - FlushTimer
8 |
9 | class FlushTimer {
| `- note: class 'FlushTimer' does not conform to the 'Sendable' protocol
10 |
11 | // MARK: Lifecycle
:
45 | func suspend() {
46 | lock.withLock {
47 | if !suspended {
| `- warning: capture of 'self' with non-sendable type 'FlushTimer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
48 | // Must match calls between suspend/resume
49 | flushTimer.suspend()
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/FlushTimer.swift:66:7: warning: capture of 'self' with non-sendable type 'FlushTimer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
7 | // MARK: - FlushTimer
8 |
9 | class FlushTimer {
| `- note: class 'FlushTimer' does not conform to the 'Sendable' protocol
10 |
11 | // MARK: Lifecycle
:
64 | flushTimer.activate()
65 | lock.withLock {
66 | if suspended {
| `- warning: capture of 'self' with non-sendable type 'FlushTimer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
67 | flushTimer.resume()
68 | suspended = false
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/Identifiers.swift:68:21: warning: static property 'random' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
66 |
67 | // MARK: utilities
68 | private static var random = SystemRandomNumberGenerator()
| |- warning: static property 'random' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'random' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'random' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
69 |
70 | }
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/Sampling.swift:57:20: warning: capture of 'self' with non-sendable type 'StableGuidSampler' in a '@Sendable' closure; this is an error in the Swift 6 language mode
20 | /// A sampler that is stable for a given GUID.
21 | /// Intended to be used for session-based sampling or similar use cases.
22 | public final class StableGuidSampler: Sampler {
| `- note: class 'StableGuidSampler' does not conform to the 'Sendable' protocol
23 |
24 | // MARK: Lifecycle
:
55 | // actors would be great here!
56 | get {
57 | lock.withLock { _guid }
| `- warning: capture of 'self' with non-sendable type 'StableGuidSampler' in a '@Sendable' closure; this is an error in the Swift 6 language mode
58 | }
59 |
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/TimeReference.swift:61:15: error: cannot find 'attoseconds' in scope
59 | let attosecondsPerNs: Int128 = 1_000_000_000 // 10^9
60 | let halfNs: Int128 = 500_000_000 // 5 × 10^8
61 | let attos = attoseconds
| `- error: cannot find 'attoseconds' in scope
62 | let subNs = attos % attosecondsPerNs
63 | let ns = attos / attosecondsPerNs + (subNs >= halfNs ? 1 : subNs <= -halfNs ? -1 : 0)
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/TimeReference.swift:76:15: error: cannot find 'attoseconds' in scope
74 | let attosecondsPerMs: Int128 = 1_000_000_000_000_000 // 10^15
75 | let halfMs: Int128 = 500_000_000_000_000 // 5 × 10^14
76 | let attos = attoseconds
| `- error: cannot find 'attoseconds' in scope
77 | let subMs = attos % attosecondsPerMs
78 | let ms = attos / attosecondsPerMs + (subMs >= halfMs ? 1 : subMs <= -halfMs ? -1 : 0)
[83/93] Compiling NautilusTelemetry Tracer.swift
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:56:8: warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
54 |
55 | public var root: Span {
56 | lock.withLock {
| `- warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
57 | if let root = _root {
58 | return root
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Span.swift:42:20: note: class 'Span' does not conform to the 'Sendable' protocol
40 | /// Implements a pared down version of the spec
41 | /// Not thread safe -- it's assumed that Span will only be modified from a single thread.
42 | public final class Span: TelemetryAttributesContainer, Identifiable {
| `- note: class 'Span' does not conform to the 'Sendable' protocol
43 |
44 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:57:18: warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public final class Tracer {
| `- note: class 'Tracer' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
55 | public var root: Span {
56 | lock.withLock {
57 | if let root = _root {
| `- warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
58 | return root
59 | } else {
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:71:24: warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
69 | idleTimer?.suspend()
70 |
71 | let priorRoot = lock.withLock {
| `- warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
72 | let priorRoot = _root
73 | traceId = Identifiers.generateTraceId()
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Span.swift:42:20: note: class 'Span' does not conform to the 'Sendable' protocol
40 | /// Implements a pared down version of the spec
41 | /// Not thread safe -- it's assumed that Span will only be modified from a single thread.
42 | public final class Span: TelemetryAttributesContainer, Identifiable {
| `- note: class 'Span' does not conform to the 'Sendable' protocol
43 |
44 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:72:20: warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public final class Tracer {
| `- note: class 'Tracer' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
70 |
71 | let priorRoot = lock.withLock {
72 | let priorRoot = _root
| `- warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
73 | traceId = Identifiers.generateTraceId()
74 | _root = nil // will be recreated on next access
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:276:4: warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public final class Tracer {
| `- note: class 'Tracer' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
274 | func retire(span: Span) {
275 | lock.withLock {
276 | retiredSpans.append(span)
| `- warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
277 | }
278 |
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:276:24: warning: capture of 'span' with non-sendable type 'Span' in a '@Sendable' closure; this is an error in the Swift 6 language mode
274 | func retire(span: Span) {
275 | lock.withLock {
276 | retiredSpans.append(span)
| `- warning: capture of 'span' with non-sendable type 'Span' in a '@Sendable' closure; this is an error in the Swift 6 language mode
277 | }
278 |
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Span.swift:42:20: note: class 'Span' does not conform to the 'Sendable' protocol
40 | /// Implements a pared down version of the spec
41 | /// Not thread safe -- it's assumed that Span will only be modified from a single thread.
42 | public final class Span: TelemetryAttributesContainer, Identifiable {
| `- note: class 'Span' does not conform to the 'Sendable' protocol
43 |
44 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:287:36: warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
285 | purgeStaleCacheEntries()
286 |
287 | let spansToReport: [Span] = lock.withLock {
| `- warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
288 | // copy and empty the array.
289 | let spans = retiredSpans
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Span.swift:42:20: note: class 'Span' does not conform to the 'Sendable' protocol
40 | /// Implements a pared down version of the spec
41 | /// Not thread safe -- it's assumed that Span will only be modified from a single thread.
42 | public final class Span: TelemetryAttributesContainer, Identifiable {
| `- note: class 'Span' does not conform to the 'Sendable' protocol
43 |
44 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:289:16: warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public final class Tracer {
| `- note: class 'Tracer' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
287 | let spansToReport: [Span] = lock.withLock {
288 | // copy and empty the array.
289 | let spans = retiredSpans
| `- warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
290 | retiredSpans.removeAll()
291 | return spans
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:374:4: warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public final class Tracer {
| `- note: class 'Tracer' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
372 | private func purgeStaleCacheEntries() {
373 | lock.withLock {
374 | cachedDurationHistograms = cachedDurationHistograms.filter { $0.value.value != nil }
| `- warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
375 | cachedCounters = cachedCounters.filter { $0.value.value != nil }
376 | }
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/URLTemplateMatcher.swift:171:21: warning: static property 'parameterRegex' is not concurrency-safe because non-'Sendable' type 'Regex<Substring>' may have shared mutable state; this is an error in the Swift 6 language mode
169 |
170 | /// Regex for matching parameters like {} and {id} in both path and query
171 | private static let parameterRegex = /\{[a-zA-Z0-9-_]*\}/
| |- warning: static property 'parameterRegex' is not concurrency-safe because non-'Sendable' type 'Regex<Substring>' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'parameterRegex' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
172 |
173 | private let pathRegex: Regex<Substring>
_StringProcessing.Regex:2:15: note: generic struct 'Regex' does not conform to the 'Sendable' protocol
1 | @available(macOS 13.0, iOS 16.0, watchOS 9.0, tvOS 16.0, *)
2 | public struct Regex<Output> : RegexComponent {
| `- note: generic struct 'Regex' does not conform to the 'Sendable' protocol
3 | public var regex: Regex<Output> { get }
4 | @available(iOS 16.0, tvOS 16.0, watchOS 9.0, macOS 13.0, *)
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/FlushTimer.swift:47:8: warning: capture of 'self' with non-sendable type 'FlushTimer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
7 | // MARK: - FlushTimer
8 |
9 | class FlushTimer {
| `- note: class 'FlushTimer' does not conform to the 'Sendable' protocol
10 |
11 | // MARK: Lifecycle
:
45 | func suspend() {
46 | lock.withLock {
47 | if !suspended {
| `- warning: capture of 'self' with non-sendable type 'FlushTimer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
48 | // Must match calls between suspend/resume
49 | flushTimer.suspend()
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/FlushTimer.swift:66:7: warning: capture of 'self' with non-sendable type 'FlushTimer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
7 | // MARK: - FlushTimer
8 |
9 | class FlushTimer {
| `- note: class 'FlushTimer' does not conform to the 'Sendable' protocol
10 |
11 | // MARK: Lifecycle
:
64 | flushTimer.activate()
65 | lock.withLock {
66 | if suspended {
| `- warning: capture of 'self' with non-sendable type 'FlushTimer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
67 | flushTimer.resume()
68 | suspended = false
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/Identifiers.swift:68:21: warning: static property 'random' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
66 |
67 | // MARK: utilities
68 | private static var random = SystemRandomNumberGenerator()
| |- warning: static property 'random' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'random' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'random' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
69 |
70 | }
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/Sampling.swift:57:20: warning: capture of 'self' with non-sendable type 'StableGuidSampler' in a '@Sendable' closure; this is an error in the Swift 6 language mode
20 | /// A sampler that is stable for a given GUID.
21 | /// Intended to be used for session-based sampling or similar use cases.
22 | public final class StableGuidSampler: Sampler {
| `- note: class 'StableGuidSampler' does not conform to the 'Sendable' protocol
23 |
24 | // MARK: Lifecycle
:
55 | // actors would be great here!
56 | get {
57 | lock.withLock { _guid }
| `- warning: capture of 'self' with non-sendable type 'StableGuidSampler' in a '@Sendable' closure; this is an error in the Swift 6 language mode
58 | }
59 |
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/TimeReference.swift:61:15: error: cannot find 'attoseconds' in scope
59 | let attosecondsPerNs: Int128 = 1_000_000_000 // 10^9
60 | let halfNs: Int128 = 500_000_000 // 5 × 10^8
61 | let attos = attoseconds
| `- error: cannot find 'attoseconds' in scope
62 | let subNs = attos % attosecondsPerNs
63 | let ns = attos / attosecondsPerNs + (subNs >= halfNs ? 1 : subNs <= -halfNs ? -1 : 0)
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/TimeReference.swift:76:15: error: cannot find 'attoseconds' in scope
74 | let attosecondsPerMs: Int128 = 1_000_000_000_000_000 // 10^15
75 | let halfMs: Int128 = 500_000_000_000_000 // 5 × 10^14
76 | let attos = attoseconds
| `- error: cannot find 'attoseconds' in scope
77 | let subMs = attos % attosecondsPerMs
78 | let ms = attos / attosecondsPerMs + (subMs >= halfMs ? 1 : subMs <= -halfMs ? -1 : 0)
[84/93] Compiling NautilusTelemetry URLTemplateMatcher.swift
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:56:8: warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
54 |
55 | public var root: Span {
56 | lock.withLock {
| `- warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
57 | if let root = _root {
58 | return root
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Span.swift:42:20: note: class 'Span' does not conform to the 'Sendable' protocol
40 | /// Implements a pared down version of the spec
41 | /// Not thread safe -- it's assumed that Span will only be modified from a single thread.
42 | public final class Span: TelemetryAttributesContainer, Identifiable {
| `- note: class 'Span' does not conform to the 'Sendable' protocol
43 |
44 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:57:18: warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public final class Tracer {
| `- note: class 'Tracer' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
55 | public var root: Span {
56 | lock.withLock {
57 | if let root = _root {
| `- warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
58 | return root
59 | } else {
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:71:24: warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
69 | idleTimer?.suspend()
70 |
71 | let priorRoot = lock.withLock {
| `- warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
72 | let priorRoot = _root
73 | traceId = Identifiers.generateTraceId()
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Span.swift:42:20: note: class 'Span' does not conform to the 'Sendable' protocol
40 | /// Implements a pared down version of the spec
41 | /// Not thread safe -- it's assumed that Span will only be modified from a single thread.
42 | public final class Span: TelemetryAttributesContainer, Identifiable {
| `- note: class 'Span' does not conform to the 'Sendable' protocol
43 |
44 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:72:20: warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public final class Tracer {
| `- note: class 'Tracer' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
70 |
71 | let priorRoot = lock.withLock {
72 | let priorRoot = _root
| `- warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
73 | traceId = Identifiers.generateTraceId()
74 | _root = nil // will be recreated on next access
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:276:4: warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public final class Tracer {
| `- note: class 'Tracer' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
274 | func retire(span: Span) {
275 | lock.withLock {
276 | retiredSpans.append(span)
| `- warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
277 | }
278 |
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:276:24: warning: capture of 'span' with non-sendable type 'Span' in a '@Sendable' closure; this is an error in the Swift 6 language mode
274 | func retire(span: Span) {
275 | lock.withLock {
276 | retiredSpans.append(span)
| `- warning: capture of 'span' with non-sendable type 'Span' in a '@Sendable' closure; this is an error in the Swift 6 language mode
277 | }
278 |
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Span.swift:42:20: note: class 'Span' does not conform to the 'Sendable' protocol
40 | /// Implements a pared down version of the spec
41 | /// Not thread safe -- it's assumed that Span will only be modified from a single thread.
42 | public final class Span: TelemetryAttributesContainer, Identifiable {
| `- note: class 'Span' does not conform to the 'Sendable' protocol
43 |
44 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:287:36: warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
285 | purgeStaleCacheEntries()
286 |
287 | let spansToReport: [Span] = lock.withLock {
| `- warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
288 | // copy and empty the array.
289 | let spans = retiredSpans
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Span.swift:42:20: note: class 'Span' does not conform to the 'Sendable' protocol
40 | /// Implements a pared down version of the spec
41 | /// Not thread safe -- it's assumed that Span will only be modified from a single thread.
42 | public final class Span: TelemetryAttributesContainer, Identifiable {
| `- note: class 'Span' does not conform to the 'Sendable' protocol
43 |
44 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:289:16: warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public final class Tracer {
| `- note: class 'Tracer' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
287 | let spansToReport: [Span] = lock.withLock {
288 | // copy and empty the array.
289 | let spans = retiredSpans
| `- warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
290 | retiredSpans.removeAll()
291 | return spans
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:374:4: warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public final class Tracer {
| `- note: class 'Tracer' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
372 | private func purgeStaleCacheEntries() {
373 | lock.withLock {
374 | cachedDurationHistograms = cachedDurationHistograms.filter { $0.value.value != nil }
| `- warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
375 | cachedCounters = cachedCounters.filter { $0.value.value != nil }
376 | }
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/URLTemplateMatcher.swift:171:21: warning: static property 'parameterRegex' is not concurrency-safe because non-'Sendable' type 'Regex<Substring>' may have shared mutable state; this is an error in the Swift 6 language mode
169 |
170 | /// Regex for matching parameters like {} and {id} in both path and query
171 | private static let parameterRegex = /\{[a-zA-Z0-9-_]*\}/
| |- warning: static property 'parameterRegex' is not concurrency-safe because non-'Sendable' type 'Regex<Substring>' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'parameterRegex' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
172 |
173 | private let pathRegex: Regex<Substring>
_StringProcessing.Regex:2:15: note: generic struct 'Regex' does not conform to the 'Sendable' protocol
1 | @available(macOS 13.0, iOS 16.0, watchOS 9.0, tvOS 16.0, *)
2 | public struct Regex<Output> : RegexComponent {
| `- note: generic struct 'Regex' does not conform to the 'Sendable' protocol
3 | public var regex: Regex<Output> { get }
4 | @available(iOS 16.0, tvOS 16.0, watchOS 9.0, macOS 13.0, *)
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/FlushTimer.swift:47:8: warning: capture of 'self' with non-sendable type 'FlushTimer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
7 | // MARK: - FlushTimer
8 |
9 | class FlushTimer {
| `- note: class 'FlushTimer' does not conform to the 'Sendable' protocol
10 |
11 | // MARK: Lifecycle
:
45 | func suspend() {
46 | lock.withLock {
47 | if !suspended {
| `- warning: capture of 'self' with non-sendable type 'FlushTimer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
48 | // Must match calls between suspend/resume
49 | flushTimer.suspend()
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/FlushTimer.swift:66:7: warning: capture of 'self' with non-sendable type 'FlushTimer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
7 | // MARK: - FlushTimer
8 |
9 | class FlushTimer {
| `- note: class 'FlushTimer' does not conform to the 'Sendable' protocol
10 |
11 | // MARK: Lifecycle
:
64 | flushTimer.activate()
65 | lock.withLock {
66 | if suspended {
| `- warning: capture of 'self' with non-sendable type 'FlushTimer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
67 | flushTimer.resume()
68 | suspended = false
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/Identifiers.swift:68:21: warning: static property 'random' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
66 |
67 | // MARK: utilities
68 | private static var random = SystemRandomNumberGenerator()
| |- warning: static property 'random' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'random' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'random' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
69 |
70 | }
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/Sampling.swift:57:20: warning: capture of 'self' with non-sendable type 'StableGuidSampler' in a '@Sendable' closure; this is an error in the Swift 6 language mode
20 | /// A sampler that is stable for a given GUID.
21 | /// Intended to be used for session-based sampling or similar use cases.
22 | public final class StableGuidSampler: Sampler {
| `- note: class 'StableGuidSampler' does not conform to the 'Sendable' protocol
23 |
24 | // MARK: Lifecycle
:
55 | // actors would be great here!
56 | get {
57 | lock.withLock { _guid }
| `- warning: capture of 'self' with non-sendable type 'StableGuidSampler' in a '@Sendable' closure; this is an error in the Swift 6 language mode
58 | }
59 |
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/TimeReference.swift:61:15: error: cannot find 'attoseconds' in scope
59 | let attosecondsPerNs: Int128 = 1_000_000_000 // 10^9
60 | let halfNs: Int128 = 500_000_000 // 5 × 10^8
61 | let attos = attoseconds
| `- error: cannot find 'attoseconds' in scope
62 | let subNs = attos % attosecondsPerNs
63 | let ns = attos / attosecondsPerNs + (subNs >= halfNs ? 1 : subNs <= -halfNs ? -1 : 0)
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/TimeReference.swift:76:15: error: cannot find 'attoseconds' in scope
74 | let attosecondsPerMs: Int128 = 1_000_000_000_000_000 // 10^15
75 | let halfMs: Int128 = 500_000_000_000_000 // 5 × 10^14
76 | let attos = attoseconds
| `- error: cannot find 'attoseconds' in scope
77 | let subMs = attos % attosecondsPerMs
78 | let ms = attos / attosecondsPerMs + (subMs >= halfMs ? 1 : subMs <= -halfMs ? -1 : 0)
[85/93] Compiling NautilusTelemetry FlushTimer.swift
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:56:8: warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
54 |
55 | public var root: Span {
56 | lock.withLock {
| `- warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
57 | if let root = _root {
58 | return root
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Span.swift:42:20: note: class 'Span' does not conform to the 'Sendable' protocol
40 | /// Implements a pared down version of the spec
41 | /// Not thread safe -- it's assumed that Span will only be modified from a single thread.
42 | public final class Span: TelemetryAttributesContainer, Identifiable {
| `- note: class 'Span' does not conform to the 'Sendable' protocol
43 |
44 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:57:18: warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public final class Tracer {
| `- note: class 'Tracer' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
55 | public var root: Span {
56 | lock.withLock {
57 | if let root = _root {
| `- warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
58 | return root
59 | } else {
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:71:24: warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
69 | idleTimer?.suspend()
70 |
71 | let priorRoot = lock.withLock {
| `- warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
72 | let priorRoot = _root
73 | traceId = Identifiers.generateTraceId()
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Span.swift:42:20: note: class 'Span' does not conform to the 'Sendable' protocol
40 | /// Implements a pared down version of the spec
41 | /// Not thread safe -- it's assumed that Span will only be modified from a single thread.
42 | public final class Span: TelemetryAttributesContainer, Identifiable {
| `- note: class 'Span' does not conform to the 'Sendable' protocol
43 |
44 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:72:20: warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public final class Tracer {
| `- note: class 'Tracer' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
70 |
71 | let priorRoot = lock.withLock {
72 | let priorRoot = _root
| `- warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
73 | traceId = Identifiers.generateTraceId()
74 | _root = nil // will be recreated on next access
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:276:4: warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public final class Tracer {
| `- note: class 'Tracer' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
274 | func retire(span: Span) {
275 | lock.withLock {
276 | retiredSpans.append(span)
| `- warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
277 | }
278 |
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:276:24: warning: capture of 'span' with non-sendable type 'Span' in a '@Sendable' closure; this is an error in the Swift 6 language mode
274 | func retire(span: Span) {
275 | lock.withLock {
276 | retiredSpans.append(span)
| `- warning: capture of 'span' with non-sendable type 'Span' in a '@Sendable' closure; this is an error in the Swift 6 language mode
277 | }
278 |
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Span.swift:42:20: note: class 'Span' does not conform to the 'Sendable' protocol
40 | /// Implements a pared down version of the spec
41 | /// Not thread safe -- it's assumed that Span will only be modified from a single thread.
42 | public final class Span: TelemetryAttributesContainer, Identifiable {
| `- note: class 'Span' does not conform to the 'Sendable' protocol
43 |
44 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:287:36: warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
285 | purgeStaleCacheEntries()
286 |
287 | let spansToReport: [Span] = lock.withLock {
| `- warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
288 | // copy and empty the array.
289 | let spans = retiredSpans
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Span.swift:42:20: note: class 'Span' does not conform to the 'Sendable' protocol
40 | /// Implements a pared down version of the spec
41 | /// Not thread safe -- it's assumed that Span will only be modified from a single thread.
42 | public final class Span: TelemetryAttributesContainer, Identifiable {
| `- note: class 'Span' does not conform to the 'Sendable' protocol
43 |
44 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:289:16: warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public final class Tracer {
| `- note: class 'Tracer' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
287 | let spansToReport: [Span] = lock.withLock {
288 | // copy and empty the array.
289 | let spans = retiredSpans
| `- warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
290 | retiredSpans.removeAll()
291 | return spans
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:374:4: warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public final class Tracer {
| `- note: class 'Tracer' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
372 | private func purgeStaleCacheEntries() {
373 | lock.withLock {
374 | cachedDurationHistograms = cachedDurationHistograms.filter { $0.value.value != nil }
| `- warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
375 | cachedCounters = cachedCounters.filter { $0.value.value != nil }
376 | }
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/URLTemplateMatcher.swift:171:21: warning: static property 'parameterRegex' is not concurrency-safe because non-'Sendable' type 'Regex<Substring>' may have shared mutable state; this is an error in the Swift 6 language mode
169 |
170 | /// Regex for matching parameters like {} and {id} in both path and query
171 | private static let parameterRegex = /\{[a-zA-Z0-9-_]*\}/
| |- warning: static property 'parameterRegex' is not concurrency-safe because non-'Sendable' type 'Regex<Substring>' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'parameterRegex' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
172 |
173 | private let pathRegex: Regex<Substring>
_StringProcessing.Regex:2:15: note: generic struct 'Regex' does not conform to the 'Sendable' protocol
1 | @available(macOS 13.0, iOS 16.0, watchOS 9.0, tvOS 16.0, *)
2 | public struct Regex<Output> : RegexComponent {
| `- note: generic struct 'Regex' does not conform to the 'Sendable' protocol
3 | public var regex: Regex<Output> { get }
4 | @available(iOS 16.0, tvOS 16.0, watchOS 9.0, macOS 13.0, *)
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/FlushTimer.swift:47:8: warning: capture of 'self' with non-sendable type 'FlushTimer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
7 | // MARK: - FlushTimer
8 |
9 | class FlushTimer {
| `- note: class 'FlushTimer' does not conform to the 'Sendable' protocol
10 |
11 | // MARK: Lifecycle
:
45 | func suspend() {
46 | lock.withLock {
47 | if !suspended {
| `- warning: capture of 'self' with non-sendable type 'FlushTimer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
48 | // Must match calls between suspend/resume
49 | flushTimer.suspend()
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/FlushTimer.swift:66:7: warning: capture of 'self' with non-sendable type 'FlushTimer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
7 | // MARK: - FlushTimer
8 |
9 | class FlushTimer {
| `- note: class 'FlushTimer' does not conform to the 'Sendable' protocol
10 |
11 | // MARK: Lifecycle
:
64 | flushTimer.activate()
65 | lock.withLock {
66 | if suspended {
| `- warning: capture of 'self' with non-sendable type 'FlushTimer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
67 | flushTimer.resume()
68 | suspended = false
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/Identifiers.swift:68:21: warning: static property 'random' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
66 |
67 | // MARK: utilities
68 | private static var random = SystemRandomNumberGenerator()
| |- warning: static property 'random' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'random' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'random' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
69 |
70 | }
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/Sampling.swift:57:20: warning: capture of 'self' with non-sendable type 'StableGuidSampler' in a '@Sendable' closure; this is an error in the Swift 6 language mode
20 | /// A sampler that is stable for a given GUID.
21 | /// Intended to be used for session-based sampling or similar use cases.
22 | public final class StableGuidSampler: Sampler {
| `- note: class 'StableGuidSampler' does not conform to the 'Sendable' protocol
23 |
24 | // MARK: Lifecycle
:
55 | // actors would be great here!
56 | get {
57 | lock.withLock { _guid }
| `- warning: capture of 'self' with non-sendable type 'StableGuidSampler' in a '@Sendable' closure; this is an error in the Swift 6 language mode
58 | }
59 |
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/TimeReference.swift:61:15: error: cannot find 'attoseconds' in scope
59 | let attosecondsPerNs: Int128 = 1_000_000_000 // 10^9
60 | let halfNs: Int128 = 500_000_000 // 5 × 10^8
61 | let attos = attoseconds
| `- error: cannot find 'attoseconds' in scope
62 | let subNs = attos % attosecondsPerNs
63 | let ns = attos / attosecondsPerNs + (subNs >= halfNs ? 1 : subNs <= -halfNs ? -1 : 0)
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/TimeReference.swift:76:15: error: cannot find 'attoseconds' in scope
74 | let attosecondsPerMs: Int128 = 1_000_000_000_000_000 // 10^15
75 | let halfMs: Int128 = 500_000_000_000_000 // 5 × 10^14
76 | let attos = attoseconds
| `- error: cannot find 'attoseconds' in scope
77 | let subMs = attos % attosecondsPerMs
78 | let ms = attos / attosecondsPerMs + (subMs >= halfMs ? 1 : subMs <= -halfMs ? -1 : 0)
[86/93] Compiling NautilusTelemetry Identifiers.swift
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:56:8: warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
54 |
55 | public var root: Span {
56 | lock.withLock {
| `- warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
57 | if let root = _root {
58 | return root
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Span.swift:42:20: note: class 'Span' does not conform to the 'Sendable' protocol
40 | /// Implements a pared down version of the spec
41 | /// Not thread safe -- it's assumed that Span will only be modified from a single thread.
42 | public final class Span: TelemetryAttributesContainer, Identifiable {
| `- note: class 'Span' does not conform to the 'Sendable' protocol
43 |
44 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:57:18: warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public final class Tracer {
| `- note: class 'Tracer' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
55 | public var root: Span {
56 | lock.withLock {
57 | if let root = _root {
| `- warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
58 | return root
59 | } else {
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:71:24: warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
69 | idleTimer?.suspend()
70 |
71 | let priorRoot = lock.withLock {
| `- warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
72 | let priorRoot = _root
73 | traceId = Identifiers.generateTraceId()
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Span.swift:42:20: note: class 'Span' does not conform to the 'Sendable' protocol
40 | /// Implements a pared down version of the spec
41 | /// Not thread safe -- it's assumed that Span will only be modified from a single thread.
42 | public final class Span: TelemetryAttributesContainer, Identifiable {
| `- note: class 'Span' does not conform to the 'Sendable' protocol
43 |
44 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:72:20: warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public final class Tracer {
| `- note: class 'Tracer' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
70 |
71 | let priorRoot = lock.withLock {
72 | let priorRoot = _root
| `- warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
73 | traceId = Identifiers.generateTraceId()
74 | _root = nil // will be recreated on next access
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:276:4: warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public final class Tracer {
| `- note: class 'Tracer' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
274 | func retire(span: Span) {
275 | lock.withLock {
276 | retiredSpans.append(span)
| `- warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
277 | }
278 |
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:276:24: warning: capture of 'span' with non-sendable type 'Span' in a '@Sendable' closure; this is an error in the Swift 6 language mode
274 | func retire(span: Span) {
275 | lock.withLock {
276 | retiredSpans.append(span)
| `- warning: capture of 'span' with non-sendable type 'Span' in a '@Sendable' closure; this is an error in the Swift 6 language mode
277 | }
278 |
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Span.swift:42:20: note: class 'Span' does not conform to the 'Sendable' protocol
40 | /// Implements a pared down version of the spec
41 | /// Not thread safe -- it's assumed that Span will only be modified from a single thread.
42 | public final class Span: TelemetryAttributesContainer, Identifiable {
| `- note: class 'Span' does not conform to the 'Sendable' protocol
43 |
44 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:287:36: warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
285 | purgeStaleCacheEntries()
286 |
287 | let spansToReport: [Span] = lock.withLock {
| `- warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
288 | // copy and empty the array.
289 | let spans = retiredSpans
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Span.swift:42:20: note: class 'Span' does not conform to the 'Sendable' protocol
40 | /// Implements a pared down version of the spec
41 | /// Not thread safe -- it's assumed that Span will only be modified from a single thread.
42 | public final class Span: TelemetryAttributesContainer, Identifiable {
| `- note: class 'Span' does not conform to the 'Sendable' protocol
43 |
44 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:289:16: warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public final class Tracer {
| `- note: class 'Tracer' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
287 | let spansToReport: [Span] = lock.withLock {
288 | // copy and empty the array.
289 | let spans = retiredSpans
| `- warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
290 | retiredSpans.removeAll()
291 | return spans
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:374:4: warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public final class Tracer {
| `- note: class 'Tracer' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
372 | private func purgeStaleCacheEntries() {
373 | lock.withLock {
374 | cachedDurationHistograms = cachedDurationHistograms.filter { $0.value.value != nil }
| `- warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
375 | cachedCounters = cachedCounters.filter { $0.value.value != nil }
376 | }
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/URLTemplateMatcher.swift:171:21: warning: static property 'parameterRegex' is not concurrency-safe because non-'Sendable' type 'Regex<Substring>' may have shared mutable state; this is an error in the Swift 6 language mode
169 |
170 | /// Regex for matching parameters like {} and {id} in both path and query
171 | private static let parameterRegex = /\{[a-zA-Z0-9-_]*\}/
| |- warning: static property 'parameterRegex' is not concurrency-safe because non-'Sendable' type 'Regex<Substring>' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'parameterRegex' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
172 |
173 | private let pathRegex: Regex<Substring>
_StringProcessing.Regex:2:15: note: generic struct 'Regex' does not conform to the 'Sendable' protocol
1 | @available(macOS 13.0, iOS 16.0, watchOS 9.0, tvOS 16.0, *)
2 | public struct Regex<Output> : RegexComponent {
| `- note: generic struct 'Regex' does not conform to the 'Sendable' protocol
3 | public var regex: Regex<Output> { get }
4 | @available(iOS 16.0, tvOS 16.0, watchOS 9.0, macOS 13.0, *)
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/FlushTimer.swift:47:8: warning: capture of 'self' with non-sendable type 'FlushTimer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
7 | // MARK: - FlushTimer
8 |
9 | class FlushTimer {
| `- note: class 'FlushTimer' does not conform to the 'Sendable' protocol
10 |
11 | // MARK: Lifecycle
:
45 | func suspend() {
46 | lock.withLock {
47 | if !suspended {
| `- warning: capture of 'self' with non-sendable type 'FlushTimer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
48 | // Must match calls between suspend/resume
49 | flushTimer.suspend()
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/FlushTimer.swift:66:7: warning: capture of 'self' with non-sendable type 'FlushTimer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
7 | // MARK: - FlushTimer
8 |
9 | class FlushTimer {
| `- note: class 'FlushTimer' does not conform to the 'Sendable' protocol
10 |
11 | // MARK: Lifecycle
:
64 | flushTimer.activate()
65 | lock.withLock {
66 | if suspended {
| `- warning: capture of 'self' with non-sendable type 'FlushTimer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
67 | flushTimer.resume()
68 | suspended = false
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/Identifiers.swift:68:21: warning: static property 'random' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
66 |
67 | // MARK: utilities
68 | private static var random = SystemRandomNumberGenerator()
| |- warning: static property 'random' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'random' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'random' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
69 |
70 | }
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/Sampling.swift:57:20: warning: capture of 'self' with non-sendable type 'StableGuidSampler' in a '@Sendable' closure; this is an error in the Swift 6 language mode
20 | /// A sampler that is stable for a given GUID.
21 | /// Intended to be used for session-based sampling or similar use cases.
22 | public final class StableGuidSampler: Sampler {
| `- note: class 'StableGuidSampler' does not conform to the 'Sendable' protocol
23 |
24 | // MARK: Lifecycle
:
55 | // actors would be great here!
56 | get {
57 | lock.withLock { _guid }
| `- warning: capture of 'self' with non-sendable type 'StableGuidSampler' in a '@Sendable' closure; this is an error in the Swift 6 language mode
58 | }
59 |
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/TimeReference.swift:61:15: error: cannot find 'attoseconds' in scope
59 | let attosecondsPerNs: Int128 = 1_000_000_000 // 10^9
60 | let halfNs: Int128 = 500_000_000 // 5 × 10^8
61 | let attos = attoseconds
| `- error: cannot find 'attoseconds' in scope
62 | let subNs = attos % attosecondsPerNs
63 | let ns = attos / attosecondsPerNs + (subNs >= halfNs ? 1 : subNs <= -halfNs ? -1 : 0)
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/TimeReference.swift:76:15: error: cannot find 'attoseconds' in scope
74 | let attosecondsPerMs: Int128 = 1_000_000_000_000_000 // 10^15
75 | let halfMs: Int128 = 500_000_000_000_000 // 5 × 10^14
76 | let attos = attoseconds
| `- error: cannot find 'attoseconds' in scope
77 | let subMs = attos % attosecondsPerMs
78 | let ms = attos / attosecondsPerMs + (subMs >= halfMs ? 1 : subMs <= -halfMs ? -1 : 0)
[87/93] Compiling NautilusTelemetry Sampling.swift
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:56:8: warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
54 |
55 | public var root: Span {
56 | lock.withLock {
| `- warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
57 | if let root = _root {
58 | return root
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Span.swift:42:20: note: class 'Span' does not conform to the 'Sendable' protocol
40 | /// Implements a pared down version of the spec
41 | /// Not thread safe -- it's assumed that Span will only be modified from a single thread.
42 | public final class Span: TelemetryAttributesContainer, Identifiable {
| `- note: class 'Span' does not conform to the 'Sendable' protocol
43 |
44 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:57:18: warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public final class Tracer {
| `- note: class 'Tracer' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
55 | public var root: Span {
56 | lock.withLock {
57 | if let root = _root {
| `- warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
58 | return root
59 | } else {
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:71:24: warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
69 | idleTimer?.suspend()
70 |
71 | let priorRoot = lock.withLock {
| `- warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
72 | let priorRoot = _root
73 | traceId = Identifiers.generateTraceId()
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Span.swift:42:20: note: class 'Span' does not conform to the 'Sendable' protocol
40 | /// Implements a pared down version of the spec
41 | /// Not thread safe -- it's assumed that Span will only be modified from a single thread.
42 | public final class Span: TelemetryAttributesContainer, Identifiable {
| `- note: class 'Span' does not conform to the 'Sendable' protocol
43 |
44 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:72:20: warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public final class Tracer {
| `- note: class 'Tracer' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
70 |
71 | let priorRoot = lock.withLock {
72 | let priorRoot = _root
| `- warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
73 | traceId = Identifiers.generateTraceId()
74 | _root = nil // will be recreated on next access
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:276:4: warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public final class Tracer {
| `- note: class 'Tracer' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
274 | func retire(span: Span) {
275 | lock.withLock {
276 | retiredSpans.append(span)
| `- warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
277 | }
278 |
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:276:24: warning: capture of 'span' with non-sendable type 'Span' in a '@Sendable' closure; this is an error in the Swift 6 language mode
274 | func retire(span: Span) {
275 | lock.withLock {
276 | retiredSpans.append(span)
| `- warning: capture of 'span' with non-sendable type 'Span' in a '@Sendable' closure; this is an error in the Swift 6 language mode
277 | }
278 |
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Span.swift:42:20: note: class 'Span' does not conform to the 'Sendable' protocol
40 | /// Implements a pared down version of the spec
41 | /// Not thread safe -- it's assumed that Span will only be modified from a single thread.
42 | public final class Span: TelemetryAttributesContainer, Identifiable {
| `- note: class 'Span' does not conform to the 'Sendable' protocol
43 |
44 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:287:36: warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
285 | purgeStaleCacheEntries()
286 |
287 | let spansToReport: [Span] = lock.withLock {
| `- warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
288 | // copy and empty the array.
289 | let spans = retiredSpans
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Span.swift:42:20: note: class 'Span' does not conform to the 'Sendable' protocol
40 | /// Implements a pared down version of the spec
41 | /// Not thread safe -- it's assumed that Span will only be modified from a single thread.
42 | public final class Span: TelemetryAttributesContainer, Identifiable {
| `- note: class 'Span' does not conform to the 'Sendable' protocol
43 |
44 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:289:16: warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public final class Tracer {
| `- note: class 'Tracer' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
287 | let spansToReport: [Span] = lock.withLock {
288 | // copy and empty the array.
289 | let spans = retiredSpans
| `- warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
290 | retiredSpans.removeAll()
291 | return spans
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:374:4: warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public final class Tracer {
| `- note: class 'Tracer' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
372 | private func purgeStaleCacheEntries() {
373 | lock.withLock {
374 | cachedDurationHistograms = cachedDurationHistograms.filter { $0.value.value != nil }
| `- warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
375 | cachedCounters = cachedCounters.filter { $0.value.value != nil }
376 | }
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/URLTemplateMatcher.swift:171:21: warning: static property 'parameterRegex' is not concurrency-safe because non-'Sendable' type 'Regex<Substring>' may have shared mutable state; this is an error in the Swift 6 language mode
169 |
170 | /// Regex for matching parameters like {} and {id} in both path and query
171 | private static let parameterRegex = /\{[a-zA-Z0-9-_]*\}/
| |- warning: static property 'parameterRegex' is not concurrency-safe because non-'Sendable' type 'Regex<Substring>' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'parameterRegex' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
172 |
173 | private let pathRegex: Regex<Substring>
_StringProcessing.Regex:2:15: note: generic struct 'Regex' does not conform to the 'Sendable' protocol
1 | @available(macOS 13.0, iOS 16.0, watchOS 9.0, tvOS 16.0, *)
2 | public struct Regex<Output> : RegexComponent {
| `- note: generic struct 'Regex' does not conform to the 'Sendable' protocol
3 | public var regex: Regex<Output> { get }
4 | @available(iOS 16.0, tvOS 16.0, watchOS 9.0, macOS 13.0, *)
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/FlushTimer.swift:47:8: warning: capture of 'self' with non-sendable type 'FlushTimer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
7 | // MARK: - FlushTimer
8 |
9 | class FlushTimer {
| `- note: class 'FlushTimer' does not conform to the 'Sendable' protocol
10 |
11 | // MARK: Lifecycle
:
45 | func suspend() {
46 | lock.withLock {
47 | if !suspended {
| `- warning: capture of 'self' with non-sendable type 'FlushTimer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
48 | // Must match calls between suspend/resume
49 | flushTimer.suspend()
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/FlushTimer.swift:66:7: warning: capture of 'self' with non-sendable type 'FlushTimer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
7 | // MARK: - FlushTimer
8 |
9 | class FlushTimer {
| `- note: class 'FlushTimer' does not conform to the 'Sendable' protocol
10 |
11 | // MARK: Lifecycle
:
64 | flushTimer.activate()
65 | lock.withLock {
66 | if suspended {
| `- warning: capture of 'self' with non-sendable type 'FlushTimer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
67 | flushTimer.resume()
68 | suspended = false
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/Identifiers.swift:68:21: warning: static property 'random' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
66 |
67 | // MARK: utilities
68 | private static var random = SystemRandomNumberGenerator()
| |- warning: static property 'random' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'random' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'random' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
69 |
70 | }
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/Sampling.swift:57:20: warning: capture of 'self' with non-sendable type 'StableGuidSampler' in a '@Sendable' closure; this is an error in the Swift 6 language mode
20 | /// A sampler that is stable for a given GUID.
21 | /// Intended to be used for session-based sampling or similar use cases.
22 | public final class StableGuidSampler: Sampler {
| `- note: class 'StableGuidSampler' does not conform to the 'Sendable' protocol
23 |
24 | // MARK: Lifecycle
:
55 | // actors would be great here!
56 | get {
57 | lock.withLock { _guid }
| `- warning: capture of 'self' with non-sendable type 'StableGuidSampler' in a '@Sendable' closure; this is an error in the Swift 6 language mode
58 | }
59 |
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/TimeReference.swift:61:15: error: cannot find 'attoseconds' in scope
59 | let attosecondsPerNs: Int128 = 1_000_000_000 // 10^9
60 | let halfNs: Int128 = 500_000_000 // 5 × 10^8
61 | let attos = attoseconds
| `- error: cannot find 'attoseconds' in scope
62 | let subNs = attos % attosecondsPerNs
63 | let ns = attos / attosecondsPerNs + (subNs >= halfNs ? 1 : subNs <= -halfNs ? -1 : 0)
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/TimeReference.swift:76:15: error: cannot find 'attoseconds' in scope
74 | let attosecondsPerMs: Int128 = 1_000_000_000_000_000 // 10^15
75 | let halfMs: Int128 = 500_000_000_000_000 // 5 × 10^14
76 | let attos = attoseconds
| `- error: cannot find 'attoseconds' in scope
77 | let subMs = attos % attosecondsPerMs
78 | let ms = attos / attosecondsPerMs + (subMs >= halfMs ? 1 : subMs <= -halfMs ? -1 : 0)
[88/93] Compiling NautilusTelemetry TimeReference.swift
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:56:8: warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
54 |
55 | public var root: Span {
56 | lock.withLock {
| `- warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
57 | if let root = _root {
58 | return root
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Span.swift:42:20: note: class 'Span' does not conform to the 'Sendable' protocol
40 | /// Implements a pared down version of the spec
41 | /// Not thread safe -- it's assumed that Span will only be modified from a single thread.
42 | public final class Span: TelemetryAttributesContainer, Identifiable {
| `- note: class 'Span' does not conform to the 'Sendable' protocol
43 |
44 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:57:18: warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public final class Tracer {
| `- note: class 'Tracer' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
55 | public var root: Span {
56 | lock.withLock {
57 | if let root = _root {
| `- warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
58 | return root
59 | } else {
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:71:24: warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
69 | idleTimer?.suspend()
70 |
71 | let priorRoot = lock.withLock {
| `- warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
72 | let priorRoot = _root
73 | traceId = Identifiers.generateTraceId()
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Span.swift:42:20: note: class 'Span' does not conform to the 'Sendable' protocol
40 | /// Implements a pared down version of the spec
41 | /// Not thread safe -- it's assumed that Span will only be modified from a single thread.
42 | public final class Span: TelemetryAttributesContainer, Identifiable {
| `- note: class 'Span' does not conform to the 'Sendable' protocol
43 |
44 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:72:20: warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public final class Tracer {
| `- note: class 'Tracer' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
70 |
71 | let priorRoot = lock.withLock {
72 | let priorRoot = _root
| `- warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
73 | traceId = Identifiers.generateTraceId()
74 | _root = nil // will be recreated on next access
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:276:4: warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public final class Tracer {
| `- note: class 'Tracer' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
274 | func retire(span: Span) {
275 | lock.withLock {
276 | retiredSpans.append(span)
| `- warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
277 | }
278 |
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:276:24: warning: capture of 'span' with non-sendable type 'Span' in a '@Sendable' closure; this is an error in the Swift 6 language mode
274 | func retire(span: Span) {
275 | lock.withLock {
276 | retiredSpans.append(span)
| `- warning: capture of 'span' with non-sendable type 'Span' in a '@Sendable' closure; this is an error in the Swift 6 language mode
277 | }
278 |
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Span.swift:42:20: note: class 'Span' does not conform to the 'Sendable' protocol
40 | /// Implements a pared down version of the spec
41 | /// Not thread safe -- it's assumed that Span will only be modified from a single thread.
42 | public final class Span: TelemetryAttributesContainer, Identifiable {
| `- note: class 'Span' does not conform to the 'Sendable' protocol
43 |
44 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:287:36: warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
285 | purgeStaleCacheEntries()
286 |
287 | let spansToReport: [Span] = lock.withLock {
| `- warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
288 | // copy and empty the array.
289 | let spans = retiredSpans
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Span.swift:42:20: note: class 'Span' does not conform to the 'Sendable' protocol
40 | /// Implements a pared down version of the spec
41 | /// Not thread safe -- it's assumed that Span will only be modified from a single thread.
42 | public final class Span: TelemetryAttributesContainer, Identifiable {
| `- note: class 'Span' does not conform to the 'Sendable' protocol
43 |
44 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:289:16: warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public final class Tracer {
| `- note: class 'Tracer' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
287 | let spansToReport: [Span] = lock.withLock {
288 | // copy and empty the array.
289 | let spans = retiredSpans
| `- warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
290 | retiredSpans.removeAll()
291 | return spans
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:374:4: warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public final class Tracer {
| `- note: class 'Tracer' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
372 | private func purgeStaleCacheEntries() {
373 | lock.withLock {
374 | cachedDurationHistograms = cachedDurationHistograms.filter { $0.value.value != nil }
| `- warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
375 | cachedCounters = cachedCounters.filter { $0.value.value != nil }
376 | }
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/URLTemplateMatcher.swift:171:21: warning: static property 'parameterRegex' is not concurrency-safe because non-'Sendable' type 'Regex<Substring>' may have shared mutable state; this is an error in the Swift 6 language mode
169 |
170 | /// Regex for matching parameters like {} and {id} in both path and query
171 | private static let parameterRegex = /\{[a-zA-Z0-9-_]*\}/
| |- warning: static property 'parameterRegex' is not concurrency-safe because non-'Sendable' type 'Regex<Substring>' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'parameterRegex' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
172 |
173 | private let pathRegex: Regex<Substring>
_StringProcessing.Regex:2:15: note: generic struct 'Regex' does not conform to the 'Sendable' protocol
1 | @available(macOS 13.0, iOS 16.0, watchOS 9.0, tvOS 16.0, *)
2 | public struct Regex<Output> : RegexComponent {
| `- note: generic struct 'Regex' does not conform to the 'Sendable' protocol
3 | public var regex: Regex<Output> { get }
4 | @available(iOS 16.0, tvOS 16.0, watchOS 9.0, macOS 13.0, *)
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/FlushTimer.swift:47:8: warning: capture of 'self' with non-sendable type 'FlushTimer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
7 | // MARK: - FlushTimer
8 |
9 | class FlushTimer {
| `- note: class 'FlushTimer' does not conform to the 'Sendable' protocol
10 |
11 | // MARK: Lifecycle
:
45 | func suspend() {
46 | lock.withLock {
47 | if !suspended {
| `- warning: capture of 'self' with non-sendable type 'FlushTimer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
48 | // Must match calls between suspend/resume
49 | flushTimer.suspend()
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/FlushTimer.swift:66:7: warning: capture of 'self' with non-sendable type 'FlushTimer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
7 | // MARK: - FlushTimer
8 |
9 | class FlushTimer {
| `- note: class 'FlushTimer' does not conform to the 'Sendable' protocol
10 |
11 | // MARK: Lifecycle
:
64 | flushTimer.activate()
65 | lock.withLock {
66 | if suspended {
| `- warning: capture of 'self' with non-sendable type 'FlushTimer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
67 | flushTimer.resume()
68 | suspended = false
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/Identifiers.swift:68:21: warning: static property 'random' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
66 |
67 | // MARK: utilities
68 | private static var random = SystemRandomNumberGenerator()
| |- warning: static property 'random' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'random' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'random' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
69 |
70 | }
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/Sampling.swift:57:20: warning: capture of 'self' with non-sendable type 'StableGuidSampler' in a '@Sendable' closure; this is an error in the Swift 6 language mode
20 | /// A sampler that is stable for a given GUID.
21 | /// Intended to be used for session-based sampling or similar use cases.
22 | public final class StableGuidSampler: Sampler {
| `- note: class 'StableGuidSampler' does not conform to the 'Sendable' protocol
23 |
24 | // MARK: Lifecycle
:
55 | // actors would be great here!
56 | get {
57 | lock.withLock { _guid }
| `- warning: capture of 'self' with non-sendable type 'StableGuidSampler' in a '@Sendable' closure; this is an error in the Swift 6 language mode
58 | }
59 |
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/TimeReference.swift:61:15: error: cannot find 'attoseconds' in scope
59 | let attosecondsPerNs: Int128 = 1_000_000_000 // 10^9
60 | let halfNs: Int128 = 500_000_000 // 5 × 10^8
61 | let attos = attoseconds
| `- error: cannot find 'attoseconds' in scope
62 | let subNs = attos % attosecondsPerNs
63 | let ns = attos / attosecondsPerNs + (subNs >= halfNs ? 1 : subNs <= -halfNs ? -1 : 0)
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/TimeReference.swift:76:15: error: cannot find 'attoseconds' in scope
74 | let attosecondsPerMs: Int128 = 1_000_000_000_000_000 // 10^15
75 | let halfMs: Int128 = 500_000_000_000_000 // 5 × 10^14
76 | let attos = attoseconds
| `- error: cannot find 'attoseconds' in scope
77 | let subMs = attos % attosecondsPerMs
78 | let ms = attos / attosecondsPerMs + (subMs >= halfMs ? 1 : subMs <= -halfMs ? -1 : 0)
[89/93] Compiling NautilusTelemetry Weak.swift
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:56:8: warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
54 |
55 | public var root: Span {
56 | lock.withLock {
| `- warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
57 | if let root = _root {
58 | return root
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Span.swift:42:20: note: class 'Span' does not conform to the 'Sendable' protocol
40 | /// Implements a pared down version of the spec
41 | /// Not thread safe -- it's assumed that Span will only be modified from a single thread.
42 | public final class Span: TelemetryAttributesContainer, Identifiable {
| `- note: class 'Span' does not conform to the 'Sendable' protocol
43 |
44 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:57:18: warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public final class Tracer {
| `- note: class 'Tracer' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
55 | public var root: Span {
56 | lock.withLock {
57 | if let root = _root {
| `- warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
58 | return root
59 | } else {
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:71:24: warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
69 | idleTimer?.suspend()
70 |
71 | let priorRoot = lock.withLock {
| `- warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
72 | let priorRoot = _root
73 | traceId = Identifiers.generateTraceId()
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Span.swift:42:20: note: class 'Span' does not conform to the 'Sendable' protocol
40 | /// Implements a pared down version of the spec
41 | /// Not thread safe -- it's assumed that Span will only be modified from a single thread.
42 | public final class Span: TelemetryAttributesContainer, Identifiable {
| `- note: class 'Span' does not conform to the 'Sendable' protocol
43 |
44 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:72:20: warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public final class Tracer {
| `- note: class 'Tracer' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
70 |
71 | let priorRoot = lock.withLock {
72 | let priorRoot = _root
| `- warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
73 | traceId = Identifiers.generateTraceId()
74 | _root = nil // will be recreated on next access
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:276:4: warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public final class Tracer {
| `- note: class 'Tracer' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
274 | func retire(span: Span) {
275 | lock.withLock {
276 | retiredSpans.append(span)
| `- warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
277 | }
278 |
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:276:24: warning: capture of 'span' with non-sendable type 'Span' in a '@Sendable' closure; this is an error in the Swift 6 language mode
274 | func retire(span: Span) {
275 | lock.withLock {
276 | retiredSpans.append(span)
| `- warning: capture of 'span' with non-sendable type 'Span' in a '@Sendable' closure; this is an error in the Swift 6 language mode
277 | }
278 |
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Span.swift:42:20: note: class 'Span' does not conform to the 'Sendable' protocol
40 | /// Implements a pared down version of the spec
41 | /// Not thread safe -- it's assumed that Span will only be modified from a single thread.
42 | public final class Span: TelemetryAttributesContainer, Identifiable {
| `- note: class 'Span' does not conform to the 'Sendable' protocol
43 |
44 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:287:36: warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
285 | purgeStaleCacheEntries()
286 |
287 | let spansToReport: [Span] = lock.withLock {
| `- warning: type 'Span' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
288 | // copy and empty the array.
289 | let spans = retiredSpans
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Span.swift:42:20: note: class 'Span' does not conform to the 'Sendable' protocol
40 | /// Implements a pared down version of the spec
41 | /// Not thread safe -- it's assumed that Span will only be modified from a single thread.
42 | public final class Span: TelemetryAttributesContainer, Identifiable {
| `- note: class 'Span' does not conform to the 'Sendable' protocol
43 |
44 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:289:16: warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public final class Tracer {
| `- note: class 'Tracer' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
287 | let spansToReport: [Span] = lock.withLock {
288 | // copy and empty the array.
289 | let spans = retiredSpans
| `- warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
290 | retiredSpans.removeAll()
291 | return spans
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/Tracer.swift:374:4: warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
9 | import os
10 |
11 | public final class Tracer {
| `- note: class 'Tracer' does not conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
:
372 | private func purgeStaleCacheEntries() {
373 | lock.withLock {
374 | cachedDurationHistograms = cachedDurationHistograms.filter { $0.value.value != nil }
| `- warning: capture of 'self' with non-sendable type 'Tracer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
375 | cachedCounters = cachedCounters.filter { $0.value.value != nil }
376 | }
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Tracing/URLTemplateMatcher.swift:171:21: warning: static property 'parameterRegex' is not concurrency-safe because non-'Sendable' type 'Regex<Substring>' may have shared mutable state; this is an error in the Swift 6 language mode
169 |
170 | /// Regex for matching parameters like {} and {id} in both path and query
171 | private static let parameterRegex = /\{[a-zA-Z0-9-_]*\}/
| |- warning: static property 'parameterRegex' is not concurrency-safe because non-'Sendable' type 'Regex<Substring>' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'parameterRegex' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
172 |
173 | private let pathRegex: Regex<Substring>
_StringProcessing.Regex:2:15: note: generic struct 'Regex' does not conform to the 'Sendable' protocol
1 | @available(macOS 13.0, iOS 16.0, watchOS 9.0, tvOS 16.0, *)
2 | public struct Regex<Output> : RegexComponent {
| `- note: generic struct 'Regex' does not conform to the 'Sendable' protocol
3 | public var regex: Regex<Output> { get }
4 | @available(iOS 16.0, tvOS 16.0, watchOS 9.0, macOS 13.0, *)
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/FlushTimer.swift:47:8: warning: capture of 'self' with non-sendable type 'FlushTimer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
7 | // MARK: - FlushTimer
8 |
9 | class FlushTimer {
| `- note: class 'FlushTimer' does not conform to the 'Sendable' protocol
10 |
11 | // MARK: Lifecycle
:
45 | func suspend() {
46 | lock.withLock {
47 | if !suspended {
| `- warning: capture of 'self' with non-sendable type 'FlushTimer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
48 | // Must match calls between suspend/resume
49 | flushTimer.suspend()
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/FlushTimer.swift:66:7: warning: capture of 'self' with non-sendable type 'FlushTimer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
7 | // MARK: - FlushTimer
8 |
9 | class FlushTimer {
| `- note: class 'FlushTimer' does not conform to the 'Sendable' protocol
10 |
11 | // MARK: Lifecycle
:
64 | flushTimer.activate()
65 | lock.withLock {
66 | if suspended {
| `- warning: capture of 'self' with non-sendable type 'FlushTimer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
67 | flushTimer.resume()
68 | suspended = false
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/Identifiers.swift:68:21: warning: static property 'random' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
66 |
67 | // MARK: utilities
68 | private static var random = SystemRandomNumberGenerator()
| |- warning: static property 'random' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'random' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'random' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
69 |
70 | }
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/Sampling.swift:57:20: warning: capture of 'self' with non-sendable type 'StableGuidSampler' in a '@Sendable' closure; this is an error in the Swift 6 language mode
20 | /// A sampler that is stable for a given GUID.
21 | /// Intended to be used for session-based sampling or similar use cases.
22 | public final class StableGuidSampler: Sampler {
| `- note: class 'StableGuidSampler' does not conform to the 'Sendable' protocol
23 |
24 | // MARK: Lifecycle
:
55 | // actors would be great here!
56 | get {
57 | lock.withLock { _guid }
| `- warning: capture of 'self' with non-sendable type 'StableGuidSampler' in a '@Sendable' closure; this is an error in the Swift 6 language mode
58 | }
59 |
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/TimeReference.swift:61:15: error: cannot find 'attoseconds' in scope
59 | let attosecondsPerNs: Int128 = 1_000_000_000 // 10^9
60 | let halfNs: Int128 = 500_000_000 // 5 × 10^8
61 | let attos = attoseconds
| `- error: cannot find 'attoseconds' in scope
62 | let subNs = attos % attosecondsPerNs
63 | let ns = attos / attosecondsPerNs + (subNs >= halfNs ? 1 : subNs <= -halfNs ? -1 : 0)
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/TimeReference.swift:76:15: error: cannot find 'attoseconds' in scope
74 | let attosecondsPerMs: Int128 = 1_000_000_000_000_000 // 10^15
75 | let halfMs: Int128 = 500_000_000_000_000 // 5 × 10^14
76 | let attos = attoseconds
| `- error: cannot find 'attoseconds' in scope
77 | let subMs = attos % attosecondsPerMs
78 | let ms = attos / attosecondsPerMs + (subMs >= halfMs ? 1 : subMs <= -halfMs ? -1 : 0)
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64
[0/1] Planning build
Building for debugging...
[0/5] Write swift-version-2F0A5646E1D333AE.txt
[2/83] Compiling NautilusTelemetry NetworkMonitor.swift
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Instrumentation/NetworkMonitor.swift:113:18: error: 'LinkQuality' is not a member type of struct 'Network.NWPath'
111 |
112 | @available(iOS 26.0, macOS 26.0, *)
113 | extension NWPath.LinkQuality: @retroactive CustomStringConvertible {
| `- error: 'LinkQuality' is not a member type of struct 'Network.NWPath'
114 | public var description: String {
115 | switch self {
Network.NWPath:2:15: note: 'NWPath' declared here
1 | @available(macOS 10.14, iOS 12.0, watchOS 5.0, tvOS 12.0, *)
2 | public struct NWPath : Equatable, CustomDebugStringConvertible, Sendable {
| `- note: 'NWPath' declared here
3 | public var debugDescription: String { get }
4 | public enum Status : Sendable {
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Instrumentation/NetworkMonitor.swift:29:59: error: value of type 'NWPath' has no member 'linkQuality'
27 |
28 | if #available(iOS 26.0, macOS 26.0, *) {
29 | attributes["network.path.link_quality"] = networkPath.linkQuality.description
| `- error: value of type 'NWPath' has no member 'linkQuality'
30 | }
31 | }
[3/83] Compiling NautilusTelemetry ProcessDetails.swift
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Instrumentation/NetworkMonitor.swift:113:18: error: 'LinkQuality' is not a member type of struct 'Network.NWPath'
111 |
112 | @available(iOS 26.0, macOS 26.0, *)
113 | extension NWPath.LinkQuality: @retroactive CustomStringConvertible {
| `- error: 'LinkQuality' is not a member type of struct 'Network.NWPath'
114 | public var description: String {
115 | switch self {
Network.NWPath:2:15: note: 'NWPath' declared here
1 | @available(macOS 10.14, iOS 12.0, watchOS 5.0, tvOS 12.0, *)
2 | public struct NWPath : Equatable, CustomDebugStringConvertible, Sendable {
| `- note: 'NWPath' declared here
3 | public var debugDescription: String { get }
4 | public enum Status : Sendable {
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Instrumentation/NetworkMonitor.swift:29:59: error: value of type 'NWPath' has no member 'linkQuality'
27 |
28 | if #available(iOS 26.0, macOS 26.0, *) {
29 | attributes["network.path.link_quality"] = networkPath.linkQuality.description
| `- error: value of type 'NWPath' has no member 'linkQuality'
30 | }
31 | }
[4/83] Compiling NautilusTelemetry ResourceAttributes.swift
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Instrumentation/NetworkMonitor.swift:113:18: error: 'LinkQuality' is not a member type of struct 'Network.NWPath'
111 |
112 | @available(iOS 26.0, macOS 26.0, *)
113 | extension NWPath.LinkQuality: @retroactive CustomStringConvertible {
| `- error: 'LinkQuality' is not a member type of struct 'Network.NWPath'
114 | public var description: String {
115 | switch self {
Network.NWPath:2:15: note: 'NWPath' declared here
1 | @available(macOS 10.14, iOS 12.0, watchOS 5.0, tvOS 12.0, *)
2 | public struct NWPath : Equatable, CustomDebugStringConvertible, Sendable {
| `- note: 'NWPath' declared here
3 | public var debugDescription: String { get }
4 | public enum Status : Sendable {
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Instrumentation/NetworkMonitor.swift:29:59: error: value of type 'NWPath' has no member 'linkQuality'
27 |
28 | if #available(iOS 26.0, macOS 26.0, *) {
29 | attributes["network.path.link_quality"] = networkPath.linkQuality.description
| `- error: value of type 'NWPath' has no member 'linkQuality'
30 | }
31 | }
[5/83] Compiling NautilusTelemetry Counter.swift
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Instrumentation/NetworkMonitor.swift:113:18: error: 'LinkQuality' is not a member type of struct 'Network.NWPath'
111 |
112 | @available(iOS 26.0, macOS 26.0, *)
113 | extension NWPath.LinkQuality: @retroactive CustomStringConvertible {
| `- error: 'LinkQuality' is not a member type of struct 'Network.NWPath'
114 | public var description: String {
115 | switch self {
Network.NWPath:2:15: note: 'NWPath' declared here
1 | @available(macOS 10.14, iOS 12.0, watchOS 5.0, tvOS 12.0, *)
2 | public struct NWPath : Equatable, CustomDebugStringConvertible, Sendable {
| `- note: 'NWPath' declared here
3 | public var debugDescription: String { get }
4 | public enum Status : Sendable {
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Instrumentation/NetworkMonitor.swift:29:59: error: value of type 'NWPath' has no member 'linkQuality'
27 |
28 | if #available(iOS 26.0, macOS 26.0, *) {
29 | attributes["network.path.link_quality"] = networkPath.linkQuality.description
| `- error: value of type 'NWPath' has no member 'linkQuality'
30 | }
31 | }
[6/83] Compiling NautilusTelemetry ExponentialHistogram.swift
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Instrumentation/NetworkMonitor.swift:113:18: error: 'LinkQuality' is not a member type of struct 'Network.NWPath'
111 |
112 | @available(iOS 26.0, macOS 26.0, *)
113 | extension NWPath.LinkQuality: @retroactive CustomStringConvertible {
| `- error: 'LinkQuality' is not a member type of struct 'Network.NWPath'
114 | public var description: String {
115 | switch self {
Network.NWPath:2:15: note: 'NWPath' declared here
1 | @available(macOS 10.14, iOS 12.0, watchOS 5.0, tvOS 12.0, *)
2 | public struct NWPath : Equatable, CustomDebugStringConvertible, Sendable {
| `- note: 'NWPath' declared here
3 | public var debugDescription: String { get }
4 | public enum Status : Sendable {
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Instrumentation/NetworkMonitor.swift:29:59: error: value of type 'NWPath' has no member 'linkQuality'
27 |
28 | if #available(iOS 26.0, macOS 26.0, *) {
29 | attributes["network.path.link_quality"] = networkPath.linkQuality.description
| `- error: value of type 'NWPath' has no member 'linkQuality'
30 | }
31 | }
[7/83] Compiling NautilusTelemetry ExponentialHistogramValues.swift
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Instrumentation/NetworkMonitor.swift:113:18: error: 'LinkQuality' is not a member type of struct 'Network.NWPath'
111 |
112 | @available(iOS 26.0, macOS 26.0, *)
113 | extension NWPath.LinkQuality: @retroactive CustomStringConvertible {
| `- error: 'LinkQuality' is not a member type of struct 'Network.NWPath'
114 | public var description: String {
115 | switch self {
Network.NWPath:2:15: note: 'NWPath' declared here
1 | @available(macOS 10.14, iOS 12.0, watchOS 5.0, tvOS 12.0, *)
2 | public struct NWPath : Equatable, CustomDebugStringConvertible, Sendable {
| `- note: 'NWPath' declared here
3 | public var debugDescription: String { get }
4 | public enum Status : Sendable {
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Instrumentation/NetworkMonitor.swift:29:59: error: value of type 'NWPath' has no member 'linkQuality'
27 |
28 | if #available(iOS 26.0, macOS 26.0, *) {
29 | attributes["network.path.link_quality"] = networkPath.linkQuality.description
| `- error: value of type 'NWPath' has no member 'linkQuality'
30 | }
31 | }
[8/83] Compiling NautilusTelemetry Histogram.swift
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Instrumentation/NetworkMonitor.swift:113:18: error: 'LinkQuality' is not a member type of struct 'Network.NWPath'
111 |
112 | @available(iOS 26.0, macOS 26.0, *)
113 | extension NWPath.LinkQuality: @retroactive CustomStringConvertible {
| `- error: 'LinkQuality' is not a member type of struct 'Network.NWPath'
114 | public var description: String {
115 | switch self {
Network.NWPath:2:15: note: 'NWPath' declared here
1 | @available(macOS 10.14, iOS 12.0, watchOS 5.0, tvOS 12.0, *)
2 | public struct NWPath : Equatable, CustomDebugStringConvertible, Sendable {
| `- note: 'NWPath' declared here
3 | public var debugDescription: String { get }
4 | public enum Status : Sendable {
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Instrumentation/NetworkMonitor.swift:29:59: error: value of type 'NWPath' has no member 'linkQuality'
27 |
28 | if #available(iOS 26.0, macOS 26.0, *) {
29 | attributes["network.path.link_quality"] = networkPath.linkQuality.description
| `- error: value of type 'NWPath' has no member 'linkQuality'
30 | }
31 | }
[9/83] Compiling NautilusTelemetry HistogramValues.swift
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Instrumentation/NetworkMonitor.swift:113:18: error: 'LinkQuality' is not a member type of struct 'Network.NWPath'
111 |
112 | @available(iOS 26.0, macOS 26.0, *)
113 | extension NWPath.LinkQuality: @retroactive CustomStringConvertible {
| `- error: 'LinkQuality' is not a member type of struct 'Network.NWPath'
114 | public var description: String {
115 | switch self {
Network.NWPath:2:15: note: 'NWPath' declared here
1 | @available(macOS 10.14, iOS 12.0, watchOS 5.0, tvOS 12.0, *)
2 | public struct NWPath : Equatable, CustomDebugStringConvertible, Sendable {
| `- note: 'NWPath' declared here
3 | public var debugDescription: String { get }
4 | public enum Status : Sendable {
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Instrumentation/NetworkMonitor.swift:29:59: error: value of type 'NWPath' has no member 'linkQuality'
27 |
28 | if #available(iOS 26.0, macOS 26.0, *) {
29 | attributes["network.path.link_quality"] = networkPath.linkQuality.description
| `- error: value of type 'NWPath' has no member 'linkQuality'
30 | }
31 | }
[10/91] Compiling NautilusTelemetry Instrument.swift
[11/91] Compiling NautilusTelemetry Meter.swift
[12/91] Compiling NautilusTelemetry MetricValues.swift
[13/91] Compiling NautilusTelemetry ObservableCounter.swift
[14/91] Compiling NautilusTelemetry ObservableGauge.swift
[15/91] Compiling NautilusTelemetry ObservableUpDownCounter.swift
[16/91] Compiling NautilusTelemetry UpDownCounter.swift
[17/91] Compiling NautilusTelemetry NautilusTelemetry.swift
error: emit-module command failed with exit code 1 (use -v to see invocation)
[18/91] Compiling NautilusTelemetry V1ExportMetricsServiceResponse.swift
[19/91] Compiling NautilusTelemetry V1Gauge.swift
[20/91] Compiling NautilusTelemetry V1Histogram.swift
[21/91] Compiling NautilusTelemetry V1HistogramDataPoint.swift
[22/91] Compiling NautilusTelemetry V1Metric.swift
[23/91] Compiling NautilusTelemetry V1NumberDataPoint.swift
[24/91] Compiling NautilusTelemetry V1ResourceMetrics.swift
[25/91] Compiling NautilusTelemetry V1ScopeMetrics.swift
[26/91] Compiling NautilusTelemetry V1Sum.swift
[27/91] Compiling NautilusTelemetry V1KeyValue.swift
[28/91] Compiling NautilusTelemetry V1KeyValueList.swift
[29/91] Compiling NautilusTelemetry V1Resource.swift
[30/91] Compiling NautilusTelemetry V1ExportLogsPartialSuccess.swift
[31/91] Compiling NautilusTelemetry V1ExportLogsServiceRequest.swift
[32/91] Compiling NautilusTelemetry V1ExportLogsServiceResponse.swift
[33/91] Compiling NautilusTelemetry V1LogRecord.swift
[34/91] Compiling NautilusTelemetry V1ResourceLogs.swift
[35/91] Compiling NautilusTelemetry V1ScopeLogs.swift
[36/91] Emitting module NautilusTelemetry
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Instrumentation/NetworkMonitor.swift:113:18: error: 'LinkQuality' is not a member type of struct 'Network.NWPath'
111 |
112 | @available(iOS 26.0, macOS 26.0, *)
113 | extension NWPath.LinkQuality: @retroactive CustomStringConvertible {
| `- error: 'LinkQuality' is not a member type of struct 'Network.NWPath'
114 | public var description: String {
115 | switch self {
Network.NWPath:2:15: note: 'NWPath' declared here
1 | @available(macOS 10.14, iOS 12.0, watchOS 5.0, tvOS 12.0, *)
2 | public struct NWPath : Equatable, CustomDebugStringConvertible, Sendable {
| `- note: 'NWPath' declared here
3 | public var debugDescription: String { get }
4 | public enum Status : Sendable {
[37/91] Compiling NautilusTelemetry V1ExportTraceServiceRequest.swift
[38/91] Compiling NautilusTelemetry V1ExportTraceServiceResponse.swift
[39/91] Compiling NautilusTelemetry V1ResourceSpans.swift
[40/91] Compiling NautilusTelemetry V1ScopeSpans.swift
[41/91] Compiling NautilusTelemetry V1Span.swift
[42/91] Compiling NautilusTelemetry HardwareDetails.swift
[43/91] Compiling NautilusTelemetry InstrumentationSystem.swift
[44/91] Compiling NautilusTelemetry MetricKitInstrument.swift
[45/91] Compiling NautilusTelemetry Tracer+URLRequest.swift
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/TimeReference.swift:61:15: error: cannot find 'attoseconds' in scope
59 | let attosecondsPerNs: Int128 = 1_000_000_000 // 10^9
60 | let halfNs: Int128 = 500_000_000 // 5 × 10^8
61 | let attos = attoseconds
| `- error: cannot find 'attoseconds' in scope
62 | let subNs = attos % attosecondsPerNs
63 | let ns = attos / attosecondsPerNs + (subNs >= halfNs ? 1 : subNs <= -halfNs ? -1 : 0)
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/TimeReference.swift:76:15: error: cannot find 'attoseconds' in scope
74 | let attosecondsPerMs: Int128 = 1_000_000_000_000_000 // 10^15
75 | let halfMs: Int128 = 500_000_000_000_000 // 5 × 10^14
76 | let attos = attoseconds
| `- error: cannot find 'attoseconds' in scope
77 | let subMs = attos % attosecondsPerMs
78 | let ms = attos / attosecondsPerMs + (subMs >= halfMs ? 1 : subMs <= -halfMs ? -1 : 0)
[46/91] Compiling NautilusTelemetry Tracer.swift
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/TimeReference.swift:61:15: error: cannot find 'attoseconds' in scope
59 | let attosecondsPerNs: Int128 = 1_000_000_000 // 10^9
60 | let halfNs: Int128 = 500_000_000 // 5 × 10^8
61 | let attos = attoseconds
| `- error: cannot find 'attoseconds' in scope
62 | let subNs = attos % attosecondsPerNs
63 | let ns = attos / attosecondsPerNs + (subNs >= halfNs ? 1 : subNs <= -halfNs ? -1 : 0)
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/TimeReference.swift:76:15: error: cannot find 'attoseconds' in scope
74 | let attosecondsPerMs: Int128 = 1_000_000_000_000_000 // 10^15
75 | let halfMs: Int128 = 500_000_000_000_000 // 5 × 10^14
76 | let attos = attoseconds
| `- error: cannot find 'attoseconds' in scope
77 | let subMs = attos % attosecondsPerMs
78 | let ms = attos / attosecondsPerMs + (subMs >= halfMs ? 1 : subMs <= -halfMs ? -1 : 0)
[47/91] Compiling NautilusTelemetry URLTemplateMatcher.swift
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/TimeReference.swift:61:15: error: cannot find 'attoseconds' in scope
59 | let attosecondsPerNs: Int128 = 1_000_000_000 // 10^9
60 | let halfNs: Int128 = 500_000_000 // 5 × 10^8
61 | let attos = attoseconds
| `- error: cannot find 'attoseconds' in scope
62 | let subNs = attos % attosecondsPerNs
63 | let ns = attos / attosecondsPerNs + (subNs >= halfNs ? 1 : subNs <= -halfNs ? -1 : 0)
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/TimeReference.swift:76:15: error: cannot find 'attoseconds' in scope
74 | let attosecondsPerMs: Int128 = 1_000_000_000_000_000 // 10^15
75 | let halfMs: Int128 = 500_000_000_000_000 // 5 × 10^14
76 | let attos = attoseconds
| `- error: cannot find 'attoseconds' in scope
77 | let subMs = attos % attosecondsPerMs
78 | let ms = attos / attosecondsPerMs + (subMs >= halfMs ? 1 : subMs <= -halfMs ? -1 : 0)
[48/91] Compiling NautilusTelemetry FlushTimer.swift
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/TimeReference.swift:61:15: error: cannot find 'attoseconds' in scope
59 | let attosecondsPerNs: Int128 = 1_000_000_000 // 10^9
60 | let halfNs: Int128 = 500_000_000 // 5 × 10^8
61 | let attos = attoseconds
| `- error: cannot find 'attoseconds' in scope
62 | let subNs = attos % attosecondsPerNs
63 | let ns = attos / attosecondsPerNs + (subNs >= halfNs ? 1 : subNs <= -halfNs ? -1 : 0)
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/TimeReference.swift:76:15: error: cannot find 'attoseconds' in scope
74 | let attosecondsPerMs: Int128 = 1_000_000_000_000_000 // 10^15
75 | let halfMs: Int128 = 500_000_000_000_000 // 5 × 10^14
76 | let attos = attoseconds
| `- error: cannot find 'attoseconds' in scope
77 | let subMs = attos % attosecondsPerMs
78 | let ms = attos / attosecondsPerMs + (subMs >= halfMs ? 1 : subMs <= -halfMs ? -1 : 0)
[49/91] Compiling NautilusTelemetry Identifiers.swift
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/TimeReference.swift:61:15: error: cannot find 'attoseconds' in scope
59 | let attosecondsPerNs: Int128 = 1_000_000_000 // 10^9
60 | let halfNs: Int128 = 500_000_000 // 5 × 10^8
61 | let attos = attoseconds
| `- error: cannot find 'attoseconds' in scope
62 | let subNs = attos % attosecondsPerNs
63 | let ns = attos / attosecondsPerNs + (subNs >= halfNs ? 1 : subNs <= -halfNs ? -1 : 0)
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/TimeReference.swift:76:15: error: cannot find 'attoseconds' in scope
74 | let attosecondsPerMs: Int128 = 1_000_000_000_000_000 // 10^15
75 | let halfMs: Int128 = 500_000_000_000_000 // 5 × 10^14
76 | let attos = attoseconds
| `- error: cannot find 'attoseconds' in scope
77 | let subMs = attos % attosecondsPerMs
78 | let ms = attos / attosecondsPerMs + (subMs >= halfMs ? 1 : subMs <= -halfMs ? -1 : 0)
[50/91] Compiling NautilusTelemetry Sampling.swift
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/TimeReference.swift:61:15: error: cannot find 'attoseconds' in scope
59 | let attosecondsPerNs: Int128 = 1_000_000_000 // 10^9
60 | let halfNs: Int128 = 500_000_000 // 5 × 10^8
61 | let attos = attoseconds
| `- error: cannot find 'attoseconds' in scope
62 | let subNs = attos % attosecondsPerNs
63 | let ns = attos / attosecondsPerNs + (subNs >= halfNs ? 1 : subNs <= -halfNs ? -1 : 0)
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/TimeReference.swift:76:15: error: cannot find 'attoseconds' in scope
74 | let attosecondsPerMs: Int128 = 1_000_000_000_000_000 // 10^15
75 | let halfMs: Int128 = 500_000_000_000_000 // 5 × 10^14
76 | let attos = attoseconds
| `- error: cannot find 'attoseconds' in scope
77 | let subMs = attos % attosecondsPerMs
78 | let ms = attos / attosecondsPerMs + (subMs >= halfMs ? 1 : subMs <= -halfMs ? -1 : 0)
[51/91] Compiling NautilusTelemetry TimeReference.swift
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/TimeReference.swift:61:15: error: cannot find 'attoseconds' in scope
59 | let attosecondsPerNs: Int128 = 1_000_000_000 // 10^9
60 | let halfNs: Int128 = 500_000_000 // 5 × 10^8
61 | let attos = attoseconds
| `- error: cannot find 'attoseconds' in scope
62 | let subNs = attos % attosecondsPerNs
63 | let ns = attos / attosecondsPerNs + (subNs >= halfNs ? 1 : subNs <= -halfNs ? -1 : 0)
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/TimeReference.swift:76:15: error: cannot find 'attoseconds' in scope
74 | let attosecondsPerMs: Int128 = 1_000_000_000_000_000 // 10^15
75 | let halfMs: Int128 = 500_000_000_000_000 // 5 × 10^14
76 | let attos = attoseconds
| `- error: cannot find 'attoseconds' in scope
77 | let subMs = attos % attosecondsPerMs
78 | let ms = attos / attosecondsPerMs + (subMs >= halfMs ? 1 : subMs <= -halfMs ? -1 : 0)
[52/91] Compiling NautilusTelemetry Weak.swift
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/TimeReference.swift:61:15: error: cannot find 'attoseconds' in scope
59 | let attosecondsPerNs: Int128 = 1_000_000_000 // 10^9
60 | let halfNs: Int128 = 500_000_000 // 5 × 10^8
61 | let attos = attoseconds
| `- error: cannot find 'attoseconds' in scope
62 | let subNs = attos % attosecondsPerNs
63 | let ns = attos / attosecondsPerNs + (subNs >= halfNs ? 1 : subNs <= -halfNs ? -1 : 0)
/Users/admin/builder/spi-builder-workspace/Sources/NautilusTelemetry/Utilities/TimeReference.swift:76:15: error: cannot find 'attoseconds' in scope
74 | let attosecondsPerMs: Int128 = 1_000_000_000_000_000 // 10^15
75 | let halfMs: Int128 = 500_000_000_000_000 // 5 × 10^14
76 | let attos = attoseconds
| `- error: cannot find 'attoseconds' in scope
77 | let subMs = attos % attosecondsPerMs
78 | let ms = attos / attosecondsPerMs + (subMs >= halfMs ? 1 : subMs <= -halfMs ? -1 : 0)
[53/91] Compiling NautilusTelemetry V1Summary.swift
[54/91] Compiling NautilusTelemetry V1SummaryDataPoint.swift
[55/91] Compiling NautilusTelemetry OTLP.swift
[56/91] Compiling NautilusTelemetry SpanEvent.swift
[57/91] Compiling NautilusTelemetry SpanLink.swift
[58/91] Compiling NautilusTelemetry SpanSpanKind.swift
[59/91] Compiling NautilusTelemetry StatusStatusCode.swift
[60/91] Compiling NautilusTelemetry Tracev1Status.swift
[61/91] Compiling NautilusTelemetry V1ExportTracePartialSuccess.swift
[62/91] Compiling NautilusTelemetry NautilusTelemetryLogger.swift
[63/91] Compiling NautilusTelemetry NautilusTelemetryReporter.swift
[64/91] Compiling NautilusTelemetry NoOpReporter.swift
[65/91] Compiling NautilusTelemetry Baggage.swift
[66/91] Compiling NautilusTelemetry Redaction.swift
[67/91] Compiling NautilusTelemetry Span+URLSession.swift
[68/91] Compiling NautilusTelemetry Span.swift
[69/91] Compiling NautilusTelemetry Tracer+Metrics.swift
[70/91] Compiling NautilusTelemetry V1SeverityNumber.swift
[71/91] Compiling NautilusTelemetry ExponentialHistogramDataPointBuckets.swift
[72/91] Compiling NautilusTelemetry SummaryDataPointValueAtQuantile.swift
[73/91] Compiling NautilusTelemetry V1AggregationTemporality.swift
[74/91] Compiling NautilusTelemetry V1Exemplar.swift
[75/91] Compiling NautilusTelemetry V1ExponentialHistogram.swift
[76/91] Compiling NautilusTelemetry V1ExponentialHistogramDataPoint.swift
[77/91] Compiling NautilusTelemetry V1ExportMetricsPartialSuccess.swift
[78/91] Compiling NautilusTelemetry V1ExportMetricsServiceRequest.swift
[79/91] Compiling NautilusTelemetry Compression.swift
[80/91] Compiling NautilusTelemetry ExponentialHistogramUtils.swift
[81/91] Compiling NautilusTelemetry Exporter+Logs.swift
[82/91] Compiling NautilusTelemetry Exporter+Metrics.swift
[83/91] Compiling NautilusTelemetry Exporter+Trace.swift
[84/91] Compiling NautilusTelemetry Exporter.swift
[85/91] Compiling NautilusTelemetry V1AnyValue.swift
[86/91] Compiling NautilusTelemetry V1ArrayValue.swift
[87/91] Compiling NautilusTelemetry V1InstrumentationScope.swift
BUILD FAILURE 6.1 macosSpm