Fix serialization import and quieten CI build logs

- Transport.kt used the reified Json.encodeToString extension without
  importing kotlinx.serialization.encodeToString, so it resolved to the
  two-argument member overload and failed to compile.
- Opt in to ExperimentalMaterial3Api for the clickable game tile.
- Drop --stacktrace from the CI build. A one-line Kotlin error was being
  buried under 150 lines of Gradle internals, which made the actual
  message hard to find in the log.

Co-Authored-By: Claude Opus 5 <[email protected]>
Claude-Session: https://claude.ai/code/session_015qjfMiPUDshdKEUa6vxqzN
This commit is contained in:
Claude
2026-08-05 22:50:15 +00:00
parent 487c68419e
commit 4ad0f52331
3 changed files with 5 additions and 3 deletions
+3 -3
View File
@@ -38,13 +38,13 @@ jobs:
uses: android-actions/setup-android@v3 uses: android-actions/setup-android@v3
- name: Build debug APK - name: Build debug APK
run: ./gradlew assembleDebug --no-daemon --stacktrace run: ./gradlew assembleDebug --no-daemon
- name: Run unit tests - name: Run unit tests
run: ./gradlew testDebugUnitTest --no-daemon --stacktrace run: ./gradlew testDebugUnitTest --no-daemon
- name: Run Android lint - name: Run Android lint
run: ./gradlew lintDebug --no-daemon --stacktrace run: ./gradlew lintDebug --no-daemon
- name: Upload debug APK - name: Upload debug APK
uses: actions/upload-artifact@v4 uses: actions/upload-artifact@v4
@@ -8,6 +8,7 @@ import kotlinx.coroutines.flow.SharedFlow
import kotlinx.coroutines.isActive import kotlinx.coroutines.isActive
import kotlinx.coroutines.launch import kotlinx.coroutines.launch
import kotlinx.coroutines.withContext import kotlinx.coroutines.withContext
import kotlinx.serialization.encodeToString
import java.io.BufferedReader import java.io.BufferedReader
import java.io.BufferedWriter import java.io.BufferedWriter
import java.io.Closeable import java.io.Closeable
@@ -192,6 +192,7 @@ fun MainMenuScreen(
} }
} }
@OptIn(ExperimentalMaterial3Api::class)
@Composable @Composable
private fun GameTile(game: GameDescriptor, onClick: () -> Unit) { private fun GameTile(game: GameDescriptor, onClick: () -> Unit) {
Card( Card(