From 88c365f4d064ef682f6a19a7224ffd2add9caa55 Mon Sep 17 00:00:00 2001 From: Siphonight Date: Sun, 6 Sep 2026 10:52:59 +0200 Subject: [PATCH] =?UTF-8?q?Docs=20=C2=A716.bis=20:=20publish-release.py=20?= =?UTF-8?q?r=C3=A9f=C3=A9renc=C3=A9=20(les=202=20APK=20dans=20UNE=20invoca?= =?UTF-8?q?tion)=20;=20gitea-release.py=20document=C3=A9=20pour=20le=20cor?= =?UTF-8?q?ps=20seul?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/DEVELOPPEMENT.md | 25 +++++++++++-------------- 1 file changed, 11 insertions(+), 14 deletions(-) diff --git a/docs/DEVELOPPEMENT.md b/docs/DEVELOPPEMENT.md index 6a56477..b891b01 100644 --- a/docs/DEVELOPPEMENT.md +++ b/docs/DEVELOPPEMENT.md @@ -854,17 +854,12 @@ 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) -# ⚠️⚠️ CONFIRMÉ v1.2.10 + v1.3.0 + v1.3.1 : les DEUX invocations -# remplacent mutuellement (le 2e upload écrase le 1er, nom générique) — -# BUG RÉCURRENT, confirmé 3 fois. Pattern OBLIGATOIRE : UNE passe Python inline — -# purge des assets, upload séquentiel, VÉRIFICATION PAR TÉLÉCHARGEMENT -# de CHAQUE asset puis RE-VÉRIFICATION FINALE des deux (listing ET -# contenu délivré). Le script one-shot par APK ne suffit plus. -# Pattern validé : UNE passe Python par instance — purge des assets, -# upload séquentiel des 2 APK, vérification par TÉLÉCHARGEMENT de chaque -# asset puis re-vérification finale des deux (le listing peut mentir). -# Cf la séquence inline utilisée et validée en v1.2.6/v1.2.10/v1.3.0/v1.3.1 -# (dans l'historique de session de ce dépôt). +# ⚠️ NE JAMAIS utiliser gitea-release.py en deux invocations rapprochées +# (les uploads se remplacent mutuellement, confirmé 4 fois) : +# → UNE invocation de **scripts/publish-release.py** par instance fait +# tout (purge + upload des 2 APK + vérification par téléchargement). +python3 scripts/publish-release.py cloudyfy vX.Y.Z +python3 scripts/publish-release.py farewell vX.Y.Z ``` Le script choisit l'instance (URL, owner) et lit le token Gitea correspondant @@ -923,9 +918,11 @@ vérifie pas en tests JVM). `app-release.apk` → `/tmp/apks/HormoneTrack-vX.Y.Z-release.apk` et `app-debug.apk` → `HormoneTrack-vX.Y.Z-debug.apk` → `git checkout main`. 7. **Publier les releases** (corps = section CHANGELOG + les 2 APK attachés) : - `python3 scripts/gitea-release.py cloudyfy vX.Y.Z ` puis - idem avec `` ; répéter avec l'instance `farewell` (token - `gitea.farewell.dev` requis dans le trousseau, absent à ce jour). + `python3 scripts/publish-release.py cloudyfy vX.Y.Z` puis idem avec + `farewell` (⚠️ UNE invocation = les 2 APK + vérification par + téléchargement — NE PAS utiliser gitea-release.py deux fois de suite, + les uploads rapprochés se remplacent mutuellement, cf §14 #43 ; + token `gitea.farewell.dev` requis dans le trousseau). 8. **Smoke-test R8 sur téléphone** (le release APK n'est pas vérifiable en tests JVM) : installation par-dessus l'existant, graphiques, export ET import d'un backup JSON, rappel. Le debug APK est le repli (même signature).