Build Information
Failed to build CampusDualKit, reference 0.2.1 (8f5824
), with Swift 6.2 (beta) for Android on 20 Jun 2025 12:00:44 UTC.
Build Command
bash -c docker run --pull=always --rm -v "checkouts-4609320-0":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:android-6.2-latest swift build --swift-sdk aarch64-unknown-linux-android28 2>&1
Build Log
========================================
RunAll
========================================
Builder version: 4.64.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/jonasrichardrichter/CampusDualKit.git
Reference: 0.2.1
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
* tag 0.2.1 -> FETCH_HEAD
HEAD is now at 8f58241 Fix bug
Cloned https://github.com/jonasrichardrichter/CampusDualKit.git
Revision (git rev-parse @):
8f582414f43e9bb8f6f1fcaf19574cb04e0a7857
SUCCESS checkout https://github.com/jonasrichardrichter/CampusDualKit.git at 0.2.1
========================================
Build
========================================
Selected platform: android
Swift version: 6.2
Building package at path: $PWD
https://github.com/jonasrichardrichter/CampusDualKit.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-0":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:android-6.2-latest swift build --swift-sdk aarch64-unknown-linux-android28 2>&1
android-6.2-latest: Pulling from finestructure/spi-images
Digest: sha256:b7c4a6b4153ff40ef9277e2157e708f835b8eb011095d53bd8db4594eb2b7798
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:android-6.2-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.41s)
Computing version for https://github.com/apple/swift-log.git
Computed https://github.com/apple/swift-log.git at 1.6.3 (0.85s)
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-8C5A4AE7A8CE2BA.txt
[4/8] Compiling Logging LogHandler.swift
[5/8] Emitting module Logging
[6/8] Compiling Logging MetadataProvider.swift
[7/8] Compiling Logging Logging.swift
[8/8] Compiling Logging Locks.swift
[10/17] Compiling CampusDualKit Lesson.swift
[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 [#NominalTypes]
8 | import Foundation
9 |
10 | internal extension URLSession {
| `- error: non-nominal type 'URLSession' (aka 'AnyObject') cannot be extended [#NominalTypes]
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
[#NominalTypes]: <https://docs.swift.org/compiler/documentation/diagnostics/nominal-types>
[12/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:90:76: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
88 | /// - session: The URLSession to be used, default should be .shared
89 | /// - completion: handler
90 | 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.
91 |
92 | 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:90:90: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
88 | /// - session: The URLSession to be used, default should be .shared
89 | /// - completion: handler
90 | 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'
91 |
92 | 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:122:76: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
120 | /// - Returns: An array of StudyDay's in the given time period.
121 | @available(iOS 15.0, macOS 12.0, *)
122 | 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.
123 | try await withCheckedThrowingContinuation() { continuation in
124 | 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:99:23: error: cannot find 'URLRequest' in scope
97 | self.logger.debug("Starting request to fetch schedule data. Request information: \(url)")
98 |
99 | let request = URLRequest(url: url)
| `- error: cannot find 'URLRequest' in scope
100 |
101 | session.scheduleServiceDataTask(request: request, session: session) { (result: Result<[Lesson], ScheduleServiceError>) in
/host/spi-builder-workspace/Sources/CampusDualKit/ScheduleService/ScheduleService.swift:101:17: error: value of type 'URLSession' (aka 'AnyObject') has no member 'scheduleServiceDataTask'
99 | let request = URLRequest(url: url)
100 |
101 | session.scheduleServiceDataTask(request: request, session: session) { (result: Result<[Lesson], ScheduleServiceError>) in
| `- error: value of type 'URLSession' (aka 'AnyObject') has no member 'scheduleServiceDataTask'
102 | switch result {
103 | case .success(let data):
error: emit-module command failed with exit code 1 (use -v to see invocation)
[13/17] Compiling CampusDualKit Logger+CustomInit.swift
[14/17] Compiling CampusDualKit URL+CampusDual.swift
[15/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 [#NominalTypes]
8 | import Foundation
9 |
10 | internal extension URLSession {
| `- error: non-nominal type 'URLSession' (aka 'AnyObject') cannot be extended [#NominalTypes]
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:90:76: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
88 | /// - session: The URLSession to be used, default should be .shared
89 | /// - completion: handler
90 | 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.
91 |
92 | 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:90:90: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
88 | /// - session: The URLSession to be used, default should be .shared
89 | /// - completion: handler
90 | 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'
91 |
92 | 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:122:76: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
120 | /// - Returns: An array of StudyDay's in the given time period.
121 | @available(iOS 15.0, macOS 12.0, *)
122 | 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.
123 | try await withCheckedThrowingContinuation() { continuation in
124 | 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
[#NominalTypes]: <https://docs.swift.org/compiler/documentation/diagnostics/nominal-types>
[16/17] Compiling CampusDualKit StudyDay.swift
[17/17] Compiling CampusDualKit ScheduleServiceError.swift
/host/spi-builder-workspace/Sources/CampusDualKit/ScheduleService/ScheduleServiceError.swift:38:109: warning: string interpolation produces a debug description for an optional value; did you mean to make this explicit?
36 | switch Locale.current.languageCode {
37 | case "de":
38 | return "Es ist ein Fehler bei der Verarbeitung der Daten aufgetreten. Mehr Informationen: \(error?.localizedDescription)"
| | |- note: provide a default value to avoid this warning
| | `- note: use 'String(describing:)' to silence this warning
| `- warning: string interpolation produces a debug description for an optional value; did you mean to make this explicit?
39 | default:
40 | return "An error occurred while processing the data. More information: \(error?.localizedDescription)"
/host/spi-builder-workspace/Sources/CampusDualKit/ScheduleService/ScheduleServiceError.swift:40:90: warning: string interpolation produces a debug description for an optional value; did you mean to make this explicit?
38 | return "Es ist ein Fehler bei der Verarbeitung der Daten aufgetreten. Mehr Informationen: \(error?.localizedDescription)"
39 | default:
40 | return "An error occurred while processing the data. More information: \(error?.localizedDescription)"
| | |- note: provide a default value to avoid this warning
| | `- note: use 'String(describing:)' to silence this warning
| `- warning: string interpolation produces a debug description for an optional value; did you mean to make this explicit?
41 | }
42 | case .network(let error):
/host/spi-builder-workspace/Sources/CampusDualKit/ScheduleService/ScheduleServiceError.swift:45:86: warning: string interpolation produces a debug description for an optional value; did you mean to make this explicit?
43 | switch Locale.current.languageCode {
44 | case "de":
45 | return "Es ist ein Netzwerkfehler aufgetreten. Mehr Informationen: \(error?.localizedDescription)"
| | |- note: provide a default value to avoid this warning
| | `- note: use 'String(describing:)' to silence this warning
| `- warning: string interpolation produces a debug description for an optional value; did you mean to make this explicit?
46 | default:
47 | return "A network error occurred. More information: \(error?.localizedDescription)"
/host/spi-builder-workspace/Sources/CampusDualKit/ScheduleService/ScheduleServiceError.swift:47:71: warning: string interpolation produces a debug description for an optional value; did you mean to make this explicit?
45 | return "Es ist ein Netzwerkfehler aufgetreten. Mehr Informationen: \(error?.localizedDescription)"
46 | default:
47 | return "A network error occurred. More information: \(error?.localizedDescription)"
| | |- note: provide a default value to avoid this warning
| | `- note: use 'String(describing:)' to silence this warning
| `- warning: string interpolation produces a debug description for an optional value; did you mean to make this explicit?
48 | }
49 | case .other(let error):
/host/spi-builder-workspace/Sources/CampusDualKit/ScheduleService/ScheduleServiceError.swift:52:87: warning: string interpolation produces a debug description for an optional value; did you mean to make this explicit?
50 | switch Locale.current.languageCode {
51 | case "de":
52 | return "Ein unbekannter Fehler ist aufgetreten. Mehr Informationen: \(error?.localizedDescription)"
| | |- note: provide a default value to avoid this warning
| | `- note: use 'String(describing:)' to silence this warning
| `- warning: string interpolation produces a debug description for an optional value; did you mean to make this explicit?
53 | default:
54 | return "An unknown error has occurred. More information: \(error?.localizedDescription)"
/host/spi-builder-workspace/Sources/CampusDualKit/ScheduleService/ScheduleServiceError.swift:54:76: warning: string interpolation produces a debug description for an optional value; did you mean to make this explicit?
52 | return "Ein unbekannter Fehler ist aufgetreten. Mehr Informationen: \(error?.localizedDescription)"
53 | default:
54 | return "An unknown error has occurred. More information: \(error?.localizedDescription)"
| | |- note: provide a default value to avoid this warning
| | `- note: use 'String(describing:)' to silence this warning
| `- warning: string interpolation produces a debug description for an optional value; did you mean to make this explicit?
55 | }
56 | }
BUILD FAILURE 6.2 android