Build Information
Successful build of Pharos with Swift 6.0 for macOS (SPM).
Swift 6 data race errors: 6
Build Command
env DEVELOPER_DIR=/Applications/Xcode-15.3.0.app xcrun --toolchain org.swift.600202405261a swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Build Log
========================================
RunAll
========================================
Builder version: 4.40.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/hainayanda/Pharos.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/hainayanda/Pharos
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at 454d8fe Merge pull request #29 from hainayanda/second-rewrite
Cloned https://github.com/hainayanda/Pharos.git
Revision (git rev-parse @):
454d8fec32933ae262078957dce6622f449c9ba6
SUCCESS checkout https://github.com/hainayanda/Pharos.git at main
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.0
Building package at path: $workDir
https://github.com/hainayanda/Pharos.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-15.3.0.app xcrun --toolchain org.swift.600202405261a swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Building for debugging...
[0/3] Write sources
[2/3] Write swift-version-6F35C1178C84523A.txt
[4/6] Compiling Chary Atomic.swift
[5/6] Compiling Chary DispatchQueue+Extensions.swift
[6/6] Emitting module Chary
[7/41] Compiling Pharos BindableCollection+UIStackView.swift
[8/41] Compiling Pharos BindableCollection+UIStepper.swift
[9/41] Compiling Pharos BindableCollection+UISwitch.swift
[10/41] Compiling Pharos BindableCollection+UITableView.swift
[11/41] Compiling Pharos BindableCollection+UIView.swift
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/PopulatedRelays/PopulatedRelays.swift:70:5: warning: var 'populatedRelayRetainingKey' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
68 | }
69 |
70 | var populatedRelayRetainingKey: String = "populatedRelayRetainingKey"
| |- warning: var 'populatedRelayRetainingKey' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'populatedRelayRetainingKey' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'populatedRelayRetainingKey' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
71 |
72 | extension PopulatedRelays {
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/PopulatedRelays/PopulatedRelays.swift:75:55: warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
73 |
74 | func findRetained(where match: (AnyObject) -> Bool) -> AnyObject? {
75 | let retained = objc_getAssociatedObject(self, &populatedRelayRetainingKey) as? [AnyObject] ?? []
| `- warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
76 | return retained.first(where: match)
77 | }
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/PopulatedRelays/PopulatedRelays.swift:80:55: warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
78 |
79 | func retain(_ object: AnyObject) {
80 | var retained = objc_getAssociatedObject(self, &populatedRelayRetainingKey) as? [AnyObject] ?? []
| `- warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
81 | retained.append(self)
82 | objc_setAssociatedObject(self, &populatedRelayRetainingKey, retained, .OBJC_ASSOCIATION_RETAIN)
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/PopulatedRelays/PopulatedRelays.swift:82:40: warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
80 | var retained = objc_getAssociatedObject(self, &populatedRelayRetainingKey) as? [AnyObject] ?? []
81 | retained.append(self)
82 | objc_setAssociatedObject(self, &populatedRelayRetainingKey, retained, .OBJC_ASSOCIATION_RETAIN)
| `- warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
83 | }
84 | }
[12/41] Compiling Pharos BindableCollectionCellView.swift
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/PopulatedRelays/PopulatedRelays.swift:70:5: warning: var 'populatedRelayRetainingKey' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
68 | }
69 |
70 | var populatedRelayRetainingKey: String = "populatedRelayRetainingKey"
| |- warning: var 'populatedRelayRetainingKey' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'populatedRelayRetainingKey' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'populatedRelayRetainingKey' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
71 |
72 | extension PopulatedRelays {
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/PopulatedRelays/PopulatedRelays.swift:75:55: warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
73 |
74 | func findRetained(where match: (AnyObject) -> Bool) -> AnyObject? {
75 | let retained = objc_getAssociatedObject(self, &populatedRelayRetainingKey) as? [AnyObject] ?? []
| `- warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
76 | return retained.first(where: match)
77 | }
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/PopulatedRelays/PopulatedRelays.swift:80:55: warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
78 |
79 | func retain(_ object: AnyObject) {
80 | var retained = objc_getAssociatedObject(self, &populatedRelayRetainingKey) as? [AnyObject] ?? []
| `- warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
81 | retained.append(self)
82 | objc_setAssociatedObject(self, &populatedRelayRetainingKey, retained, .OBJC_ASSOCIATION_RETAIN)
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/PopulatedRelays/PopulatedRelays.swift:82:40: warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
80 | var retained = objc_getAssociatedObject(self, &populatedRelayRetainingKey) as? [AnyObject] ?? []
81 | retained.append(self)
82 | objc_setAssociatedObject(self, &populatedRelayRetainingKey, retained, .OBJC_ASSOCIATION_RETAIN)
| `- warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
83 | }
84 | }
[13/41] Compiling Pharos PopulatedRelays.swift
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/PopulatedRelays/PopulatedRelays.swift:70:5: warning: var 'populatedRelayRetainingKey' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
68 | }
69 |
70 | var populatedRelayRetainingKey: String = "populatedRelayRetainingKey"
| |- warning: var 'populatedRelayRetainingKey' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'populatedRelayRetainingKey' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'populatedRelayRetainingKey' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
71 |
72 | extension PopulatedRelays {
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/PopulatedRelays/PopulatedRelays.swift:75:55: warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
73 |
74 | func findRetained(where match: (AnyObject) -> Bool) -> AnyObject? {
75 | let retained = objc_getAssociatedObject(self, &populatedRelayRetainingKey) as? [AnyObject] ?? []
| `- warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
76 | return retained.first(where: match)
77 | }
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/PopulatedRelays/PopulatedRelays.swift:80:55: warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
78 |
79 | func retain(_ object: AnyObject) {
80 | var retained = objc_getAssociatedObject(self, &populatedRelayRetainingKey) as? [AnyObject] ?? []
| `- warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
81 | retained.append(self)
82 | objc_setAssociatedObject(self, &populatedRelayRetainingKey, retained, .OBJC_ASSOCIATION_RETAIN)
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/PopulatedRelays/PopulatedRelays.swift:82:40: warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
80 | var retained = objc_getAssociatedObject(self, &populatedRelayRetainingKey) as? [AnyObject] ?? []
81 | retained.append(self)
82 | objc_setAssociatedObject(self, &populatedRelayRetainingKey, retained, .OBJC_ASSOCIATION_RETAIN)
| `- warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
83 | }
84 | }
[14/44] Emitting module Pharos
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Base/Invokable.swift:20:24: warning: class property 'current' cannot be used in an '@inlinable' function because 'Chary' was not imported by this file; this is an error in the Swift 6 language mode
18 | extension Invokable {
19 | @inlinable func fire(after delay: TimeInterval) {
20 | (DispatchQueue.current ?? DispatchQueue.main)
| |- warning: class property 'current' cannot be used in an '@inlinable' function because 'Chary' was not imported by this file; this is an error in the Swift 6 language mode
| `- note: The missing import of module 'Chary' will be added implicitly
21 | .asyncAfter(deadline: .now() + delay) { [weak self] in
22 | self?.fire()
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Base/Invokable.swift:22:17: warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
20 | (DispatchQueue.current ?? DispatchQueue.main)
21 | .asyncAfter(deadline: .now() + delay) { [weak self] in
22 | self?.fire()
| `- warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
23 | }
24 | }
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/PopulatedRelays/PopulatedRelays.swift:70:5: warning: var 'populatedRelayRetainingKey' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
68 | }
69 |
70 | var populatedRelayRetainingKey: String = "populatedRelayRetainingKey"
| |- warning: var 'populatedRelayRetainingKey' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'populatedRelayRetainingKey' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'populatedRelayRetainingKey' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
71 |
72 | extension PopulatedRelays {
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Retaining/Retainable.swift:86:13: warning: var 'retainingKey' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
84 | // MARK: Retainable + Extensions
85 |
86 | private var retainingKey: String = "retainKey"
| |- warning: var 'retainingKey' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'retainingKey' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'retainingKey' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
87 |
88 | extension Retainable where Self: Invokable {
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Retaining/Retainable.swift:75:24: warning: class property 'current' cannot be used in an '@inlinable' function because 'Chary' was not imported by this file; this is an error in the Swift 6 language mode
73 | @inlinable func retain(for timeInterval: TimeInterval) -> Invokable {
74 | let discardTime = Date(timeIntervalSinceNow: timeInterval)
75 | (DispatchQueue.current ?? .main).asyncAfter(deadline: .now() + timeInterval) { [weak self] in
| |- warning: class property 'current' cannot be used in an '@inlinable' function because 'Chary' was not imported by this file; this is an error in the Swift 6 language mode
| `- note: The missing import of module 'Chary' will be added implicitly
76 | self?.discard()
77 | }
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Retaining/Retainable.swift:76:13: warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
74 | let discardTime = Date(timeIntervalSinceNow: timeInterval)
75 | (DispatchQueue.current ?? .main).asyncAfter(deadline: .now() + timeInterval) { [weak self] in
76 | self?.discard()
| `- warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
77 | }
78 | return retainUntil {
[15/44] Compiling Pharos Observable.swift
[16/44] Compiling Pharos ObservableBlock.swift
[17/44] Compiling Pharos Publisher.swift
[18/44] Compiling Pharos Subject.swift
[19/44] Compiling Pharos BindableCollection+TextInput.swift
[20/44] Compiling Pharos BindableCollection+UIButton.swift
[21/44] Compiling Pharos BindableCollection+UICollectionView.swift
[22/44] Compiling Pharos BindableCollection+UIControl.swift
[23/44] Compiling Pharos WeakWrappedObserver.swift
[24/44] Compiling Pharos UIControl+Extensions.swift
[25/44] Compiling Pharos UIControlAction.swift
[26/44] Compiling Pharos Observing.swift
[27/44] Compiling Pharos Unwrapable.swift
[28/44] Compiling Pharos WrappingObserver.swift
[29/44] Compiling Pharos BufferedObservable.swift
[30/44] Compiling Pharos ExclusiveRetainableWrapper.swift
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Retaining/Retainable.swift:86:13: warning: var 'retainingKey' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
84 | // MARK: Retainable + Extensions
85 |
86 | private var retainingKey: String = "retainKey"
| |- warning: var 'retainingKey' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'retainingKey' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'retainingKey' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
87 |
88 | extension Retainable where Self: Invokable {
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Retaining/Retainable.swift:75:24: warning: class property 'current' cannot be used in an '@inlinable' function because 'Chary' was not imported by this file; this is an error in the Swift 6 language mode
73 | @inlinable func retain(for timeInterval: TimeInterval) -> Invokable {
74 | let discardTime = Date(timeIntervalSinceNow: timeInterval)
75 | (DispatchQueue.current ?? .main).asyncAfter(deadline: .now() + timeInterval) { [weak self] in
| |- warning: class property 'current' cannot be used in an '@inlinable' function because 'Chary' was not imported by this file; this is an error in the Swift 6 language mode
| `- note: The missing import of module 'Chary' will be added implicitly
76 | self?.discard()
77 | }
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Retaining/Retainable.swift:76:13: warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
74 | let discardTime = Date(timeIntervalSinceNow: timeInterval)
75 | (DispatchQueue.current ?? .main).asyncAfter(deadline: .now() + timeInterval) { [weak self] in
76 | self?.discard()
| `- warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
77 | }
78 | return retainUntil {
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Retaining/Retainable.swift:94:57: warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
92 | @discardableResult
93 | public func retained(by object: AnyObject) -> Invokable {
94 | var retained = objc_getAssociatedObject(object, &retainingKey) as? [AnyObject] ?? []
| `- warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
95 | retained.append(self)
96 | objc_setAssociatedObject(object, &retainingKey, retained, .OBJC_ASSOCIATION_RETAIN)
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Retaining/Retainable.swift:96:42: warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
94 | var retained = objc_getAssociatedObject(object, &retainingKey) as? [AnyObject] ?? []
95 | retained.append(self)
96 | objc_setAssociatedObject(object, &retainingKey, retained, .OBJC_ASSOCIATION_RETAIN)
| `- warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
97 | return self
98 | }
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Retaining/Retainable.swift:105:40: warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
103 | extension AnyObservable {
104 | public func release() {
105 | objc_setAssociatedObject(self, &retainingKey, [], .OBJC_ASSOCIATION_RETAIN)
| `- warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
106 | }
107 | }
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Retaining/Retainable.swift:155:57: warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
153 | guard let parent = parent else { return self }
154 | let exclusive = ExclusiveRetainableWrapper(retained: self, source: parent)
155 | var retained = objc_getAssociatedObject(object, &retainingKey) as? [AnyObject] ?? []
| `- warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
156 | retained.removeAll {
157 | ($0 as? ExclusiveRetainableWrapper)?.isComing(from: parent) ?? false
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Retaining/Retainable.swift:160:42: warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
158 | }
159 | retained.append(exclusive)
160 | objc_setAssociatedObject(object, &retainingKey, retained, .OBJC_ASSOCIATION_RETAIN)
| `- warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
161 | return self
162 | }
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Retaining/Retainable.swift:195:40: warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
193 |
194 | public func discardAll() {
195 | objc_setAssociatedObject(self, &retainingKey, [], .OBJC_ASSOCIATION_RETAIN)
| `- warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
196 | }
197 | }
[31/44] Compiling Pharos Retainable.swift
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Retaining/Retainable.swift:86:13: warning: var 'retainingKey' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
84 | // MARK: Retainable + Extensions
85 |
86 | private var retainingKey: String = "retainKey"
| |- warning: var 'retainingKey' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'retainingKey' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'retainingKey' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
87 |
88 | extension Retainable where Self: Invokable {
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Retaining/Retainable.swift:75:24: warning: class property 'current' cannot be used in an '@inlinable' function because 'Chary' was not imported by this file; this is an error in the Swift 6 language mode
73 | @inlinable func retain(for timeInterval: TimeInterval) -> Invokable {
74 | let discardTime = Date(timeIntervalSinceNow: timeInterval)
75 | (DispatchQueue.current ?? .main).asyncAfter(deadline: .now() + timeInterval) { [weak self] in
| |- warning: class property 'current' cannot be used in an '@inlinable' function because 'Chary' was not imported by this file; this is an error in the Swift 6 language mode
| `- note: The missing import of module 'Chary' will be added implicitly
76 | self?.discard()
77 | }
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Retaining/Retainable.swift:76:13: warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
74 | let discardTime = Date(timeIntervalSinceNow: timeInterval)
75 | (DispatchQueue.current ?? .main).asyncAfter(deadline: .now() + timeInterval) { [weak self] in
76 | self?.discard()
| `- warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
77 | }
78 | return retainUntil {
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Retaining/Retainable.swift:94:57: warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
92 | @discardableResult
93 | public func retained(by object: AnyObject) -> Invokable {
94 | var retained = objc_getAssociatedObject(object, &retainingKey) as? [AnyObject] ?? []
| `- warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
95 | retained.append(self)
96 | objc_setAssociatedObject(object, &retainingKey, retained, .OBJC_ASSOCIATION_RETAIN)
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Retaining/Retainable.swift:96:42: warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
94 | var retained = objc_getAssociatedObject(object, &retainingKey) as? [AnyObject] ?? []
95 | retained.append(self)
96 | objc_setAssociatedObject(object, &retainingKey, retained, .OBJC_ASSOCIATION_RETAIN)
| `- warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
97 | return self
98 | }
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Retaining/Retainable.swift:105:40: warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
103 | extension AnyObservable {
104 | public func release() {
105 | objc_setAssociatedObject(self, &retainingKey, [], .OBJC_ASSOCIATION_RETAIN)
| `- warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
106 | }
107 | }
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Retaining/Retainable.swift:155:57: warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
153 | guard let parent = parent else { return self }
154 | let exclusive = ExclusiveRetainableWrapper(retained: self, source: parent)
155 | var retained = objc_getAssociatedObject(object, &retainingKey) as? [AnyObject] ?? []
| `- warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
156 | retained.removeAll {
157 | ($0 as? ExclusiveRetainableWrapper)?.isComing(from: parent) ?? false
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Retaining/Retainable.swift:160:42: warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
158 | }
159 | retained.append(exclusive)
160 | objc_setAssociatedObject(object, &retainingKey, retained, .OBJC_ASSOCIATION_RETAIN)
| `- warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
161 | return self
162 | }
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Retaining/Retainable.swift:195:40: warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
193 |
194 | public func discardAll() {
195 | objc_setAssociatedObject(self, &retainingKey, [], .OBJC_ASSOCIATION_RETAIN)
| `- warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
196 | }
197 | }
[32/44] Compiling Pharos RetainableGroup.swift
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Retaining/Retainable.swift:86:13: warning: var 'retainingKey' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
84 | // MARK: Retainable + Extensions
85 |
86 | private var retainingKey: String = "retainKey"
| |- warning: var 'retainingKey' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'retainingKey' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'retainingKey' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
87 |
88 | extension Retainable where Self: Invokable {
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Retaining/Retainable.swift:75:24: warning: class property 'current' cannot be used in an '@inlinable' function because 'Chary' was not imported by this file; this is an error in the Swift 6 language mode
73 | @inlinable func retain(for timeInterval: TimeInterval) -> Invokable {
74 | let discardTime = Date(timeIntervalSinceNow: timeInterval)
75 | (DispatchQueue.current ?? .main).asyncAfter(deadline: .now() + timeInterval) { [weak self] in
| |- warning: class property 'current' cannot be used in an '@inlinable' function because 'Chary' was not imported by this file; this is an error in the Swift 6 language mode
| `- note: The missing import of module 'Chary' will be added implicitly
76 | self?.discard()
77 | }
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Retaining/Retainable.swift:76:13: warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
74 | let discardTime = Date(timeIntervalSinceNow: timeInterval)
75 | (DispatchQueue.current ?? .main).asyncAfter(deadline: .now() + timeInterval) { [weak self] in
76 | self?.discard()
| `- warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
77 | }
78 | return retainUntil {
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Retaining/Retainable.swift:94:57: warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
92 | @discardableResult
93 | public func retained(by object: AnyObject) -> Invokable {
94 | var retained = objc_getAssociatedObject(object, &retainingKey) as? [AnyObject] ?? []
| `- warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
95 | retained.append(self)
96 | objc_setAssociatedObject(object, &retainingKey, retained, .OBJC_ASSOCIATION_RETAIN)
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Retaining/Retainable.swift:96:42: warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
94 | var retained = objc_getAssociatedObject(object, &retainingKey) as? [AnyObject] ?? []
95 | retained.append(self)
96 | objc_setAssociatedObject(object, &retainingKey, retained, .OBJC_ASSOCIATION_RETAIN)
| `- warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
97 | return self
98 | }
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Retaining/Retainable.swift:105:40: warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
103 | extension AnyObservable {
104 | public func release() {
105 | objc_setAssociatedObject(self, &retainingKey, [], .OBJC_ASSOCIATION_RETAIN)
| `- warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
106 | }
107 | }
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Retaining/Retainable.swift:155:57: warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
153 | guard let parent = parent else { return self }
154 | let exclusive = ExclusiveRetainableWrapper(retained: self, source: parent)
155 | var retained = objc_getAssociatedObject(object, &retainingKey) as? [AnyObject] ?? []
| `- warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
156 | retained.removeAll {
157 | ($0 as? ExclusiveRetainableWrapper)?.isComing(from: parent) ?? false
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Retaining/Retainable.swift:160:42: warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
158 | }
159 | retained.append(exclusive)
160 | objc_setAssociatedObject(object, &retainingKey, retained, .OBJC_ASSOCIATION_RETAIN)
| `- warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
161 | return self
162 | }
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Retaining/Retainable.swift:195:40: warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
193 |
194 | public func discardAll() {
195 | objc_setAssociatedObject(self, &retainingKey, [], .OBJC_ASSOCIATION_RETAIN)
| `- warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
196 | }
197 | }
[33/44] Compiling Pharos AnyObservable.swift
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Base/Invokable.swift:20:24: warning: class property 'current' cannot be used in an '@inlinable' function because 'Chary' was not imported by this file; this is an error in the Swift 6 language mode
18 | extension Invokable {
19 | @inlinable func fire(after delay: TimeInterval) {
20 | (DispatchQueue.current ?? DispatchQueue.main)
| |- warning: class property 'current' cannot be used in an '@inlinable' function because 'Chary' was not imported by this file; this is an error in the Swift 6 language mode
| `- note: The missing import of module 'Chary' will be added implicitly
21 | .asyncAfter(deadline: .now() + delay) { [weak self] in
22 | self?.fire()
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Base/Invokable.swift:22:17: warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
20 | (DispatchQueue.current ?? DispatchQueue.main)
21 | .asyncAfter(deadline: .now() + delay) { [weak self] in
22 | self?.fire()
| `- warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
23 | }
24 | }
[34/44] Compiling Pharos Changes.swift
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Base/Invokable.swift:20:24: warning: class property 'current' cannot be used in an '@inlinable' function because 'Chary' was not imported by this file; this is an error in the Swift 6 language mode
18 | extension Invokable {
19 | @inlinable func fire(after delay: TimeInterval) {
20 | (DispatchQueue.current ?? DispatchQueue.main)
| |- warning: class property 'current' cannot be used in an '@inlinable' function because 'Chary' was not imported by this file; this is an error in the Swift 6 language mode
| `- note: The missing import of module 'Chary' will be added implicitly
21 | .asyncAfter(deadline: .now() + delay) { [weak self] in
22 | self?.fire()
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Base/Invokable.swift:22:17: warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
20 | (DispatchQueue.current ?? DispatchQueue.main)
21 | .asyncAfter(deadline: .now() + delay) { [weak self] in
22 | self?.fire()
| `- warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
23 | }
24 | }
[35/44] Compiling Pharos Invokable.swift
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Base/Invokable.swift:20:24: warning: class property 'current' cannot be used in an '@inlinable' function because 'Chary' was not imported by this file; this is an error in the Swift 6 language mode
18 | extension Invokable {
19 | @inlinable func fire(after delay: TimeInterval) {
20 | (DispatchQueue.current ?? DispatchQueue.main)
| |- warning: class property 'current' cannot be used in an '@inlinable' function because 'Chary' was not imported by this file; this is an error in the Swift 6 language mode
| `- note: The missing import of module 'Chary' will be added implicitly
21 | .asyncAfter(deadline: .now() + delay) { [weak self] in
22 | self?.fire()
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Base/Invokable.swift:22:17: warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
20 | (DispatchQueue.current ?? DispatchQueue.main)
21 | .asyncAfter(deadline: .now() + delay) { [weak self] in
22 | self?.fire()
| `- warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
23 | }
24 | }
[36/44] Compiling Pharos InvokableGroup.swift
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Base/Invokable.swift:20:24: warning: class property 'current' cannot be used in an '@inlinable' function because 'Chary' was not imported by this file; this is an error in the Swift 6 language mode
18 | extension Invokable {
19 | @inlinable func fire(after delay: TimeInterval) {
20 | (DispatchQueue.current ?? DispatchQueue.main)
| |- warning: class property 'current' cannot be used in an '@inlinable' function because 'Chary' was not imported by this file; this is an error in the Swift 6 language mode
| `- note: The missing import of module 'Chary' will be added implicitly
21 | .asyncAfter(deadline: .now() + delay) { [weak self] in
22 | self?.fire()
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Base/Invokable.swift:22:17: warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
20 | (DispatchQueue.current ?? DispatchQueue.main)
21 | .asyncAfter(deadline: .now() + delay) { [weak self] in
22 | self?.fire()
| `- warning: capture of 'self' with non-sendable type 'Self?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
23 | }
24 | }
[37/44] Compiling Pharos BindableCollection+UIImageView.swift
[38/44] Compiling Pharos BindableCollection+UILabel.swift
[39/44] Compiling Pharos BindableCollection+UIScrollView.swift
[40/44] Compiling Pharos BindableCollection+UISlider.swift
[41/44] Compiling Pharos CombinedObservable.swift
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Observable/KVOObservable.swift:41:30: warning: capture of 'self' with non-sendable type 'KVOObservable<Object, Property>?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
11 | #endif
12 |
13 | final class KVOObservable<Object: NSObject, Property>: BufferedObservable<Property> {
| `- note: generic class 'KVOObservable' does not conform to the 'Sendable' protocol
14 | weak var object: Object?
15 | let keyPath: KeyPath<Object, Property>
:
39 | @inlinable func observeChange(object: Object, _ keyPath: KeyPath<Object, Property>) {
40 | self.retainedContext = object.observe(keyPath, options: [.old, .new]) { [weak self] _, kvoChanges in
41 | guard let self = self else { return }
| `- warning: capture of 'self' with non-sendable type 'KVOObservable<Object, Property>?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
42 | guard let newValue = kvoChanges.newValue else { return }
43 | let changes = self.latestKeyPathSet ?? Changes(new: newValue, old: kvoChanges.oldValue)
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Observable/Observable+Extensions.swift:106:17: warning: capture of 'child' with non-sendable type 'Observable<Output>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
104 | addChildObservable { value, child in
105 | queue.async {
106 | child.accept(value)
| `- warning: capture of 'child' with non-sendable type 'Observable<Output>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
107 | }
108 | }
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Observable/Observable.swift:12:12: note: generic class 'Observable' does not conform to the 'Sendable' protocol
10 | // MARK: Observable
11 |
12 | open class Observable<Output>: InvokableObservable, Observing {
| `- note: generic class 'Observable' does not conform to the 'Sendable' protocol
13 | public typealias Observer = (Changes<Output>) -> Void
14 | private weak var _parent: InvokableObservable?
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Observable/Observable+Extensions.swift:106:30: warning: capture of 'value' with non-sendable type 'Changes<Output>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
104 | addChildObservable { value, child in
105 | queue.async {
106 | child.accept(value)
| `- warning: capture of 'value' with non-sendable type 'Changes<Output>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
107 | }
108 | }
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Base/Changes.swift:10:15: note: consider making generic struct 'Changes' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct Changes<State> {
| `- note: consider making generic struct 'Changes' conform to the 'Sendable' protocol
11 | public let new: State
12 | public internal(set) var old: State?
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Observable/Observable+Extensions.swift:145:37: warning: capture of 'pendingBuffer' with non-sendable type 'Changes<Output>?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
143 | child.accept(value)
144 | (DispatchQueue.current ?? .main).asyncAfter(deadline: .now() + minimumCallInterval) { [weak child] in
145 | guard let pending = pendingBuffer, let child = child else {
| `- warning: capture of 'pendingBuffer' with non-sendable type 'Changes<Output>?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
146 | return
147 | }
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Base/Changes.swift:10:15: note: consider making generic struct 'Changes' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct Changes<State> {
| `- note: consider making generic struct 'Changes' conform to the 'Sendable' protocol
11 | public let new: State
12 | public internal(set) var old: State?
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Observable/Observable+Extensions.swift:145:64: warning: capture of 'child' with non-sendable type 'Observable<Output>?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
143 | child.accept(value)
144 | (DispatchQueue.current ?? .main).asyncAfter(deadline: .now() + minimumCallInterval) { [weak child] in
145 | guard let pending = pendingBuffer, let child = child else {
| `- warning: capture of 'child' with non-sendable type 'Observable<Output>?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
146 | return
147 | }
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Observable/Observable.swift:12:12: note: generic class 'Observable' does not conform to the 'Sendable' protocol
10 | // MARK: Observable
11 |
12 | open class Observable<Output>: InvokableObservable, Observing {
| `- note: generic class 'Observable' does not conform to the 'Sendable' protocol
13 | public typealias Observer = (Changes<Output>) -> Void
14 | private weak var _parent: InvokableObservable?
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Observable/Observable+Extensions.swift:150:48: warning: capture of 'value' with non-sendable type 'Changes<Output>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
148 | pendingBuffer = nil
149 | lastBlockedTime = Date()
150 | child.accept(pending.with(old: value.new))
| `- warning: capture of 'value' with non-sendable type 'Changes<Output>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
151 | }
152 | }
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Base/Changes.swift:10:15: note: consider making generic struct 'Changes' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct Changes<State> {
| `- note: consider making generic struct 'Changes' conform to the 'Sendable' protocol
11 | public let new: State
12 | public internal(set) var old: State?
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Observable/Observable+Extensions.swift:145:37: warning: reference to captured var 'pendingBuffer' in concurrently-executing code; this is an error in the Swift 6 language mode
143 | child.accept(value)
144 | (DispatchQueue.current ?? .main).asyncAfter(deadline: .now() + minimumCallInterval) { [weak child] in
145 | guard let pending = pendingBuffer, let child = child else {
| `- warning: reference to captured var 'pendingBuffer' in concurrently-executing code; this is an error in the Swift 6 language mode
146 | return
147 | }
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Observable/Observable+Extensions.swift:148:17: warning: mutation of captured var 'pendingBuffer' in concurrently-executing code; this is an error in the Swift 6 language mode
146 | return
147 | }
148 | pendingBuffer = nil
| `- warning: mutation of captured var 'pendingBuffer' in concurrently-executing code; this is an error in the Swift 6 language mode
149 | lastBlockedTime = Date()
150 | child.accept(pending.with(old: value.new))
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Observable/Observable+Extensions.swift:149:17: warning: mutation of captured var 'lastBlockedTime' in concurrently-executing code; this is an error in the Swift 6 language mode
147 | }
148 | pendingBuffer = nil
149 | lastBlockedTime = Date()
| `- warning: mutation of captured var 'lastBlockedTime' in concurrently-executing code; this is an error in the Swift 6 language mode
150 | child.accept(pending.with(old: value.new))
151 | }
[42/44] Compiling Pharos KVOObservable.swift
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Observable/KVOObservable.swift:41:30: warning: capture of 'self' with non-sendable type 'KVOObservable<Object, Property>?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
11 | #endif
12 |
13 | final class KVOObservable<Object: NSObject, Property>: BufferedObservable<Property> {
| `- note: generic class 'KVOObservable' does not conform to the 'Sendable' protocol
14 | weak var object: Object?
15 | let keyPath: KeyPath<Object, Property>
:
39 | @inlinable func observeChange(object: Object, _ keyPath: KeyPath<Object, Property>) {
40 | self.retainedContext = object.observe(keyPath, options: [.old, .new]) { [weak self] _, kvoChanges in
41 | guard let self = self else { return }
| `- warning: capture of 'self' with non-sendable type 'KVOObservable<Object, Property>?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
42 | guard let newValue = kvoChanges.newValue else { return }
43 | let changes = self.latestKeyPathSet ?? Changes(new: newValue, old: kvoChanges.oldValue)
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Observable/Observable+Extensions.swift:106:17: warning: capture of 'child' with non-sendable type 'Observable<Output>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
104 | addChildObservable { value, child in
105 | queue.async {
106 | child.accept(value)
| `- warning: capture of 'child' with non-sendable type 'Observable<Output>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
107 | }
108 | }
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Observable/Observable.swift:12:12: note: generic class 'Observable' does not conform to the 'Sendable' protocol
10 | // MARK: Observable
11 |
12 | open class Observable<Output>: InvokableObservable, Observing {
| `- note: generic class 'Observable' does not conform to the 'Sendable' protocol
13 | public typealias Observer = (Changes<Output>) -> Void
14 | private weak var _parent: InvokableObservable?
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Observable/Observable+Extensions.swift:106:30: warning: capture of 'value' with non-sendable type 'Changes<Output>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
104 | addChildObservable { value, child in
105 | queue.async {
106 | child.accept(value)
| `- warning: capture of 'value' with non-sendable type 'Changes<Output>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
107 | }
108 | }
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Base/Changes.swift:10:15: note: consider making generic struct 'Changes' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct Changes<State> {
| `- note: consider making generic struct 'Changes' conform to the 'Sendable' protocol
11 | public let new: State
12 | public internal(set) var old: State?
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Observable/Observable+Extensions.swift:145:37: warning: capture of 'pendingBuffer' with non-sendable type 'Changes<Output>?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
143 | child.accept(value)
144 | (DispatchQueue.current ?? .main).asyncAfter(deadline: .now() + minimumCallInterval) { [weak child] in
145 | guard let pending = pendingBuffer, let child = child else {
| `- warning: capture of 'pendingBuffer' with non-sendable type 'Changes<Output>?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
146 | return
147 | }
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Base/Changes.swift:10:15: note: consider making generic struct 'Changes' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct Changes<State> {
| `- note: consider making generic struct 'Changes' conform to the 'Sendable' protocol
11 | public let new: State
12 | public internal(set) var old: State?
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Observable/Observable+Extensions.swift:145:64: warning: capture of 'child' with non-sendable type 'Observable<Output>?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
143 | child.accept(value)
144 | (DispatchQueue.current ?? .main).asyncAfter(deadline: .now() + minimumCallInterval) { [weak child] in
145 | guard let pending = pendingBuffer, let child = child else {
| `- warning: capture of 'child' with non-sendable type 'Observable<Output>?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
146 | return
147 | }
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Observable/Observable.swift:12:12: note: generic class 'Observable' does not conform to the 'Sendable' protocol
10 | // MARK: Observable
11 |
12 | open class Observable<Output>: InvokableObservable, Observing {
| `- note: generic class 'Observable' does not conform to the 'Sendable' protocol
13 | public typealias Observer = (Changes<Output>) -> Void
14 | private weak var _parent: InvokableObservable?
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Observable/Observable+Extensions.swift:150:48: warning: capture of 'value' with non-sendable type 'Changes<Output>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
148 | pendingBuffer = nil
149 | lastBlockedTime = Date()
150 | child.accept(pending.with(old: value.new))
| `- warning: capture of 'value' with non-sendable type 'Changes<Output>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
151 | }
152 | }
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Base/Changes.swift:10:15: note: consider making generic struct 'Changes' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct Changes<State> {
| `- note: consider making generic struct 'Changes' conform to the 'Sendable' protocol
11 | public let new: State
12 | public internal(set) var old: State?
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Observable/Observable+Extensions.swift:145:37: warning: reference to captured var 'pendingBuffer' in concurrently-executing code; this is an error in the Swift 6 language mode
143 | child.accept(value)
144 | (DispatchQueue.current ?? .main).asyncAfter(deadline: .now() + minimumCallInterval) { [weak child] in
145 | guard let pending = pendingBuffer, let child = child else {
| `- warning: reference to captured var 'pendingBuffer' in concurrently-executing code; this is an error in the Swift 6 language mode
146 | return
147 | }
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Observable/Observable+Extensions.swift:148:17: warning: mutation of captured var 'pendingBuffer' in concurrently-executing code; this is an error in the Swift 6 language mode
146 | return
147 | }
148 | pendingBuffer = nil
| `- warning: mutation of captured var 'pendingBuffer' in concurrently-executing code; this is an error in the Swift 6 language mode
149 | lastBlockedTime = Date()
150 | child.accept(pending.with(old: value.new))
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Observable/Observable+Extensions.swift:149:17: warning: mutation of captured var 'lastBlockedTime' in concurrently-executing code; this is an error in the Swift 6 language mode
147 | }
148 | pendingBuffer = nil
149 | lastBlockedTime = Date()
| `- warning: mutation of captured var 'lastBlockedTime' in concurrently-executing code; this is an error in the Swift 6 language mode
150 | child.accept(pending.with(old: value.new))
151 | }
[43/44] Compiling Pharos MergedObservable.swift
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Observable/KVOObservable.swift:41:30: warning: capture of 'self' with non-sendable type 'KVOObservable<Object, Property>?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
11 | #endif
12 |
13 | final class KVOObservable<Object: NSObject, Property>: BufferedObservable<Property> {
| `- note: generic class 'KVOObservable' does not conform to the 'Sendable' protocol
14 | weak var object: Object?
15 | let keyPath: KeyPath<Object, Property>
:
39 | @inlinable func observeChange(object: Object, _ keyPath: KeyPath<Object, Property>) {
40 | self.retainedContext = object.observe(keyPath, options: [.old, .new]) { [weak self] _, kvoChanges in
41 | guard let self = self else { return }
| `- warning: capture of 'self' with non-sendable type 'KVOObservable<Object, Property>?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
42 | guard let newValue = kvoChanges.newValue else { return }
43 | let changes = self.latestKeyPathSet ?? Changes(new: newValue, old: kvoChanges.oldValue)
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Observable/Observable+Extensions.swift:106:17: warning: capture of 'child' with non-sendable type 'Observable<Output>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
104 | addChildObservable { value, child in
105 | queue.async {
106 | child.accept(value)
| `- warning: capture of 'child' with non-sendable type 'Observable<Output>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
107 | }
108 | }
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Observable/Observable.swift:12:12: note: generic class 'Observable' does not conform to the 'Sendable' protocol
10 | // MARK: Observable
11 |
12 | open class Observable<Output>: InvokableObservable, Observing {
| `- note: generic class 'Observable' does not conform to the 'Sendable' protocol
13 | public typealias Observer = (Changes<Output>) -> Void
14 | private weak var _parent: InvokableObservable?
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Observable/Observable+Extensions.swift:106:30: warning: capture of 'value' with non-sendable type 'Changes<Output>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
104 | addChildObservable { value, child in
105 | queue.async {
106 | child.accept(value)
| `- warning: capture of 'value' with non-sendable type 'Changes<Output>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
107 | }
108 | }
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Base/Changes.swift:10:15: note: consider making generic struct 'Changes' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct Changes<State> {
| `- note: consider making generic struct 'Changes' conform to the 'Sendable' protocol
11 | public let new: State
12 | public internal(set) var old: State?
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Observable/Observable+Extensions.swift:145:37: warning: capture of 'pendingBuffer' with non-sendable type 'Changes<Output>?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
143 | child.accept(value)
144 | (DispatchQueue.current ?? .main).asyncAfter(deadline: .now() + minimumCallInterval) { [weak child] in
145 | guard let pending = pendingBuffer, let child = child else {
| `- warning: capture of 'pendingBuffer' with non-sendable type 'Changes<Output>?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
146 | return
147 | }
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Base/Changes.swift:10:15: note: consider making generic struct 'Changes' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct Changes<State> {
| `- note: consider making generic struct 'Changes' conform to the 'Sendable' protocol
11 | public let new: State
12 | public internal(set) var old: State?
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Observable/Observable+Extensions.swift:145:64: warning: capture of 'child' with non-sendable type 'Observable<Output>?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
143 | child.accept(value)
144 | (DispatchQueue.current ?? .main).asyncAfter(deadline: .now() + minimumCallInterval) { [weak child] in
145 | guard let pending = pendingBuffer, let child = child else {
| `- warning: capture of 'child' with non-sendable type 'Observable<Output>?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
146 | return
147 | }
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Observable/Observable.swift:12:12: note: generic class 'Observable' does not conform to the 'Sendable' protocol
10 | // MARK: Observable
11 |
12 | open class Observable<Output>: InvokableObservable, Observing {
| `- note: generic class 'Observable' does not conform to the 'Sendable' protocol
13 | public typealias Observer = (Changes<Output>) -> Void
14 | private weak var _parent: InvokableObservable?
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Observable/Observable+Extensions.swift:150:48: warning: capture of 'value' with non-sendable type 'Changes<Output>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
148 | pendingBuffer = nil
149 | lastBlockedTime = Date()
150 | child.accept(pending.with(old: value.new))
| `- warning: capture of 'value' with non-sendable type 'Changes<Output>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
151 | }
152 | }
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Base/Changes.swift:10:15: note: consider making generic struct 'Changes' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct Changes<State> {
| `- note: consider making generic struct 'Changes' conform to the 'Sendable' protocol
11 | public let new: State
12 | public internal(set) var old: State?
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Observable/Observable+Extensions.swift:145:37: warning: reference to captured var 'pendingBuffer' in concurrently-executing code; this is an error in the Swift 6 language mode
143 | child.accept(value)
144 | (DispatchQueue.current ?? .main).asyncAfter(deadline: .now() + minimumCallInterval) { [weak child] in
145 | guard let pending = pendingBuffer, let child = child else {
| `- warning: reference to captured var 'pendingBuffer' in concurrently-executing code; this is an error in the Swift 6 language mode
146 | return
147 | }
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Observable/Observable+Extensions.swift:148:17: warning: mutation of captured var 'pendingBuffer' in concurrently-executing code; this is an error in the Swift 6 language mode
146 | return
147 | }
148 | pendingBuffer = nil
| `- warning: mutation of captured var 'pendingBuffer' in concurrently-executing code; this is an error in the Swift 6 language mode
149 | lastBlockedTime = Date()
150 | child.accept(pending.with(old: value.new))
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Observable/Observable+Extensions.swift:149:17: warning: mutation of captured var 'lastBlockedTime' in concurrently-executing code; this is an error in the Swift 6 language mode
147 | }
148 | pendingBuffer = nil
149 | lastBlockedTime = Date()
| `- warning: mutation of captured var 'lastBlockedTime' in concurrently-executing code; this is an error in the Swift 6 language mode
150 | child.accept(pending.with(old: value.new))
151 | }
[44/44] Compiling Pharos Observable+Extensions.swift
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Observable/KVOObservable.swift:41:30: warning: capture of 'self' with non-sendable type 'KVOObservable<Object, Property>?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
11 | #endif
12 |
13 | final class KVOObservable<Object: NSObject, Property>: BufferedObservable<Property> {
| `- note: generic class 'KVOObservable' does not conform to the 'Sendable' protocol
14 | weak var object: Object?
15 | let keyPath: KeyPath<Object, Property>
:
39 | @inlinable func observeChange(object: Object, _ keyPath: KeyPath<Object, Property>) {
40 | self.retainedContext = object.observe(keyPath, options: [.old, .new]) { [weak self] _, kvoChanges in
41 | guard let self = self else { return }
| `- warning: capture of 'self' with non-sendable type 'KVOObservable<Object, Property>?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
42 | guard let newValue = kvoChanges.newValue else { return }
43 | let changes = self.latestKeyPathSet ?? Changes(new: newValue, old: kvoChanges.oldValue)
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Observable/Observable+Extensions.swift:106:17: warning: capture of 'child' with non-sendable type 'Observable<Output>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
104 | addChildObservable { value, child in
105 | queue.async {
106 | child.accept(value)
| `- warning: capture of 'child' with non-sendable type 'Observable<Output>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
107 | }
108 | }
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Observable/Observable.swift:12:12: note: generic class 'Observable' does not conform to the 'Sendable' protocol
10 | // MARK: Observable
11 |
12 | open class Observable<Output>: InvokableObservable, Observing {
| `- note: generic class 'Observable' does not conform to the 'Sendable' protocol
13 | public typealias Observer = (Changes<Output>) -> Void
14 | private weak var _parent: InvokableObservable?
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Observable/Observable+Extensions.swift:106:30: warning: capture of 'value' with non-sendable type 'Changes<Output>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
104 | addChildObservable { value, child in
105 | queue.async {
106 | child.accept(value)
| `- warning: capture of 'value' with non-sendable type 'Changes<Output>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
107 | }
108 | }
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Base/Changes.swift:10:15: note: consider making generic struct 'Changes' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct Changes<State> {
| `- note: consider making generic struct 'Changes' conform to the 'Sendable' protocol
11 | public let new: State
12 | public internal(set) var old: State?
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Observable/Observable+Extensions.swift:145:37: warning: capture of 'pendingBuffer' with non-sendable type 'Changes<Output>?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
143 | child.accept(value)
144 | (DispatchQueue.current ?? .main).asyncAfter(deadline: .now() + minimumCallInterval) { [weak child] in
145 | guard let pending = pendingBuffer, let child = child else {
| `- warning: capture of 'pendingBuffer' with non-sendable type 'Changes<Output>?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
146 | return
147 | }
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Base/Changes.swift:10:15: note: consider making generic struct 'Changes' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct Changes<State> {
| `- note: consider making generic struct 'Changes' conform to the 'Sendable' protocol
11 | public let new: State
12 | public internal(set) var old: State?
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Observable/Observable+Extensions.swift:145:64: warning: capture of 'child' with non-sendable type 'Observable<Output>?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
143 | child.accept(value)
144 | (DispatchQueue.current ?? .main).asyncAfter(deadline: .now() + minimumCallInterval) { [weak child] in
145 | guard let pending = pendingBuffer, let child = child else {
| `- warning: capture of 'child' with non-sendable type 'Observable<Output>?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
146 | return
147 | }
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Observable/Observable.swift:12:12: note: generic class 'Observable' does not conform to the 'Sendable' protocol
10 | // MARK: Observable
11 |
12 | open class Observable<Output>: InvokableObservable, Observing {
| `- note: generic class 'Observable' does not conform to the 'Sendable' protocol
13 | public typealias Observer = (Changes<Output>) -> Void
14 | private weak var _parent: InvokableObservable?
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Observable/Observable+Extensions.swift:150:48: warning: capture of 'value' with non-sendable type 'Changes<Output>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
148 | pendingBuffer = nil
149 | lastBlockedTime = Date()
150 | child.accept(pending.with(old: value.new))
| `- warning: capture of 'value' with non-sendable type 'Changes<Output>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
151 | }
152 | }
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Base/Changes.swift:10:15: note: consider making generic struct 'Changes' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct Changes<State> {
| `- note: consider making generic struct 'Changes' conform to the 'Sendable' protocol
11 | public let new: State
12 | public internal(set) var old: State?
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Observable/Observable+Extensions.swift:145:37: warning: reference to captured var 'pendingBuffer' in concurrently-executing code; this is an error in the Swift 6 language mode
143 | child.accept(value)
144 | (DispatchQueue.current ?? .main).asyncAfter(deadline: .now() + minimumCallInterval) { [weak child] in
145 | guard let pending = pendingBuffer, let child = child else {
| `- warning: reference to captured var 'pendingBuffer' in concurrently-executing code; this is an error in the Swift 6 language mode
146 | return
147 | }
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Observable/Observable+Extensions.swift:148:17: warning: mutation of captured var 'pendingBuffer' in concurrently-executing code; this is an error in the Swift 6 language mode
146 | return
147 | }
148 | pendingBuffer = nil
| `- warning: mutation of captured var 'pendingBuffer' in concurrently-executing code; this is an error in the Swift 6 language mode
149 | lastBlockedTime = Date()
150 | child.accept(pending.with(old: value.new))
/Users/admin/builder/spi-builder-workspace/Pharos/Classes/Observable/Observable+Extensions.swift:149:17: warning: mutation of captured var 'lastBlockedTime' in concurrently-executing code; this is an error in the Swift 6 language mode
147 | }
148 | pendingBuffer = nil
149 | lastBlockedTime = Date()
| `- warning: mutation of captured var 'lastBlockedTime' in concurrently-executing code; this is an error in the Swift 6 language mode
150 | child.accept(pending.with(old: value.new))
151 | }
Build complete! (22.29s)
Fetching https://github.com/hainayanda/Chary.git
[1/514] Fetching chary
Fetched https://github.com/hainayanda/Chary.git from cache (0.88s)
Computing version for https://github.com/hainayanda/Chary.git
Computed https://github.com/hainayanda/Chary.git at 1.0.3 (0.67s)
Creating working copy for https://github.com/hainayanda/Chary.git
Working copy of https://github.com/hainayanda/Chary.git resolved at 1.0.3
Build complete.
{
"dependencies" : [
{
"identity" : "chary",
"requirement" : {
"range" : [
{
"lower_bound" : "1.0.3",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/hainayanda/Chary.git"
}
],
"manifest_display_name" : "Pharos",
"name" : "Pharos",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "12.0"
},
{
"name" : "macos",
"version" : "12.0"
},
{
"name" : "tvos",
"version" : "12.0"
}
],
"products" : [
{
"name" : "Pharos",
"targets" : [
"Pharos"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "Pharos",
"module_type" : "SwiftTarget",
"name" : "Pharos",
"path" : "Pharos/Classes",
"product_dependencies" : [
"Chary"
],
"product_memberships" : [
"Pharos"
],
"sources" : [
"Base/AnyObservable.swift",
"Base/Changes.swift",
"Base/Invokable.swift",
"Base/InvokableGroup.swift",
"Base/Observing.swift",
"Base/Unwrapable.swift",
"Base/WrappingObserver.swift",
"Observable/BufferedObservable.swift",
"Observable/CombinedObservable.swift",
"Observable/KVOObservable.swift",
"Observable/MergedObservable.swift",
"Observable/Observable+Extensions.swift",
"Observable/Observable.swift",
"Observable/ObservableBlock.swift",
"Observable/Publisher.swift",
"Observable/Subject.swift",
"PopulatedRelays/BindableCollection+TextInput.swift",
"PopulatedRelays/BindableCollection+UIButton.swift",
"PopulatedRelays/BindableCollection+UICollectionView.swift",
"PopulatedRelays/BindableCollection+UIControl.swift",
"PopulatedRelays/BindableCollection+UIImageView.swift",
"PopulatedRelays/BindableCollection+UILabel.swift",
"PopulatedRelays/BindableCollection+UIScrollView.swift",
"PopulatedRelays/BindableCollection+UISlider.swift",
"PopulatedRelays/BindableCollection+UIStackView.swift",
"PopulatedRelays/BindableCollection+UIStepper.swift",
"PopulatedRelays/BindableCollection+UISwitch.swift",
"PopulatedRelays/BindableCollection+UITableView.swift",
"PopulatedRelays/BindableCollection+UIView.swift",
"PopulatedRelays/BindableCollectionCellView.swift",
"PopulatedRelays/PopulatedRelays.swift",
"Retaining/ExclusiveRetainableWrapper.swift",
"Retaining/Retainable.swift",
"Retaining/RetainableGroup.swift",
"Retaining/WeakWrappedObserver.swift",
"UIControl/UIControl+Extensions.swift",
"UIControl/UIControlAction.swift"
],
"type" : "library"
}
],
"tools_version" : "5.5"
}
Done.