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 DynuREST, reference main (de5d03), with Swift 6.0 for Linux on 4 Nov 2024 06:12:30 UTC.

Swift 6 data race errors: 5

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4606859-0":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete 2>&1

Build Log

========================================
RunAll
========================================
Builder version: 4.56.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/richardpiazza/DynuREST.git
Reference: main
Initialized empty Git repository in /host/spi-builder-workspace/.git/
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: 	git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: 	git branch -m <name>
From https://github.com/richardpiazza/DynuREST
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at de5d038 Equatable conformance on IPAddress (#6)
Cloned https://github.com/richardpiazza/DynuREST.git
Revision (git rev-parse @):
de5d038b426cb5c639a0edad1911ddbe6a291f2c
SUCCESS checkout https://github.com/richardpiazza/DynuREST.git at main
========================================
Build
========================================
Selected platform:         linux
Swift version:             6.0
Building package at path:  $PWD
https://github.com/richardpiazza/DynuREST.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-0":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete 2>&1
basic-6.0-latest: Pulling from finestructure/spi-images
Digest: sha256:47d26c99ca4f1ac0a332c85fd5b13ff4390e72115219984a57a68fe9d1063a05
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.0-latest
Fetching https://github.com/johnsundell/ShellOut.git
Fetching https://github.com/apple/swift-argument-parser.git
Fetching https://github.com/richardpiazza/SessionPlus.git
[1/413] Fetching sessionplus
[377/1373] Fetching sessionplus, shellout
Fetched https://github.com/johnsundell/ShellOut.git from cache (0.29s)
[1/12353] Fetching swift-argument-parser
Fetched https://github.com/richardpiazza/SessionPlus.git from cache (0.64s)
Fetched https://github.com/apple/swift-argument-parser.git from cache (0.65s)
Computing version for https://github.com/johnsundell/ShellOut.git
Computed https://github.com/johnsundell/ShellOut.git at 2.3.0 (2.10s)
Computing version for https://github.com/richardpiazza/SessionPlus.git
Computed https://github.com/richardpiazza/SessionPlus.git at 2.2.0 (0.51s)
Fetching https://github.com/richardpiazza/AsyncPlus.git
[1/124] Fetching asyncplus
Fetched https://github.com/richardpiazza/AsyncPlus.git from cache (0.19s)
Computing version for https://github.com/apple/swift-argument-parser.git
Computed https://github.com/apple/swift-argument-parser.git at 1.5.0 (0.46s)
Computing version for https://github.com/richardpiazza/AsyncPlus.git
Computed https://github.com/richardpiazza/AsyncPlus.git at 0.3.2 (0.44s)
Creating working copy for https://github.com/apple/swift-argument-parser.git
Working copy of https://github.com/apple/swift-argument-parser.git resolved at 1.5.0
Creating working copy for https://github.com/richardpiazza/SessionPlus.git
Working copy of https://github.com/richardpiazza/SessionPlus.git resolved at 2.2.0
Creating working copy for https://github.com/johnsundell/ShellOut.git
Working copy of https://github.com/johnsundell/ShellOut.git resolved at 2.3.0
Creating working copy for https://github.com/richardpiazza/AsyncPlus.git
Working copy of https://github.com/richardpiazza/AsyncPlus.git resolved at 0.3.2
[1/1] Compiling plugin GenerateManual
Building for debugging...
[1/20] Write sources
[9/20] Write swift-version-24593BA9C3E375BF.txt
[11/31] Compiling ArgumentParserToolInfo ToolInfo.swift
[12/31] Emitting module ArgumentParserToolInfo
[13/32] Wrapping AST for ArgumentParserToolInfo for debugging
[15/70] Emitting module ArgumentParser
[16/75] Compiling ArgumentParser BashCompletionsGenerator.swift
[17/75] Compiling ArgumentParser CompletionsGenerator.swift
[18/75] Compiling ArgumentParser FishCompletionsGenerator.swift
[19/75] Compiling ArgumentParser ZshCompletionsGenerator.swift
[20/75] Compiling ArgumentParser Argument.swift
[21/75] Compiling ArgumentParser ArgumentHelp.swift
[22/75] Compiling ArgumentParser CollectionExtensions.swift
[23/75] Compiling ArgumentParser Platform.swift
[24/75] Compiling ArgumentParser SequenceExtensions.swift
[25/75] Compiling ArgumentParser StringExtensions.swift
[26/75] Compiling ArgumentParser Tree.swift
[27/75] Emitting module ShellOut
[28/75] Compiling ShellOut ShellOut.swift
[29/76] Compiling AsyncPlus PassthroughAsyncThrowingSubject.swift
[30/76] Compiling AsyncPlus PassthroughAsyncThrowingSequence.swift
[32/76] Compiling AsyncPlus PassthroughAsyncSequence.swift
[33/76] Compiling AsyncPlus PassthroughAsyncSubject.swift
[34/76] Compiling AsyncPlus CurrentValueAsyncSubject.swift
[35/76] Emitting module AsyncPlus
[36/76] Compiling AsyncPlus CurrentValueAsyncThrowingSubject.swift
[38/77] Compiling ArgumentParser DumpHelpGenerator.swift
[39/77] Compiling ArgumentParser HelpCommand.swift
[40/77] Compiling ArgumentParser HelpGenerator.swift
[41/77] Compiling ArgumentParser MessageInfo.swift
[42/77] Compiling ArgumentParser UsageGenerator.swift
[43/77] Compiling ArgumentParser Name.swift
[44/77] Compiling ArgumentParser Parsed.swift
[45/77] Compiling ArgumentParser ParsedValues.swift
[46/77] Compiling ArgumentParser ParserError.swift
[47/77] Compiling ArgumentParser SplitArguments.swift
[48/77] Compiling ArgumentParser ExpressibleByArgument.swift
[49/77] Compiling ArgumentParser ParsableArguments.swift
[50/77] Compiling ArgumentParser ParsableArgumentsValidation.swift
[51/77] Compiling ArgumentParser ParsableCommand.swift
[52/77] Compiling ArgumentParser ArgumentDecoder.swift
[53/77] Compiling ArgumentParser ArgumentVisibility.swift
[54/77] Compiling ArgumentParser CompletionKind.swift
[55/77] Compiling ArgumentParser Errors.swift
[56/77] Compiling ArgumentParser Flag.swift
[57/77] Compiling ArgumentParser NameSpecification.swift
[58/77] Compiling ArgumentParser Option.swift
[59/77] Compiling ArgumentParser OptionGroup.swift
[60/77] Compiling ArgumentParser AsyncParsableCommand.swift
[61/77] Compiling ArgumentParser CommandConfiguration.swift
[62/77] Compiling ArgumentParser CommandGroup.swift
[63/77] Compiling ArgumentParser EnumerableFlag.swift
[64/77] Compiling ArgumentParser ArgumentDefinition.swift
[65/77] Compiling ArgumentParser ArgumentSet.swift
[66/77] Compiling ArgumentParser CommandParser.swift
[67/77] Compiling ArgumentParser InputKey.swift
[68/77] Compiling ArgumentParser InputOrigin.swift
[69/78] Wrapping AST for ShellOut for debugging
[70/78] Wrapping AST for AsyncPlus for debugging
[71/78] Wrapping AST for ArgumentParser for debugging
[73/111] Emitting module SessionPlus
[74/115] Compiling SessionPlus Headers.swift
[75/115] Compiling SessionPlus MIMEType.swift
[76/115] Compiling SessionPlus Method.swift
[77/115] Compiling SessionPlus Request.swift
[78/115] Compiling SessionPlus Authorization.swift
[79/115] Compiling SessionPlus Client+Decoding.swift
[80/115] Compiling SessionPlus Client.swift
[81/115] Compiling SessionPlus Header.swift
[82/115] Compiling SessionPlus Patch.swift
[83/115] Compiling SessionPlus Post.swift
[84/115] Compiling SessionPlus Put.swift
[85/115] Compiling SessionPlus Address.swift
[86/115] Compiling SessionPlus Downloader.swift
[87/115] Compiling SessionPlus HTTP.swift
[88/115] Compiling SessionPlus HTTPClient.swift
[89/115] Compiling SessionPlus HTTPCodable.swift
[90/115] Compiling SessionPlus HTTPInjectable.swift
[91/115] Compiling SessionPlus WebAPI.swift
[92/115] Compiling SessionPlus URLCache+SessionPlus.swift
[93/115] Compiling SessionPlus URLQueryItem+SessionPlus.swift
[94/115] Compiling SessionPlus URLRequest+SessionPlus.swift
[95/115] Compiling SessionPlus URLResponse+SessionPlus.swift
[96/115] Compiling SessionPlus AnyResponse.swift
[97/115] Compiling SessionPlus BaseURLSessionClient.swift
[98/115] Compiling SessionPlus Delete.swift
[99/115] Compiling SessionPlus Get.swift
[100/115] Compiling SessionPlus PNGImageFormDataRequest.swift
[101/115] Compiling SessionPlus URLSessionConfiguration+SessionPlus.swift
[102/115] Compiling SessionPlus URLSessionDelegate+SessionPlus.swift
[103/115] Compiling SessionPlus AbsoluteURLSessionClient.swift
[104/115] Compiling SessionPlus AbsoluteURLWebSocket.swift
[105/115] Compiling SessionPlus AnyRequest.swift
[106/115] Compiling SessionPlus Response.swift
[107/115] Compiling SessionPlus Socket.swift
[108/115] Compiling SessionPlus StatusCode.swift
[109/115] Compiling SessionPlus WebSocket.swift
[110/116] Wrapping AST for SessionPlus for debugging
[112/118] Compiling SessionPlusEmulation EmulatedClient.swift
[113/118] Emitting module SessionPlusEmulation
[114/119] Wrapping AST for SessionPlusEmulation for debugging
[116/129] Compiling DynuREST ResponseCode.swift
[117/130] Compiling DynuREST IPAddress.swift
[118/130] Compiling DynuREST IPifyClient.swift
/host/spi-builder-workspace/Sources/DynuREST/IPifyClient.swift:16:23: warning: static property 'shared' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     }
15 |
16 |     public static var shared: IPIfyClient = .init()
   |                       |- warning: static property 'shared' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'shared' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: annotate 'shared' 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
