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

Failed to build CampusDualKit with Swift 6.0 for Linux.

Build Command

bash -c docker run --rm -v "checkouts-4609320-0":/host -w "$workDir" 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.40.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/jonasrichardrichter/CampusDualKit.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/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: $workDir/.spi.yml
SUCCESS checkout https://github.com/jonasrichardrichter/CampusDualKit.git at main
========================================
Build
========================================
Selected platform:         linux
Swift version:             6.0
Building package at path:  $workDir
https://github.com/jonasrichardrichter/CampusDualKit.git
Running build ...
bash -c docker run --rm -v "checkouts-4609320-0":/host -w "$workDir" 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
Fetching https://github.com/apple/swift-log.git
[1/3361] Fetching swift-log
Fetched https://github.com/apple/swift-log.git from cache (0.38s)
Computing version for https://github.com/apple/swift-log.git
Computed https://github.com/apple/swift-log.git at 1.4.2 (0.52s)
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
Building for debugging...
[0/3] Write sources
[2/3] Write swift-version-24593BA9C3E375BF.txt
[4/7] Emitting module Logging
[5/7] Compiling Logging LogHandler.swift
[6/7] Compiling Logging Locks.swift
[7/7] Compiling Logging Logging.swift
[9/16] Compiling CampusDualKit Lesson.swift
/host/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 |
[10/16] Compiling CampusDualKit URLSession+scheduleServiceDataTask.swift
/host/spi-builder-workspace/Sources/CampusDualKit/Extensions/URLSession+scheduleServiceDataTask.swift:10:10: error: non-nominal type 'URLSession' (aka 'AnyObject') cannot be extended
 8 | import Foundation
 9 |
