feat: M3 weighted shuffle v1 — real /api/radio with scoring #21

Merged
bvandeusen merged 262 commits from dev into main 2026-04-27 11:00:29 -04:00
4 changed files with 18 additions and 20 deletions
Showing only changes of commit 6fb2ff2b9c - Show all commits
+4 -4
View File
@@ -1,9 +1,9 @@
plugins {
alias(libs.plugins.android.application)
// kotlin-android applied explicitly: AGP 9's built-in Kotlin path is
// not compatible with KSP yet. Opted out via
// android.builtInKotlin=false in gradle.properties.
alias(libs.plugins.kotlin.android)
// kotlin-android NOT applied: AGP 9 enables built-in Kotlin by default,
// and KSP 2.3.x supports it (PR #2674, merged Oct 2025). serialization
// + compose-compiler are language-level Kotlin compiler plugins and
// still need explicit application.
alias(libs.plugins.kotlin.serialization)
alias(libs.plugins.compose.compiler)
alias(libs.plugins.ksp)
+4 -4
View File
@@ -1,9 +1,9 @@
plugins {
alias(libs.plugins.android.application) apply false
// kotlin-android needed despite AGP 9's built-in Kotlin: KSP isn't
// compatible with the builtInKotlin path yet, so we opt out via
// android.builtInKotlin=false in gradle.properties.
alias(libs.plugins.kotlin.android) apply false
// kotlin-android NOT registered: AGP 9 built-in Kotlin + KSP 2.3.x
// covers the Kotlin compilation path. Language-level Kotlin compiler
// plugins (serialization, compose-compiler) are still applied
// explicitly per module.
alias(libs.plugins.kotlin.serialization) apply false
alias(libs.plugins.ksp) apply false
alias(libs.plugins.hilt) apply false
-6
View File
@@ -4,10 +4,4 @@ org.gradle.caching=true
org.gradle.configuration-cache=true
android.useAndroidX=true
android.nonTransitiveRClass=true
# KSP isn't compatible with AGP 9's built-in Kotlin support (the
# `android.builtInKotlin=true` default). Opt out so we can apply the
# explicit kotlin-android plugin and KSP together. Revisit when KSP
# adds built-in-Kotlin support.
android.builtInKotlin=false
kotlin.code.style=official
+10 -6
View File
@@ -1,11 +1,15 @@
[versions]
# Pinned for JDK 25 compat: Gradle 9.1.0 supports JDK 25, AGP 9.0.1
# requires Gradle 9.1.0+, AGP 9.0 requires Kotlin Gradle Plugin 2.2.10+,
# KSP follows Kotlin version. See gradle-wrapper.properties for the
# Gradle version itself.
# Pinned for JDK 25 + AGP 9 + KSP-built-in-Kotlin compat:
# - Gradle 9.1.0 supports JDK 25 (see gradle-wrapper.properties)
# - AGP 9.0.1 requires Gradle 9.1.0+
# - Kotlin 2.3.x: AGP 9's built-in Kotlin path; the older kotlin-android
# plugin can't cast AGP 9's ApplicationExtension to the removed
# BaseExtension, and KSP 1.x isn't compatible with built-in Kotlin
# - KSP 2.3.x (PR #2674, merged Oct 2025): adds AGP 9 built-in Kotlin
# support, so we don't need the kotlin-android plugin at all
agp = "9.0.1"
kotlin = "2.2.21"
ksp = "2.2.21-2.0.5"
kotlin = "2.3.21"
ksp = "2.3.8"
hilt = "2.59.2"
hilt-androidx = "1.2.0"
compose-bom = "2026.05.01"