Docs : audit de complétude post-release-build (§16 workflow assembleRelease, §16.bis les deux APK par tag, §20 keystore dédié restant, §19 smoke-test R8, historique, README)
This commit is contained in:
parent
a8a9ee47c8
commit
58f107f78e
@ -69,8 +69,9 @@ 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
|
||||
**releases taguées** (`v1.1.0` → `v1.2.3`) et **APK en pièce jointe de chaque
|
||||
release** (téléchargeable sans compiler, cf [docs/DEVELOPPEMENT.md §16.bis](docs/DEVELOPPEMENT.md)) :
|
||||
**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) :
|
||||
|
||||
```bash
|
||||
git tag # lister les releases
|
||||
|
||||
@ -64,6 +64,7 @@ Fonctionnalités v1 :
|
||||
| 5 sept. 2026 (session tests/docs) | Correction de toutes les erreurs de compilation (dont 3 vrais bugs logiciels trouvés par les tests), **24 tests unitaires verts**, APK debug généré (18 MB), documentation complète (README + docs/), préparation repo git. |
|
||||
| 5 sept. 2026 (session v1.1.0) | Bugs remontés par l'utilisatrice : courbes vides (casse EEn) + pas d'édition des doses → corrigés ; régression épinglée sur ses données réelles ; APK v1.1.0. |
|
||||
| 5 sept. 2026 (session v1.2.0) | **Repo git initialisé** (commits par couche + tags de release) ; montée toolchain AGP 9.4/Gradle 9.7.1/Kotlin 2.3.21/BOM 2026.08.00/compileSdk 37 ; panoramique du chart, superposition des deux modèles, prévision par « Fréquence », calibration automatique optionnelle, intervalles entre doses, TimePicker centré ; **36 tests verts**, APK v1.2.0 (23 MB). |
|
||||
| 5 sept. 2026 (session builds release) | Question debug vs release → **builds release optimisés** (R8 full mode + shrinkResources, 20 Mo → **2,4 Mo**, signés avec la clé debug → upgradables sans perte) ; garde-fous Gson dans `proguard-rules.pro` (réflexion) ; releases publiées avec les **deux APK** (release recommandé + debug) ; 62 tests verts. |
|
||||
| 5 sept. 2026 (session v1.2.5) | Bug graphique : double espace en haut (double insets) → **edge-to-edge propre** (`enableEdgeToEdge` + insets consommés une seule fois) ; 62 tests verts, APK v1.2.5 + release. |
|
||||
| 5 sept. 2026 (session v1.2.4) | Bug `isActive` (simulation effacée) → sémantique « drapeau administratif » (§6.bis) ; régression n°3 sur le 3ᵉ export réel (transition EV inactif → EEn actif, 38 doses, 22 labs) ; **62 tests verts**, APK v1.2.4. |
|
||||
| 5 sept. 2026 (session push Gitea + v1.2.3) | Push initial vers **gitea.cloudyfy.fr/Siphonight/HormoneTrack** (privé) après **anonymisation de l'historique** (filter-branch : les premiers commits embarquaient les valeurs réelles des tests) ; **données de test réelles déplacées hors dépôt** (`local-test-data/` gitignoré, tests `Assume`-skippés) ; **releases avec APK en pièce jointe** ; pics/creux + calibration T par période d'ester ; **56 tests verts**. |
|
||||
@ -675,8 +676,8 @@ structure ci-dessus. **Toute restructuration du JSON impose de mettre à jour
|
||||
|
||||
```bash
|
||||
cd ~/projects/HormoneTrack
|
||||
./gradlew assembleDebug testDebugUnitTest # build + 36 tests
|
||||
./gradlew lint # linters Android (à configurer)
|
||||
./gradlew assembleDebug testDebugUnitTest # build + 62 tests (44 sans données locales)
|
||||
./gradlew assembleRelease # APK optimisé R8 (cf §16.bis)
|
||||
adb install -r app/build/outputs/apk/debug/app-debug.apk
|
||||
```
|
||||
|
||||
@ -707,15 +708,18 @@ Le tout est automatisé par `scripts/gitea-release.py` — **multi-instances**
|
||||
(`cloudyfy` par défaut, `farewell`) :
|
||||
|
||||
```bash
|
||||
# 1. Construire l'APK au niveau du tag
|
||||
git checkout vX.Y.Z && ./gradlew assembleDebug
|
||||
cp app/build/outputs/apk/debug/app-debug.apk /tmp/apks/HormoneTrack-vX.Y.Z.apk
|
||||
# 1. Construire les DEUX APK au niveau du tag (debug + release R8)
|
||||
git checkout vX.Y.Z
|
||||
./gradlew assembleRelease assembleDebug # release = recommandé (R8, cf plus bas)
|
||||
cp app/build/outputs/apk/release/app-release.apk /tmp/apks/HormoneTrack-vX.Y.Z-release.apk
|
||||
cp app/build/outputs/apk/debug/app-debug.apk /tmp/apks/HormoneTrack-vX.Y.Z-debug.apk
|
||||
git checkout main
|
||||
|
||||
# 2. Publier sur chaque instance (corps = CHANGELOG + APK attaché)
|
||||
python3 scripts/gitea-release.py cloudyfy vX.Y.Z /tmp/apks/HormoneTrack-vX.Y.Z.apk
|
||||
python3 scripts/gitea-release.py farewell vX.Y.Z /tmp/apks/HormoneTrack-vX.Y.Z.apk
|
||||
# sans APK : python3 scripts/gitea-release.py farewell vX.Y.Z (corps seul)
|
||||
# 2. Publier sur chaque instance (corps = CHANGELOG + les 2 APK attachés)
|
||||
for I in cloudyfy farewell; do
|
||||
python3 scripts/gitea-release.py $I vX.Y.Z /tmp/apks/HormoneTrack-vX.Y.Z-release.apk
|
||||
python3 scripts/gitea-release.py $I vX.Y.Z /tmp/apks/HormoneTrack-vX.Y.Z-debug.apk
|
||||
done
|
||||
```
|
||||
|
||||
Le script choisit l'instance (URL, owner) et lit le token Gitea correspondant
|
||||
@ -802,6 +806,10 @@ Volontaires (v1) :
|
||||
prochain reschedule (boot/save) — mineur
|
||||
- Labs : marqueur libre — E2/T exacts requis pour calibration/charts
|
||||
- `allowBackup=false` → seul backup = export JSON manuel
|
||||
- **APK release (R8)** : la réflexion Gson est couverte par des `-keep`
|
||||
explicites, mais R8 ne se vérifie pas en tests JVM → **smoke-test sur
|
||||
téléphone** (export/import backup, graphiques) avant chaque publication ;
|
||||
signé clé debug → upgradable sans perte, mais pas une signature « officielle »
|
||||
|
||||
## 20. Idées d'évolution
|
||||
|
||||
@ -812,7 +820,8 @@ Volontaires (v1) :
|
||||
5. Verrou biométrique (BiometricPrompt), widget, export CSV
|
||||
6. Charts : **zoom** + tooltip au toucher (le pan est fait, v1.2.0) ;
|
||||
MaterialExpressiveTheme quand l'API passera publique (cf §3)
|
||||
7. Release workflow : version signée (release build) au lieu de debug APK
|
||||
7. **Vrai keystore de distribution** (signature dédiée ≠ clé debug → nécessite
|
||||
une migration : backup → désinstallation → installation signée → réimport)
|
||||
|
||||
Fait (à ne pas refaire) : pan du chart (v1.2.0), pics/creux (v1.2.3),
|
||||
prévision par fréquence (v1.2.0), calibration par période d'ester E2 **et** T
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user