10 | internal extension URLSession {
   |          `- error: non-nominal type 'URLSession' (aka 'AnyObject') cannot be extended
11 |
12 |     func scheduleServiceDataTask<T: Decodable>(request: URLRequest, session: URLSession, completion: @escaping (Result<T, ScheduleServiceError>) -> Void) {
/host/spi-builder-workspace/Sources/CampusDualKit/Extensions/URLSession+scheduleServiceDataTask.swift:12:57: error: cannot find type 'URLRequest' in scope
10 | internal extension URLSession {
11 |
12 |     func scheduleServiceDataTask<T: Decodable>(request: URLRequest, session: URLSession, completion: @escaping (Result<T, ScheduleServiceError>) -> Void) {
   |                                                         `- error: cannot find type 'URLRequest' in scope
13 |
14 |         var request = request
[11/16] Compiling CampusDualKit StudyDay.swift
/host/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 |
/host/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 |
[12/16] Compiling CampusDualKit ScheduleServiceError.swift
[13/16] Compiling CampusDualKit ScheduleService.swift
/host/spi-builder-workspace/Sources/CampusDualKit/ScheduleService/ScheduleService.swift:32:84: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 30 |     ///     - session: The URLSession to be used, default should be .shared
 31 |     ///     - completion: handler
 32 |     public static func login(for username: String, with password: String, session: URLSession = .shared, completion: @escaping (Result<ScheduleService, ScheduleServiceError>) -> Void) {
    |                                                                                    `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 33 |
 34 |         if username.isEmpty {
Foundation.URLSession:2:18: note: 'URLSession' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLSession = AnyObject
  |                  `- note: 'URLSession' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/CampusDualKit/ScheduleService/ScheduleService.swift:32:98: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
 30 |     ///     - session: The URLSession to be used, default should be .shared
 31 |     ///     - completion: handler
 32 |     public static func login(for username: String, with password: String, session: URLSession = .shared, completion: @escaping (Result<ScheduleService, ScheduleServiceError>) -> Void) {
    |                                                                                                  `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
 33 |
 34 |         if username.isEmpty {
/host/spi-builder-workspace/Sources/CampusDualKit/ScheduleService/ScheduleService.swift:73:84: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 71 |     /// - Returns: An authenticated ScheduleService.
 72 |     @available(iOS 15.0, macOS 12.0, *)
 73 |     public static func login(for username: String, with password: String, session: URLSession = .shared) async throws -> ScheduleService {
    |                                                                                    `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 74 |         try await withCheckedThrowingContinuation() { continuation in
 75 |             self.login(for: username, with: password, session: session) { result in
Foundation.URLSession:2:18: note: 'URLSession' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLSession = AnyObject
  |                  `- note: 'URLSession' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/CampusDualKit/ScheduleService/ScheduleService.swift:73:98: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
 71 |     /// - Returns: An authenticated ScheduleService.
 72 |     @available(iOS 15.0, macOS 12.0, *)
 73 |     public static func login(for username: String, with password: String, session: URLSession = .shared) async throws -> ScheduleService {
    |                                                                                                  `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
 74 |         try await withCheckedThrowingContinuation() { continuation in
 75 |             self.login(for: username, with: password, session: session) { result in
/host/spi-builder-workspace/Sources/CampusDualKit/ScheduleService/ScheduleService.swift:95:76: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 93 |     ///     - session: The URLSession to be used, default should be .shared
 94 |     ///     - completion: handler
 95 |     public func studyDays(from startDate: Date, to endDate: Date, session: URLSession = .shared, completion: @escaping (Result<[StudyDay], ScheduleServiceError>) -> Void) {
    |                                                                            `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 96 |
 97 |         guard let url = URL(string: "?userid=\(self.username)&hash=\(self.hash)&start=\(startDate.timeIntervalSince1970)&end=\(endDate.timeIntervalSince1970)", relativeTo: URL.CampusDual.schedule) else {
Foundation.URLSession:2:18: note: 'URLSession' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLSession = AnyObject
  |                  `- note: 'URLSession' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/CampusDualKit/ScheduleService/ScheduleService.swift:95:90: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
 93 |     ///     - session: The URLSession to be used, default should be .shared
 94 |     ///     - completion: handler
 95 |     public func studyDays(from startDate: Date, to endDate: Date, session: URLSession = .shared, completion: @escaping (Result<[StudyDay], ScheduleServiceError>) -> Void) {
    |                                                                                          `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
 96 |
 97 |         guard let url = URL(string: "?userid=\(self.username)&hash=\(self.hash)&start=\(startDate.timeIntervalSince1970)&end=\(endDate.timeIntervalSince1970)", relativeTo: URL.CampusDual.schedule) else {
/host/spi-builder-workspace/Sources/CampusDualKit/ScheduleService/ScheduleService.swift:127:76: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
125 |     /// - Returns: An array of StudyDay's in the given time period.
126 |     @available(iOS 15.0, macOS 12.0, *)
127 |     public func studyDays(from startDate: Date, to endDate: Date, session: URLSession) async throws -> [StudyDay] {
    |                                                                            `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
128 |         try await withCheckedThrowingContinuation() { continuation in
129 |             self.studyDays(from: startDate, to: endDate) { result in
Foundation.URLSession:2:18: note: 'URLSession' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLSession = AnyObject
  |                  `- note: 'URLSession' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/CampusDualKit/ScheduleService/ScheduleService.swift:51:23: error: cannot find 'URLRequest' in scope
 49 |         }
 50 |
 51 |         let request = URLRequest(url: url)
    |                       `- error: cannot find 'URLRequest' in scope
 52 |
 53 |         session.scheduleServiceDataTask(request: request, session: session) { (result: Result<Int, ScheduleServiceError>) in
/host/spi-builder-workspace/Sources/CampusDualKit/ScheduleService/ScheduleService.swift:53:17: error: value of type 'URLSession' (aka 'AnyObject') has no member 'scheduleServiceDataTask'
 51 |         let request = URLRequest(url: url)
 52 |
 53 |         session.scheduleServiceDataTask(request: request, session: session) { (result: Result<Int, ScheduleServiceError>) in
    |                 `- error: value of type 'URLSession' (aka 'AnyObject') has no member 'scheduleServiceDataTask'
 54 |             switch result {
 55 |             case .success(_):
/host/spi-builder-workspace/Sources/CampusDualKit/Extensions/URL+CampusDual.swift:14:20: warning: static property 'creditPoints' is not concurrency-safe because non-'Sendable' type 'URL' may have shared mutable state; this is an error in the Swift 6 language mode
12 |         static let baseURL = URL(string: "https://selfservice.campus-dual.de")!
13 |         static let schedule = URL(string: "/room/json", relativeTo: Self.baseURL)!
14 |         static let creditPoints = URL(string: "/dash/getcp", relativeTo: Self.baseURL)!
   |                    `- warning: static property 'creditPoints' is not concurrency-safe because non-'Sendable' type 'URL' may have shared mutable state; this is an error in the Swift 6 language mode
15 |     }
16 | }
Foundation.URL:1:15: note: struct 'URL' does not conform to the 'Sendable' protocol
 1 | public struct URL : ReferenceConvertible, Equatable {
   |               `- note: struct 'URL' does not conform to the 'Sendable' protocol
 2 |     public typealias ReferenceType = NSURL
 3 |     public init?(string: String)
/host/spi-builder-workspace/Sources/CampusDualKit/Extensions/URL+CampusDual.swift:8:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
 6 | //
 7 |
 8 | import Foundation
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
 9 |
10 | internal extension URL {
   :
12 |         static let baseURL = URL(string: "https://selfservice.campus-dual.de")!
13 |         static let schedule = URL(string: "/room/json", relativeTo: Self.baseURL)!
14 |         static let creditPoints = URL(string: "/dash/getcp", relativeTo: Self.baseURL)!
   |                    |- note: annotate 'creditPoints' 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 |     }
16 | }
/host/spi-builder-workspace/Sources/CampusDualKit/ScheduleService/ScheduleService.swift:104:23: error: cannot find 'URLRequest' in scope
102 |         self.logger.debug("Starting request to fetch schedule data. Request information: \(url)")
103 |
104 |         let request = URLRequest(url: url)
    |                       `- error: cannot find 'URLRequest' in scope
105 |
106 |         session.scheduleServiceDataTask(request: request, session: session) { (result: Result<[Lesson], ScheduleServiceError>) in
/host/spi-builder-workspace/Sources/CampusDualKit/ScheduleService/ScheduleService.swift:106:17: error: value of type 'URLSession' (aka 'AnyObject') has no member 'scheduleServiceDataTask'
104 |         let request = URLRequest(url: url)
105 |
106 |         session.scheduleServiceDataTask(request: request, session: session) { (result: Result<[Lesson], ScheduleServiceError>) in
    |                 `- error: value of type 'URLSession' (aka 'AnyObject') has no member 'scheduleServiceDataTask'
107 |             switch result {
108 |             case .success(let data):
/host/spi-builder-workspace/Sources/CampusDualKit/Extensions/URL+CampusDual.swift:13:20: warning: static property 'schedule' is not concurrency-safe because non-'Sendable' type 'URL' may have shared mutable state; this is an error in the Swift 6 language mode
11 |     enum CampusDual {
12 |         static let baseURL = URL(string: "https://selfservice.campus-dual.de")!
13 |         static let schedule = URL(string: "/room/json", relativeTo: Self.baseURL)!
   |                    |- warning: static property 'schedule' is not concurrency-safe because non-'Sendable' type 'URL' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: annotate 'schedule' 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
14 |         static let creditPoints = URL(string: "/dash/getcp", relativeTo: Self.baseURL)!
15 |     }
Foundation.URL:1:15: note: struct 'URL' does not conform to the 'Sendable' protocol
 1 | public struct URL : ReferenceConvertible, Equatable {
   |               `- note: struct 'URL' does not conform to the 'Sendable' protocol
 2 |     public typealias ReferenceType = NSURL
 3 |     public init?(string: String)
[14/16] Compiling CampusDualKit Logger+CustomInit.swift
error: emit-module command failed with exit code 1 (use -v to see invocation)
[15/16] Compiling CampusDualKit URL+CampusDual.swift
/host/spi-builder-workspace/Sources/CampusDualKit/Extensions/URL+CampusDual.swift:12:20: warning: static property 'baseURL' is not concurrency-safe because non-'Sendable' type 'URL' may have shared mutable state; this is an error in the Swift 6 language mode
10 | internal extension URL {
11 |     enum CampusDual {
12 |         static let baseURL = URL(string: "https://selfservice.campus-dual.de")!
   |                    `- warning: static property 'baseURL' is not concurrency-safe because non-'Sendable' type 'URL' may have shared mutable state; this is an error in the Swift 6 language mode
13 |         static let schedule = URL(string: "/room/json", relativeTo: Self.baseURL)!
14 |         static let creditPoints = URL(string: "/dash/getcp", relativeTo: Self.baseURL)!
Foundation.URL:1:15: note: struct 'URL' does not conform to the 'Sendable' protocol
 1 | public struct URL : ReferenceConvertible, Equatable {
   |               `- note: struct 'URL' does not conform to the 'Sendable' protocol
 2 |     public typealias ReferenceType = NSURL
 3 |     public init?(string: String)
/host/spi-builder-workspace/Sources/CampusDualKit/Extensions/URL+CampusDual.swift:8:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
 6 | //
 7 |
 8 | import Foundation
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
 9 |
10 | internal extension URL {
11 |     enum CampusDual {
12 |         static let baseURL = URL(string: "https://selfservice.campus-dual.de")!
   |                    |- note: annotate 'baseURL' 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 |         static let schedule = URL(string: "/room/json", relativeTo: Self.baseURL)!
14 |         static let creditPoints = URL(string: "/dash/getcp", relativeTo: Self.baseURL)!
/host/spi-builder-workspace/Sources/CampusDualKit/Extensions/URL+CampusDual.swift:13:20: warning: static property 'schedule' is not concurrency-safe because non-'Sendable' type 'URL' may have shared mutable state; this is an error in the Swift 6 language mode
11 |     enum CampusDual {
12 |         static let baseURL = URL(string: "https://selfservice.campus-dual.de")!
13 |         static let schedule = URL(string: "/room/json", relativeTo: Self.baseURL)!
   |                    |- warning: static property 'schedule' is not concurrency-safe because non-'Sendable' type 'URL' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: annotate 'schedule' 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
14 |         static let creditPoints = URL(string: "/dash/getcp", relativeTo: Self.baseURL)!
15 |     }
Foundation.URL:1:15: note: struct 'URL' does not conform to the 'Sendable' protocol
 1 | public struct URL : ReferenceConvertible, Equatable {
   |               `- note: struct 'URL' does not conform to the 'Sendable' protocol
 2 |     public typealias ReferenceType = NSURL
 3 |     public init?(string: String)
/host/spi-builder-workspace/Sources/CampusDualKit/Extensions/URL+CampusDual.swift:14:20: warning: static property 'creditPoints' is not concurrency-safe because non-'Sendable' type 'URL' may have shared mutable state; this is an error in the Swift 6 language mode
12 |         static let baseURL = URL(string: "https://selfservice.campus-dual.de")!
13 |         static let schedule = URL(string: "/room/json", relativeTo: Self.baseURL)!
14 |         static let creditPoints = URL(string: "/dash/getcp", relativeTo: Self.baseURL)!
   |                    |- warning: static property 'creditPoints' is not concurrency-safe because non-'Sendable' type 'URL' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: annotate 'creditPoints' 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 |     }
16 | }
Foundation.URL:1:15: note: struct 'URL' does not conform to the 'Sendable' protocol
 1 | public struct URL : ReferenceConvertible, Equatable {
   |               `- note: struct 'URL' does not conform to the 'Sendable' protocol
 2 |     public typealias ReferenceType = NSURL
 3 |     public init?(string: String)
[16/16] Emitting module CampusDualKit
/host/spi-builder-workspace/Sources/CampusDualKit/Extensions/URL+CampusDual.swift:12:20: warning: static property 'baseURL' is not concurrency-safe because non-'Sendable' type 'URL' may have shared mutable state; this is an error in the Swift 6 language mode
10 | internal extension URL {
11 |     enum CampusDual {
12 |         static let baseURL = URL(string: "https://selfservice.campus-dual.de")!
   |                    `- warning: static property 'baseURL' is not concurrency-safe because non-'Sendable' type 'URL' may have shared mutable state; this is an error in the Swift 6 language mode
13 |         static let schedule = URL(string: "/room/json", relativeTo: Self.baseURL)!
14 |         static let creditPoints = URL(string: "/dash/getcp", relativeTo: Self.baseURL)!
Foundation.URL:1:15: note: struct 'URL' does not conform to the 'Sendable' protocol
 1 | public struct URL : ReferenceConvertible, Equatable {
   |               `- note: struct 'URL' does not conform to the 'Sendable' protocol
 2 |     public typealias ReferenceType = NSURL
 3 |     public init?(string: String)
/host/spi-builder-workspace/Sources/CampusDualKit/Extensions/URL+CampusDual.swift:8:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
 6 | //
 7 |
 8 | import Foundation
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
 9 |
10 | internal extension URL {
11 |     enum CampusDual {
12 |         static let baseURL = URL(string: "https://selfservice.campus-dual.de")!
   |                    |- note: annotate 'baseURL' 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 |         static let schedule = URL(string: "/room/json", relativeTo: Self.baseURL)!
14 |         static let creditPoints = URL(string: "/dash/getcp", relativeTo: Self.baseURL)!
/host/spi-builder-workspace/Sources/CampusDualKit/Extensions/URL+CampusDual.swift:13:20: warning: static property 'schedule' is not concurrency-safe because non-'Sendable' type 'URL' may have shared mutable state; this is an error in the Swift 6 language mode
11 |     enum CampusDual {
12 |         static let baseURL = URL(string: "https://selfservice.campus-dual.de")!
13 |         static let schedule = URL(string: "/room/json", relativeTo: Self.baseURL)!
   |                    |- warning: static property 'schedule' is not concurrency-safe because non-'Sendable' type 'URL' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: annotate 'schedule' 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
14 |         static let creditPoints = URL(string: "/dash/getcp", relativeTo: Self.baseURL)!
15 |     }
Foundation.URL:1:15: note: struct 'URL' does not conform to the 'Sendable' protocol
 1 | public struct URL : ReferenceConvertible, Equatable {
   |               `- note: struct 'URL' does not conform to the 'Sendable' protocol
 2 |     public typealias ReferenceType = NSURL
 3 |     public init?(string: String)
/host/spi-builder-workspace/Sources/CampusDualKit/Extensions/URL+CampusDual.swift:14:20: warning: static property 'creditPoints' is not concurrency-safe because non-'Sendable' type 'URL' may have shared mutable state; this is an error in the Swift 6 language mode
12 |         static let baseURL = URL(string: "https://selfservice.campus-dual.de")!
13 |         static let schedule = URL(string: "/room/json", relativeTo: Self.baseURL)!
14 |         static let creditPoints = URL(string: "/dash/getcp", relativeTo: Self.baseURL)!
   |                    |- warning: static property 'creditPoints' is not concurrency-safe because non-'Sendable' type 'URL' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: annotate 'creditPoints' 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 |     }
16 | }
Foundation.URL:1:15: note: struct 'URL' does not conform to the 'Sendable' protocol
 1 | public struct URL : ReferenceConvertible, Equatable {
   |               `- note: struct 'URL' does not conform to the 'Sendable' protocol
 2 |     public typealias ReferenceType = NSURL
 3 |     public init?(string: String)
/host/spi-builder-workspace/Sources/CampusDualKit/Extensions/URLSession+scheduleServiceDataTask.swift:10:10: error: non-nominal type 'URLSession' (aka 'AnyObject') cannot be extended
 8 | import Foundation
 9 |
10 | internal extension URLSession {
   |          `- error: non-nominal type 'URLSession' (aka 'AnyObject') cannot be extended
11 |
12 |     func scheduleServiceDataTask<T: Decodable>(request: URLRequest, session: URLSession, completion: @escaping (Result<T, ScheduleServiceError>) -> Void) {
/host/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 |
/host/spi-builder-workspace/Sources/CampusDualKit/ScheduleService/ScheduleService.swift:32:84: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 30 |     ///     - session: The URLSession to be used, default should be .shared
 31 |     ///     - completion: handler
 32 |     public static func login(for username: String, with password: String, session: URLSession = .shared, completion: @escaping (Result<ScheduleService, ScheduleServiceError>) -> Void) {
    |                                                                                    `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 33 |
 34 |         if username.isEmpty {
Foundation.URLSession:2:18: note: 'URLSession' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLSession = AnyObject
  |                  `- note: 'URLSession' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/CampusDualKit/ScheduleService/ScheduleService.swift:32:98: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
 30 |     ///     - session: The URLSession to be used, default should be .shared
 31 |     ///     - completion: handler
 32 |     public static func login(for username: String, with password: String, session: URLSession = .shared, completion: @escaping (Result<ScheduleService, ScheduleServiceError>) -> Void) {
    |                                                                                                  `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
 33 |
 34 |         if username.isEmpty {
/host/spi-builder-workspace/Sources/CampusDualKit/ScheduleService/ScheduleService.swift:73:84: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 71 |     /// - Returns: An authenticated ScheduleService.
 72 |     @available(iOS 15.0, macOS 12.0, *)
 73 |     public static func login(for username: String, with password: String, session: URLSession = .shared) async throws -> ScheduleService {
    |                                                                                    `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 74 |         try await withCheckedThrowingContinuation() { continuation in
 75 |             self.login(for: username, with: password, session: session) { result in
Foundation.URLSession:2:18: note: 'URLSession' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLSession = AnyObject
  |                  `- note: 'URLSession' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/CampusDualKit/ScheduleService/ScheduleService.swift:73:98: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
 71 |     /// - Returns: An authenticated ScheduleService.
 72 |     @available(iOS 15.0, macOS 12.0, *)
 73 |     public static func login(for username: String, with password: String, session: URLSession = .shared) async throws -> ScheduleService {
    |                                                                                                  `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
 74 |         try await withCheckedThrowingContinuation() { continuation in
 75 |             self.login(for: username, with: password, session: session) { result in
/host/spi-builder-workspace/Sources/CampusDualKit/ScheduleService/ScheduleService.swift:95:76: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 93 |     ///     - session: The URLSession to be used, default should be .shared
 94 |     ///     - completion: handler
 95 |     public func studyDays(from startDate: Date, to endDate: Date, session: URLSession = .shared, completion: @escaping (Result<[StudyDay], ScheduleServiceError>) -> Void) {
    |                                                                            `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 96 |
 97 |         guard let url = URL(string: "?userid=\(self.username)&hash=\(self.hash)&start=\(startDate.timeIntervalSince1970)&end=\(endDate.timeIntervalSince1970)", relativeTo: URL.CampusDual.schedule) else {
Foundation.URLSession:2:18: note: 'URLSession' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLSession = AnyObject
  |                  `- note: 'URLSession' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/CampusDualKit/ScheduleService/ScheduleService.swift:95:90: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
 93 |     ///     - session: The URLSession to be used, default should be .shared
 94 |     ///     - completion: handler
 95 |     public func studyDays(from startDate: Date, to endDate: Date, session: URLSession = .shared, completion: @escaping (Result<[StudyDay], ScheduleServiceError>) -> Void) {
    |                                                                                          `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
 96 |
 97 |         guard let url = URL(string: "?userid=\(self.username)&hash=\(self.hash)&start=\(startDate.timeIntervalSince1970)&end=\(endDate.timeIntervalSince1970)", relativeTo: URL.CampusDual.schedule) else {
/host/spi-builder-workspace/Sources/CampusDualKit/ScheduleService/ScheduleService.swift:127:76: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
125 |     /// - Returns: An array of StudyDay's in the given time period.
126 |     @available(iOS 15.0, macOS 12.0, *)
127 |     public func studyDays(from startDate: Date, to endDate: Date, session: URLSession) async throws -> [StudyDay] {
    |                                                                            `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
128 |         try await withCheckedThrowingContinuation() { continuation in
129 |             self.studyDays(from: startDate, to: endDate) { result in
Foundation.URLSession:2:18: note: 'URLSession' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLSession = AnyObject
  |                  `- note: 'URLSession' has been explicitly marked unavailable here
/host/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 FAILURE 6.0 linux
This is a staging environment. For live and up-to-date package information, visit swiftpackageindex.com.