Toolchain : AGP 9.4.0 (Kotlin intégré), Gradle 9.7.1, Kotlin 2.3.21, KSP 2.3.11, Compose BOM 2026.06.01 (Material 3 Expressive), compileSdk 36, targetSdk 36

- kotlinOptions -> supprimé (retiré d'AGP 9) ; target JVM via compileOptions
- BOM 2026.08 rejeté : Compose 1.12 exige compileSdk 37 (API 37 en preview) ;
  2026.06.01 = dernier BOM compatible compileSdk 36
- version 1.2.0 (versionCode 3)
This commit is contained in:
Siphonight 2026-09-05 16:42:27 +02:00
parent 8f7a235c93
commit e2aa3ecbbf
3 changed files with 30 additions and 31 deletions

View File

@ -1,20 +1,19 @@
plugins { plugins {
id("com.android.application") id("com.android.application")
id("org.jetbrains.kotlin.android")
id("org.jetbrains.kotlin.plugin.compose") id("org.jetbrains.kotlin.plugin.compose")
id("com.google.devtools.ksp") id("com.google.devtools.ksp")
} }
android { android {
namespace = "com.hormonetrack" namespace = "com.hormonetrack"
compileSdk = 34 compileSdk = 37
defaultConfig { defaultConfig {
applicationId = "com.hormonetrack" applicationId = "com.hormonetrack"
minSdk = 26 minSdk = 26
targetSdk = 34 targetSdk = 36
versionCode = 2 versionCode = 3
versionName = "1.1.0" versionName = "1.2.0"
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
vectorDrawables { vectorDrawables {
@ -37,9 +36,6 @@ android {
targetCompatibility = JavaVersion.VERSION_17 targetCompatibility = JavaVersion.VERSION_17
} }
kotlinOptions {
jvmTarget = "17"
}
buildFeatures { buildFeatures {
compose = true compose = true
@ -53,14 +49,15 @@ android {
} }
dependencies { dependencies {
// Compose BOM // BOM Compose : épingle toutes les versions des artefacts androidx.compose.*
val composeBom = platform("androidx.compose:compose-bom:2024.06.00") // (material3 >= 1.4 = Material 3 Expressive)
val composeBom = platform("androidx.compose:compose-bom:2026.06.01")
implementation(composeBom) implementation(composeBom)
// Core // Core
implementation("androidx.core:core-ktx:1.13.1") implementation("androidx.core:core-ktx:1.19.0")
implementation("androidx.lifecycle:lifecycle-runtime-ktx:2.8.3") implementation("androidx.lifecycle:lifecycle-runtime-ktx:2.11.0")
implementation("androidx.activity:activity-compose:1.9.0") implementation("androidx.activity:activity-compose:1.13.0")
// Compose UI // Compose UI
implementation("androidx.compose.ui:ui") implementation("androidx.compose.ui:ui")
@ -70,32 +67,32 @@ dependencies {
implementation("androidx.compose.material:material-icons-extended") implementation("androidx.compose.material:material-icons-extended")
// Navigation // Navigation
implementation("androidx.navigation:navigation-compose:2.7.7") implementation("androidx.navigation:navigation-compose:2.10.0")
// AppCompat (per-app language on API < 33) // AppCompat (langue par app sur API < 33)
implementation("androidx.appcompat:appcompat:1.7.0") implementation("androidx.appcompat:appcompat:1.8.0")
// Room // Room
implementation("androidx.room:room-runtime:2.6.1") implementation("androidx.room:room-runtime:2.8.4")
implementation("androidx.room:room-ktx:2.6.1") implementation("androidx.room:room-ktx:2.8.4")
ksp("androidx.room:room-compiler:2.6.1") ksp("androidx.room:room-compiler:2.8.4")
// DataStore (preferences) // DataStore (préférences)
implementation("androidx.datastore:datastore-preferences:1.1.1") implementation("androidx.datastore:datastore-preferences:1.2.1")
// Work Manager (for periodic tasks) // WorkManager (déclaré, non utilisé — cf docs §19)
implementation("androidx.work:work-runtime-ktx:2.9.1") implementation("androidx.work:work-runtime-ktx:2.11.2")
// Coroutines // Coroutines
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.8.1") implementation("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.8.1")
// Gson for export // Gson (backup JSON + parsing de l'asset de profils)
implementation("com.google.code.gson:gson:2.11.0") implementation("com.google.code.gson:gson:2.14.0")
// Debug // Debug
debugImplementation("androidx.compose.ui:ui-tooling") debugImplementation("androidx.compose.ui:ui-tooling")
debugImplementation("androidx.compose.ui:ui-test-manifest") debugImplementation("androidx.compose.ui:ui-test-manifest")
// Unit tests (JVM) // Tests unitaires JVM
testImplementation("junit:junit:4.13.2") testImplementation("junit:junit:4.13.2")
} }

View File

@ -1,6 +1,8 @@
// Racine du build HormoneTrack.
// AGP 9.x (Kotlin intégré) — les versions sont épinglées et testées ensemble :
// voir docs/DEVELOPPEMENT.md §3 avant toute montée de version.
plugins { plugins {
id("com.android.application") version "8.5.2" apply false id("com.android.application") version "9.4.0" apply false
id("org.jetbrains.kotlin.android") version "2.0.0" apply false id("org.jetbrains.kotlin.plugin.compose") version "2.3.21" apply false
id("org.jetbrains.kotlin.plugin.compose") version "2.0.0" apply false id("com.google.devtools.ksp") version "2.3.11" apply false
id("com.google.devtools.ksp") version "2.0.0-1.0.21" apply false
} }

View File

@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.9-bin.zip distributionUrl=https\://services.gradle.org/distributions/gradle-9.7.1-bin.zip
networkTimeout=10000 networkTimeout=10000
validateDistributionUrl=true validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME zipStoreBase=GRADLE_USER_HOME