Build Information
Successful build of Tentacle with Swift 6.0 for macOS (SPM).
Swift 6 data race errors: 3
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/mdiep/Tentacle.git
Reference: master
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/mdiep/Tentacle
* branch master -> FETCH_HEAD
* [new branch] master -> origin/master
HEAD is now at fe0afec Merge pull request #115 from mdiep/ep/remove-deprecated-scanner
Submodule path 'Carthage/Checkouts/ReactiveSwift': checked out '40c465af19b993344e84355c00669ba2022ca3cd'
Submodule path 'Carthage/Checkouts/ReactiveSwift/Carthage/Checkouts/Nimble': checked out 'c93f16c25af5770f0d3e6af27c9634640946b068'
Submodule path 'Carthage/Checkouts/ReactiveSwift/Carthage/Checkouts/Quick': checked out 'bd86ca0141e3cfb333546de5a11ede63f0c4a0e6'
Submodule path 'Carthage/Checkouts/ReactiveSwift/Carthage/Checkouts/Quick/Externals/Nimble': checked out 'd258c638d9ef214723a857a23f4113773aad28fb'
Submodule path 'Carthage/Checkouts/ReactiveSwift/Carthage/Checkouts/xcconfigs': checked out '4ced0ad5a971220917994a4edfa6abf9702e3818'
Submodule 'Carthage/Checkouts/ReactiveSwift' (https://github.com/ReactiveCocoa/ReactiveSwift.git) registered for path 'Carthage/Checkouts/ReactiveSwift'
Cloning into '/Users/admin/builder/spi-builder-workspace/Carthage/Checkouts/ReactiveSwift'...
Submodule 'Carthage/Checkouts/Nimble' (https://github.com/Quick/Nimble.git) registered for path 'Carthage/Checkouts/ReactiveSwift/Carthage/Checkouts/Nimble'
Submodule 'Carthage/Checkouts/Quick' (https://github.com/Quick/Quick.git) registered for path 'Carthage/Checkouts/ReactiveSwift/Carthage/Checkouts/Quick'
Submodule 'Carthage/Checkouts/xcconfigs' (https://github.com/xcconfigs/xcconfigs.git) registered for path 'Carthage/Checkouts/ReactiveSwift/Carthage/Checkouts/xcconfigs'
Cloning into '/Users/admin/builder/spi-builder-workspace/Carthage/Checkouts/ReactiveSwift/Carthage/Checkouts/Nimble'...
Cloning into '/Users/admin/builder/spi-builder-workspace/Carthage/Checkouts/ReactiveSwift/Carthage/Checkouts/Quick'...
Cloning into '/Users/admin/builder/spi-builder-workspace/Carthage/Checkouts/ReactiveSwift/Carthage/Checkouts/xcconfigs'...
Submodule 'Externals/Nimble' (https://github.com/Quick/Nimble.git) registered for path 'Carthage/Checkouts/ReactiveSwift/Carthage/Checkouts/Quick/Externals/Nimble'
Cloning into '/Users/admin/builder/spi-builder-workspace/Carthage/Checkouts/ReactiveSwift/Carthage/Checkouts/Quick/Externals/Nimble'...
Cloned https://github.com/mdiep/Tentacle.git
Revision (git rev-parse @):
fe0afec960dc86d9fcbc8233ea0d66b54176cffa
SUCCESS checkout https://github.com/mdiep/Tentacle.git at master
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.0
Building package at path: $workDir
https://github.com/mdiep/Tentacle.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/50] Emitting module ReactiveSwift
[5/55] Compiling ReactiveSwift SkipRepeats.swift
[6/55] Compiling ReactiveSwift SkipWhile.swift
[7/55] Compiling ReactiveSwift TakeFirst.swift
[8/55] Compiling ReactiveSwift TakeLast.swift
[9/55] Compiling ReactiveSwift TakeUntil.swift
[10/55] Compiling ReactiveSwift Observer.swift
[11/55] Compiling ReactiveSwift Operators.swift
[12/55] Compiling ReactiveSwift Reduce.swift
[13/55] Compiling ReactiveSwift ScanMap.swift
[14/55] Compiling ReactiveSwift SkipFirst.swift
[15/55] Compiling ReactiveSwift TakeWhile.swift
[16/55] Compiling ReactiveSwift Throttle.swift
[17/55] Compiling ReactiveSwift UnaryAsyncOperator.swift
[18/55] Compiling ReactiveSwift UniqueValues.swift
[19/55] Compiling ReactiveSwift Optional.swift
[20/55] Compiling ReactiveSwift Delay.swift
[21/55] Compiling ReactiveSwift Dematerialize.swift
[22/55] Compiling ReactiveSwift DematerializeResults.swift
[23/55] Compiling ReactiveSwift Filter.swift
[24/55] Compiling ReactiveSwift LazyMap.swift
[25/55] Compiling ReactiveSwift Property.swift
[26/55] Compiling ReactiveSwift Reactive.swift
[27/55] Compiling ReactiveSwift ResultExtensions.swift
[28/55] Compiling ReactiveSwift Scheduler.swift
[29/55] Compiling ReactiveSwift Signal.Observer.swift
[30/55] Compiling ReactiveSwift Collect.swift
[31/55] Compiling ReactiveSwift CollectEvery.swift
[32/55] Compiling ReactiveSwift CombinePrevious.swift
[33/55] Compiling ReactiveSwift CompactMap.swift
[34/55] Compiling ReactiveSwift Debounce.swift
[35/55] Compiling ReactiveSwift Map.swift
[36/55] Compiling ReactiveSwift MapError.swift
[37/55] Compiling ReactiveSwift Materialize.swift
[38/55] Compiling ReactiveSwift MaterializeAsResult.swift
[39/55] Compiling ReactiveSwift ObserveOn.swift
[40/55] Compiling ReactiveSwift EventLogger.swift
[41/55] Compiling ReactiveSwift Flatten.swift
[42/55] Compiling ReactiveSwift FoundationExtensions.swift
[43/55] Compiling ReactiveSwift Lifetime.swift
[44/55] Compiling ReactiveSwift AttemptMap.swift
[45/55] Compiling ReactiveSwift Action.swift
[46/55] Compiling ReactiveSwift Atomic.swift
[47/55] Compiling ReactiveSwift Bag.swift
[48/55] Compiling ReactiveSwift Deprecations+Removals.swift
[49/55] Compiling ReactiveSwift Disposable.swift
[50/55] Compiling ReactiveSwift Event.swift
[51/55] Compiling ReactiveSwift Signal.swift
[52/55] Compiling ReactiveSwift SignalProducer.swift
[53/55] Compiling ReactiveSwift UnidirectionalBinding.swift
[54/55] Compiling ReactiveSwift UninhabitedTypeGuards.swift
[55/55] Compiling ReactiveSwift ValidatingProperty.swift
[56/83] Compiling Tentacle Author.swift
[57/83] Compiling Tentacle Availability.swift
[58/83] Compiling Tentacle Branch.swift
[59/85] Compiling Tentacle FileResponse.swift
/Users/admin/builder/spi-builder-workspace/Sources/Tentacle/FoundationExtensions.swift:12:32: warning: static property 'iso8601' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
10 |
11 | extension DateFormatter {
12 | @nonobjc public static var iso8601: DateFormatter = {
| |- warning: static property 'iso8601' 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 'iso8601' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'iso8601' 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
13 | let formatter = DateFormatter()
14 | formatter.locale = Locale(identifier:"en_US_POSIX")
[60/85] Compiling Tentacle FoundationExtensions.swift
/Users/admin/builder/spi-builder-workspace/Sources/Tentacle/FoundationExtensions.swift:12:32: warning: static property 'iso8601' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
10 |
11 | extension DateFormatter {
12 | @nonobjc public static var iso8601: DateFormatter = {
| |- warning: static property 'iso8601' 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 'iso8601' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'iso8601' 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
13 | let formatter = DateFormatter()
14 | formatter.locale = Locale(identifier:"en_US_POSIX")
[61/85] Compiling Tentacle GitHubError.swift
/Users/admin/builder/spi-builder-workspace/Sources/Tentacle/FoundationExtensions.swift:12:32: warning: static property 'iso8601' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
10 |
11 | extension DateFormatter {
12 | @nonobjc public static var iso8601: DateFormatter = {
| |- warning: static property 'iso8601' 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 'iso8601' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'iso8601' 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
13 | let formatter = DateFormatter()
14 | formatter.locale = Locale(identifier:"en_US_POSIX")
[62/85] Compiling Tentacle PullRequest.swift
[63/85] Compiling Tentacle Release.swift
[64/85] Compiling Tentacle Repository.swift
[65/85] Compiling Tentacle Label.swift
[66/85] Compiling Tentacle Milestone.swift
[67/85] Compiling Tentacle Organization.swift
[68/85] Compiling Tentacle Identifiable.swift
/Users/admin/builder/spi-builder-workspace/Sources/Tentacle/JSONExtensions.swift:27:1: warning: extension declares a conformance of imported type 'Context' to imported protocol 'Equatable'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
25 | }
26 |
27 | extension DecodingError.Context: Equatable {
| |- warning: extension declares a conformance of imported type 'Context' to imported protocol 'Equatable'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
| `- note: add '@retroactive' to silence this warning
28 | public static func ==(lhs: DecodingError.Context, rhs: DecodingError.Context) -> Bool {
29 | return lhs.debugDescription == rhs.debugDescription
/Users/admin/builder/spi-builder-workspace/Sources/Tentacle/JSONExtensions.swift:33:1: warning: extension declares a conformance of imported type 'DecodingError' to imported protocol 'Equatable'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
31 | }
32 |
33 | extension DecodingError: Equatable {
| |- warning: extension declares a conformance of imported type 'DecodingError' to imported protocol 'Equatable'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
| `- note: add '@retroactive' to silence this warning
34 | public static func ==(lhs: DecodingError, rhs: DecodingError) -> Bool {
35 | switch (lhs, rhs) {
/Users/admin/builder/spi-builder-workspace/Sources/Tentacle/FoundationExtensions.swift:12:32: warning: static property 'iso8601' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
10 |
11 | extension DateFormatter {
12 | @nonobjc public static var iso8601: DateFormatter = {
| |- warning: static property 'iso8601' 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 'iso8601' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'iso8601' 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
13 | let formatter = DateFormatter()
14 | formatter.locale = Locale(identifier:"en_US_POSIX")
[69/85] Compiling Tentacle Issue.swift
/Users/admin/builder/spi-builder-workspace/Sources/Tentacle/JSONExtensions.swift:27:1: warning: extension declares a conformance of imported type 'Context' to imported protocol 'Equatable'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
25 | }
26 |
27 | extension DecodingError.Context: Equatable {
| |- warning: extension declares a conformance of imported type 'Context' to imported protocol 'Equatable'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
| `- note: add '@retroactive' to silence this warning
28 | public static func ==(lhs: DecodingError.Context, rhs: DecodingError.Context) -> Bool {
29 | return lhs.debugDescription == rhs.debugDescription
/Users/admin/builder/spi-builder-workspace/Sources/Tentacle/JSONExtensions.swift:33:1: warning: extension declares a conformance of imported type 'DecodingError' to imported protocol 'Equatable'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
31 | }
32 |
33 | extension DecodingError: Equatable {
| |- warning: extension declares a conformance of imported type 'DecodingError' to imported protocol 'Equatable'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
| `- note: add '@retroactive' to silence this warning
34 | public static func ==(lhs: DecodingError, rhs: DecodingError) -> Bool {
35 | switch (lhs, rhs) {
/Users/admin/builder/spi-builder-workspace/Sources/Tentacle/FoundationExtensions.swift:12:32: warning: static property 'iso8601' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
10 |
11 | extension DateFormatter {
12 | @nonobjc public static var iso8601: DateFormatter = {
| |- warning: static property 'iso8601' 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 'iso8601' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'iso8601' 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
13 | let formatter = DateFormatter()
14 | formatter.locale = Locale(identifier:"en_US_POSIX")
[70/85] Compiling Tentacle JSONExtensions.swift
/Users/admin/builder/spi-builder-workspace/Sources/Tentacle/JSONExtensions.swift:27:1: warning: extension declares a conformance of imported type 'Context' to imported protocol 'Equatable'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
25 | }
26 |
27 | extension DecodingError.Context: Equatable {
| |- warning: extension declares a conformance of imported type 'Context' to imported protocol 'Equatable'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
| `- note: add '@retroactive' to silence this warning
28 | public static func ==(lhs: DecodingError.Context, rhs: DecodingError.Context) -> Bool {
29 | return lhs.debugDescription == rhs.debugDescription
/Users/admin/builder/spi-builder-workspace/Sources/Tentacle/JSONExtensions.swift:33:1: warning: extension declares a conformance of imported type 'DecodingError' to imported protocol 'Equatable'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
31 | }
32 |
33 | extension DecodingError: Equatable {
| |- warning: extension declares a conformance of imported type 'DecodingError' to imported protocol 'Equatable'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
| `- note: add '@retroactive' to silence this warning
34 | public static func ==(lhs: DecodingError, rhs: DecodingError) -> Bool {
35 | switch (lhs, rhs) {
/Users/admin/builder/spi-builder-workspace/Sources/Tentacle/FoundationExtensions.swift:12:32: warning: static property 'iso8601' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
10 |
11 | extension DateFormatter {
12 | @nonobjc public static var iso8601: DateFormatter = {
| |- warning: static property 'iso8601' 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 'iso8601' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'iso8601' 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
13 | let formatter = DateFormatter()
14 | formatter.locale = Locale(identifier:"en_US_POSIX")
[71/85] Compiling Tentacle RepositoryInfo.swift
[72/85] Compiling Tentacle Request.swift
[73/85] Compiling Tentacle ResourceType.swift
[74/85] Compiling Tentacle Commit.swift
[75/85] Compiling Tentacle Content.swift
[76/85] Compiling Tentacle File.swift
[77/85] Compiling Tentacle Response.swift
[78/85] Compiling Tentacle Server.swift
[79/85] Compiling Tentacle Sha.swift
[80/85] Emitting module Tentacle
/Users/admin/builder/spi-builder-workspace/Sources/Tentacle/Client.swift:85:14: warning: associated value 'apiError' of 'Sendable'-conforming enum 'Error' has non-sendable type 'Response'; this is an error in the Swift 6 language mode
83 |
84 | /// A status code, response, and error that was returned from the API.
85 | case apiError(Int, Response, GitHubError)
| `- warning: associated value 'apiError' of 'Sendable'-conforming enum 'Error' has non-sendable type 'Response'; this is an error in the Swift 6 language mode
86 |
87 | /// The requested object does not exist.
/Users/admin/builder/spi-builder-workspace/Sources/Tentacle/Response.swift:38:15: note: consider making struct 'Response' conform to the 'Sendable' protocol
36 |
37 | /// A response from the GitHub API.
38 | public struct Response: Hashable {
| `- note: consider making struct 'Response' conform to the 'Sendable' protocol
39 | /// The number of requests remaining in the current rate limit window, or nil if the server
40 | /// isn't rate-limited.
/Users/admin/builder/spi-builder-workspace/Sources/Tentacle/Client.swift:109:23: warning: static property 'userAgent' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
107 |
108 | /// The user-agent to use for API requests.
109 | public static var userAgent: String?
| |- warning: static property 'userAgent' 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 'userAgent' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'userAgent' 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
110 |
111 | /// The Server that the Client connects to.
/Users/admin/builder/spi-builder-workspace/Sources/Tentacle/FoundationExtensions.swift:12:32: warning: static property 'iso8601' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
10 |
11 | extension DateFormatter {
12 | @nonobjc public static var iso8601: DateFormatter = {
| |- warning: static property 'iso8601' 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 'iso8601' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'iso8601' 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
13 | let formatter = DateFormatter()
14 | formatter.locale = Locale(identifier:"en_US_POSIX")
/Users/admin/builder/spi-builder-workspace/Sources/Tentacle/JSONExtensions.swift:27:1: warning: extension declares a conformance of imported type 'Context' to imported protocol 'Equatable'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
25 | }
26 |
27 | extension DecodingError.Context: Equatable {
| |- warning: extension declares a conformance of imported type 'Context' to imported protocol 'Equatable'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
| `- note: add '@retroactive' to silence this warning
28 | public static func ==(lhs: DecodingError.Context, rhs: DecodingError.Context) -> Bool {
29 | return lhs.debugDescription == rhs.debugDescription
/Users/admin/builder/spi-builder-workspace/Sources/Tentacle/JSONExtensions.swift:33:1: warning: extension declares a conformance of imported type 'DecodingError' to imported protocol 'Equatable'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
31 | }
32 |
33 | extension DecodingError: Equatable {
| |- warning: extension declares a conformance of imported type 'DecodingError' to imported protocol 'Equatable'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
| `- note: add '@retroactive' to silence this warning
34 | public static func ==(lhs: DecodingError, rhs: DecodingError) -> Bool {
35 | switch (lhs, rhs) {
[81/85] Compiling Tentacle Tree.swift
[82/85] Compiling Tentacle User.swift
[83/85] Compiling Tentacle Client.swift
/Users/admin/builder/spi-builder-workspace/Sources/Tentacle/Client.swift:85:14: warning: associated value 'apiError' of 'Sendable'-conforming enum 'Error' has non-sendable type 'Response'; this is an error in the Swift 6 language mode
83 |
84 | /// A status code, response, and error that was returned from the API.
85 | case apiError(Int, Response, GitHubError)
| `- warning: associated value 'apiError' of 'Sendable'-conforming enum 'Error' has non-sendable type 'Response'; this is an error in the Swift 6 language mode
86 |
87 | /// The requested object does not exist.
/Users/admin/builder/spi-builder-workspace/Sources/Tentacle/Response.swift:38:15: note: consider making struct 'Response' conform to the 'Sendable' protocol
36 |
37 | /// A response from the GitHub API.
38 | public struct Response: Hashable {
| `- note: consider making struct 'Response' conform to the 'Sendable' protocol
39 | /// The number of requests remaining in the current rate limit window, or nil if the server
40 | /// isn't rate-limited.
/Users/admin/builder/spi-builder-workspace/Sources/Tentacle/Client.swift:109:23: warning: static property 'userAgent' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
107 |
108 | /// The user-agent to use for API requests.
109 | public static var userAgent: String?
| |- warning: static property 'userAgent' 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 'userAgent' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'userAgent' 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
110 |
111 | /// The Server that the Client connects to.
/Users/admin/builder/spi-builder-workspace/Sources/Tentacle/Client.swift:43:5: warning: capture of 'handle' with non-sendable type '(any Disposable)?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
41 | let task = self.downloadTask(with: request) { (url, response, error) in
42 | // Avoid invoking cancel(), or the download may be deleted.
43 | handle?.dispose()
| `- warning: capture of 'handle' with non-sendable type '(any Disposable)?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
44 |
45 | if let url = url {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/ReactiveSwift/Sources/Disposable.swift:11:17: note: protocol 'Disposable' does not conform to the 'Sendable' protocol
9 | /// Represents something that can be “disposed”, usually associated with freeing
10 | /// resources or canceling work.
11 | public protocol Disposable: AnyObject {
| `- note: protocol 'Disposable' does not conform to the 'Sendable' protocol
12 | /// Whether this disposable has been disposed already.
13 | var isDisposed: Bool { get }
/Users/admin/builder/spi-builder-workspace/Sources/Tentacle/Client.swift:10:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'ReactiveSwift'
8 |
9 | import Foundation
10 | import ReactiveSwift
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'ReactiveSwift'
11 |
12 | extension URL {
/Users/admin/builder/spi-builder-workspace/Sources/Tentacle/Client.swift:46:6: warning: capture of 'observer' with non-sendable type 'Signal<URL, any Error>.Observer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
44 |
45 | if let url = url {
46 | observer.send(value: url)
| `- warning: capture of 'observer' with non-sendable type 'Signal<URL, any Error>.Observer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
47 | observer.sendCompleted()
48 | } else if let error = error {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/ReactiveSwift/Sources/Signal.Observer.swift:12:21: note: class 'Observer' does not conform to the 'Sendable' protocol
10 | /// An Observer is a simple wrapper around a function which can receive Events
11 | /// (typically from a Signal).
12 | public final class Observer: ReactiveSwift.Observer<Value, Error> {
| `- note: class 'Observer' does not conform to the 'Sendable' protocol
13 | public typealias Action = (Event) -> Void
14 | private let _send: Action
/Users/admin/builder/spi-builder-workspace/.build/checkouts/ReactiveSwift/Sources/Flatten.swift:51:20: warning: static property 'concat' is not concurrency-safe because non-'Sendable' type 'FlattenStrategy' may have shared mutable state; this is an error in the Swift 6 language mode
8 |
9 | /// Describes how a stream of inner streams should be flattened into a stream of values.
10 | public struct FlattenStrategy {
| `- note: consider making struct 'FlattenStrategy' conform to the 'Sendable' protocol
11 | fileprivate enum Kind {
12 | case concurrent(limit: UInt)
:
49 | /// Any failure from the inner streams is propagated immediately to the flattened
50 | /// stream of values.
51 | public static let concat = FlattenStrategy(kind: .concurrent(limit: 1))
| |- warning: static property 'concat' is not concurrency-safe because non-'Sendable' type 'FlattenStrategy' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'concat' 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
52 |
53 | /// The stream of streams is merged with the given concurrency cap, so that any value
[84/85] Compiling Tentacle Color.swift
/Users/admin/builder/spi-builder-workspace/Sources/Tentacle/Client.swift:85:14: warning: associated value 'apiError' of 'Sendable'-conforming enum 'Error' has non-sendable type 'Response'; this is an error in the Swift 6 language mode
83 |
84 | /// A status code, response, and error that was returned from the API.
85 | case apiError(Int, Response, GitHubError)
| `- warning: associated value 'apiError' of 'Sendable'-conforming enum 'Error' has non-sendable type 'Response'; this is an error in the Swift 6 language mode
86 |
87 | /// The requested object does not exist.
/Users/admin/builder/spi-builder-workspace/Sources/Tentacle/Response.swift:38:15: note: consider making struct 'Response' conform to the 'Sendable' protocol
36 |
37 | /// A response from the GitHub API.
38 | public struct Response: Hashable {
| `- note: consider making struct 'Response' conform to the 'Sendable' protocol
39 | /// The number of requests remaining in the current rate limit window, or nil if the server
40 | /// isn't rate-limited.
/Users/admin/builder/spi-builder-workspace/Sources/Tentacle/Client.swift:109:23: warning: static property 'userAgent' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
107 |
108 | /// The user-agent to use for API requests.
109 | public static var userAgent: String?
| |- warning: static property 'userAgent' 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 'userAgent' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'userAgent' 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
110 |
111 | /// The Server that the Client connects to.
/Users/admin/builder/spi-builder-workspace/Sources/Tentacle/Client.swift:43:5: warning: capture of 'handle' with non-sendable type '(any Disposable)?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
41 | let task = self.downloadTask(with: request) { (url, response, error) in
42 | // Avoid invoking cancel(), or the download may be deleted.
43 | handle?.dispose()
| `- warning: capture of 'handle' with non-sendable type '(any Disposable)?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
44 |
45 | if let url = url {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/ReactiveSwift/Sources/Disposable.swift:11:17: note: protocol 'Disposable' does not conform to the 'Sendable' protocol
9 | /// Represents something that can be “disposed”, usually associated with freeing
10 | /// resources or canceling work.
11 | public protocol Disposable: AnyObject {
| `- note: protocol 'Disposable' does not conform to the 'Sendable' protocol
12 | /// Whether this disposable has been disposed already.
13 | var isDisposed: Bool { get }
/Users/admin/builder/spi-builder-workspace/Sources/Tentacle/Client.swift:10:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'ReactiveSwift'
8 |
9 | import Foundation
10 | import ReactiveSwift
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'ReactiveSwift'
11 |
12 | extension URL {
/Users/admin/builder/spi-builder-workspace/Sources/Tentacle/Client.swift:46:6: warning: capture of 'observer' with non-sendable type 'Signal<URL, any Error>.Observer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
44 |
45 | if let url = url {
46 | observer.send(value: url)
| `- warning: capture of 'observer' with non-sendable type 'Signal<URL, any Error>.Observer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
47 | observer.sendCompleted()
48 | } else if let error = error {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/ReactiveSwift/Sources/Signal.Observer.swift:12:21: note: class 'Observer' does not conform to the 'Sendable' protocol
10 | /// An Observer is a simple wrapper around a function which can receive Events
11 | /// (typically from a Signal).
12 | public final class Observer: ReactiveSwift.Observer<Value, Error> {
| `- note: class 'Observer' does not conform to the 'Sendable' protocol
13 | public typealias Action = (Event) -> Void
14 | private let _send: Action
/Users/admin/builder/spi-builder-workspace/.build/checkouts/ReactiveSwift/Sources/Flatten.swift:51:20: warning: static property 'concat' is not concurrency-safe because non-'Sendable' type 'FlattenStrategy' may have shared mutable state; this is an error in the Swift 6 language mode
8 |
9 | /// Describes how a stream of inner streams should be flattened into a stream of values.
10 | public struct FlattenStrategy {
| `- note: consider making struct 'FlattenStrategy' conform to the 'Sendable' protocol
11 | fileprivate enum Kind {
12 | case concurrent(limit: UInt)
:
49 | /// Any failure from the inner streams is propagated immediately to the flattened
50 | /// stream of values.
51 | public static let concat = FlattenStrategy(kind: .concurrent(limit: 1))
| |- warning: static property 'concat' is not concurrency-safe because non-'Sendable' type 'FlattenStrategy' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'concat' 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
52 |
53 | /// The stream of streams is merged with the given concurrency cap, so that any value
[85/85] Compiling Tentacle Comment.swift
/Users/admin/builder/spi-builder-workspace/Sources/Tentacle/Client.swift:85:14: warning: associated value 'apiError' of 'Sendable'-conforming enum 'Error' has non-sendable type 'Response'; this is an error in the Swift 6 language mode
83 |
84 | /// A status code, response, and error that was returned from the API.
85 | case apiError(Int, Response, GitHubError)
| `- warning: associated value 'apiError' of 'Sendable'-conforming enum 'Error' has non-sendable type 'Response'; this is an error in the Swift 6 language mode
86 |
87 | /// The requested object does not exist.
/Users/admin/builder/spi-builder-workspace/Sources/Tentacle/Response.swift:38:15: note: consider making struct 'Response' conform to the 'Sendable' protocol
36 |
37 | /// A response from the GitHub API.
38 | public struct Response: Hashable {
| `- note: consider making struct 'Response' conform to the 'Sendable' protocol
39 | /// The number of requests remaining in the current rate limit window, or nil if the server
40 | /// isn't rate-limited.
/Users/admin/builder/spi-builder-workspace/Sources/Tentacle/Client.swift:109:23: warning: static property 'userAgent' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
107 |
108 | /// The user-agent to use for API requests.
109 | public static var userAgent: String?
| |- warning: static property 'userAgent' 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 'userAgent' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'userAgent' 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
110 |
111 | /// The Server that the Client connects to.
/Users/admin/builder/spi-builder-workspace/Sources/Tentacle/Client.swift:43:5: warning: capture of 'handle' with non-sendable type '(any Disposable)?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
41 | let task = self.downloadTask(with: request) { (url, response, error) in
42 | // Avoid invoking cancel(), or the download may be deleted.
43 | handle?.dispose()
| `- warning: capture of 'handle' with non-sendable type '(any Disposable)?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
44 |
45 | if let url = url {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/ReactiveSwift/Sources/Disposable.swift:11:17: note: protocol 'Disposable' does not conform to the 'Sendable' protocol
9 | /// Represents something that can be “disposed”, usually associated with freeing
10 | /// resources or canceling work.
11 | public protocol Disposable: AnyObject {
| `- note: protocol 'Disposable' does not conform to the 'Sendable' protocol
12 | /// Whether this disposable has been disposed already.
13 | var isDisposed: Bool { get }
/Users/admin/builder/spi-builder-workspace/Sources/Tentacle/Client.swift:10:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'ReactiveSwift'
8 |
9 | import Foundation
10 | import ReactiveSwift
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'ReactiveSwift'
11 |
12 | extension URL {
/Users/admin/builder/spi-builder-workspace/Sources/Tentacle/Client.swift:46:6: warning: capture of 'observer' with non-sendable type 'Signal<URL, any Error>.Observer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
44 |
45 | if let url = url {
46 | observer.send(value: url)
| `- warning: capture of 'observer' with non-sendable type 'Signal<URL, any Error>.Observer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
47 | observer.sendCompleted()
48 | } else if let error = error {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/ReactiveSwift/Sources/Signal.Observer.swift:12:21: note: class 'Observer' does not conform to the 'Sendable' protocol
10 | /// An Observer is a simple wrapper around a function which can receive Events
11 | /// (typically from a Signal).
12 | public final class Observer: ReactiveSwift.Observer<Value, Error> {
| `- note: class 'Observer' does not conform to the 'Sendable' protocol
13 | public typealias Action = (Event) -> Void
14 | private let _send: Action
/Users/admin/builder/spi-builder-workspace/.build/checkouts/ReactiveSwift/Sources/Flatten.swift:51:20: warning: static property 'concat' is not concurrency-safe because non-'Sendable' type 'FlattenStrategy' may have shared mutable state; this is an error in the Swift 6 language mode
8 |
9 | /// Describes how a stream of inner streams should be flattened into a stream of values.
10 | public struct FlattenStrategy {
| `- note: consider making struct 'FlattenStrategy' conform to the 'Sendable' protocol
11 | fileprivate enum Kind {
12 | case concurrent(limit: UInt)
:
49 | /// Any failure from the inner streams is propagated immediately to the flattened
50 | /// stream of values.
51 | public static let concat = FlattenStrategy(kind: .concurrent(limit: 1))
| |- warning: static property 'concat' is not concurrency-safe because non-'Sendable' type 'FlattenStrategy' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'concat' 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
52 |
53 | /// The stream of streams is merged with the given concurrency cap, so that any value
Build complete! (42.92s)
Fetching https://github.com/ReactiveCocoa/ReactiveSwift.git
[1/52438] Fetching reactiveswift
Fetched https://github.com/ReactiveCocoa/ReactiveSwift.git from cache (3.38s)
Computing version for https://github.com/ReactiveCocoa/ReactiveSwift.git
Computed https://github.com/ReactiveCocoa/ReactiveSwift.git at 7.1.1 (0.72s)
Creating working copy for https://github.com/ReactiveCocoa/ReactiveSwift.git
Working copy of https://github.com/ReactiveCocoa/ReactiveSwift.git resolved at 7.1.1
warning: 'spi-builder-workspace': found 1 file(s) which are unhandled; explicitly declare them as resources or exclude from the target
/Users/admin/builder/spi-builder-workspace/Sources/Tentacle/Info.plist
Build complete.
{
"dependencies" : [
{
"identity" : "reactiveswift",
"requirement" : {
"range" : [
{
"lower_bound" : "7.1.1",
"upper_bound" : "8.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/ReactiveCocoa/ReactiveSwift.git"
}
],
"manifest_display_name" : "Tentacle",
"name" : "Tentacle",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
],
"products" : [
{
"name" : "Tentacle",
"targets" : [
"Tentacle"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"swift_languages_versions" : [
"5"
],
"targets" : [
{
"c99name" : "TentacleTests",
"module_type" : "SwiftTarget",
"name" : "TentacleTests",
"path" : "Tests/TentacleTests",
"resources" : [
{
"path" : "/Users/admin/builder/spi-builder-workspace/Tests/TentacleTests/Fixtures",
"rule" : {
"copy" : {
}
}
}
],
"sources" : [
"BranchTests.swift",
"ClientTests.swift",
"ColorTests.swift",
"CommentsTests.swift",
"ContentTests.swift",
"EndpointTests.swift",
"FileResponseTests.swift",
"FileTests.swift",
"Fixture.swift",
"GitHubErrorTests.swift",
"HTTPStub.swift",
"IssuesTests.swift",
"ReleaseTests.swift",
"RepositoryInfoTests.swift",
"RepositoryTests.swift",
"ResponseTests.swift",
"ServerTests.swift",
"TreeTests.swift",
"UserTests.swift"
],
"target_dependencies" : [
"Tentacle"
],
"type" : "test"
},
{
"c99name" : "Tentacle",
"module_type" : "SwiftTarget",
"name" : "Tentacle",
"path" : "Sources/Tentacle",
"product_dependencies" : [
"ReactiveSwift"
],
"product_memberships" : [
"Tentacle"
],
"sources" : [
"Author.swift",
"Availability.swift",
"Branch.swift",
"Client.swift",
"Color.swift",
"Comment.swift",
"Commit.swift",
"Content.swift",
"File.swift",
"FileResponse.swift",
"FoundationExtensions.swift",
"GitHubError.swift",
"Identifiable.swift",
"Issue.swift",
"JSONExtensions.swift",
"Label.swift",
"Milestone.swift",
"Organization.swift",
"PullRequest.swift",
"Release.swift",
"Repository.swift",
"RepositoryInfo.swift",
"Request.swift",
"ResourceType.swift",
"Response.swift",
"Server.swift",
"Sha.swift",
"Tree.swift",
"User.swift"
],
"type" : "library"
}
],
"tools_version" : "5.7.1"
}
Done.