Build Information
Failed to build SwiftDisc, reference v0.12.0 (b7ff58), with Swift 6.1 for Android on 11 Dec 2025 03:15:13 UTC.
Build Command
bash -c docker run --pull=always --rm -v "checkouts-4606859-3":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/finestructure/spi-images:android-6.1-latest swift build --swift-sdk aarch64-unknown-linux-android24 2>&1Build Log
44 |
45 | public struct ActionRow: Codable, Hashable {
46 | public let type: Int = 1
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
47 | public let components: [MessageComponent]
48 | public init(components: [MessageComponent]) { self.components = components }
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:52:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
50 |
51 | public struct Button: Codable, Hashable {
52 | public let type: Int = 2
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
53 | public let style: Int
54 | public let label: String?
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:75:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
73 | public let `default`: Bool?
74 | }
75 | public let type: Int = 3
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
76 | public let custom_id: String
77 | public let options: [Option]
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:94:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
92 | public struct TextInput: Codable, Hashable {
93 | public enum Style: Int, Codable { case short = 1, paragraph = 2 }
94 | public let type: Int = 4
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
95 | public let custom_id: String
96 | public let style: Style
[43/63] Compiling SwiftDisc GuildMember.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:46:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
44 |
45 | public struct ActionRow: Codable, Hashable {
46 | public let type: Int = 1
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
47 | public let components: [MessageComponent]
48 | public init(components: [MessageComponent]) { self.components = components }
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:52:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
50 |
51 | public struct Button: Codable, Hashable {
52 | public let type: Int = 2
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
53 | public let style: Int
54 | public let label: String?
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:75:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
73 | public let `default`: Bool?
74 | }
75 | public let type: Int = 3
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
76 | public let custom_id: String
77 | public let options: [Option]
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:94:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
92 | public struct TextInput: Codable, Hashable {
93 | public enum Style: Int, Codable { case short = 1, paragraph = 2 }
94 | public let type: Int = 4
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
95 | public let custom_id: String
96 | public let style: Style
[44/63] Compiling SwiftDisc GuildWidgetSettings.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:46:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
44 |
45 | public struct ActionRow: Codable, Hashable {
46 | public let type: Int = 1
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
47 | public let components: [MessageComponent]
48 | public init(components: [MessageComponent]) { self.components = components }
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:52:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
50 |
51 | public struct Button: Codable, Hashable {
52 | public let type: Int = 2
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
53 | public let style: Int
54 | public let label: String?
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:75:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
73 | public let `default`: Bool?
74 | }
75 | public let type: Int = 3
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
76 | public let custom_id: String
77 | public let options: [Option]
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:94:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
92 | public struct TextInput: Codable, Hashable {
93 | public enum Style: Int, Codable { case short = 1, paragraph = 2 }
94 | public let type: Int = 4
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
95 | public let custom_id: String
96 | public let style: Style
[45/63] Compiling SwiftDisc Interaction.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:46:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
44 |
45 | public struct ActionRow: Codable, Hashable {
46 | public let type: Int = 1
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
47 | public let components: [MessageComponent]
48 | public init(components: [MessageComponent]) { self.components = components }
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:52:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
50 |
51 | public struct Button: Codable, Hashable {
52 | public let type: Int = 2
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
53 | public let style: Int
54 | public let label: String?
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:75:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
73 | public let `default`: Bool?
74 | }
75 | public let type: Int = 3
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
76 | public let custom_id: String
77 | public let options: [Option]
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:94:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
92 | public struct TextInput: Codable, Hashable {
93 | public enum Style: Int, Codable { case short = 1, paragraph = 2 }
94 | public let type: Int = 4
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
95 | public let custom_id: String
96 | public let style: Style
[46/63] Compiling SwiftDisc Invite.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:46:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
44 |
45 | public struct ActionRow: Codable, Hashable {
46 | public let type: Int = 1
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
47 | public let components: [MessageComponent]
48 | public init(components: [MessageComponent]) { self.components = components }
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:52:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
50 |
51 | public struct Button: Codable, Hashable {
52 | public let type: Int = 2
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
53 | public let style: Int
54 | public let label: String?
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:75:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
73 | public let `default`: Bool?
74 | }
75 | public let type: Int = 3
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
76 | public let custom_id: String
77 | public let options: [Option]
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:94:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
92 | public struct TextInput: Codable, Hashable {
93 | public enum Style: Int, Codable { case short = 1, paragraph = 2 }
94 | public let type: Int = 4
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
95 | public let custom_id: String
96 | public let style: Style
[47/63] Compiling SwiftDisc Message.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:46:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
44 |
45 | public struct ActionRow: Codable, Hashable {
46 | public let type: Int = 1
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
47 | public let components: [MessageComponent]
48 | public init(components: [MessageComponent]) { self.components = components }
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:52:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
50 |
51 | public struct Button: Codable, Hashable {
52 | public let type: Int = 2
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
53 | public let style: Int
54 | public let label: String?
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:75:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
73 | public let `default`: Bool?
74 | }
75 | public let type: Int = 3
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
76 | public let custom_id: String
77 | public let options: [Option]
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:94:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
92 | public struct TextInput: Codable, Hashable {
93 | public enum Style: Int, Codable { case short = 1, paragraph = 2 }
94 | public let type: Int = 4
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
95 | public let custom_id: String
96 | public let style: Style
[48/63] Compiling SwiftDisc MessageComponents.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:46:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
44 |
45 | public struct ActionRow: Codable, Hashable {
46 | public let type: Int = 1
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
47 | public let components: [MessageComponent]
48 | public init(components: [MessageComponent]) { self.components = components }
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:52:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
50 |
51 | public struct Button: Codable, Hashable {
52 | public let type: Int = 2
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
53 | public let style: Int
54 | public let label: String?
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:75:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
73 | public let `default`: Bool?
74 | }
75 | public let type: Int = 3
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
76 | public let custom_id: String
77 | public let options: [Option]
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:94:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
92 | public struct TextInput: Codable, Hashable {
93 | public enum Style: Int, Codable { case short = 1, paragraph = 2 }
94 | public let type: Int = 4
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
95 | public let custom_id: String
96 | public let style: Style
[49/63] Compiling SwiftDisc Attachment.swift
[50/63] Compiling SwiftDisc AuditLog.swift
[51/63] Compiling SwiftDisc AutoModeration.swift
[52/63] Compiling SwiftDisc Channel.swift
[53/63] Compiling SwiftDisc Embed.swift
[54/63] Compiling SwiftDisc Emoji.swift
[55/63] Compiling SwiftDisc Files.swift
[56/63] Compiling SwiftDisc Guild.swift
[57/63] Compiling SwiftDisc PipeOpusSource.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:236:9: warning: variable 'r0' was never mutated; consider changing to 'let' constant
234 | let s = Array(key[16..<32])
235 |
236 | var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
| `- warning: variable 'r0' was never mutated; consider changing to 'let' constant
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:237:9: warning: variable 'r1' was never mutated; consider changing to 'let' constant
235 |
236 | var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
| `- warning: variable 'r1' was never mutated; consider changing to 'let' constant
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:238:9: warning: variable 'r2' was never mutated; consider changing to 'let' constant
236 | var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
| `- warning: variable 'r2' was never mutated; consider changing to 'let' constant
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 | var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:239:9: warning: variable 'r3' was never mutated; consider changing to 'let' constant
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
| `- warning: variable 'r3' was never mutated; consider changing to 'let' constant
240 | var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
241 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:240:9: warning: variable 'r4' was never mutated; consider changing to 'let' constant
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 | var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
| `- warning: variable 'r4' was never mutated; consider changing to 'let' constant
241 |
242 | var h0: UInt32 = 0, h1: UInt32 = 0, h2: UInt32 = 0, h3: UInt32 = 0, h4: UInt32 = 0
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:303:9: warning: variable 'f0' was never mutated; consider changing to 'let' constant
301 |
302 | // Serialize h
303 | var f0 = (h0 | (h1 << 26)) & 0xffffffff
| `- warning: variable 'f0' was never mutated; consider changing to 'let' constant
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:304:9: warning: variable 'f1' was never mutated; consider changing to 'let' constant
302 | // Serialize h
303 | var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
| `- warning: variable 'f1' was never mutated; consider changing to 'let' constant
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 | var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:305:9: warning: variable 'f2' was never mutated; consider changing to 'let' constant
303 | var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
| `- warning: variable 'f2' was never mutated; consider changing to 'let' constant
306 | var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
307 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:306:9: warning: variable 'f3' was never mutated; consider changing to 'let' constant
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 | var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
| `- warning: variable 'f3' was never mutated; consider changing to 'let' constant
307 |
308 | // Add s
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/VoiceGateway.swift:74:32: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
72 | private func startHeartbeat(intervalMs: Int) {
73 | hbTask?.cancel()
74 | hbTask = Task.detached { [weak self] in
| `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
75 | guard let self else { return }
| `- note: closure captures 'self' which is accessible to code in the current task
76 | let intervalNs = UInt64(intervalMs) * 1_000_000
77 | while !Task.isCancelled {
[58/63] Compiling SwiftDisc Secretbox.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:236:9: warning: variable 'r0' was never mutated; consider changing to 'let' constant
234 | let s = Array(key[16..<32])
235 |
236 | var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
| `- warning: variable 'r0' was never mutated; consider changing to 'let' constant
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:237:9: warning: variable 'r1' was never mutated; consider changing to 'let' constant
235 |
236 | var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
| `- warning: variable 'r1' was never mutated; consider changing to 'let' constant
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:238:9: warning: variable 'r2' was never mutated; consider changing to 'let' constant
236 | var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
| `- warning: variable 'r2' was never mutated; consider changing to 'let' constant
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 | var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:239:9: warning: variable 'r3' was never mutated; consider changing to 'let' constant
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
| `- warning: variable 'r3' was never mutated; consider changing to 'let' constant
240 | var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
241 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:240:9: warning: variable 'r4' was never mutated; consider changing to 'let' constant
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 | var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
| `- warning: variable 'r4' was never mutated; consider changing to 'let' constant
241 |
242 | var h0: UInt32 = 0, h1: UInt32 = 0, h2: UInt32 = 0, h3: UInt32 = 0, h4: UInt32 = 0
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:303:9: warning: variable 'f0' was never mutated; consider changing to 'let' constant
301 |
302 | // Serialize h
303 | var f0 = (h0 | (h1 << 26)) & 0xffffffff
| `- warning: variable 'f0' was never mutated; consider changing to 'let' constant
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:304:9: warning: variable 'f1' was never mutated; consider changing to 'let' constant
302 | // Serialize h
303 | var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
| `- warning: variable 'f1' was never mutated; consider changing to 'let' constant
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 | var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:305:9: warning: variable 'f2' was never mutated; consider changing to 'let' constant
303 | var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
| `- warning: variable 'f2' was never mutated; consider changing to 'let' constant
306 | var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
307 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:306:9: warning: variable 'f3' was never mutated; consider changing to 'let' constant
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 | var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
| `- warning: variable 'f3' was never mutated; consider changing to 'let' constant
307 |
308 | // Add s
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/VoiceGateway.swift:74:32: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
72 | private func startHeartbeat(intervalMs: Int) {
73 | hbTask?.cancel()
74 | hbTask = Task.detached { [weak self] in
| `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
75 | guard let self else { return }
| `- note: closure captures 'self' which is accessible to code in the current task
76 | let intervalNs = UInt64(intervalMs) * 1_000_000
77 | while !Task.isCancelled {
[59/63] Compiling SwiftDisc VoiceClient.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:236:9: warning: variable 'r0' was never mutated; consider changing to 'let' constant
234 | let s = Array(key[16..<32])
235 |
236 | var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
| `- warning: variable 'r0' was never mutated; consider changing to 'let' constant
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:237:9: warning: variable 'r1' was never mutated; consider changing to 'let' constant
235 |
236 | var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
| `- warning: variable 'r1' was never mutated; consider changing to 'let' constant
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:238:9: warning: variable 'r2' was never mutated; consider changing to 'let' constant
236 | var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
| `- warning: variable 'r2' was never mutated; consider changing to 'let' constant
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 | var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:239:9: warning: variable 'r3' was never mutated; consider changing to 'let' constant
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
| `- warning: variable 'r3' was never mutated; consider changing to 'let' constant
240 | var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
241 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:240:9: warning: variable 'r4' was never mutated; consider changing to 'let' constant
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 | var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
| `- warning: variable 'r4' was never mutated; consider changing to 'let' constant
241 |
242 | var h0: UInt32 = 0, h1: UInt32 = 0, h2: UInt32 = 0, h3: UInt32 = 0, h4: UInt32 = 0
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:303:9: warning: variable 'f0' was never mutated; consider changing to 'let' constant
301 |
302 | // Serialize h
303 | var f0 = (h0 | (h1 << 26)) & 0xffffffff
| `- warning: variable 'f0' was never mutated; consider changing to 'let' constant
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:304:9: warning: variable 'f1' was never mutated; consider changing to 'let' constant
302 | // Serialize h
303 | var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
| `- warning: variable 'f1' was never mutated; consider changing to 'let' constant
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 | var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:305:9: warning: variable 'f2' was never mutated; consider changing to 'let' constant
303 | var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
| `- warning: variable 'f2' was never mutated; consider changing to 'let' constant
306 | var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
307 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:306:9: warning: variable 'f3' was never mutated; consider changing to 'let' constant
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 | var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
| `- warning: variable 'f3' was never mutated; consider changing to 'let' constant
307 |
308 | // Add s
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/VoiceGateway.swift:74:32: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
72 | private func startHeartbeat(intervalMs: Int) {
73 | hbTask?.cancel()
74 | hbTask = Task.detached { [weak self] in
| `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
75 | guard let self else { return }
| `- note: closure captures 'self' which is accessible to code in the current task
76 | let intervalNs = UInt64(intervalMs) * 1_000_000
77 | while !Task.isCancelled {
[60/63] Compiling SwiftDisc VoiceGateway.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:236:9: warning: variable 'r0' was never mutated; consider changing to 'let' constant
234 | let s = Array(key[16..<32])
235 |
236 | var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
| `- warning: variable 'r0' was never mutated; consider changing to 'let' constant
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:237:9: warning: variable 'r1' was never mutated; consider changing to 'let' constant
235 |
236 | var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
| `- warning: variable 'r1' was never mutated; consider changing to 'let' constant
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:238:9: warning: variable 'r2' was never mutated; consider changing to 'let' constant
236 | var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
| `- warning: variable 'r2' was never mutated; consider changing to 'let' constant
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 | var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:239:9: warning: variable 'r3' was never mutated; consider changing to 'let' constant
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
| `- warning: variable 'r3' was never mutated; consider changing to 'let' constant
240 | var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
241 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:240:9: warning: variable 'r4' was never mutated; consider changing to 'let' constant
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 | var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
| `- warning: variable 'r4' was never mutated; consider changing to 'let' constant
241 |
242 | var h0: UInt32 = 0, h1: UInt32 = 0, h2: UInt32 = 0, h3: UInt32 = 0, h4: UInt32 = 0
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:303:9: warning: variable 'f0' was never mutated; consider changing to 'let' constant
301 |
302 | // Serialize h
303 | var f0 = (h0 | (h1 << 26)) & 0xffffffff
| `- warning: variable 'f0' was never mutated; consider changing to 'let' constant
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:304:9: warning: variable 'f1' was never mutated; consider changing to 'let' constant
302 | // Serialize h
303 | var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
| `- warning: variable 'f1' was never mutated; consider changing to 'let' constant
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 | var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:305:9: warning: variable 'f2' was never mutated; consider changing to 'let' constant
303 | var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
| `- warning: variable 'f2' was never mutated; consider changing to 'let' constant
306 | var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
307 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:306:9: warning: variable 'f3' was never mutated; consider changing to 'let' constant
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 | var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
| `- warning: variable 'f3' was never mutated; consider changing to 'let' constant
307 |
308 | // Add s
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/VoiceGateway.swift:74:32: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
72 | private func startHeartbeat(intervalMs: Int) {
73 | hbTask?.cancel()
74 | hbTask = Task.detached { [weak self] in
| `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
75 | guard let self else { return }
| `- note: closure captures 'self' which is accessible to code in the current task
76 | let intervalNs = UInt64(intervalMs) * 1_000_000
77 | while !Task.isCancelled {
[61/63] Compiling SwiftDisc VoiceModels.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:236:9: warning: variable 'r0' was never mutated; consider changing to 'let' constant
234 | let s = Array(key[16..<32])
235 |
236 | var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
| `- warning: variable 'r0' was never mutated; consider changing to 'let' constant
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:237:9: warning: variable 'r1' was never mutated; consider changing to 'let' constant
235 |
236 | var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
| `- warning: variable 'r1' was never mutated; consider changing to 'let' constant
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:238:9: warning: variable 'r2' was never mutated; consider changing to 'let' constant
236 | var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
| `- warning: variable 'r2' was never mutated; consider changing to 'let' constant
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 | var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:239:9: warning: variable 'r3' was never mutated; consider changing to 'let' constant
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
| `- warning: variable 'r3' was never mutated; consider changing to 'let' constant
240 | var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
241 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:240:9: warning: variable 'r4' was never mutated; consider changing to 'let' constant
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 | var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
| `- warning: variable 'r4' was never mutated; consider changing to 'let' constant
241 |
242 | var h0: UInt32 = 0, h1: UInt32 = 0, h2: UInt32 = 0, h3: UInt32 = 0, h4: UInt32 = 0
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:303:9: warning: variable 'f0' was never mutated; consider changing to 'let' constant
301 |
302 | // Serialize h
303 | var f0 = (h0 | (h1 << 26)) & 0xffffffff
| `- warning: variable 'f0' was never mutated; consider changing to 'let' constant
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:304:9: warning: variable 'f1' was never mutated; consider changing to 'let' constant
302 | // Serialize h
303 | var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
| `- warning: variable 'f1' was never mutated; consider changing to 'let' constant
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 | var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:305:9: warning: variable 'f2' was never mutated; consider changing to 'let' constant
303 | var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
| `- warning: variable 'f2' was never mutated; consider changing to 'let' constant
306 | var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
307 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:306:9: warning: variable 'f3' was never mutated; consider changing to 'let' constant
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 | var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
| `- warning: variable 'f3' was never mutated; consider changing to 'let' constant
307 |
308 | // Add s
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/VoiceGateway.swift:74:32: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
72 | private func startHeartbeat(intervalMs: Int) {
73 | hbTask?.cancel()
74 | hbTask = Task.detached { [weak self] in
| `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
75 | guard let self else { return }
| `- note: closure captures 'self' which is accessible to code in the current task
76 | let intervalNs = UInt64(intervalMs) * 1_000_000
77 | while !Task.isCancelled {
[62/63] Compiling SwiftDisc VoiceReceiver.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:236:9: warning: variable 'r0' was never mutated; consider changing to 'let' constant
234 | let s = Array(key[16..<32])
235 |
236 | var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
| `- warning: variable 'r0' was never mutated; consider changing to 'let' constant
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:237:9: warning: variable 'r1' was never mutated; consider changing to 'let' constant
235 |
236 | var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
| `- warning: variable 'r1' was never mutated; consider changing to 'let' constant
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:238:9: warning: variable 'r2' was never mutated; consider changing to 'let' constant
236 | var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
| `- warning: variable 'r2' was never mutated; consider changing to 'let' constant
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 | var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:239:9: warning: variable 'r3' was never mutated; consider changing to 'let' constant
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
| `- warning: variable 'r3' was never mutated; consider changing to 'let' constant
240 | var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
241 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:240:9: warning: variable 'r4' was never mutated; consider changing to 'let' constant
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 | var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
| `- warning: variable 'r4' was never mutated; consider changing to 'let' constant
241 |
242 | var h0: UInt32 = 0, h1: UInt32 = 0, h2: UInt32 = 0, h3: UInt32 = 0, h4: UInt32 = 0
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:303:9: warning: variable 'f0' was never mutated; consider changing to 'let' constant
301 |
302 | // Serialize h
303 | var f0 = (h0 | (h1 << 26)) & 0xffffffff
| `- warning: variable 'f0' was never mutated; consider changing to 'let' constant
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:304:9: warning: variable 'f1' was never mutated; consider changing to 'let' constant
302 | // Serialize h
303 | var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
| `- warning: variable 'f1' was never mutated; consider changing to 'let' constant
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 | var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:305:9: warning: variable 'f2' was never mutated; consider changing to 'let' constant
303 | var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
| `- warning: variable 'f2' was never mutated; consider changing to 'let' constant
306 | var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
307 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:306:9: warning: variable 'f3' was never mutated; consider changing to 'let' constant
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 | var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
| `- warning: variable 'f3' was never mutated; consider changing to 'let' constant
307 |
308 | // Add s
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/VoiceGateway.swift:74:32: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
72 | private func startHeartbeat(intervalMs: Int) {
73 | hbTask?.cancel()
74 | hbTask = Task.detached { [weak self] in
| `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
75 | guard let self else { return }
| `- note: closure captures 'self' which is accessible to code in the current task
76 | let intervalNs = UInt64(intervalMs) * 1_000_000
77 | while !Task.isCancelled {
[63/63] Compiling SwiftDisc VoiceSender.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:236:9: warning: variable 'r0' was never mutated; consider changing to 'let' constant
234 | let s = Array(key[16..<32])
235 |
236 | var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
| `- warning: variable 'r0' was never mutated; consider changing to 'let' constant
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:237:9: warning: variable 'r1' was never mutated; consider changing to 'let' constant
235 |
236 | var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
| `- warning: variable 'r1' was never mutated; consider changing to 'let' constant
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:238:9: warning: variable 'r2' was never mutated; consider changing to 'let' constant
236 | var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
| `- warning: variable 'r2' was never mutated; consider changing to 'let' constant
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 | var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:239:9: warning: variable 'r3' was never mutated; consider changing to 'let' constant
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
| `- warning: variable 'r3' was never mutated; consider changing to 'let' constant
240 | var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
241 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:240:9: warning: variable 'r4' was never mutated; consider changing to 'let' constant
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 | var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
| `- warning: variable 'r4' was never mutated; consider changing to 'let' constant
241 |
242 | var h0: UInt32 = 0, h1: UInt32 = 0, h2: UInt32 = 0, h3: UInt32 = 0, h4: UInt32 = 0
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:303:9: warning: variable 'f0' was never mutated; consider changing to 'let' constant
301 |
302 | // Serialize h
303 | var f0 = (h0 | (h1 << 26)) & 0xffffffff
| `- warning: variable 'f0' was never mutated; consider changing to 'let' constant
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:304:9: warning: variable 'f1' was never mutated; consider changing to 'let' constant
302 | // Serialize h
303 | var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
| `- warning: variable 'f1' was never mutated; consider changing to 'let' constant
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 | var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:305:9: warning: variable 'f2' was never mutated; consider changing to 'let' constant
303 | var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
| `- warning: variable 'f2' was never mutated; consider changing to 'let' constant
306 | var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
307 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:306:9: warning: variable 'f3' was never mutated; consider changing to 'let' constant
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 | var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
| `- warning: variable 'f3' was never mutated; consider changing to 'let' constant
307 |
308 | // Add s
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/VoiceGateway.swift:74:32: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
72 | private func startHeartbeat(intervalMs: Int) {
73 | hbTask?.cancel()
74 | hbTask = Task.detached { [weak self] in
| `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
75 | guard let self else { return }
| `- note: closure captures 'self' which is accessible to code in the current task
76 | let intervalNs = UInt64(intervalMs) * 1_000_000
77 | while !Task.isCancelled {
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-3":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/finestructure/spi-images:android-6.1-latest swift build --swift-sdk aarch64-unknown-linux-android24 2>&1
android-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:91d018f1076d6a900d71818287e1b2618039c67008f0564a121787f87e1ae735
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:android-6.1-latest
[0/1] Planning build
Building for debugging...
[0/1] Write swift-version-24593BA9C3E375BF.txt
error: emit-module command failed with exit code 1 (use -v to see invocation)
[2/55] Emitting module SwiftDisc
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:52:133: error: cannot find type 'PermissionBitset' in scope
50 |
51 | // New method using cache for effective permissions
52 | public static func effectivePermissionsWithCache(cache: Cache, userId: UserID, guildId: GuildID, channelId: ChannelID) async -> PermissionBitset? {
| `- error: cannot find type 'PermissionBitset' in scope
53 | // Fetch guild and channel from cache
54 | guard let guild = await cache.getGuild(id: guildId),
[3/62] Compiling SwiftDisc Cache.swift
[4/62] Compiling SwiftDisc DiscordConfiguration.swift
[5/62] Compiling SwiftDisc DiscordError.swift
[6/62] Compiling SwiftDisc DiscordUtils.swift
[7/62] Compiling SwiftDisc EventDispatcher.swift
[8/62] Compiling SwiftDisc JSONValue.swift
[9/62] Compiling SwiftDisc AdvancedMessagePayloads.swift
[10/62] Compiling SwiftDisc ApplicationRoleConnection.swift
[11/62] Compiling SwiftDisc PartialGuild.swift
[12/62] Compiling SwiftDisc Role.swift
[13/62] Compiling SwiftDisc ScheduledEvent.swift
[14/62] Compiling SwiftDisc ScheduledEventUser.swift
[15/62] Compiling SwiftDisc Snowflake.swift
[16/62] Compiling SwiftDisc StageInstance.swift
[17/62] Compiling SwiftDisc Sticker.swift
[18/62] Compiling SwiftDisc GuildBan.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:46:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
44 |
45 | public struct ActionRow: Codable, Hashable {
46 | public let type: Int = 1
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
47 | public let components: [MessageComponent]
48 | public init(components: [MessageComponent]) { self.components = components }
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:52:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
50 |
51 | public struct Button: Codable, Hashable {
52 | public let type: Int = 2
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
53 | public let style: Int
54 | public let label: String?
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:75:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
73 | public let `default`: Bool?
74 | }
75 | public let type: Int = 3
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
76 | public let custom_id: String
77 | public let options: [Option]
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:94:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
92 | public struct TextInput: Codable, Hashable {
93 | public enum Style: Int, Codable { case short = 1, paragraph = 2 }
94 | public let type: Int = 4
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
95 | public let custom_id: String
96 | public let style: Style
[19/62] Compiling SwiftDisc GuildMember.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:46:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
44 |
45 | public struct ActionRow: Codable, Hashable {
46 | public let type: Int = 1
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
47 | public let components: [MessageComponent]
48 | public init(components: [MessageComponent]) { self.components = components }
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:52:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
50 |
51 | public struct Button: Codable, Hashable {
52 | public let type: Int = 2
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
53 | public let style: Int
54 | public let label: String?
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:75:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
73 | public let `default`: Bool?
74 | }
75 | public let type: Int = 3
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
76 | public let custom_id: String
77 | public let options: [Option]
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:94:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
92 | public struct TextInput: Codable, Hashable {
93 | public enum Style: Int, Codable { case short = 1, paragraph = 2 }
94 | public let type: Int = 4
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
95 | public let custom_id: String
96 | public let style: Style
[20/62] Compiling SwiftDisc GuildWidgetSettings.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:46:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
44 |
45 | public struct ActionRow: Codable, Hashable {
46 | public let type: Int = 1
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
47 | public let components: [MessageComponent]
48 | public init(components: [MessageComponent]) { self.components = components }
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:52:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
50 |
51 | public struct Button: Codable, Hashable {
52 | public let type: Int = 2
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
53 | public let style: Int
54 | public let label: String?
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:75:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
73 | public let `default`: Bool?
74 | }
75 | public let type: Int = 3
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
76 | public let custom_id: String
77 | public let options: [Option]
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:94:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
92 | public struct TextInput: Codable, Hashable {
93 | public enum Style: Int, Codable { case short = 1, paragraph = 2 }
94 | public let type: Int = 4
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
95 | public let custom_id: String
96 | public let style: Style
[21/62] Compiling SwiftDisc Interaction.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:46:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
44 |
45 | public struct ActionRow: Codable, Hashable {
46 | public let type: Int = 1
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
47 | public let components: [MessageComponent]
48 | public init(components: [MessageComponent]) { self.components = components }
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:52:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
50 |
51 | public struct Button: Codable, Hashable {
52 | public let type: Int = 2
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
53 | public let style: Int
54 | public let label: String?
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:75:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
73 | public let `default`: Bool?
74 | }
75 | public let type: Int = 3
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
76 | public let custom_id: String
77 | public let options: [Option]
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:94:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
92 | public struct TextInput: Codable, Hashable {
93 | public enum Style: Int, Codable { case short = 1, paragraph = 2 }
94 | public let type: Int = 4
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
95 | public let custom_id: String
96 | public let style: Style
[22/62] Compiling SwiftDisc Invite.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:46:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
44 |
45 | public struct ActionRow: Codable, Hashable {
46 | public let type: Int = 1
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
47 | public let components: [MessageComponent]
48 | public init(components: [MessageComponent]) { self.components = components }
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:52:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
50 |
51 | public struct Button: Codable, Hashable {
52 | public let type: Int = 2
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
53 | public let style: Int
54 | public let label: String?
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:75:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
73 | public let `default`: Bool?
74 | }
75 | public let type: Int = 3
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
76 | public let custom_id: String
77 | public let options: [Option]
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:94:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
92 | public struct TextInput: Codable, Hashable {
93 | public enum Style: Int, Codable { case short = 1, paragraph = 2 }
94 | public let type: Int = 4
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
95 | public let custom_id: String
96 | public let style: Style
[23/62] Compiling SwiftDisc Message.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:46:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
44 |
45 | public struct ActionRow: Codable, Hashable {
46 | public let type: Int = 1
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
47 | public let components: [MessageComponent]
48 | public init(components: [MessageComponent]) { self.components = components }
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:52:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
50 |
51 | public struct Button: Codable, Hashable {
52 | public let type: Int = 2
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
53 | public let style: Int
54 | public let label: String?
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:75:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
73 | public let `default`: Bool?
74 | }
75 | public let type: Int = 3
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
76 | public let custom_id: String
77 | public let options: [Option]
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:94:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
92 | public struct TextInput: Codable, Hashable {
93 | public enum Style: Int, Codable { case short = 1, paragraph = 2 }
94 | public let type: Int = 4
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
95 | public let custom_id: String
96 | public let style: Style
[24/62] Compiling SwiftDisc MessageComponents.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:46:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
44 |
45 | public struct ActionRow: Codable, Hashable {
46 | public let type: Int = 1
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
47 | public let components: [MessageComponent]
48 | public init(components: [MessageComponent]) { self.components = components }
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:52:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
50 |
51 | public struct Button: Codable, Hashable {
52 | public let type: Int = 2
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
53 | public let style: Int
54 | public let label: String?
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:75:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
73 | public let `default`: Bool?
74 | }
75 | public let type: Int = 3
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
76 | public let custom_id: String
77 | public let options: [Option]
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:94:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
92 | public struct TextInput: Codable, Hashable {
93 | public enum Style: Int, Codable { case short = 1, paragraph = 2 }
94 | public let type: Int = 4
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
95 | public let custom_id: String
96 | public let style: Style
[25/62] Compiling SwiftDisc DiscordClient.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/GatewayModels.swift:207:16: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
205 | // MARK: - Request/Receive Guild Members
206 | public struct RequestGuildMembers: Codable, Hashable {
207 | public let op: Int = 8
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'op' case to silence this warning
| `- note: make the property mutable instead
208 | public let d: Payload
209 | public struct Payload: Codable, Hashable {
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:24:16: error: cannot assign to property: 'waitsForConnectivity' is a get-only property
22 | let config = URLSessionConfiguration.default
23 | #if !os(Windows)
24 | config.waitsForConnectivity = true
| `- error: cannot assign to property: 'waitsForConnectivity' is a get-only property
25 | #endif
26 | config.requestCachePolicy = .reloadIgnoringLocalCacheData
[26/62] Compiling SwiftDisc GatewayClient.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/GatewayModels.swift:207:16: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
205 | // MARK: - Request/Receive Guild Members
206 | public struct RequestGuildMembers: Codable, Hashable {
207 | public let op: Int = 8
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'op' case to silence this warning
| `- note: make the property mutable instead
208 | public let d: Payload
209 | public struct Payload: Codable, Hashable {
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:24:16: error: cannot assign to property: 'waitsForConnectivity' is a get-only property
22 | let config = URLSessionConfiguration.default
23 | #if !os(Windows)
24 | config.waitsForConnectivity = true
| `- error: cannot assign to property: 'waitsForConnectivity' is a get-only property
25 | #endif
26 | config.requestCachePolicy = .reloadIgnoringLocalCacheData
[27/62] Compiling SwiftDisc GatewayModels.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/GatewayModels.swift:207:16: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
205 | // MARK: - Request/Receive Guild Members
206 | public struct RequestGuildMembers: Codable, Hashable {
207 | public let op: Int = 8
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'op' case to silence this warning
| `- note: make the property mutable instead
208 | public let d: Payload
209 | public struct Payload: Codable, Hashable {
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:24:16: error: cannot assign to property: 'waitsForConnectivity' is a get-only property
22 | let config = URLSessionConfiguration.default
23 | #if !os(Windows)
24 | config.waitsForConnectivity = true
| `- error: cannot assign to property: 'waitsForConnectivity' is a get-only property
25 | #endif
26 | config.requestCachePolicy = .reloadIgnoringLocalCacheData
[28/62] Compiling SwiftDisc Intents.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/GatewayModels.swift:207:16: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
205 | // MARK: - Request/Receive Guild Members
206 | public struct RequestGuildMembers: Codable, Hashable {
207 | public let op: Int = 8
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'op' case to silence this warning
| `- note: make the property mutable instead
208 | public let d: Payload
209 | public struct Payload: Codable, Hashable {
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:24:16: error: cannot assign to property: 'waitsForConnectivity' is a get-only property
22 | let config = URLSessionConfiguration.default
23 | #if !os(Windows)
24 | config.waitsForConnectivity = true
| `- error: cannot assign to property: 'waitsForConnectivity' is a get-only property
25 | #endif
26 | config.requestCachePolicy = .reloadIgnoringLocalCacheData
[29/62] Compiling SwiftDisc WebSocket.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/GatewayModels.swift:207:16: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
205 | // MARK: - Request/Receive Guild Members
206 | public struct RequestGuildMembers: Codable, Hashable {
207 | public let op: Int = 8
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'op' case to silence this warning
| `- note: make the property mutable instead
208 | public let d: Payload
209 | public struct Payload: Codable, Hashable {
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:24:16: error: cannot assign to property: 'waitsForConnectivity' is a get-only property
22 | let config = URLSessionConfiguration.default
23 | #if !os(Windows)
24 | config.waitsForConnectivity = true
| `- error: cannot assign to property: 'waitsForConnectivity' is a get-only property
25 | #endif
26 | config.requestCachePolicy = .reloadIgnoringLocalCacheData
[30/62] Compiling SwiftDisc ActivityBuilder.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/GatewayModels.swift:207:16: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
205 | // MARK: - Request/Receive Guild Members
206 | public struct RequestGuildMembers: Codable, Hashable {
207 | public let op: Int = 8
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'op' case to silence this warning
| `- note: make the property mutable instead
208 | public let d: Payload
209 | public struct Payload: Codable, Hashable {
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:24:16: error: cannot assign to property: 'waitsForConnectivity' is a get-only property
22 | let config = URLSessionConfiguration.default
23 | #if !os(Windows)
24 | config.waitsForConnectivity = true
| `- error: cannot assign to property: 'waitsForConnectivity' is a get-only property
25 | #endif
26 | config.requestCachePolicy = .reloadIgnoringLocalCacheData
[31/62] Compiling SwiftDisc AutocompleteRouter.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/GatewayModels.swift:207:16: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
205 | // MARK: - Request/Receive Guild Members
206 | public struct RequestGuildMembers: Codable, Hashable {
207 | public let op: Int = 8
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'op' case to silence this warning
| `- note: make the property mutable instead
208 | public let d: Payload
209 | public struct Payload: Codable, Hashable {
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:24:16: error: cannot assign to property: 'waitsForConnectivity' is a get-only property
22 | let config = URLSessionConfiguration.default
23 | #if !os(Windows)
24 | config.waitsForConnectivity = true
| `- error: cannot assign to property: 'waitsForConnectivity' is a get-only property
25 | #endif
26 | config.requestCachePolicy = .reloadIgnoringLocalCacheData
[32/62] Compiling SwiftDisc CommandRouter.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/GatewayModels.swift:207:16: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
205 | // MARK: - Request/Receive Guild Members
206 | public struct RequestGuildMembers: Codable, Hashable {
207 | public let op: Int = 8
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'op' case to silence this warning
| `- note: make the property mutable instead
208 | public let d: Payload
209 | public struct Payload: Codable, Hashable {
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:24:16: error: cannot assign to property: 'waitsForConnectivity' is a get-only property
22 | let config = URLSessionConfiguration.default
23 | #if !os(Windows)
24 | config.waitsForConnectivity = true
| `- error: cannot assign to property: 'waitsForConnectivity' is a get-only property
25 | #endif
26 | config.requestCachePolicy = .reloadIgnoringLocalCacheData
[33/62] Compiling SwiftDisc ComponentsBuilder.swift
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:52:133: error: cannot find type 'PermissionBitset' in scope
50 |
51 | // New method using cache for effective permissions
52 | public static func effectivePermissionsWithCache(cache: Cache, userId: UserID, guildId: GuildID, channelId: ChannelID) async -> PermissionBitset? {
| `- error: cannot find type 'PermissionBitset' in scope
53 | // Fetch guild and channel from cache
54 | guard let guild = await cache.getGuild(id: guildId),
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:64:13: error: cannot find 'PermissionBitset' in scope
62 | // Convert string permissions to PermissionBitset (assuming guild roles have permissions)
63 | let guildRoles = guild.roles?.compactMap { role in
64 | PermissionBitset(rawValue: UInt64(role.permissions ?? "0") ?? 0)
| `- error: cannot find 'PermissionBitset' in scope
65 | } ?? []
66 |
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:63:32: error: value of type 'Guild' has no member 'roles'
61 |
62 | // Convert string permissions to PermissionBitset (assuming guild roles have permissions)
63 | let guildRoles = guild.roles?.compactMap { role in
| `- error: value of type 'Guild' has no member 'roles'
64 | PermissionBitset(rawValue: UInt64(role.permissions ?? "0") ?? 0)
65 | } ?? []
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:68:21: error: cannot find 'PermissionBitset' in scope
66 |
67 | // Compute effective permissions similar to existing logic but with PermissionBitset
68 | var allow = PermissionBitset(rawValue: 0)
| `- error: cannot find 'PermissionBitset' in scope
69 |
70 | // 1) Base = @everyone role perms (find @everyone role)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:76:127: error: cannot find 'PermissionBitset' in scope
74 |
75 | // 2) Aggregate member roles (OR operation)
76 | let rolePerms = memberRoleIds.compactMap { roleId in guildRoles.first { $0.id == roleId }?.permissionsBitset }.reduce(PermissionBitset(), { $0.union($1) })
| `- error: cannot find 'PermissionBitset' in scope
77 | allow.formUnion(rolePerms)
78 |
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:83:24: error: cannot find 'PermissionBitset' in scope
81 | // Apply @everyone overwrite
82 | if let everyoneOW = overwrites.first(where: { $0.type == 0 && $0.id.rawValue == everyoneRoleId.rawValue }) {
83 | let deny = PermissionBitset(rawValue: UInt64(everyoneOW.deny ?? "0") ?? 0)
| `- error: cannot find 'PermissionBitset' in scope
84 | let add = PermissionBitset(rawValue: UInt64(everyoneOW.allow ?? "0") ?? 0)
85 | allow.subtract(deny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:84:23: error: cannot find 'PermissionBitset' in scope
82 | if let everyoneOW = overwrites.first(where: { $0.type == 0 && $0.id.rawValue == everyoneRoleId.rawValue }) {
83 | let deny = PermissionBitset(rawValue: UInt64(everyoneOW.deny ?? "0") ?? 0)
84 | let add = PermissionBitset(rawValue: UInt64(everyoneOW.allow ?? "0") ?? 0)
| `- error: cannot find 'PermissionBitset' in scope
85 | allow.subtract(deny)
86 | allow.formUnion(add)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:90:38: error: cannot find 'PermissionBitset' in scope
88 | // Apply role overwrites
89 | let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
90 | let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
| `- error: cannot find 'PermissionBitset' in scope
91 | let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
92 | allow.subtract(roleDeny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:90:69: error: cannot find 'PermissionBitset' in scope
88 | // Apply role overwrites
89 | let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
90 | let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
| `- error: cannot find 'PermissionBitset' in scope
91 | let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
92 | allow.subtract(roleDeny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:91:37: error: cannot find 'PermissionBitset' in scope
89 | let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
90 | let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
91 | let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
| `- error: cannot find 'PermissionBitset' in scope
92 | allow.subtract(roleDeny)
93 | allow.formUnion(roleAdd)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:91:68: error: cannot find 'PermissionBitset' in scope
89 | let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
90 | let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
91 | let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
| `- error: cannot find 'PermissionBitset' in scope
92 | allow.subtract(roleDeny)
93 | allow.formUnion(roleAdd)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:96:24: error: cannot find 'PermissionBitset' in scope
94 | // Apply member overwrite
95 | if let memberOW = overwrites.first(where: { $0.type == 1 && $0.id.rawValue == userId.rawValue }) {
96 | let deny = PermissionBitset(rawValue: UInt64(memberOW.deny ?? "0") ?? 0)
| `- error: cannot find 'PermissionBitset' in scope
97 | let add = PermissionBitset(rawValue: UInt64(memberOW.allow ?? "0") ?? 0)
98 | allow.subtract(deny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:97:23: error: cannot find 'PermissionBitset' in scope
95 | if let memberOW = overwrites.first(where: { $0.type == 1 && $0.id.rawValue == userId.rawValue }) {
96 | let deny = PermissionBitset(rawValue: UInt64(memberOW.deny ?? "0") ?? 0)
97 | let add = PermissionBitset(rawValue: UInt64(memberOW.allow ?? "0") ?? 0)
| `- error: cannot find 'PermissionBitset' in scope
98 | allow.subtract(deny)
99 | allow.formUnion(add)
[34/62] Compiling SwiftDisc Extensions.swift
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:52:133: error: cannot find type 'PermissionBitset' in scope
50 |
51 | // New method using cache for effective permissions
52 | public static func effectivePermissionsWithCache(cache: Cache, userId: UserID, guildId: GuildID, channelId: ChannelID) async -> PermissionBitset? {
| `- error: cannot find type 'PermissionBitset' in scope
53 | // Fetch guild and channel from cache
54 | guard let guild = await cache.getGuild(id: guildId),
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:64:13: error: cannot find 'PermissionBitset' in scope
62 | // Convert string permissions to PermissionBitset (assuming guild roles have permissions)
63 | let guildRoles = guild.roles?.compactMap { role in
64 | PermissionBitset(rawValue: UInt64(role.permissions ?? "0") ?? 0)
| `- error: cannot find 'PermissionBitset' in scope
65 | } ?? []
66 |
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:63:32: error: value of type 'Guild' has no member 'roles'
61 |
62 | // Convert string permissions to PermissionBitset (assuming guild roles have permissions)
63 | let guildRoles = guild.roles?.compactMap { role in
| `- error: value of type 'Guild' has no member 'roles'
64 | PermissionBitset(rawValue: UInt64(role.permissions ?? "0") ?? 0)
65 | } ?? []
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:68:21: error: cannot find 'PermissionBitset' in scope
66 |
67 | // Compute effective permissions similar to existing logic but with PermissionBitset
68 | var allow = PermissionBitset(rawValue: 0)
| `- error: cannot find 'PermissionBitset' in scope
69 |
70 | // 1) Base = @everyone role perms (find @everyone role)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:76:127: error: cannot find 'PermissionBitset' in scope
74 |
75 | // 2) Aggregate member roles (OR operation)
76 | let rolePerms = memberRoleIds.compactMap { roleId in guildRoles.first { $0.id == roleId }?.permissionsBitset }.reduce(PermissionBitset(), { $0.union($1) })
| `- error: cannot find 'PermissionBitset' in scope
77 | allow.formUnion(rolePerms)
78 |
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:83:24: error: cannot find 'PermissionBitset' in scope
81 | // Apply @everyone overwrite
82 | if let everyoneOW = overwrites.first(where: { $0.type == 0 && $0.id.rawValue == everyoneRoleId.rawValue }) {
83 | let deny = PermissionBitset(rawValue: UInt64(everyoneOW.deny ?? "0") ?? 0)
| `- error: cannot find 'PermissionBitset' in scope
84 | let add = PermissionBitset(rawValue: UInt64(everyoneOW.allow ?? "0") ?? 0)
85 | allow.subtract(deny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:84:23: error: cannot find 'PermissionBitset' in scope
82 | if let everyoneOW = overwrites.first(where: { $0.type == 0 && $0.id.rawValue == everyoneRoleId.rawValue }) {
83 | let deny = PermissionBitset(rawValue: UInt64(everyoneOW.deny ?? "0") ?? 0)
84 | let add = PermissionBitset(rawValue: UInt64(everyoneOW.allow ?? "0") ?? 0)
| `- error: cannot find 'PermissionBitset' in scope
85 | allow.subtract(deny)
86 | allow.formUnion(add)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:90:38: error: cannot find 'PermissionBitset' in scope
88 | // Apply role overwrites
89 | let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
90 | let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
| `- error: cannot find 'PermissionBitset' in scope
91 | let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
92 | allow.subtract(roleDeny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:90:69: error: cannot find 'PermissionBitset' in scope
88 | // Apply role overwrites
89 | let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
90 | let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
| `- error: cannot find 'PermissionBitset' in scope
91 | let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
92 | allow.subtract(roleDeny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:91:37: error: cannot find 'PermissionBitset' in scope
89 | let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
90 | let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
91 | let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
| `- error: cannot find 'PermissionBitset' in scope
92 | allow.subtract(roleDeny)
93 | allow.formUnion(roleAdd)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:91:68: error: cannot find 'PermissionBitset' in scope
89 | let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
90 | let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
91 | let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
| `- error: cannot find 'PermissionBitset' in scope
92 | allow.subtract(roleDeny)
93 | allow.formUnion(roleAdd)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:96:24: error: cannot find 'PermissionBitset' in scope
94 | // Apply member overwrite
95 | if let memberOW = overwrites.first(where: { $0.type == 1 && $0.id.rawValue == userId.rawValue }) {
96 | let deny = PermissionBitset(rawValue: UInt64(memberOW.deny ?? "0") ?? 0)
| `- error: cannot find 'PermissionBitset' in scope
97 | let add = PermissionBitset(rawValue: UInt64(memberOW.allow ?? "0") ?? 0)
98 | allow.subtract(deny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:97:23: error: cannot find 'PermissionBitset' in scope
95 | if let memberOW = overwrites.first(where: { $0.type == 1 && $0.id.rawValue == userId.rawValue }) {
96 | let deny = PermissionBitset(rawValue: UInt64(memberOW.deny ?? "0") ?? 0)
97 | let add = PermissionBitset(rawValue: UInt64(memberOW.allow ?? "0") ?? 0)
| `- error: cannot find 'PermissionBitset' in scope
98 | allow.subtract(deny)
99 | allow.formUnion(add)
[35/62] Compiling SwiftDisc Permissions.swift
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:52:133: error: cannot find type 'PermissionBitset' in scope
50 |
51 | // New method using cache for effective permissions
52 | public static func effectivePermissionsWithCache(cache: Cache, userId: UserID, guildId: GuildID, channelId: ChannelID) async -> PermissionBitset? {
| `- error: cannot find type 'PermissionBitset' in scope
53 | // Fetch guild and channel from cache
54 | guard let guild = await cache.getGuild(id: guildId),
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:64:13: error: cannot find 'PermissionBitset' in scope
62 | // Convert string permissions to PermissionBitset (assuming guild roles have permissions)
63 | let guildRoles = guild.roles?.compactMap { role in
64 | PermissionBitset(rawValue: UInt64(role.permissions ?? "0") ?? 0)
| `- error: cannot find 'PermissionBitset' in scope
65 | } ?? []
66 |
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:63:32: error: value of type 'Guild' has no member 'roles'
61 |
62 | // Convert string permissions to PermissionBitset (assuming guild roles have permissions)
63 | let guildRoles = guild.roles?.compactMap { role in
| `- error: value of type 'Guild' has no member 'roles'
64 | PermissionBitset(rawValue: UInt64(role.permissions ?? "0") ?? 0)
65 | } ?? []
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:68:21: error: cannot find 'PermissionBitset' in scope
66 |
67 | // Compute effective permissions similar to existing logic but with PermissionBitset
68 | var allow = PermissionBitset(rawValue: 0)
| `- error: cannot find 'PermissionBitset' in scope
69 |
70 | // 1) Base = @everyone role perms (find @everyone role)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:76:127: error: cannot find 'PermissionBitset' in scope
74 |
75 | // 2) Aggregate member roles (OR operation)
76 | let rolePerms = memberRoleIds.compactMap { roleId in guildRoles.first { $0.id == roleId }?.permissionsBitset }.reduce(PermissionBitset(), { $0.union($1) })
| `- error: cannot find 'PermissionBitset' in scope
77 | allow.formUnion(rolePerms)
78 |
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:83:24: error: cannot find 'PermissionBitset' in scope
81 | // Apply @everyone overwrite
82 | if let everyoneOW = overwrites.first(where: { $0.type == 0 && $0.id.rawValue == everyoneRoleId.rawValue }) {
83 | let deny = PermissionBitset(rawValue: UInt64(everyoneOW.deny ?? "0") ?? 0)
| `- error: cannot find 'PermissionBitset' in scope
84 | let add = PermissionBitset(rawValue: UInt64(everyoneOW.allow ?? "0") ?? 0)
85 | allow.subtract(deny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:84:23: error: cannot find 'PermissionBitset' in scope
82 | if let everyoneOW = overwrites.first(where: { $0.type == 0 && $0.id.rawValue == everyoneRoleId.rawValue }) {
83 | let deny = PermissionBitset(rawValue: UInt64(everyoneOW.deny ?? "0") ?? 0)
84 | let add = PermissionBitset(rawValue: UInt64(everyoneOW.allow ?? "0") ?? 0)
| `- error: cannot find 'PermissionBitset' in scope
85 | allow.subtract(deny)
86 | allow.formUnion(add)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:90:38: error: cannot find 'PermissionBitset' in scope
88 | // Apply role overwrites
89 | let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
90 | let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
| `- error: cannot find 'PermissionBitset' in scope
91 | let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
92 | allow.subtract(roleDeny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:90:69: error: cannot find 'PermissionBitset' in scope
88 | // Apply role overwrites
89 | let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
90 | let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
| `- error: cannot find 'PermissionBitset' in scope
91 | let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
92 | allow.subtract(roleDeny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:91:37: error: cannot find 'PermissionBitset' in scope
89 | let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
90 | let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
91 | let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
| `- error: cannot find 'PermissionBitset' in scope
92 | allow.subtract(roleDeny)
93 | allow.formUnion(roleAdd)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:91:68: error: cannot find 'PermissionBitset' in scope
89 | let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
90 | let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
91 | let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
| `- error: cannot find 'PermissionBitset' in scope
92 | allow.subtract(roleDeny)
93 | allow.formUnion(roleAdd)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:96:24: error: cannot find 'PermissionBitset' in scope
94 | // Apply member overwrite
95 | if let memberOW = overwrites.first(where: { $0.type == 1 && $0.id.rawValue == userId.rawValue }) {
96 | let deny = PermissionBitset(rawValue: UInt64(memberOW.deny ?? "0") ?? 0)
| `- error: cannot find 'PermissionBitset' in scope
97 | let add = PermissionBitset(rawValue: UInt64(memberOW.allow ?? "0") ?? 0)
98 | allow.subtract(deny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:97:23: error: cannot find 'PermissionBitset' in scope
95 | if let memberOW = overwrites.first(where: { $0.type == 1 && $0.id.rawValue == userId.rawValue }) {
96 | let deny = PermissionBitset(rawValue: UInt64(memberOW.deny ?? "0") ?? 0)
97 | let add = PermissionBitset(rawValue: UInt64(memberOW.allow ?? "0") ?? 0)
| `- error: cannot find 'PermissionBitset' in scope
98 | allow.subtract(deny)
99 | allow.formUnion(add)
[36/62] Compiling SwiftDisc ShardManager.swift
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:52:133: error: cannot find type 'PermissionBitset' in scope
50 |
51 | // New method using cache for effective permissions
52 | public static func effectivePermissionsWithCache(cache: Cache, userId: UserID, guildId: GuildID, channelId: ChannelID) async -> PermissionBitset? {
| `- error: cannot find type 'PermissionBitset' in scope
53 | // Fetch guild and channel from cache
54 | guard let guild = await cache.getGuild(id: guildId),
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:64:13: error: cannot find 'PermissionBitset' in scope
62 | // Convert string permissions to PermissionBitset (assuming guild roles have permissions)
63 | let guildRoles = guild.roles?.compactMap { role in
64 | PermissionBitset(rawValue: UInt64(role.permissions ?? "0") ?? 0)
| `- error: cannot find 'PermissionBitset' in scope
65 | } ?? []
66 |
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:63:32: error: value of type 'Guild' has no member 'roles'
61 |
62 | // Convert string permissions to PermissionBitset (assuming guild roles have permissions)
63 | let guildRoles = guild.roles?.compactMap { role in
| `- error: value of type 'Guild' has no member 'roles'
64 | PermissionBitset(rawValue: UInt64(role.permissions ?? "0") ?? 0)
65 | } ?? []
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:68:21: error: cannot find 'PermissionBitset' in scope
66 |
67 | // Compute effective permissions similar to existing logic but with PermissionBitset
68 | var allow = PermissionBitset(rawValue: 0)
| `- error: cannot find 'PermissionBitset' in scope
69 |
70 | // 1) Base = @everyone role perms (find @everyone role)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:76:127: error: cannot find 'PermissionBitset' in scope
74 |
75 | // 2) Aggregate member roles (OR operation)
76 | let rolePerms = memberRoleIds.compactMap { roleId in guildRoles.first { $0.id == roleId }?.permissionsBitset }.reduce(PermissionBitset(), { $0.union($1) })
| `- error: cannot find 'PermissionBitset' in scope
77 | allow.formUnion(rolePerms)
78 |
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:83:24: error: cannot find 'PermissionBitset' in scope
81 | // Apply @everyone overwrite
82 | if let everyoneOW = overwrites.first(where: { $0.type == 0 && $0.id.rawValue == everyoneRoleId.rawValue }) {
83 | let deny = PermissionBitset(rawValue: UInt64(everyoneOW.deny ?? "0") ?? 0)
| `- error: cannot find 'PermissionBitset' in scope
84 | let add = PermissionBitset(rawValue: UInt64(everyoneOW.allow ?? "0") ?? 0)
85 | allow.subtract(deny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:84:23: error: cannot find 'PermissionBitset' in scope
82 | if let everyoneOW = overwrites.first(where: { $0.type == 0 && $0.id.rawValue == everyoneRoleId.rawValue }) {
83 | let deny = PermissionBitset(rawValue: UInt64(everyoneOW.deny ?? "0") ?? 0)
84 | let add = PermissionBitset(rawValue: UInt64(everyoneOW.allow ?? "0") ?? 0)
| `- error: cannot find 'PermissionBitset' in scope
85 | allow.subtract(deny)
86 | allow.formUnion(add)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:90:38: error: cannot find 'PermissionBitset' in scope
88 | // Apply role overwrites
89 | let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
90 | let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
| `- error: cannot find 'PermissionBitset' in scope
91 | let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
92 | allow.subtract(roleDeny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:90:69: error: cannot find 'PermissionBitset' in scope
88 | // Apply role overwrites
89 | let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
90 | let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
| `- error: cannot find 'PermissionBitset' in scope
91 | let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
92 | allow.subtract(roleDeny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:91:37: error: cannot find 'PermissionBitset' in scope
89 | let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
90 | let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
91 | let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
| `- error: cannot find 'PermissionBitset' in scope
92 | allow.subtract(roleDeny)
93 | allow.formUnion(roleAdd)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:91:68: error: cannot find 'PermissionBitset' in scope
89 | let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
90 | let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
91 | let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
| `- error: cannot find 'PermissionBitset' in scope
92 | allow.subtract(roleDeny)
93 | allow.formUnion(roleAdd)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:96:24: error: cannot find 'PermissionBitset' in scope
94 | // Apply member overwrite
95 | if let memberOW = overwrites.first(where: { $0.type == 1 && $0.id.rawValue == userId.rawValue }) {
96 | let deny = PermissionBitset(rawValue: UInt64(memberOW.deny ?? "0") ?? 0)
| `- error: cannot find 'PermissionBitset' in scope
97 | let add = PermissionBitset(rawValue: UInt64(memberOW.allow ?? "0") ?? 0)
98 | allow.subtract(deny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:97:23: error: cannot find 'PermissionBitset' in scope
95 | if let memberOW = overwrites.first(where: { $0.type == 1 && $0.id.rawValue == userId.rawValue }) {
96 | let deny = PermissionBitset(rawValue: UInt64(memberOW.deny ?? "0") ?? 0)
97 | let add = PermissionBitset(rawValue: UInt64(memberOW.allow ?? "0") ?? 0)
| `- error: cannot find 'PermissionBitset' in scope
98 | allow.subtract(deny)
99 | allow.formUnion(add)
[37/62] Compiling SwiftDisc ShardingGatewayManager.swift
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:52:133: error: cannot find type 'PermissionBitset' in scope
50 |
51 | // New method using cache for effective permissions
52 | public static func effectivePermissionsWithCache(cache: Cache, userId: UserID, guildId: GuildID, channelId: ChannelID) async -> PermissionBitset? {
| `- error: cannot find type 'PermissionBitset' in scope
53 | // Fetch guild and channel from cache
54 | guard let guild = await cache.getGuild(id: guildId),
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:64:13: error: cannot find 'PermissionBitset' in scope
62 | // Convert string permissions to PermissionBitset (assuming guild roles have permissions)
63 | let guildRoles = guild.roles?.compactMap { role in
64 | PermissionBitset(rawValue: UInt64(role.permissions ?? "0") ?? 0)
| `- error: cannot find 'PermissionBitset' in scope
65 | } ?? []
66 |
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:63:32: error: value of type 'Guild' has no member 'roles'
61 |
62 | // Convert string permissions to PermissionBitset (assuming guild roles have permissions)
63 | let guildRoles = guild.roles?.compactMap { role in
| `- error: value of type 'Guild' has no member 'roles'
64 | PermissionBitset(rawValue: UInt64(role.permissions ?? "0") ?? 0)
65 | } ?? []
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:68:21: error: cannot find 'PermissionBitset' in scope
66 |
67 | // Compute effective permissions similar to existing logic but with PermissionBitset
68 | var allow = PermissionBitset(rawValue: 0)
| `- error: cannot find 'PermissionBitset' in scope
69 |
70 | // 1) Base = @everyone role perms (find @everyone role)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:76:127: error: cannot find 'PermissionBitset' in scope
74 |
75 | // 2) Aggregate member roles (OR operation)
76 | let rolePerms = memberRoleIds.compactMap { roleId in guildRoles.first { $0.id == roleId }?.permissionsBitset }.reduce(PermissionBitset(), { $0.union($1) })
| `- error: cannot find 'PermissionBitset' in scope
77 | allow.formUnion(rolePerms)
78 |
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:83:24: error: cannot find 'PermissionBitset' in scope
81 | // Apply @everyone overwrite
82 | if let everyoneOW = overwrites.first(where: { $0.type == 0 && $0.id.rawValue == everyoneRoleId.rawValue }) {
83 | let deny = PermissionBitset(rawValue: UInt64(everyoneOW.deny ?? "0") ?? 0)
| `- error: cannot find 'PermissionBitset' in scope
84 | let add = PermissionBitset(rawValue: UInt64(everyoneOW.allow ?? "0") ?? 0)
85 | allow.subtract(deny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:84:23: error: cannot find 'PermissionBitset' in scope
82 | if let everyoneOW = overwrites.first(where: { $0.type == 0 && $0.id.rawValue == everyoneRoleId.rawValue }) {
83 | let deny = PermissionBitset(rawValue: UInt64(everyoneOW.deny ?? "0") ?? 0)
84 | let add = PermissionBitset(rawValue: UInt64(everyoneOW.allow ?? "0") ?? 0)
| `- error: cannot find 'PermissionBitset' in scope
85 | allow.subtract(deny)
86 | allow.formUnion(add)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:90:38: error: cannot find 'PermissionBitset' in scope
88 | // Apply role overwrites
89 | let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
90 | let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
| `- error: cannot find 'PermissionBitset' in scope
91 | let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
92 | allow.subtract(roleDeny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:90:69: error: cannot find 'PermissionBitset' in scope
88 | // Apply role overwrites
89 | let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
90 | let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
| `- error: cannot find 'PermissionBitset' in scope
91 | let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
92 | allow.subtract(roleDeny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:91:37: error: cannot find 'PermissionBitset' in scope
89 | let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
90 | let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
91 | let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
| `- error: cannot find 'PermissionBitset' in scope
92 | allow.subtract(roleDeny)
93 | allow.formUnion(roleAdd)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:91:68: error: cannot find 'PermissionBitset' in scope
89 | let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
90 | let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
91 | let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
| `- error: cannot find 'PermissionBitset' in scope
92 | allow.subtract(roleDeny)
93 | allow.formUnion(roleAdd)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:96:24: error: cannot find 'PermissionBitset' in scope
94 | // Apply member overwrite
95 | if let memberOW = overwrites.first(where: { $0.type == 1 && $0.id.rawValue == userId.rawValue }) {
96 | let deny = PermissionBitset(rawValue: UInt64(memberOW.deny ?? "0") ?? 0)
| `- error: cannot find 'PermissionBitset' in scope
97 | let add = PermissionBitset(rawValue: UInt64(memberOW.allow ?? "0") ?? 0)
98 | allow.subtract(deny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:97:23: error: cannot find 'PermissionBitset' in scope
95 | if let memberOW = overwrites.first(where: { $0.type == 1 && $0.id.rawValue == userId.rawValue }) {
96 | let deny = PermissionBitset(rawValue: UInt64(memberOW.deny ?? "0") ?? 0)
97 | let add = PermissionBitset(rawValue: UInt64(memberOW.allow ?? "0") ?? 0)
| `- error: cannot find 'PermissionBitset' in scope
98 | allow.subtract(deny)
99 | allow.formUnion(add)
[38/62] Compiling SwiftDisc SlashCommandBuilder.swift
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:52:133: error: cannot find type 'PermissionBitset' in scope
50 |
51 | // New method using cache for effective permissions
52 | public static func effectivePermissionsWithCache(cache: Cache, userId: UserID, guildId: GuildID, channelId: ChannelID) async -> PermissionBitset? {
| `- error: cannot find type 'PermissionBitset' in scope
53 | // Fetch guild and channel from cache
54 | guard let guild = await cache.getGuild(id: guildId),
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:64:13: error: cannot find 'PermissionBitset' in scope
62 | // Convert string permissions to PermissionBitset (assuming guild roles have permissions)
63 | let guildRoles = guild.roles?.compactMap { role in
64 | PermissionBitset(rawValue: UInt64(role.permissions ?? "0") ?? 0)
| `- error: cannot find 'PermissionBitset' in scope
65 | } ?? []
66 |
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:63:32: error: value of type 'Guild' has no member 'roles'
61 |
62 | // Convert string permissions to PermissionBitset (assuming guild roles have permissions)
63 | let guildRoles = guild.roles?.compactMap { role in
| `- error: value of type 'Guild' has no member 'roles'
64 | PermissionBitset(rawValue: UInt64(role.permissions ?? "0") ?? 0)
65 | } ?? []
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:68:21: error: cannot find 'PermissionBitset' in scope
66 |
67 | // Compute effective permissions similar to existing logic but with PermissionBitset
68 | var allow = PermissionBitset(rawValue: 0)
| `- error: cannot find 'PermissionBitset' in scope
69 |
70 | // 1) Base = @everyone role perms (find @everyone role)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:76:127: error: cannot find 'PermissionBitset' in scope
74 |
75 | // 2) Aggregate member roles (OR operation)
76 | let rolePerms = memberRoleIds.compactMap { roleId in guildRoles.first { $0.id == roleId }?.permissionsBitset }.reduce(PermissionBitset(), { $0.union($1) })
| `- error: cannot find 'PermissionBitset' in scope
77 | allow.formUnion(rolePerms)
78 |
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:83:24: error: cannot find 'PermissionBitset' in scope
81 | // Apply @everyone overwrite
82 | if let everyoneOW = overwrites.first(where: { $0.type == 0 && $0.id.rawValue == everyoneRoleId.rawValue }) {
83 | let deny = PermissionBitset(rawValue: UInt64(everyoneOW.deny ?? "0") ?? 0)
| `- error: cannot find 'PermissionBitset' in scope
84 | let add = PermissionBitset(rawValue: UInt64(everyoneOW.allow ?? "0") ?? 0)
85 | allow.subtract(deny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:84:23: error: cannot find 'PermissionBitset' in scope
82 | if let everyoneOW = overwrites.first(where: { $0.type == 0 && $0.id.rawValue == everyoneRoleId.rawValue }) {
83 | let deny = PermissionBitset(rawValue: UInt64(everyoneOW.deny ?? "0") ?? 0)
84 | let add = PermissionBitset(rawValue: UInt64(everyoneOW.allow ?? "0") ?? 0)
| `- error: cannot find 'PermissionBitset' in scope
85 | allow.subtract(deny)
86 | allow.formUnion(add)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:90:38: error: cannot find 'PermissionBitset' in scope
88 | // Apply role overwrites
89 | let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
90 | let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
| `- error: cannot find 'PermissionBitset' in scope
91 | let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
92 | allow.subtract(roleDeny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:90:69: error: cannot find 'PermissionBitset' in scope
88 | // Apply role overwrites
89 | let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
90 | let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
| `- error: cannot find 'PermissionBitset' in scope
91 | let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
92 | allow.subtract(roleDeny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:91:37: error: cannot find 'PermissionBitset' in scope
89 | let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
90 | let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
91 | let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
| `- error: cannot find 'PermissionBitset' in scope
92 | allow.subtract(roleDeny)
93 | allow.formUnion(roleAdd)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:91:68: error: cannot find 'PermissionBitset' in scope
89 | let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
90 | let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
91 | let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
| `- error: cannot find 'PermissionBitset' in scope
92 | allow.subtract(roleDeny)
93 | allow.formUnion(roleAdd)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:96:24: error: cannot find 'PermissionBitset' in scope
94 | // Apply member overwrite
95 | if let memberOW = overwrites.first(where: { $0.type == 1 && $0.id.rawValue == userId.rawValue }) {
96 | let deny = PermissionBitset(rawValue: UInt64(memberOW.deny ?? "0") ?? 0)
| `- error: cannot find 'PermissionBitset' in scope
97 | let add = PermissionBitset(rawValue: UInt64(memberOW.allow ?? "0") ?? 0)
98 | allow.subtract(deny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:97:23: error: cannot find 'PermissionBitset' in scope
95 | if let memberOW = overwrites.first(where: { $0.type == 1 && $0.id.rawValue == userId.rawValue }) {
96 | let deny = PermissionBitset(rawValue: UInt64(memberOW.deny ?? "0") ?? 0)
97 | let add = PermissionBitset(rawValue: UInt64(memberOW.allow ?? "0") ?? 0)
| `- error: cannot find 'PermissionBitset' in scope
98 | allow.subtract(deny)
99 | allow.formUnion(add)
[39/62] Compiling SwiftDisc SlashCommandRouter.swift
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:52:133: error: cannot find type 'PermissionBitset' in scope
50 |
51 | // New method using cache for effective permissions
52 | public static func effectivePermissionsWithCache(cache: Cache, userId: UserID, guildId: GuildID, channelId: ChannelID) async -> PermissionBitset? {
| `- error: cannot find type 'PermissionBitset' in scope
53 | // Fetch guild and channel from cache
54 | guard let guild = await cache.getGuild(id: guildId),
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:64:13: error: cannot find 'PermissionBitset' in scope
62 | // Convert string permissions to PermissionBitset (assuming guild roles have permissions)
63 | let guildRoles = guild.roles?.compactMap { role in
64 | PermissionBitset(rawValue: UInt64(role.permissions ?? "0") ?? 0)
| `- error: cannot find 'PermissionBitset' in scope
65 | } ?? []
66 |
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:63:32: error: value of type 'Guild' has no member 'roles'
61 |
62 | // Convert string permissions to PermissionBitset (assuming guild roles have permissions)
63 | let guildRoles = guild.roles?.compactMap { role in
| `- error: value of type 'Guild' has no member 'roles'
64 | PermissionBitset(rawValue: UInt64(role.permissions ?? "0") ?? 0)
65 | } ?? []
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:68:21: error: cannot find 'PermissionBitset' in scope
66 |
67 | // Compute effective permissions similar to existing logic but with PermissionBitset
68 | var allow = PermissionBitset(rawValue: 0)
| `- error: cannot find 'PermissionBitset' in scope
69 |
70 | // 1) Base = @everyone role perms (find @everyone role)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:76:127: error: cannot find 'PermissionBitset' in scope
74 |
75 | // 2) Aggregate member roles (OR operation)
76 | let rolePerms = memberRoleIds.compactMap { roleId in guildRoles.first { $0.id == roleId }?.permissionsBitset }.reduce(PermissionBitset(), { $0.union($1) })
| `- error: cannot find 'PermissionBitset' in scope
77 | allow.formUnion(rolePerms)
78 |
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:83:24: error: cannot find 'PermissionBitset' in scope
81 | // Apply @everyone overwrite
82 | if let everyoneOW = overwrites.first(where: { $0.type == 0 && $0.id.rawValue == everyoneRoleId.rawValue }) {
83 | let deny = PermissionBitset(rawValue: UInt64(everyoneOW.deny ?? "0") ?? 0)
| `- error: cannot find 'PermissionBitset' in scope
84 | let add = PermissionBitset(rawValue: UInt64(everyoneOW.allow ?? "0") ?? 0)
85 | allow.subtract(deny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:84:23: error: cannot find 'PermissionBitset' in scope
82 | if let everyoneOW = overwrites.first(where: { $0.type == 0 && $0.id.rawValue == everyoneRoleId.rawValue }) {
83 | let deny = PermissionBitset(rawValue: UInt64(everyoneOW.deny ?? "0") ?? 0)
84 | let add = PermissionBitset(rawValue: UInt64(everyoneOW.allow ?? "0") ?? 0)
| `- error: cannot find 'PermissionBitset' in scope
85 | allow.subtract(deny)
86 | allow.formUnion(add)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:90:38: error: cannot find 'PermissionBitset' in scope
88 | // Apply role overwrites
89 | let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
90 | let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
| `- error: cannot find 'PermissionBitset' in scope
91 | let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
92 | allow.subtract(roleDeny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:90:69: error: cannot find 'PermissionBitset' in scope
88 | // Apply role overwrites
89 | let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
90 | let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
| `- error: cannot find 'PermissionBitset' in scope
91 | let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
92 | allow.subtract(roleDeny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:91:37: error: cannot find 'PermissionBitset' in scope
89 | let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
90 | let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
91 | let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
| `- error: cannot find 'PermissionBitset' in scope
92 | allow.subtract(roleDeny)
93 | allow.formUnion(roleAdd)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:91:68: error: cannot find 'PermissionBitset' in scope
89 | let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
90 | let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
91 | let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
| `- error: cannot find 'PermissionBitset' in scope
92 | allow.subtract(roleDeny)
93 | allow.formUnion(roleAdd)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:96:24: error: cannot find 'PermissionBitset' in scope
94 | // Apply member overwrite
95 | if let memberOW = overwrites.first(where: { $0.type == 1 && $0.id.rawValue == userId.rawValue }) {
96 | let deny = PermissionBitset(rawValue: UInt64(memberOW.deny ?? "0") ?? 0)
| `- error: cannot find 'PermissionBitset' in scope
97 | let add = PermissionBitset(rawValue: UInt64(memberOW.allow ?? "0") ?? 0)
98 | allow.subtract(deny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:97:23: error: cannot find 'PermissionBitset' in scope
95 | if let memberOW = overwrites.first(where: { $0.type == 1 && $0.id.rawValue == userId.rawValue }) {
96 | let deny = PermissionBitset(rawValue: UInt64(memberOW.deny ?? "0") ?? 0)
97 | let add = PermissionBitset(rawValue: UInt64(memberOW.allow ?? "0") ?? 0)
| `- error: cannot find 'PermissionBitset' in scope
98 | allow.subtract(deny)
99 | allow.formUnion(add)
[40/62] Compiling SwiftDisc Utilities.swift
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:52:133: error: cannot find type 'PermissionBitset' in scope
50 |
51 | // New method using cache for effective permissions
52 | public static func effectivePermissionsWithCache(cache: Cache, userId: UserID, guildId: GuildID, channelId: ChannelID) async -> PermissionBitset? {
| `- error: cannot find type 'PermissionBitset' in scope
53 | // Fetch guild and channel from cache
54 | guard let guild = await cache.getGuild(id: guildId),
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:64:13: error: cannot find 'PermissionBitset' in scope
62 | // Convert string permissions to PermissionBitset (assuming guild roles have permissions)
63 | let guildRoles = guild.roles?.compactMap { role in
64 | PermissionBitset(rawValue: UInt64(role.permissions ?? "0") ?? 0)
| `- error: cannot find 'PermissionBitset' in scope
65 | } ?? []
66 |
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:63:32: error: value of type 'Guild' has no member 'roles'
61 |
62 | // Convert string permissions to PermissionBitset (assuming guild roles have permissions)
63 | let guildRoles = guild.roles?.compactMap { role in
| `- error: value of type 'Guild' has no member 'roles'
64 | PermissionBitset(rawValue: UInt64(role.permissions ?? "0") ?? 0)
65 | } ?? []
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:68:21: error: cannot find 'PermissionBitset' in scope
66 |
67 | // Compute effective permissions similar to existing logic but with PermissionBitset
68 | var allow = PermissionBitset(rawValue: 0)
| `- error: cannot find 'PermissionBitset' in scope
69 |
70 | // 1) Base = @everyone role perms (find @everyone role)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:76:127: error: cannot find 'PermissionBitset' in scope
74 |
75 | // 2) Aggregate member roles (OR operation)
76 | let rolePerms = memberRoleIds.compactMap { roleId in guildRoles.first { $0.id == roleId }?.permissionsBitset }.reduce(PermissionBitset(), { $0.union($1) })
| `- error: cannot find 'PermissionBitset' in scope
77 | allow.formUnion(rolePerms)
78 |
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:83:24: error: cannot find 'PermissionBitset' in scope
81 | // Apply @everyone overwrite
82 | if let everyoneOW = overwrites.first(where: { $0.type == 0 && $0.id.rawValue == everyoneRoleId.rawValue }) {
83 | let deny = PermissionBitset(rawValue: UInt64(everyoneOW.deny ?? "0") ?? 0)
| `- error: cannot find 'PermissionBitset' in scope
84 | let add = PermissionBitset(rawValue: UInt64(everyoneOW.allow ?? "0") ?? 0)
85 | allow.subtract(deny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:84:23: error: cannot find 'PermissionBitset' in scope
82 | if let everyoneOW = overwrites.first(where: { $0.type == 0 && $0.id.rawValue == everyoneRoleId.rawValue }) {
83 | let deny = PermissionBitset(rawValue: UInt64(everyoneOW.deny ?? "0") ?? 0)
84 | let add = PermissionBitset(rawValue: UInt64(everyoneOW.allow ?? "0") ?? 0)
| `- error: cannot find 'PermissionBitset' in scope
85 | allow.subtract(deny)
86 | allow.formUnion(add)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:90:38: error: cannot find 'PermissionBitset' in scope
88 | // Apply role overwrites
89 | let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
90 | let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
| `- error: cannot find 'PermissionBitset' in scope
91 | let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
92 | allow.subtract(roleDeny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:90:69: error: cannot find 'PermissionBitset' in scope
88 | // Apply role overwrites
89 | let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
90 | let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
| `- error: cannot find 'PermissionBitset' in scope
91 | let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
92 | allow.subtract(roleDeny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:91:37: error: cannot find 'PermissionBitset' in scope
89 | let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
90 | let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
91 | let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
| `- error: cannot find 'PermissionBitset' in scope
92 | allow.subtract(roleDeny)
93 | allow.formUnion(roleAdd)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:91:68: error: cannot find 'PermissionBitset' in scope
89 | let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
90 | let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
91 | let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
| `- error: cannot find 'PermissionBitset' in scope
92 | allow.subtract(roleDeny)
93 | allow.formUnion(roleAdd)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:96:24: error: cannot find 'PermissionBitset' in scope
94 | // Apply member overwrite
95 | if let memberOW = overwrites.first(where: { $0.type == 1 && $0.id.rawValue == userId.rawValue }) {
96 | let deny = PermissionBitset(rawValue: UInt64(memberOW.deny ?? "0") ?? 0)
| `- error: cannot find 'PermissionBitset' in scope
97 | let add = PermissionBitset(rawValue: UInt64(memberOW.allow ?? "0") ?? 0)
98 | allow.subtract(deny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:97:23: error: cannot find 'PermissionBitset' in scope
95 | if let memberOW = overwrites.first(where: { $0.type == 1 && $0.id.rawValue == userId.rawValue }) {
96 | let deny = PermissionBitset(rawValue: UInt64(memberOW.deny ?? "0") ?? 0)
97 | let add = PermissionBitset(rawValue: UInt64(memberOW.allow ?? "0") ?? 0)
| `- error: cannot find 'PermissionBitset' in scope
98 | allow.subtract(deny)
99 | allow.formUnion(add)
[41/62] Compiling SwiftDisc Attachment.swift
[42/62] Compiling SwiftDisc AuditLog.swift
[43/62] Compiling SwiftDisc AutoModeration.swift
[44/62] Compiling SwiftDisc Channel.swift
[45/62] Compiling SwiftDisc Embed.swift
[46/62] Compiling SwiftDisc Emoji.swift
[47/62] Compiling SwiftDisc Files.swift
[48/62] Compiling SwiftDisc Guild.swift
[49/62] Compiling SwiftDisc Template.swift
/host/spi-builder-workspace/Sources/SwiftDisc/REST/HTTPClient.swift:21:16: error: cannot assign to property: 'waitsForConnectivity' is a get-only property
19 | let config = URLSessionConfiguration.default
20 | #if !os(Windows)
21 | config.waitsForConnectivity = true
| `- error: cannot assign to property: 'waitsForConnectivity' is a get-only property
22 | #endif
23 | config.requestCachePolicy = .reloadIgnoringLocalCacheData
/host/spi-builder-workspace/Sources/SwiftDisc/REST/RateLimiter.swift:26:109: warning: immutable value 'limit' was never used; consider replacing with '_' or removing it
24 |
25 | // Per-route bucket control
26 | if let state = buckets[routeKey], let resetAt = state.resetAt, let remaining = state.remaining, let limit = state.limit {
| `- warning: immutable value 'limit' was never used; consider replacing with '_' or removing it
27 | if remaining <= 0 {
28 | let now = Date()
[50/62] Compiling SwiftDisc Thread.swift
/host/spi-builder-workspace/Sources/SwiftDisc/REST/HTTPClient.swift:21:16: error: cannot assign to property: 'waitsForConnectivity' is a get-only property
19 | let config = URLSessionConfiguration.default
20 | #if !os(Windows)
21 | config.waitsForConnectivity = true
| `- error: cannot assign to property: 'waitsForConnectivity' is a get-only property
22 | #endif
23 | config.requestCachePolicy = .reloadIgnoringLocalCacheData
/host/spi-builder-workspace/Sources/SwiftDisc/REST/RateLimiter.swift:26:109: warning: immutable value 'limit' was never used; consider replacing with '_' or removing it
24 |
25 | // Per-route bucket control
26 | if let state = buckets[routeKey], let resetAt = state.resetAt, let remaining = state.remaining, let limit = state.limit {
| `- warning: immutable value 'limit' was never used; consider replacing with '_' or removing it
27 | if remaining <= 0 {
28 | let now = Date()
[51/62] Compiling SwiftDisc User.swift
/host/spi-builder-workspace/Sources/SwiftDisc/REST/HTTPClient.swift:21:16: error: cannot assign to property: 'waitsForConnectivity' is a get-only property
19 | let config = URLSessionConfiguration.default
20 | #if !os(Windows)
21 | config.waitsForConnectivity = true
| `- error: cannot assign to property: 'waitsForConnectivity' is a get-only property
22 | #endif
23 | config.requestCachePolicy = .reloadIgnoringLocalCacheData
/host/spi-builder-workspace/Sources/SwiftDisc/REST/RateLimiter.swift:26:109: warning: immutable value 'limit' was never used; consider replacing with '_' or removing it
24 |
25 | // Per-route bucket control
26 | if let state = buckets[routeKey], let resetAt = state.resetAt, let remaining = state.remaining, let limit = state.limit {
| `- warning: immutable value 'limit' was never used; consider replacing with '_' or removing it
27 | if remaining <= 0 {
28 | let now = Date()
[52/62] Compiling SwiftDisc Webhook.swift
/host/spi-builder-workspace/Sources/SwiftDisc/REST/HTTPClient.swift:21:16: error: cannot assign to property: 'waitsForConnectivity' is a get-only property
19 | let config = URLSessionConfiguration.default
20 | #if !os(Windows)
21 | config.waitsForConnectivity = true
| `- error: cannot assign to property: 'waitsForConnectivity' is a get-only property
22 | #endif
23 | config.requestCachePolicy = .reloadIgnoringLocalCacheData
/host/spi-builder-workspace/Sources/SwiftDisc/REST/RateLimiter.swift:26:109: warning: immutable value 'limit' was never used; consider replacing with '_' or removing it
24 |
25 | // Per-route bucket control
26 | if let state = buckets[routeKey], let resetAt = state.resetAt, let remaining = state.remaining, let limit = state.limit {
| `- warning: immutable value 'limit' was never used; consider replacing with '_' or removing it
27 | if remaining <= 0 {
28 | let now = Date()
[53/62] Compiling SwiftDisc HTTPClient.swift
/host/spi-builder-workspace/Sources/SwiftDisc/REST/HTTPClient.swift:21:16: error: cannot assign to property: 'waitsForConnectivity' is a get-only property
19 | let config = URLSessionConfiguration.default
20 | #if !os(Windows)
21 | config.waitsForConnectivity = true
| `- error: cannot assign to property: 'waitsForConnectivity' is a get-only property
22 | #endif
23 | config.requestCachePolicy = .reloadIgnoringLocalCacheData
/host/spi-builder-workspace/Sources/SwiftDisc/REST/RateLimiter.swift:26:109: warning: immutable value 'limit' was never used; consider replacing with '_' or removing it
24 |
25 | // Per-route bucket control
26 | if let state = buckets[routeKey], let resetAt = state.resetAt, let remaining = state.remaining, let limit = state.limit {
| `- warning: immutable value 'limit' was never used; consider replacing with '_' or removing it
27 | if remaining <= 0 {
28 | let now = Date()
[54/62] Compiling SwiftDisc RateLimiter.swift
/host/spi-builder-workspace/Sources/SwiftDisc/REST/HTTPClient.swift:21:16: error: cannot assign to property: 'waitsForConnectivity' is a get-only property
19 | let config = URLSessionConfiguration.default
20 | #if !os(Windows)
21 | config.waitsForConnectivity = true
| `- error: cannot assign to property: 'waitsForConnectivity' is a get-only property
22 | #endif
23 | config.requestCachePolicy = .reloadIgnoringLocalCacheData
/host/spi-builder-workspace/Sources/SwiftDisc/REST/RateLimiter.swift:26:109: warning: immutable value 'limit' was never used; consider replacing with '_' or removing it
24 |
25 | // Per-route bucket control
26 | if let state = buckets[routeKey], let resetAt = state.resetAt, let remaining = state.remaining, let limit = state.limit {
| `- warning: immutable value 'limit' was never used; consider replacing with '_' or removing it
27 | if remaining <= 0 {
28 | let now = Date()
[55/62] Compiling SwiftDisc AudioSource.swift
/host/spi-builder-workspace/Sources/SwiftDisc/REST/HTTPClient.swift:21:16: error: cannot assign to property: 'waitsForConnectivity' is a get-only property
19 | let config = URLSessionConfiguration.default
20 | #if !os(Windows)
21 | config.waitsForConnectivity = true
| `- error: cannot assign to property: 'waitsForConnectivity' is a get-only property
22 | #endif
23 | config.requestCachePolicy = .reloadIgnoringLocalCacheData
/host/spi-builder-workspace/Sources/SwiftDisc/REST/RateLimiter.swift:26:109: warning: immutable value 'limit' was never used; consider replacing with '_' or removing it
24 |
25 | // Per-route bucket control
26 | if let state = buckets[routeKey], let resetAt = state.resetAt, let remaining = state.remaining, let limit = state.limit {
| `- warning: immutable value 'limit' was never used; consider replacing with '_' or removing it
27 | if remaining <= 0 {
28 | let now = Date()
[56/62] Compiling SwiftDisc PipeOpusSource.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:236:9: warning: variable 'r0' was never mutated; consider changing to 'let' constant
234 | let s = Array(key[16..<32])
235 |
236 | var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
| `- warning: variable 'r0' was never mutated; consider changing to 'let' constant
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:237:9: warning: variable 'r1' was never mutated; consider changing to 'let' constant
235 |
236 | var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
| `- warning: variable 'r1' was never mutated; consider changing to 'let' constant
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:238:9: warning: variable 'r2' was never mutated; consider changing to 'let' constant
236 | var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
| `- warning: variable 'r2' was never mutated; consider changing to 'let' constant
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 | var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:239:9: warning: variable 'r3' was never mutated; consider changing to 'let' constant
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
| `- warning: variable 'r3' was never mutated; consider changing to 'let' constant
240 | var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
241 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:240:9: warning: variable 'r4' was never mutated; consider changing to 'let' constant
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 | var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
| `- warning: variable 'r4' was never mutated; consider changing to 'let' constant
241 |
242 | var h0: UInt32 = 0, h1: UInt32 = 0, h2: UInt32 = 0, h3: UInt32 = 0, h4: UInt32 = 0
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:303:9: warning: variable 'f0' was never mutated; consider changing to 'let' constant
301 |
302 | // Serialize h
303 | var f0 = (h0 | (h1 << 26)) & 0xffffffff
| `- warning: variable 'f0' was never mutated; consider changing to 'let' constant
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:304:9: warning: variable 'f1' was never mutated; consider changing to 'let' constant
302 | // Serialize h
303 | var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
| `- warning: variable 'f1' was never mutated; consider changing to 'let' constant
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 | var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:305:9: warning: variable 'f2' was never mutated; consider changing to 'let' constant
303 | var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
| `- warning: variable 'f2' was never mutated; consider changing to 'let' constant
306 | var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
307 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:306:9: warning: variable 'f3' was never mutated; consider changing to 'let' constant
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 | var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
| `- warning: variable 'f3' was never mutated; consider changing to 'let' constant
307 |
308 | // Add s
[57/62] Compiling SwiftDisc Secretbox.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:236:9: warning: variable 'r0' was never mutated; consider changing to 'let' constant
234 | let s = Array(key[16..<32])
235 |
236 | var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
| `- warning: variable 'r0' was never mutated; consider changing to 'let' constant
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:237:9: warning: variable 'r1' was never mutated; consider changing to 'let' constant
235 |
236 | var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
| `- warning: variable 'r1' was never mutated; consider changing to 'let' constant
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:238:9: warning: variable 'r2' was never mutated; consider changing to 'let' constant
236 | var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
| `- warning: variable 'r2' was never mutated; consider changing to 'let' constant
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 | var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:239:9: warning: variable 'r3' was never mutated; consider changing to 'let' constant
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
| `- warning: variable 'r3' was never mutated; consider changing to 'let' constant
240 | var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
241 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:240:9: warning: variable 'r4' was never mutated; consider changing to 'let' constant
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 | var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
| `- warning: variable 'r4' was never mutated; consider changing to 'let' constant
241 |
242 | var h0: UInt32 = 0, h1: UInt32 = 0, h2: UInt32 = 0, h3: UInt32 = 0, h4: UInt32 = 0
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:303:9: warning: variable 'f0' was never mutated; consider changing to 'let' constant
301 |
302 | // Serialize h
303 | var f0 = (h0 | (h1 << 26)) & 0xffffffff
| `- warning: variable 'f0' was never mutated; consider changing to 'let' constant
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:304:9: warning: variable 'f1' was never mutated; consider changing to 'let' constant
302 | // Serialize h
303 | var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
| `- warning: variable 'f1' was never mutated; consider changing to 'let' constant
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 | var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:305:9: warning: variable 'f2' was never mutated; consider changing to 'let' constant
303 | var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
| `- warning: variable 'f2' was never mutated; consider changing to 'let' constant
306 | var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
307 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:306:9: warning: variable 'f3' was never mutated; consider changing to 'let' constant
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 | var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
| `- warning: variable 'f3' was never mutated; consider changing to 'let' constant
307 |
308 | // Add s
[58/62] Compiling SwiftDisc VoiceClient.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:236:9: warning: variable 'r0' was never mutated; consider changing to 'let' constant
234 | let s = Array(key[16..<32])
235 |
236 | var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
| `- warning: variable 'r0' was never mutated; consider changing to 'let' constant
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:237:9: warning: variable 'r1' was never mutated; consider changing to 'let' constant
235 |
236 | var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
| `- warning: variable 'r1' was never mutated; consider changing to 'let' constant
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:238:9: warning: variable 'r2' was never mutated; consider changing to 'let' constant
236 | var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
| `- warning: variable 'r2' was never mutated; consider changing to 'let' constant
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 | var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:239:9: warning: variable 'r3' was never mutated; consider changing to 'let' constant
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
| `- warning: variable 'r3' was never mutated; consider changing to 'let' constant
240 | var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
241 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:240:9: warning: variable 'r4' was never mutated; consider changing to 'let' constant
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 | var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
| `- warning: variable 'r4' was never mutated; consider changing to 'let' constant
241 |
242 | var h0: UInt32 = 0, h1: UInt32 = 0, h2: UInt32 = 0, h3: UInt32 = 0, h4: UInt32 = 0
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:303:9: warning: variable 'f0' was never mutated; consider changing to 'let' constant
301 |
302 | // Serialize h
303 | var f0 = (h0 | (h1 << 26)) & 0xffffffff
| `- warning: variable 'f0' was never mutated; consider changing to 'let' constant
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:304:9: warning: variable 'f1' was never mutated; consider changing to 'let' constant
302 | // Serialize h
303 | var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
| `- warning: variable 'f1' was never mutated; consider changing to 'let' constant
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 | var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:305:9: warning: variable 'f2' was never mutated; consider changing to 'let' constant
303 | var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
| `- warning: variable 'f2' was never mutated; consider changing to 'let' constant
306 | var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
307 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:306:9: warning: variable 'f3' was never mutated; consider changing to 'let' constant
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 | var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
| `- warning: variable 'f3' was never mutated; consider changing to 'let' constant
307 |
308 | // Add s
[59/62] Compiling SwiftDisc VoiceGateway.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:236:9: warning: variable 'r0' was never mutated; consider changing to 'let' constant
234 | let s = Array(key[16..<32])
235 |
236 | var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
| `- warning: variable 'r0' was never mutated; consider changing to 'let' constant
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:237:9: warning: variable 'r1' was never mutated; consider changing to 'let' constant
235 |
236 | var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
| `- warning: variable 'r1' was never mutated; consider changing to 'let' constant
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:238:9: warning: variable 'r2' was never mutated; consider changing to 'let' constant
236 | var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
| `- warning: variable 'r2' was never mutated; consider changing to 'let' constant
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 | var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:239:9: warning: variable 'r3' was never mutated; consider changing to 'let' constant
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
| `- warning: variable 'r3' was never mutated; consider changing to 'let' constant
240 | var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
241 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:240:9: warning: variable 'r4' was never mutated; consider changing to 'let' constant
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 | var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
| `- warning: variable 'r4' was never mutated; consider changing to 'let' constant
241 |
242 | var h0: UInt32 = 0, h1: UInt32 = 0, h2: UInt32 = 0, h3: UInt32 = 0, h4: UInt32 = 0
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:303:9: warning: variable 'f0' was never mutated; consider changing to 'let' constant
301 |
302 | // Serialize h
303 | var f0 = (h0 | (h1 << 26)) & 0xffffffff
| `- warning: variable 'f0' was never mutated; consider changing to 'let' constant
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:304:9: warning: variable 'f1' was never mutated; consider changing to 'let' constant
302 | // Serialize h
303 | var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
| `- warning: variable 'f1' was never mutated; consider changing to 'let' constant
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 | var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:305:9: warning: variable 'f2' was never mutated; consider changing to 'let' constant
303 | var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
| `- warning: variable 'f2' was never mutated; consider changing to 'let' constant
306 | var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
307 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:306:9: warning: variable 'f3' was never mutated; consider changing to 'let' constant
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 | var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
| `- warning: variable 'f3' was never mutated; consider changing to 'let' constant
307 |
308 | // Add s
[60/62] Compiling SwiftDisc VoiceModels.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:236:9: warning: variable 'r0' was never mutated; consider changing to 'let' constant
234 | let s = Array(key[16..<32])
235 |
236 | var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
| `- warning: variable 'r0' was never mutated; consider changing to 'let' constant
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:237:9: warning: variable 'r1' was never mutated; consider changing to 'let' constant
235 |
236 | var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
| `- warning: variable 'r1' was never mutated; consider changing to 'let' constant
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:238:9: warning: variable 'r2' was never mutated; consider changing to 'let' constant
236 | var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
| `- warning: variable 'r2' was never mutated; consider changing to 'let' constant
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 | var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:239:9: warning: variable 'r3' was never mutated; consider changing to 'let' constant
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
| `- warning: variable 'r3' was never mutated; consider changing to 'let' constant
240 | var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
241 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:240:9: warning: variable 'r4' was never mutated; consider changing to 'let' constant
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 | var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
| `- warning: variable 'r4' was never mutated; consider changing to 'let' constant
241 |
242 | var h0: UInt32 = 0, h1: UInt32 = 0, h2: UInt32 = 0, h3: UInt32 = 0, h4: UInt32 = 0
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:303:9: warning: variable 'f0' was never mutated; consider changing to 'let' constant
301 |
302 | // Serialize h
303 | var f0 = (h0 | (h1 << 26)) & 0xffffffff
| `- warning: variable 'f0' was never mutated; consider changing to 'let' constant
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:304:9: warning: variable 'f1' was never mutated; consider changing to 'let' constant
302 | // Serialize h
303 | var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
| `- warning: variable 'f1' was never mutated; consider changing to 'let' constant
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 | var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:305:9: warning: variable 'f2' was never mutated; consider changing to 'let' constant
303 | var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
| `- warning: variable 'f2' was never mutated; consider changing to 'let' constant
306 | var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
307 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:306:9: warning: variable 'f3' was never mutated; consider changing to 'let' constant
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 | var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
| `- warning: variable 'f3' was never mutated; consider changing to 'let' constant
307 |
308 | // Add s
[61/62] Compiling SwiftDisc VoiceReceiver.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:236:9: warning: variable 'r0' was never mutated; consider changing to 'let' constant
234 | let s = Array(key[16..<32])
235 |
236 | var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
| `- warning: variable 'r0' was never mutated; consider changing to 'let' constant
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:237:9: warning: variable 'r1' was never mutated; consider changing to 'let' constant
235 |
236 | var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
| `- warning: variable 'r1' was never mutated; consider changing to 'let' constant
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:238:9: warning: variable 'r2' was never mutated; consider changing to 'let' constant
236 | var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
| `- warning: variable 'r2' was never mutated; consider changing to 'let' constant
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 | var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:239:9: warning: variable 'r3' was never mutated; consider changing to 'let' constant
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
| `- warning: variable 'r3' was never mutated; consider changing to 'let' constant
240 | var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
241 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:240:9: warning: variable 'r4' was never mutated; consider changing to 'let' constant
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 | var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
| `- warning: variable 'r4' was never mutated; consider changing to 'let' constant
241 |
242 | var h0: UInt32 = 0, h1: UInt32 = 0, h2: UInt32 = 0, h3: UInt32 = 0, h4: UInt32 = 0
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:303:9: warning: variable 'f0' was never mutated; consider changing to 'let' constant
301 |
302 | // Serialize h
303 | var f0 = (h0 | (h1 << 26)) & 0xffffffff
| `- warning: variable 'f0' was never mutated; consider changing to 'let' constant
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:304:9: warning: variable 'f1' was never mutated; consider changing to 'let' constant
302 | // Serialize h
303 | var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
| `- warning: variable 'f1' was never mutated; consider changing to 'let' constant
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 | var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:305:9: warning: variable 'f2' was never mutated; consider changing to 'let' constant
303 | var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
| `- warning: variable 'f2' was never mutated; consider changing to 'let' constant
306 | var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
307 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:306:9: warning: variable 'f3' was never mutated; consider changing to 'let' constant
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 | var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
| `- warning: variable 'f3' was never mutated; consider changing to 'let' constant
307 |
308 | // Add s
[62/62] Compiling SwiftDisc VoiceSender.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:236:9: warning: variable 'r0' was never mutated; consider changing to 'let' constant
234 | let s = Array(key[16..<32])
235 |
236 | var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
| `- warning: variable 'r0' was never mutated; consider changing to 'let' constant
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:237:9: warning: variable 'r1' was never mutated; consider changing to 'let' constant
235 |
236 | var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
| `- warning: variable 'r1' was never mutated; consider changing to 'let' constant
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:238:9: warning: variable 'r2' was never mutated; consider changing to 'let' constant
236 | var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
| `- warning: variable 'r2' was never mutated; consider changing to 'let' constant
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 | var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:239:9: warning: variable 'r3' was never mutated; consider changing to 'let' constant
237 | var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
| `- warning: variable 'r3' was never mutated; consider changing to 'let' constant
240 | var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
241 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:240:9: warning: variable 'r4' was never mutated; consider changing to 'let' constant
238 | var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 | var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 | var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
| `- warning: variable 'r4' was never mutated; consider changing to 'let' constant
241 |
242 | var h0: UInt32 = 0, h1: UInt32 = 0, h2: UInt32 = 0, h3: UInt32 = 0, h4: UInt32 = 0
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:303:9: warning: variable 'f0' was never mutated; consider changing to 'let' constant
301 |
302 | // Serialize h
303 | var f0 = (h0 | (h1 << 26)) & 0xffffffff
| `- warning: variable 'f0' was never mutated; consider changing to 'let' constant
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:304:9: warning: variable 'f1' was never mutated; consider changing to 'let' constant
302 | // Serialize h
303 | var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
| `- warning: variable 'f1' was never mutated; consider changing to 'let' constant
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 | var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:305:9: warning: variable 'f2' was never mutated; consider changing to 'let' constant
303 | var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
| `- warning: variable 'f2' was never mutated; consider changing to 'let' constant
306 | var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
307 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:306:9: warning: variable 'f3' was never mutated; consider changing to 'let' constant
304 | var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 | var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 | var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
| `- warning: variable 'f3' was never mutated; consider changing to 'let' constant
307 |
308 | // Add s
BUILD FAILURE 6.1 android