Build Information
Successful build of CampusDualKit, reference main (88bae4
), with Swift 6.0 for macOS (SPM) on 3 Nov 2024 13:42:31 UTC.
Swift 6 data race errors: 2
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Build Log
========================================
RunAll
========================================
Builder version: 4.56.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/jonasrichardrichter/CampusDualKit.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/jonasrichardrichter/CampusDualKit
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at 88bae4d Create .spi.yml
Cloned https://github.com/jonasrichardrichter/CampusDualKit.git
Revision (git rev-parse @):
88bae4db285f847c2f37920bd8761eaa303c19e2
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/jonasrichardrichter/CampusDualKit.git at main
Fetching https://github.com/apple/swift-log.git
[1/3660] Fetching swift-log
Fetched https://github.com/apple/swift-log.git from cache (1.12s)
Computing version for https://github.com/apple/swift-log.git
Computed https://github.com/apple/swift-log.git at 1.4.2 (0.67s)
Creating working copy for https://github.com/apple/swift-log.git
Working copy of https://github.com/apple/swift-log.git resolved at 1.4.2
========================================
ResolveProductDependencies
========================================
Resolving dependencies ...
{
"identity": ".resolve-product-dependencies",
"name": "resolve-dependencies",
"url": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
"dependencies": [
{
"identity": "campusdualkit",
"name": "CampusDualKit",
"url": "https://github.com/jonasrichardrichter/CampusDualKit.git",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/CampusDualKit",
"dependencies": [
{
"identity": "swift-log",
"name": "swift-log",
"url": "https://github.com/apple/swift-log.git",
"version": "1.6.1",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/swift-log",
"dependencies": [
]
}
]
}
]
}
Fetching https://github.com/jonasrichardrichter/CampusDualKit.git
[1/201] Fetching campusdualkit
Fetched https://github.com/jonasrichardrichter/CampusDualKit.git from cache (0.69s)
Fetching https://github.com/apple/swift-log.git from cache
Fetched https://github.com/apple/swift-log.git from cache (0.47s)
Computing version for https://github.com/apple/swift-log.git
Computed https://github.com/apple/swift-log.git at 1.6.1 (0.51s)
Creating working copy for https://github.com/jonasrichardrichter/CampusDualKit.git
Working copy of https://github.com/jonasrichardrichter/CampusDualKit.git resolved at main (88bae4d)
Creating working copy for https://github.com/apple/swift-log.git
Working copy of https://github.com/apple/swift-log.git resolved at 1.6.1
warning: '.resolve-product-dependencies': dependency 'campusdualkit' is not used by any target
Found 1 product dependencies
- swift-log
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.0
Building package at path: $PWD
https://github.com/jonasrichardrichter/CampusDualKit.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun 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--7754E27361AE5C74.txt
[4/7] Emitting module Logging
[5/7] Compiling Logging Locks.swift
[6/7] Compiling Logging LogHandler.swift
[7/7] Compiling Logging Logging.swift
[8/15] Compiling CampusDualKit StudyDay.swift
/Users/admin/builder/spi-builder-workspace/Sources/CampusDualKit/ScheduleService/StudyDay.swift:26:23: warning: static property 'example' is not concurrency-safe because non-'Sendable' type 'StudyDay' may have shared mutable state; this is an error in the Swift 6 language mode
9 |
10 | /// A model representing a study day.
11 | public struct StudyDay: Codable, Hashable {
| `- note: consider making struct 'StudyDay' conform to the 'Sendable' protocol
12 |
13 | /// The initializer for the struct.
:
24 |
25 | /// Example StudyDay with an example lesson.
26 | public static let example = StudyDay(day: Date.init(timeIntervalSince1970: 1793055600), lessons: [Lesson.example])
| |- warning: static property 'example' is not concurrency-safe because non-'Sendable' type 'StudyDay' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'example' 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
27 | }
28 |
/Users/admin/builder/spi-builder-workspace/Sources/CampusDualKit/ScheduleService/Lesson.swift:50:23: warning: static property 'example' is not concurrency-safe because non-'Sendable' type 'Lesson' may have shared mutable state; this is an error in the Swift 6 language mode
9 |
10 | /// A model representing a lesson.
11 | public struct Lesson: Codable, Hashable {
| `- note: consider making struct 'Lesson' conform to the 'Sendable' protocol
12 |
13 | /// The initializer for the struct.
:
48 |
49 | /// An example lesson
50 | public static let example = Lesson(title: "Example lesson", start: Date.init(timeIntervalSince1970: 1793097900), end: Date.init(timeIntervalSince1970: 1793103300), description: "This is an example lesson", room: "1.202", instructor: "Prof. Dr. Example", remarks: "Group A")
| |- warning: static property 'example' is not concurrency-safe because non-'Sendable' type 'Lesson' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'example' 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
51 | }
52 |
[9/15] Compiling CampusDualKit ScheduleServiceError.swift
[10/15] Compiling CampusDualKit URLSession+scheduleServiceDataTask.swift
/Users/admin/builder/spi-builder-workspace/Sources/CampusDualKit/Extensions/URLSession+scheduleServiceDataTask.swift:20:17: warning: capture of 'completion' with non-sendable type '(Result<T, ScheduleServiceError>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
18 |
19 | guard error == nil else {
20 | completion(.failure(.network(error)))
| |- warning: capture of 'completion' with non-sendable type '(Result<T, ScheduleServiceError>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
21 | return
22 | }
[11/15] Compiling CampusDualKit ScheduleService.swift
/Users/admin/builder/spi-builder-workspace/Sources/CampusDualKit/ScheduleService/ScheduleService.swift:80:34: warning: sending 'service' risks causing data races; this is an error in the Swift 6 language mode
78 | continuation.resume(throwing: error)
79 | case .success(let service):
80 | continuation.resume(returning: service)
| |- warning: sending 'service' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'service' is passed as a 'sending' parameter; Uses in callee may race with later task-isolated uses
81 | }
82 | }
/Users/admin/builder/spi-builder-workspace/Sources/CampusDualKit/ScheduleService/ScheduleService.swift:130:30: warning: sending 'result' risks causing data races; this is an error in the Swift 6 language mode
128 | try await withCheckedThrowingContinuation() { continuation in
129 | self.studyDays(from: startDate, to: endDate) { result in
130 | continuation.resume(with: result)
| |- warning: sending 'result' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'result' is passed as a 'sending' parameter; Uses in callee may race with later task-isolated uses
131 | }
132 | }
[12/15] Compiling CampusDualKit Logger+CustomInit.swift
[13/15] Compiling CampusDualKit URL+CampusDual.swift
[14/15] Compiling CampusDualKit Lesson.swift
/Users/admin/builder/spi-builder-workspace/Sources/CampusDualKit/ScheduleService/Lesson.swift:50:23: warning: static property 'example' is not concurrency-safe because non-'Sendable' type 'Lesson' may have shared mutable state; this is an error in the Swift 6 language mode
9 |
10 | /// A model representing a lesson.
11 | public struct Lesson: Codable, Hashable {
| `- note: consider making struct 'Lesson' conform to the 'Sendable' protocol
12 |
13 | /// The initializer for the struct.
:
48 |
49 | /// An example lesson
50 | public static let example = Lesson(title: "Example lesson", start: Date.init(timeIntervalSince1970: 1793097900), end: Date.init(timeIntervalSince1970: 1793103300), description: "This is an example lesson", room: "1.202", instructor: "Prof. Dr. Example", remarks: "Group A")
| |- warning: static property 'example' is not concurrency-safe because non-'Sendable' type 'Lesson' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'example' 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
51 | }
52 |
[15/15] Emitting module CampusDualKit
/Users/admin/builder/spi-builder-workspace/Sources/CampusDualKit/ScheduleService/Lesson.swift:50:23: warning: static property 'example' is not concurrency-safe because non-'Sendable' type 'Lesson' may have shared mutable state; this is an error in the Swift 6 language mode
9 |
10 | /// A model representing a lesson.
11 | public struct Lesson: Codable, Hashable {
| `- note: consider making struct 'Lesson' conform to the 'Sendable' protocol
12 |
13 | /// The initializer for the struct.
:
48 |
49 | /// An example lesson
50 | public static let example = Lesson(title: "Example lesson", start: Date.init(timeIntervalSince1970: 1793097900), end: Date.init(timeIntervalSince1970: 1793103300), description: "This is an example lesson", room: "1.202", instructor: "Prof. Dr. Example", remarks: "Group A")
| |- warning: static property 'example' is not concurrency-safe because non-'Sendable' type 'Lesson' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'example' 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
51 | }
52 |
/Users/admin/builder/spi-builder-workspace/Sources/CampusDualKit/ScheduleService/StudyDay.swift:26:23: warning: static property 'example' is not concurrency-safe because non-'Sendable' type 'StudyDay' may have shared mutable state; this is an error in the Swift 6 language mode
9 |
10 | /// A model representing a study day.
11 | public struct StudyDay: Codable, Hashable {
| `- note: consider making struct 'StudyDay' conform to the 'Sendable' protocol
12 |
13 | /// The initializer for the struct.
:
24 |
25 | /// Example StudyDay with an example lesson.
26 | public static let example = StudyDay(day: Date.init(timeIntervalSince1970: 1793055600), lessons: [Lesson.example])
| |- warning: static property 'example' is not concurrency-safe because non-'Sendable' type 'StudyDay' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'example' 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
27 | }
28 |
Build complete! (10.11s)
Build complete.
{
"dependencies" : [
{
"identity" : "swift-log",
"requirement" : {
"range" : [
{
"lower_bound" : "1.4.2",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-log.git"
}
],
"manifest_display_name" : "CampusDualKit",
"name" : "CampusDualKit",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "14.0"
},
{
"name" : "macos",
"version" : "11.0"
}
],
"products" : [
{
"name" : "CampusDualKit",
"targets" : [
"CampusDualKit"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "CampusDualKit",
"module_type" : "SwiftTarget",
"name" : "CampusDualKit",
"path" : "Sources/CampusDualKit",
"product_dependencies" : [
"Logging"
],
"product_memberships" : [
"CampusDualKit"
],
"sources" : [
"Extensions/Logger+CustomInit.swift",
"Extensions/URL+CampusDual.swift",
"Extensions/URLSession+scheduleServiceDataTask.swift",
"ScheduleService/Lesson.swift",
"ScheduleService/ScheduleService.swift",
"ScheduleService/ScheduleServiceError.swift",
"ScheduleService/StudyDay.swift"
],
"type" : "library"
}
],
"tools_version" : "5.5"
}
✅ Doc result (pending) reported
========================================
GenerateDocs
========================================
Generating docs at path: $PWD/.docs/jonasrichardrichter/campusdualkit/main
Repository: jonasrichardrichter/CampusDualKit
Swift version used: 6.0
Target: CampusDualKit
Extracting symbol information for 'CampusDualKit'...
Finished extracting symbol information for 'CampusDualKit'. (3.21s)
Building documentation for 'CampusDualKit'...
warning: External name 'for' used to document parameter
--> Sources/CampusDualKit/ScheduleService/ScheduleService.swift:28:15-28:18
26 | ///
27 | /// - Parameters:
28 + /// - for: The username used for login.
| ╰─suggestion: Replace 'for' with 'username'
29 | /// - with: The hash used for authentication.
30 | /// - session: The URLSession to be used, default should be .shared
warning: External name 'with' used to document parameter
--> Sources/CampusDualKit/ScheduleService/ScheduleService.swift:29:15-29:19
27 | /// - Parameters:
28 | /// - for: The username used for login.
29 + /// - with: The hash used for authentication.
| ╰─suggestion: Replace 'with' with 'password'
30 | /// - session: The URLSession to be used, default should be .shared
31 | /// - completion: handler
warning: External name 'for' used to document parameter
--> Sources/CampusDualKit/ScheduleService/ScheduleService.swift:68:15-68:18
66 | ///
67 | /// - Parameters:
68 + /// - for: The username used for login.
| ╰─suggestion: Replace 'for' with 'username'
69 | /// - with: The hash used for authentication.
70 | /// - session: The URLSession to be used, default should be .shared
warning: External name 'with' used to document parameter
--> Sources/CampusDualKit/ScheduleService/ScheduleService.swift:69:15-69:19
67 | /// - Parameters:
68 | /// - for: The username used for login.
69 + /// - with: The hash used for authentication.
| ╰─suggestion: Replace 'with' with 'password'
70 | /// - session: The URLSession to be used, default should be .shared
71 | /// - Returns: An authenticated ScheduleService.
warning: External name 'from' used to document parameter
--> Sources/CampusDualKit/ScheduleService/ScheduleService.swift:91:15-91:19
89 | ///
90 | /// - Parameters:
91 + /// - from: The start date of the time period.
| ╰─suggestion: Replace 'from' with 'startDate'
92 | /// - to: The end date of the time period.
93 | /// - session: The URLSession to be used, default should be .shared
warning: External name 'to' used to document parameter
--> Sources/CampusDualKit/ScheduleService/ScheduleService.swift:92:15-92:17
90 | /// - Parameters:
91 | /// - from: The start date of the time period.
92 + /// - to: The end date of the time period.
| ╰─suggestion: Replace 'to' with 'endDate'
93 | /// - session: The URLSession to be used, default should be .shared
94 | /// - completion: handler
warning: External name 'from' used to document parameter
--> Sources/CampusDualKit/ScheduleService/ScheduleService.swift:122:15-122:19
120 | ///
121 | /// - Parameters:
122 + /// - from: The start date of the time period.
| ╰─suggestion: Replace 'from' with 'startDate'
123 | /// - to: The end date of the time period.
124 | /// - session: The URLSession to be used, default should be .shared
warning: External name 'to' used to document parameter
--> Sources/CampusDualKit/ScheduleService/ScheduleService.swift:123:15-123:17
121 | /// - Parameters:
122 | /// - from: The start date of the time period.
123 + /// - to: The end date of the time period.
| ╰─suggestion: Replace 'to' with 'endDate'
124 | /// - session: The URLSession to be used, default should be .shared
125 | /// - Returns: An array of StudyDay's in the given time period.Finished building documentation for 'CampusDualKit' (0.14s)
Generated documentation archive at:
/Users/admin/builder/spi-builder-workspace/.docs/jonasrichardrichter/campusdualkit/main
Fetching https://github.com/swiftlang/swift-docc-plugin
Updating https://github.com/apple/swift-log.git
Updated https://github.com/apple/swift-log.git (0.58s)
[1/2038] Fetching swift-docc-plugin
Fetched https://github.com/swiftlang/swift-docc-plugin from cache (1.23s)
Computing version for https://github.com/apple/swift-log.git
Computed https://github.com/apple/swift-log.git at 1.4.2 (0.64s)
Computing version for https://github.com/swiftlang/swift-docc-plugin
Computed https://github.com/swiftlang/swift-docc-plugin at 1.4.3 (0.62s)
Fetching https://github.com/swiftlang/swift-docc-symbolkit
[1/3153] Fetching swift-docc-symbolkit
Fetched https://github.com/swiftlang/swift-docc-symbolkit from cache (1.27s)
Computing version for https://github.com/swiftlang/swift-docc-symbolkit
Computed https://github.com/swiftlang/swift-docc-symbolkit at 1.0.0 (0.67s)
Creating working copy for https://github.com/swiftlang/swift-docc-plugin
Working copy of https://github.com/swiftlang/swift-docc-plugin resolved at 1.4.3
Creating working copy for https://github.com/swiftlang/swift-docc-symbolkit
Working copy of https://github.com/swiftlang/swift-docc-symbolkit resolved at 1.0.0
Building for debugging...
[0/8] Write sources
[3/8] Write snippet-extract-tool-entitlement.plist
[4/8] Write swift-version--7754E27361AE5C74.txt
[6/53] Compiling SymbolKit Mixin+Equals.swift
[7/53] Compiling SymbolKit Mixin+Hash.swift
[8/53] Compiling SymbolKit Mixin.swift
[9/53] Compiling SymbolKit LineList.swift
[10/53] Compiling SymbolKit Position.swift
[11/57] Compiling SymbolKit SemanticVersion.swift
[12/57] Compiling SymbolKit AccessControl.swift
[13/57] Compiling SymbolKit Availability.swift
[14/57] Compiling SymbolKit AvailabilityItem.swift
[15/57] Compiling SymbolKit Domain.swift
[16/57] Compiling SymbolKit DeclarationFragments.swift
[17/57] Compiling SymbolKit Fragment.swift
[18/57] Compiling SymbolKit FragmentKind.swift
[19/57] Compiling SymbolKit FunctionParameter.swift
[20/57] Compiling SymbolKit FunctionSignature.swift
[21/57] Compiling SymbolKit Names.swift
[22/57] Compiling SymbolKit SPI.swift
[23/57] Compiling SymbolKit Snippet.swift
[24/57] Compiling SymbolKit Extension.swift
[25/57] Compiling SymbolKit Identifier.swift
[26/57] Compiling SymbolKit KindIdentifier.swift
[27/57] Compiling SymbolKit Location.swift
[28/57] Compiling SymbolKit Mutability.swift
[29/57] Compiling SymbolKit SourceRange.swift
[30/57] Compiling SymbolKit Metadata.swift
[31/57] Compiling SymbolKit Module.swift
[32/57] Compiling SymbolKit OperatingSystem.swift
[33/57] Compiling SymbolKit Platform.swift
[34/57] Compiling SymbolKit GenericConstraint.swift
[35/57] Compiling SymbolKit GenericParameter.swift
[36/57] Compiling SymbolKit Generics.swift
[37/57] Compiling SymbolKit Namespace.swift
[38/57] Emitting module SymbolKit
[39/57] Compiling SymbolKit Symbol.swift
[40/57] Compiling SymbolKit SymbolKind.swift
[41/57] Compiling SymbolKit SymbolGraph.swift
[42/57] Compiling SymbolKit GraphCollector.swift
[43/57] Compiling SymbolKit Relationship.swift
[44/57] Compiling SymbolKit RelationshipKind.swift
[45/57] Compiling SymbolKit SourceOrigin.swift
[46/57] Compiling SymbolKit GenericConstraints.swift
[47/57] Compiling SymbolKit Swift.swift
[48/57] Compiling SymbolKit UnifiedSymbol+Encodable.swift
[49/57] Compiling SymbolKit UnifiedSymbol.swift
[50/57] Compiling SymbolKit UnifiedSymbolGraph+Encodable.swift
[51/57] Compiling SymbolKit UnifiedSymbolGraph.swift
[52/57] Emitting module Snippets
[53/57] Compiling Snippets SnippetParser.swift
[54/57] Compiling Snippets Snippet.swift
[55/61] Compiling snippet_extract URL+Status.swift
[56/61] Compiling snippet_extract SymbolGraph+Snippet.swift
[57/61] Emitting module snippet_extract
[58/61] Compiling snippet_extract SnippetBuildCommand.swift
[58/61] Write Objects.LinkFileList
[59/61] Linking snippet-extract-tool
[60/61] Applying snippet-extract-tool
Build of product 'snippet-extract' complete! (4.44s)
Building for debugging...
[0/1] Write swift-version--7754E27361AE5C74.txt
[2/5] Compiling Logging LogHandler.swift
[3/5] Compiling Logging Locks.swift
[4/5] Compiling Logging Logging.swift
[5/5] Emitting module Logging
[6/13] Emitting module CampusDualKit
[7/13] Compiling CampusDualKit URL+CampusDual.swift
[8/13] Compiling CampusDualKit StudyDay.swift
[9/13] Compiling CampusDualKit Logger+CustomInit.swift
[10/13] Compiling CampusDualKit URLSession+scheduleServiceDataTask.swift
[11/13] Compiling CampusDualKit ScheduleServiceError.swift
[12/13] Compiling CampusDualKit ScheduleService.swift
[13/13] Compiling CampusDualKit Lesson.swift
Build of target: 'CampusDualKit' complete! (1.08s)
132
2 /Users/admin/builder/spi-builder-workspace/.docs/jonasrichardrichter/campusdualkit/main
✅ Doc result (uploading) reported
========================================
SyncDocs
========================================
Doc archive source directory: $PWD/.docs/jonasrichardrichter/campusdualkit/main
File count: 132
Doc size: 2.0MB
Preparing doc bundle ...
Uploading prod-jonasrichardrichter-campusdualkit-main-99dcb967.zip to s3://spi-docs-inbox/prod-jonasrichardrichter-campusdualkit-main-99dcb967.zip
Copying... [16%]
Copying... [32%]
Copying... [49%]
Copying... [65%]
Copying... [81%]
Copying... [97%]
Copying... [100%]
Done.