diff --git a/README.md b/README.md index c30f4ff..08b5bf7 100644 --- a/README.md +++ b/README.md @@ -80,7 +80,8 @@ Pas de Play Store : l'app est sideloadée. Détails pas-à-pas : [docs/GUIDE_INS ## Git -Dépôt : **https://gitea.cloudyfy.fr/Siphonight/HormoneTrack** (privé), avec +Dépôts : **gitea.cloudyfy.fr** et **gitea.farewell.dev** (miroir) — +`Siphonight/HormoneTrack` sur les deux (privé), avec **releases taguées** (`v1.1.0` → `v1.2.5`) et **deux APK par release** (téléchargeables sans compiler, cf [docs/DEVELOPPEMENT.md §16.bis](docs/DEVELOPPEMENT.md)) : `-release.apk` (**recommandé**, optimisé R8, 2,4 Mo) et `-debug.apk` (20 Mo) : diff --git a/docs/DEVELOPPEMENT.md b/docs/DEVELOPPEMENT.md index 8f1874b..2cac778 100644 --- a/docs/DEVELOPPEMENT.md +++ b/docs/DEVELOPPEMENT.md @@ -76,6 +76,7 @@ Fonctionnalités v1 : | 5 sept. 2026 (session v1.2.1) | Remontées UX/utilisateur : calibration **par période d'ester** (labs EV → doses EV, labs EEn → doses EEn — corrige les courbes gonflées), lab T "pg/mL" neutralisé, **édition des labs**, tap accueil → Graphiques + mini-légende, auto-cal fusionnée (E2+T, un seul switch) ; 2ᵉ régression épinglée sur le nouvel export ; **44 tests verts**, APK v1.2.1. | | 5 sept. 2026 (session v1.2.2) | Toggle T masque aussi les labs T ; **prise de sang E2 + T en une entrée** (chacune optionnelle) affichée **côte à côte** ; sélecteur d'édition par marqueur ; suppression par prise ; 4 tests de regroupement ; **48 tests verts**, APK v1.2.2. | | 5 sept. 2026 (session v1.2.6) | Valeurs estimées affichées sur les pics/creux (drawExtremum) ; **import JSON en mode écrasement** (bug : conflit d'IDs si données existantes) avec restauration du tConfig et reprogrammation des rappels ; docs ; 62 tests verts, APK v1.2.6 + releases. | +| 6 sept. 2026 (session farewell) | Repo créé côté farewell → **push SSH (alias `farewell` : giteassh:2222) + 12 releases publiées avec APK vérifiés par téléchargement** ; piège lexicographique `v1.2.10 < v1.2.5` en comparaison de chaînes épinglé (§14 #38) ; les deux instances Gitea sont synchrones. | | 6 sept. 2026 (session v1.3.0) | Dialog « Nouveautés » après mise à jour (CHANGELOG embarqué en asset, tâche `copyChangelog`, version vue en DataStore) ; **événements d'agenda récurrents** (calendrier local HormoneTrack, RRULE posologie, permission runtime, Room v3 `calendarEventId`) ; Paramètres : version + lien releases ; **78 tests verts**, APK v1.3.0 + releases. | | 5 sept. 2026 (session v1.2.10) | Sens des boutons de zoom inversé (+ = zoom avant, convention carte — retour utilisateur) ; 67 tests verts, APK v1.2.10 + releases. | | 5 sept. 2026 (session v1.2.9) | **Zoom du graphique** (pinch + boutons, 6 h → 300 j, focal stable, échantillonnage adaptatif `stepForRange`, labels X 1 h/3 h) ; **README : disclaimer IA-assisté** en en-tête ; 3 tests ; **67 tests verts**, APK v1.2.9 + releases. | @@ -693,6 +694,12 @@ Historique complet — **à ne pas réintroduire** (utile pour diff/revert) : PATCH de renommage peuvent être ignorés (asset au nom générique, APK release disparu de la release). → `ensure_asset` dans le script : upload + vérification nom/taille + retry PATCH + échec bruyant. +38. **Comparaison lexicographique de tags/versions** (v1.3.0, publication + farewell) : `tag >= "v1.2.5"` en comparaison de CHAÎNES fait `v1.2.10 < + v1.2.5` ("1" < "5") → la boucle de publication a sauté v1.2.10. → + toujours comparer les versions STRUCTURÉEMENT (tuple numérique, cf + ChangelogHelper.isVersionNewer) ; même famille que le bug #22 (casse + EEn) : identifiants « presque pareils ». 36. **Sens des boutons de zoom inversé** (v1.2.10, retour utilisateur) : le « + » dézoomait (fenêtre plus longue) et le « − » zoomait — contre la convention carte. → « + » = zoom avant (fenêtre courte), « − » = @@ -766,9 +773,9 @@ adb install -r app/build/outputs/apk/debug/app-debug.apk - `origin` → `https://gitea.cloudyfy.fr/Siphonight/HormoneTrack` (privé, HTTPS + trousseau) - `farewell` → `git@farewell:Siphonight/HormoneTrack.git` (SSH, alias `farewell` = `giteassh.farewell.dev:2222` avec clé dédiée, cf `~/.ssh/config`) — - **repo créé + push initial OK (2026-09-06)** ; les RELEASES y nécessitent - un token dans le trousseau (`gitea.farewell.dev`, scope write:repository), - absent à ce jour + **repo créé + push + LES 12 RELEASES publiées avec APK vérifiés par + téléchargement (2026-09-06)** ; token `gitea.farewell.dev` au trousseau + (scope write:repository) - Historique = commits logiques par couche (toolchain / moteur / UI / docs) ; - **Chaque release = tag annoté** (`v1.1.0`, `v1.2.0`, …) : `git tag -a vX.Y.Z -m "…" && git tag` pour lister ; @@ -804,6 +811,8 @@ cp app/build/outputs/apk/debug/app-debug.apk /tmp/apks/HormoneTrack-vX.Y.Z-deb git checkout main # 2. Publier sur chaque instance (corps = CHANGELOG + les 2 APK attachés) +# ⚠️ NE JAMAIS comparer les tags en chaînes (v1.2.10 < v1.2.5 +# lexicographiquement !) — comparer en tuples numériques (§14 #38) # ⚠️ v1.3.0 : deux invocations RAPPROCHÉES du script se sont écrasées # mutuellement (APK release disparu, debug renommé générique). Pattern # validé : purge des assets + upload + VÉRIFICATION PAR TÉLÉCHARGEMENT diff --git a/docs/GUIDE_INSTALLATION.md b/docs/GUIDE_INSTALLATION.md index 0f596a9..eedb9ea 100644 --- a/docs/GUIDE_INSTALLATION.md +++ b/docs/GUIDE_INSTALLATION.md @@ -21,8 +21,9 @@ Tu n'as pas besoin d'installer Gradle ni le JDK séparément : Android Studio s' Chaque version taguée est publiée en **release Gitea** avec les APK prêts à installer — pas besoin d'Android Studio ni de faire un build : -1. Va sur **Releases** du dépôt Gitea (onglet « Releases » à droite) - → ex. `https://gitea.cloudyfy.fr/Siphonight/HormoneTrack/releases` +1. Va sur **Releases** du dépôt Gitea (onglet « Releases » à droite) : + `https://gitea.cloudyfy.fr/Siphonight/HormoneTrack/releases` + (miroir équivalent : `https://gitea.farewell.dev/Siphonight/HormoneTrack/releases`) 2. Deux APK par release : | Fichier | Quoi | Pour qui |