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, reference main (88bae4), with Swift 6.1 for Linux on 27 Apr 2025 19:35:31 UTC.

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4609320-1":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu 2>&1

Build Log

========================================
RunAll
========================================
Builder version: 4.61.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: $PWD/.spi.yml
SUCCESS checkout https://github.com/jonasrichardrichter/CampusDualKit.git at main
========================================
Build
========================================
Selected platform:         linux
Swift version:             6.1
Building package at path:  $PWD
https://github.com/jonasrichardrichter/CampusDualKit.git
https://github.com/jonasrichardrichter/CampusDualKit.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
{
  "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" : "/host/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"
}
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-1":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures 2>&1
basic-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:3bdcac04179f4ed3e5b8e9dbd6e74bbf5ebc0f4fde48bbaad7d1e5c757e65bcb
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.1-latest
Fetching https://github.com/apple/swift-log.git
[1/3836] Fetching swift-log
Fetched https://github.com/apple/swift-log.git from cache (0.37s)
Computing version for https://github.com/apple/swift-log.git
Computed https://github.com/apple/swift-log.git at 1.6.3 (0.88s)
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.3
Building for debugging...
[0/3] Write sources
[2/3] Write swift-version-24593BA9C3E375BF.txt
[4/8] Compiling Logging Logging.swift
[5/8] Compiling Logging MetadataProvider.swift
[6/8] Compiling Logging LogHandler.swift
[7/8] Compiling Logging Locks.swift
[8/8] Emitting module Logging
[10/17] 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: add '@MainActor' to make static property 'example' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
51 | }
52 |
[11/17] 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
error: emit-module command failed with exit code 1 (use -v to see invocation)
[12/17] Compiling CampusDualKit Logger+CustomInit.swift
[13/17] Emitting module CampusDualKit
/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: add '@MainActor' to make static property 'example' part of global actor 'MainActor'
   |                       `- 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: add '@MainActor' to make static property 'example' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
27 | }
28 |
[14/17] Compiling CampusDualKit ScheduleServiceError.swift
[15/17] Compiling CampusDualKit URL+CampusDual.swift
[16/17] 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: add '@MainActor' to make static property 'example' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
27 | }
28 |
[17/17] 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/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):
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-1":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu 2>&1
basic-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:3bdcac04179f4ed3e5b8e9dbd6e74bbf5ebc0f4fde48bbaad7d1e5c757e65bcb
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.1-latest
[0/1] Planning build
Building for debugging...
[0/1] Write swift-version-24593BA9C3E375BF.txt
[2/6] Compiling Logging MetadataProvider.swift
[3/6] Compiling Logging LogHandler.swift
[4/6] Compiling Logging Locks.swift
[5/6] Emitting module Logging
[6/6] Compiling Logging Logging.swift
[8/15] 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
error: emit-module command failed with exit code 1 (use -v to see invocation)
[9/15] Emitting module CampusDualKit
/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/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
[10/15] Compiling CampusDualKit Logger+CustomInit.swift
[11/15] Compiling CampusDualKit Lesson.swift
[12/15] Compiling CampusDualKit ScheduleServiceError.swift
[13/15] 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/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):
[14/15] Compiling CampusDualKit StudyDay.swift
[15/15] Compiling CampusDualKit URL+CampusDual.swift
BUILD FAILURE 6.1 linux