Μετάβαση στο περιεχόμενο

SmartAuth 2.0.50 : l'invite d'installation ne revient plus, cache de routes fiabilisé

Έργο : SmartAuth Εκδότης : CAP-REL Έκδοση : 2.0.50 Ημερομηνία : Dolibarr 18 έως 24

Μικρή λειτουργία σταθερή ανακοινώθηκε πριν από 27 ημέρες δηλωμένη συμβατότητα στα Français

L'invite d'installation cesse de revenir

Une application SmartMaker installée sur l'écran d'accueil redemandait périodiquement à être installée. Le manifeste servi par SmartAuth se déclare maintenant lui-même comme application liée : le navigateur reconnaît qu'elle est déjà là et n'affiche plus l'invite.

Sur iPhone et iPad, c'est le seul signal disponible. Aucune interface du navigateur n'y dit à une page qu'elle a été lancée depuis l'écran d'accueil.

Savoir quels appareils ont installé l'application

Un nouvel appel, POST /account/device-install-state, permet à l'application de signaler qu'elle tourne installée plutôt que dans un onglet. L'information est conservée sur l'appareil logique de l'utilisateur, visible depuis l'onglet SmartAuth de sa fiche.

Elle ne redescend jamais : ouvrir la même adresse dans un onglet après installation ne fait pas oublier que l'application est installée. Un appareil qui n'a rien signalé reste distinct d'un appareil qui utilise le navigateur, ce qui évite de compter comme "non installé" les appareils qui utilisent encore une version antérieure de l'application.

Cache de routes : plus d'avertissement trompeur

Les modules qui exposent leurs propres routes se déclarent depuis la version précédente. Deux défauts restaient :

  • SmartAuth s'avertissait lui-même de ne pas être déclaré, ce qui était faux ;
  • l'avertissement invitant à migrer du balayage de fichiers vers la déclaration apparaissait même quand aucun module installé n'était concerné.

Les deux sont corrigés. L'avertissement ne se déclenche plus que lorsqu'un module présent peut réellement être migré, et le journal indique la cause exacte d'une reconstruction du cache.

Corrections et travaux internes

  • Les objets Dolibarr dont la classe ne déclare pas $fields sont de nouveau correctement identifiés par les correspondances d'objets.
  • Les formulaires de configuration OAuth2 sont protégés contre le double envoi, et les libellés manquants sont traduits dans les huit langues livrées.
  • Le vidage du cache mémoire intervient en dernier à l'installation du module, pour qu'aucun état intermédiaire ne soit remis en cache.
  • Le socle annoncé est aligné sur Dolibarr 18.0 et PHP 7.4, ce qui correspond à ce qui est réellement testé. La rétrocompatibilité vers Dolibarr 16, devenue inutile, a été retirée.
  • L'archive de distribution est désormais vérifiée : elle ne peut plus partir avec une dépendance de développement embarquée.
  • Toutes les pages d'administration et de liste du module sont couvertes par des tests qui échouent au moindre arrêt fatal.