From 38df116328b0f3ca7b03caf242d247d343e3ff48 Mon Sep 17 00:00:00 2001 From: Gato Date: Sat, 6 Jun 2026 10:08:11 +0200 Subject: [PATCH] =?UTF-8?q?fix:=20suppression=20de=20la=20contrainte=20FK?= =?UTF-8?q?=20tasks=E2=86=92projects=20(DB=20v3)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit La contrainte FOREIGN KEY sur tasks.project_id causait des crashs systématiques dans une app sync-first où les projets et tâches arrivent de l'API sans garantie d'ordre strict. La cohérence est gérée côté serveur Bonsai ; inutile de la dupliquer en base locale. fallbackToDestructiveMigration() recrée la DB proprement au démarrage. Co-Authored-By: Claude Sonnet 4.6 --- app/build.gradle.kts | 2 +- .../java/com/planify/mobile/data/local/AppDatabase.kt | 2 +- .../com/planify/mobile/data/local/entity/TaskEntity.kt | 9 --------- 3 files changed, 2 insertions(+), 11 deletions(-) diff --git a/app/build.gradle.kts b/app/build.gradle.kts index a125908..20fd10d 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -16,7 +16,7 @@ android { minSdk = 26 targetSdk = 35 versionCode = 1 - versionName = "0.0.12" + versionName = "0.0.13" testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" } diff --git a/app/src/main/java/com/planify/mobile/data/local/AppDatabase.kt b/app/src/main/java/com/planify/mobile/data/local/AppDatabase.kt index 4688203..14d0fb5 100644 --- a/app/src/main/java/com/planify/mobile/data/local/AppDatabase.kt +++ b/app/src/main/java/com/planify/mobile/data/local/AppDatabase.kt @@ -24,7 +24,7 @@ import com.planify.mobile.data.local.entity.TaskEntity ReminderEntity::class, SourceEntity::class, ], - version = 2, + version = 3, exportSchema = true, ) abstract class AppDatabase : RoomDatabase() { diff --git a/app/src/main/java/com/planify/mobile/data/local/entity/TaskEntity.kt b/app/src/main/java/com/planify/mobile/data/local/entity/TaskEntity.kt index 91efd2d..9212f74 100644 --- a/app/src/main/java/com/planify/mobile/data/local/entity/TaskEntity.kt +++ b/app/src/main/java/com/planify/mobile/data/local/entity/TaskEntity.kt @@ -2,20 +2,11 @@ package com.planify.mobile.data.local.entity import androidx.room.ColumnInfo import androidx.room.Entity -import androidx.room.ForeignKey import androidx.room.Index import androidx.room.PrimaryKey @Entity( tableName = "tasks", - foreignKeys = [ - ForeignKey( - entity = ProjectEntity::class, - parentColumns = ["id"], - childColumns = ["project_id"], - onDelete = ForeignKey.CASCADE - ) - ], indices = [ Index("project_id"), Index("section_id"),