From 01d61b085156905ea4c7d13b5ebe8ebf549cf249 Mon Sep 17 00:00:00 2001 From: Claude Date: Tue, 7 Jul 2026 21:39:04 +0000 Subject: [PATCH] fix: resolve remaining Kotlin compiler warnings in commons and cli - Suppress DEPRECATION on REASONABLE_SIGN_KINDS, which intentionally lists the deprecated TorrentCommentEvent kind. - Replace deprecated readLine() with readlnOrNull() in SecureKeyStorage. - Drop unnecessary !! non-null assertions in KeyCommands and NostrConnect where the receiver is already smart-cast to non-null. Co-Authored-By: Claude Opus 4.8 Claude-Session: https://claude.ai/code/session_018nqdy4VTLKidUWzGTJPja9 --- .../com/vitorpamplona/amethyst/cli/commands/KeyCommands.kt | 2 +- .../com/vitorpamplona/amethyst/cli/commands/NostrConnect.kt | 2 +- .../commons/napplet/signers/NostrSignerPermissionLedger.kt | 1 + .../amethyst/commons/keystorage/SecureKeyStorage.kt | 2 +- 4 files changed, 4 insertions(+), 3 deletions(-) diff --git a/cli/src/main/kotlin/com/vitorpamplona/amethyst/cli/commands/KeyCommands.kt b/cli/src/main/kotlin/com/vitorpamplona/amethyst/cli/commands/KeyCommands.kt index 22079d8634..549608c252 100644 --- a/cli/src/main/kotlin/com/vitorpamplona/amethyst/cli/commands/KeyCommands.kt +++ b/cli/src/main/kotlin/com/vitorpamplona/amethyst/cli/commands/KeyCommands.kt @@ -77,7 +77,7 @@ object KeyCommands { Output.emit(mapOf("valid" to false)) return 0 } - val npub = hex!!.hexToByteArray().toNpub() + val npub = hex.hexToByteArray().toNpub() Output.emit(mapOf("valid" to true, "pubkey" to hex, "npub" to npub)) return 0 } diff --git a/cli/src/main/kotlin/com/vitorpamplona/amethyst/cli/commands/NostrConnect.kt b/cli/src/main/kotlin/com/vitorpamplona/amethyst/cli/commands/NostrConnect.kt index 08ffe57337..a24ded7865 100644 --- a/cli/src/main/kotlin/com/vitorpamplona/amethyst/cli/commands/NostrConnect.kt +++ b/cli/src/main/kotlin/com/vitorpamplona/amethyst/cli/commands/NostrConnect.kt @@ -81,7 +81,7 @@ object NostrConnect { } } if (secret == null) return null - return Offer(clientPubkey, relays, secret!!, name) + return Offer(clientPubkey, relays, secret, name) } private fun buildOffer( diff --git a/commons/src/commonMain/kotlin/com/vitorpamplona/amethyst/commons/napplet/signers/NostrSignerPermissionLedger.kt b/commons/src/commonMain/kotlin/com/vitorpamplona/amethyst/commons/napplet/signers/NostrSignerPermissionLedger.kt index fd213ba1bd..621aaf3149 100644 --- a/commons/src/commonMain/kotlin/com/vitorpamplona/amethyst/commons/napplet/signers/NostrSignerPermissionLedger.kt +++ b/commons/src/commonMain/kotlin/com/vitorpamplona/amethyst/commons/napplet/signers/NostrSignerPermissionLedger.kt @@ -185,6 +185,7 @@ class NostrSignerPermissionLedger( * Deliberately conservative: when a kind's blast radius is unclear, it is left out so the user * is asked rather than surprised. */ + @Suppress("DEPRECATION") // TorrentCommentEvent is deprecated (NIP-22) but still a reasonable sign kind val REASONABLE_SIGN_KINDS: Set = setOf( TextNoteEvent.KIND, // 1 — short text notes & replies diff --git a/commons/src/jvmMain/kotlin/com/vitorpamplona/amethyst/commons/keystorage/SecureKeyStorage.kt b/commons/src/jvmMain/kotlin/com/vitorpamplona/amethyst/commons/keystorage/SecureKeyStorage.kt index 00772efcec..72c1985045 100644 --- a/commons/src/jvmMain/kotlin/com/vitorpamplona/amethyst/commons/keystorage/SecureKeyStorage.kt +++ b/commons/src/jvmMain/kotlin/com/vitorpamplona/amethyst/commons/keystorage/SecureKeyStorage.kt @@ -324,7 +324,7 @@ actual class SecureKeyStorage private actual constructor() { } else { // Fallback for non-interactive environments (testing, etc.) print("Enter master password: ") - readLine() ?: throw SecureStorageException("Password required for fallback storage") + readlnOrNull() ?: throw SecureStorageException("Password required for fallback storage") } } return fallbackPassword!!