Gestion des versions
Besoin : une nouvelle version de la Fresque du climat va être publiée en janvier. L’association souhaite rendre disponible plusieurs versions en simultané : les anciens jeux pourront seront encore valides pendant quelques mois. Les modifications des cartes sont de plusieurs types : (1) modifications visuelles (changement de la photo, d’un chiffre, d’une traduction ; (2) modifications conceptuelles : changement du concept expliqué sur la carte.
Pour les modifications mineures on souhaiterait garder les explications synchronisées entre versions (si je modifie ou que j’ajoute une explication pour la carte 3 v9 alors la carte 3 v8 est mise à jour aussi). De même pour les causes-conséquences.
Pour les modifications majeures, il est impératif que les explications et liens causes-conséquences soient différents entre une ancienne carte 30 v8 et carte 30 v9 si la carte 30 ne parle pas de la même chose entre les deux versions.
État des lieux techniques : Chaque carte est identifiée par une chaîne de caractères (unique) et cet identifiant n'a pas de rapport avec le "numéro de la carte".
Proposition fonctionnelle
Nouveau champ "version" dans les cartes (fichiers markdown)
- Pour chaque carte on liste toutes les versions où elle apparaît (ou deux champs "début / fin").
- Lorsque que l’utilisateurice souhaite voir le jeu dans une certaine version, le mémo filtre les cartes selon la bonne version.
- Sur la vue "carte", les causes-conséquences sont également filtrées par version.
Vue fresque
Pour pouvoir afficher des versions différentes des Fresques, également ajout de numéros de versions auxquelles les fresques s’appliquent.
La correction du lot 1 n’aura pas à être refaite si les cartes n’ont pas changé notamment.
Création d’un sélecteur de versions à côté du "sélecteur de lots"
- Par défaut on propose uniquement la dernière version
- Les versions sont calculées en fonction des cartes
Message d’avertissement si on ouvre une vieille version.
Lorsque la version affichée n’est pas la dernière, un message est automatiquement ajouté, par ex.
⚠ ️ La version affichée ici correspond à version 8.9, les informations affichées ici peuvent ne pas correspondre. Cliquer ici pour accéder à la dernière version
Pour les images
Soit on affiche toujours la dernière image pour une carte qui n’a subit que des modifications mineures (c’est-à-dire qu’en v8.0 on afficherait les images de la v9.0) (= le plus simple à faire techniquement).
Soit on affiche les bonnes images.
Revue technique :
-
Ajout d’un champ "versions" dans les cartes -
Test associé & ajout dans le schéma de validation -
Ajout du champ dans l’interface d’admin
-
-
Lister dynamiquement toutes les versions disponibles dans le mémo et créer un fichier json avec ces données -
Fonction de filtre par version -
Développement du sélecteur de version -
Vue carte -
Afficher la bonne image (?) -
Message d’avertissement si ancienne version -
Adapter les fonctions "carte précédente/carte suivante" (et test associé)
-
-
Vue fresque -
Ajout d’un champ versions + tests associés + schéma de validation + champ interface d’admin -
Adaptation du sélecteur de "lots" pour afficher la bonne fresque
-
Cette solution technique permettrait d’adresser les fresques junior dans le même temps ("version 9 adulte" / "version junior").