17 |
18 |     private init() {
[119/130] Compiling DynuREST IPSource.swift
[120/130] Compiling DynuREST IFConfigCommand.swift
/host/spi-builder-workspace/Sources/DynuREST/IFConfigCommand.swift:12:23: warning: static property 'shared' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
10 | public class IFConfigCommand: IPSource {
11 |
12 |     public static var shared: IFConfigCommand = .init()
   |                       |- warning: static property 'shared' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'shared' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: annotate 'shared' 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 |
14 |     private init() {
[121/130] Compiling DynuREST DynuRESTError.swift
/host/spi-builder-workspace/Sources/DynuREST/IFConfigClient.swift:44:23: warning: static property 'shared' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
42 |     }
43 |
44 |     public static var shared: IFConfigClient = .init()
   |                       |- warning: static property 'shared' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'shared' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: annotate 'shared' 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
45 |
46 |     private init() {
[122/130] Compiling DynuREST IFConfigClient.swift
/host/spi-builder-workspace/Sources/DynuREST/IFConfigClient.swift:44:23: warning: static property 'shared' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
42 |     }
43 |
44 |     public static var shared: IFConfigClient = .init()
   |                       |- warning: static property 'shared' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'shared' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: annotate 'shared' 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
45 |
46 |     private init() {
[123/130] Compiling DynuREST URL+DynuREST.swift
[124/130] Emitting module DynuREST
/host/spi-builder-workspace/Sources/DynuREST/DynuIPUpdater.swift:9:23: warning: static property 'shared' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 7 | public final class DynuIPUpdater: BaseURLSessionClient, DynuClient {
 8 |
 9 |     public static var shared: DynuIPUpdater = .init()
   |                       |- warning: static property 'shared' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'shared' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: annotate 'shared' 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
10 |
11 |     /// Default sources for `IPAddress` lookup.
/host/spi-builder-workspace/Sources/DynuREST/DynuIPUpdater.swift:14:23: warning: static property 'sources' is not concurrency-safe because non-'Sendable' type '[any IPSource]' may have shared mutable state; this is an error in the Swift 6 language mode
12 |     ///
13 |     /// This order prefers IPv4 before IPv6
14 |     public static let sources: [IPSource] = [
   |                       |- warning: static property 'sources' is not concurrency-safe because non-'Sendable' type '[any IPSource]' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'sources' 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
15 |         IPIfyClient.shared,
16 |         IFConfigClient.shared,
/host/spi-builder-workspace/Sources/DynuREST/IPSource.swift:3:17: note: protocol 'IPSource' does not conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public protocol IPSource {
  |                 `- note: protocol 'IPSource' does not conform to the 'Sendable' protocol
4 |     func ipAddress() async throws -> IPAddress
5 | }
/host/spi-builder-workspace/Sources/DynuREST/IPifyClient.swift:16:23: warning: static property 'shared' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     }
15 |
16 |     public static var shared: IPIfyClient = .init()
   |                       |- warning: static property 'shared' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'shared' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: annotate 'shared' 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
17 |
18 |     private init() {
/host/spi-builder-workspace/Sources/DynuREST/IFConfigClient.swift:44:23: warning: static property 'shared' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
42 |     }
43 |
44 |     public static var shared: IFConfigClient = .init()
   |                       |- warning: static property 'shared' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'shared' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: annotate 'shared' 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
45 |
46 |     private init() {
/host/spi-builder-workspace/Sources/DynuREST/IFConfigCommand.swift:12:23: warning: static property 'shared' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
10 | public class IFConfigCommand: IPSource {
11 |
12 |     public static var shared: IFConfigCommand = .init()
   |                       |- warning: static property 'shared' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'shared' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: annotate 'shared' 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 |
14 |     private init() {
[125/130] Compiling DynuREST DynuClient.swift
/host/spi-builder-workspace/Sources/DynuREST/DynuIPUpdater.swift:9:23: warning: static property 'shared' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 7 | public final class DynuIPUpdater: BaseURLSessionClient, DynuClient {
 8 |
 9 |     public static var shared: DynuIPUpdater = .init()
   |                       |- warning: static property 'shared' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'shared' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: annotate 'shared' 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
10 |
11 |     /// Default sources for `IPAddress` lookup.
/host/spi-builder-workspace/Sources/DynuREST/DynuIPUpdater.swift:14:23: warning: static property 'sources' is not concurrency-safe because non-'Sendable' type '[any IPSource]' may have shared mutable state; this is an error in the Swift 6 language mode
12 |     ///
13 |     /// This order prefers IPv4 before IPv6
14 |     public static let sources: [IPSource] = [
   |                       |- warning: static property 'sources' is not concurrency-safe because non-'Sendable' type '[any IPSource]' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'sources' 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
15 |         IPIfyClient.shared,
16 |         IFConfigClient.shared,
/host/spi-builder-workspace/Sources/DynuREST/IPSource.swift:3:17: note: protocol 'IPSource' does not conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public protocol IPSource {
  |                 `- note: protocol 'IPSource' does not conform to the 'Sendable' protocol
4 |     func ipAddress() async throws -> IPAddress
5 | }
/host/spi-builder-workspace/Sources/DynuREST/IPifyClient.swift:16:23: warning: static property 'shared' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     }
15 |
16 |     public static var shared: IPIfyClient = .init()
   |                       |- warning: static property 'shared' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'shared' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: annotate 'shared' 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
17 |
18 |     private init() {
/host/spi-builder-workspace/Sources/DynuREST/IFConfigClient.swift:44:23: warning: static property 'shared' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
42 |     }
43 |
44 |     public static var shared: IFConfigClient = .init()
   |                       |- warning: static property 'shared' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'shared' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: annotate 'shared' 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
45 |
46 |     private init() {
/host/spi-builder-workspace/Sources/DynuREST/IFConfigCommand.swift:12:23: warning: static property 'shared' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
10 | public class IFConfigCommand: IPSource {
11 |
12 |     public static var shared: IFConfigCommand = .init()
   |                       |- warning: static property 'shared' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'shared' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: annotate 'shared' 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 |
14 |     private init() {
[126/130] Compiling DynuREST DynuIPUpdater.swift
/host/spi-builder-workspace/Sources/DynuREST/DynuIPUpdater.swift:9:23: warning: static property 'shared' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 7 | public final class DynuIPUpdater: BaseURLSessionClient, DynuClient {
 8 |
 9 |     public static var shared: DynuIPUpdater = .init()
   |                       |- warning: static property 'shared' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'shared' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: annotate 'shared' 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
10 |
11 |     /// Default sources for `IPAddress` lookup.
/host/spi-builder-workspace/Sources/DynuREST/DynuIPUpdater.swift:14:23: warning: static property 'sources' is not concurrency-safe because non-'Sendable' type '[any IPSource]' may have shared mutable state; this is an error in the Swift 6 language mode
12 |     ///
13 |     /// This order prefers IPv4 before IPv6
14 |     public static let sources: [IPSource] = [
   |                       |- warning: static property 'sources' is not concurrency-safe because non-'Sendable' type '[any IPSource]' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'sources' 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
15 |         IPIfyClient.shared,
16 |         IFConfigClient.shared,
/host/spi-builder-workspace/Sources/DynuREST/IPSource.swift:3:17: note: protocol 'IPSource' does not conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public protocol IPSource {
  |                 `- note: protocol 'IPSource' does not conform to the 'Sendable' protocol
4 |     func ipAddress() async throws -> IPAddress
5 | }
/host/spi-builder-workspace/Sources/DynuREST/IPifyClient.swift:16:23: warning: static property 'shared' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     }
15 |
16 |     public static var shared: IPIfyClient = .init()
   |                       |- warning: static property 'shared' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'shared' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: annotate 'shared' 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
17 |
18 |     private init() {
/host/spi-builder-workspace/Sources/DynuREST/IFConfigClient.swift:44:23: warning: static property 'shared' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
42 |     }
43 |
44 |     public static var shared: IFConfigClient = .init()
   |                       |- warning: static property 'shared' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'shared' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: annotate 'shared' 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
45 |
46 |     private init() {
/host/spi-builder-workspace/Sources/DynuREST/IFConfigCommand.swift:12:23: warning: static property 'shared' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
10 | public class IFConfigCommand: IPSource {
11 |
12 |     public static var shared: IFConfigCommand = .init()
   |                       |- warning: static property 'shared' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'shared' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: annotate 'shared' 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 |
14 |     private init() {
[127/131] Wrapping AST for DynuREST for debugging
[129/135] Compiling cli IPCommand.swift
/host/spi-builder-workspace/Sources/cli/IPCommand.swift:7:9: warning: 'init(commandName:abstract:usage:discussion:version:shouldDisplay:subcommands:defaultSubcommand:helpNames:)' is deprecated: Use the memberwise initializer with the aliases parameter.
 5 |
 6 |     static var configuration: CommandConfiguration {
 7 |         CommandConfiguration(
   |         `- warning: 'init(commandName:abstract:usage:discussion:version:shouldDisplay:subcommands:defaultSubcommand:helpNames:)' is deprecated: Use the memberwise initializer with the aliases parameter.
 8 |             commandName: "ip",
 9 |             abstract: "Query sources for IP information",
/host/spi-builder-workspace/Sources/cli/IPCommand.swift:38:49: warning: reference to class property 'shared' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
36 |         switch source {
37 |         case .ipifyApi:
38 |             let address = try await IPIfyClient.shared.ipAddress()
   |                                                 `- warning: reference to class property 'shared' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
39 |             print(address.description)
40 |         case .ifconfigApi:
/host/spi-builder-workspace/Sources/DynuREST/IPifyClient.swift:16:23: note: class property declared here
14 |     }
15 |
16 |     public static var shared: IPIfyClient = .init()
   |                       `- note: class property declared here
17 |
18 |     private init() {
/host/spi-builder-workspace/Sources/cli/IPCommand.swift:41:52: warning: reference to class property 'shared' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
39 |             print(address.description)
40 |         case .ifconfigApi:
41 |             let address = try await IFConfigClient.shared.ipAddress()
   |                                                    `- warning: reference to class property 'shared' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
42 |             print(address.description)
43 |         case .ifconfigCommand:
/host/spi-builder-workspace/Sources/DynuREST/IFConfigClient.swift:44:23: note: class property declared here
42 |     }
43 |
44 |     public static var shared: IFConfigClient = .init()
   |                       `- note: class property declared here
45 |
46 |     private init() {
/host/spi-builder-workspace/Sources/cli/IPCommand.swift:44:53: warning: reference to class property 'shared' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
42 |             print(address.description)
43 |         case .ifconfigCommand:
44 |             let address = try await IFConfigCommand.shared.ipAddress()
   |                                                     `- warning: reference to class property 'shared' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
45 |             print(address.description)
46 |         }
/host/spi-builder-workspace/Sources/DynuREST/IFConfigCommand.swift:12:23: note: class property declared here
10 | public class IFConfigCommand: IPSource {
11 |
12 |     public static var shared: IFConfigCommand = .init()
   |                       `- note: class property declared here
13 |
14 |     private init() {
[130/135] Emitting module cli
[131/135] Compiling cli MainCommand.swift
/host/spi-builder-workspace/Sources/cli/MainCommand.swift:6:9: warning: 'init(commandName:abstract:usage:discussion:version:shouldDisplay:subcommands:defaultSubcommand:helpNames:)' is deprecated: Use the memberwise initializer with the aliases parameter.
 4 | @main struct MainCommand: AsyncParsableCommand {
 5 |     static var configuration: CommandConfiguration {
 6 |         CommandConfiguration(
   |         `- warning: 'init(commandName:abstract:usage:discussion:version:shouldDisplay:subcommands:defaultSubcommand:helpNames:)' is deprecated: Use the memberwise initializer with the aliases parameter.
 7 |             commandName: "dynu",
 8 |             abstract: "CLI to the DynuREST swift package.",
[132/135] Compiling cli UpdateCommand.swift
/host/spi-builder-workspace/Sources/cli/UpdateCommand.swift:8:9: warning: 'init(commandName:abstract:usage:discussion:version:shouldDisplay:subcommands:defaultSubcommand:helpNames:)' is deprecated: Use the memberwise initializer with the aliases parameter.
 6 |
 7 |     static var configuration: CommandConfiguration {
 8 |         CommandConfiguration(
   |         `- warning: 'init(commandName:abstract:usage:discussion:version:shouldDisplay:subcommands:defaultSubcommand:helpNames:)' is deprecated: Use the memberwise initializer with the aliases parameter.
 9 |             commandName: "update",
10 |             abstract: "Perform an IP update against the Dynu.com API",
/host/spi-builder-workspace/Sources/cli/UpdateCommand.swift:46:45: warning: reference to class property 'shared' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
44 |         let authorization = Authorization.basic(username: username, password: password)
45 |
46 |         let addresses = await DynuIPUpdater.shared.requestIP(preferIPv6: v6)
   |                                             `- warning: reference to class property 'shared' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
47 |         guard let address = addresses.first else {
48 |             throw ValidationError("Failed to retrieve IP Address")
/host/spi-builder-workspace/Sources/DynuREST/DynuIPUpdater.swift:9:23: note: class property declared here
 7 | public final class DynuIPUpdater: BaseURLSessionClient, DynuClient {
 8 |
 9 |     public static var shared: DynuIPUpdater = .init()
   |                       `- note: class property declared here
10 |
11 |     /// Default sources for `IPAddress` lookup.
/host/spi-builder-workspace/Sources/cli/UpdateCommand.swift:51:52: warning: reference to class property 'shared' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
49 |         }
50 |
51 |         let responseCode = try await DynuIPUpdater.shared.updateAddress(
   |                                                    `- warning: reference to class property 'shared' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
52 |             address,
53 |             using: authorization,
/host/spi-builder-workspace/Sources/DynuREST/DynuIPUpdater.swift:9:23: note: class property declared here
 7 | public final class DynuIPUpdater: BaseURLSessionClient, DynuClient {
 8 |
 9 |     public static var shared: DynuIPUpdater = .init()
   |                       `- note: class property declared here
10 |
11 |     /// Default sources for `IPAddress` lookup.
[133/136] Wrapping AST for cli for debugging
[134/136] Write Objects.LinkFileList
[135/136] Linking dynu
Build complete! (26.88s)
Build complete.
{
  "dependencies" : [
    {
      "identity" : "sessionplus",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "2.2.0",
            "upper_bound" : "3.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/richardpiazza/SessionPlus.git"
    },
    {
      "identity" : "swift-argument-parser",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.2.2",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-argument-parser.git"
    },
    {
      "identity" : "shellout",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "2.3.0",
            "upper_bound" : "3.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/johnsundell/ShellOut.git"
    }
  ],
  "manifest_display_name" : "DynuREST",
  "name" : "DynuREST",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "12.0"
    },
    {
      "name" : "ios",
      "version" : "15.0"
    },
    {
      "name" : "tvos",
      "version" : "15.0"
    },
    {
      "name" : "watchos",
      "version" : "8.0"
    }
  ],
  "products" : [
    {
      "name" : "DynuREST",
      "targets" : [
        "DynuREST"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "dynu",
      "targets" : [
        "cli"
      ],
      "type" : {
        "executable" : null
      }
    }
  ],
  "swift_languages_versions" : [
    "5"
  ],
  "targets" : [
    {
      "c99name" : "cli",
      "module_type" : "SwiftTarget",
      "name" : "cli",
      "path" : "Sources/cli",
      "product_dependencies" : [
        "ArgumentParser"
      ],
      "product_memberships" : [
        "dynu"
      ],
      "sources" : [
        "IPCommand.swift",
        "MainCommand.swift",
        "UpdateCommand.swift"
      ],
      "target_dependencies" : [
        "DynuREST"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "DynuRESTTests",
      "module_type" : "SwiftTarget",
      "name" : "DynuRESTTests",
      "path" : "Tests/DynuRESTTests",
      "sources" : [
        "DynuAPITests.swift",
        "IPAddressTests.swift"
      ],
      "target_dependencies" : [
        "DynuREST"
      ],
      "type" : "test"
    },
    {
      "c99name" : "DynuREST",
      "module_type" : "SwiftTarget",
      "name" : "DynuREST",
      "path" : "Sources/DynuREST",
      "product_dependencies" : [
        "SessionPlus",
        "ShellOut"
      ],
      "product_memberships" : [
        "DynuREST",
        "dynu"
      ],
      "sources" : [
        "DynuClient.swift",
        "DynuIPUpdater.swift",
        "DynuRESTError.swift",
        "IFConfigClient.swift",
        "IFConfigCommand.swift",
        "IPAddress.swift",
        "IPSource.swift",
        "IPifyClient.swift",
        "ResponseCode.swift",
        "URL+DynuREST.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.5"
}
basic-6.0-latest: Pulling from finestructure/spi-images
Digest: sha256:47d26c99ca4f1ac0a332c85fd5b13ff4390e72115219984a57a68fe9d1063a05
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.0-latest
Done.