This is a staging environment. For live and up-to-date package information, visit swiftpackageindex.com.

The Swift Package Index logo.Swift Package Index

Track the adoption of Swift 6 strict concurrency checks for data race safety. How many packages are Ready for Swift 6?

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.
This is a staging environment. For live and up-to-date package information, visit swiftpackageindex.com.