MTES-MCT / metadata-postgresql

Plume : gestion des métadonnées du patrimoine PostgreSQL
https://mtes-mct.github.io/metadata-postgresql/
GNU Affero General Public License v3.0
1 stars 1 forks source link

Installation des dépendances de Plume dans plusieurs versions parallèles de QGIS #76

Closed alhyss closed 1 year ago

alhyss commented 2 years ago

Plusieurs applications QGIS installées en parallèle ou successivement sur un poste partagent leur fichier de configuration QGIS3.ini et leurs plugins, mais pas nécessairement leurs dépendances python. Celles-ci doivent être installées et mises à jour indépendamment :

Actuellement, le processus de mise à jour des dépendances de Plume est exécuté à chaque installation d'une nouvelle version de Plume. Plume utilise un paramètre de configuration du fichier QGIS3.ini pour tracer le fait que les dépendances ont été mises à jour et empêcher le processus de s'exécuter à chaque lancement de Plume... jusqu'à la mise à jour suivante du plugin.

[PLUME]
...
Generale\versionPlumeBibli=v0.5.0 b\xeata

Si le numéro de version du paramètre versionPlumeBibli coïncide avec la version courante de Plume, les dépendances python sont considérées comme installées et à jour.

Ce fonctionnement n'est pas viable lorsque plusieurs applications de QGIS ne partageant par leurs dépendances python sont utilisées sur un poste (usage parallèle ou remplacement par une version de QGIS plus récente), puisqu'après installation / mise à jour des dépendances pour l'une d'entre elles, Plume présumera à tort que les dépendances sont disponibles pour toutes. Ceci peut provoquer un plantage au lancement de QGIS ou à l'activation de Plume, avec un message d'erreur de cet ordre (cas où Plume n'accède à aucune de ses dépendances) :

Impossible de charger l'extension 'plume' provoque une erreur lors de l'appel à sa méthode classFactory()
ModuleNotFoundError: No module named 'rdflib'

D'autres messages pourraient apparaître en cas de dépendances installées mais obsolètes par rapport aux exigences de Plume.

Méthode de dépannage :

alhyss commented 2 years ago

Principe retenu pour la correction du problème, distinguer dans le QGIS3.ini le paramètre qui trace la version courante de Plume selon la version de QGIS. Le processus d'installation / mise à jour des dépendances sera alors exécuté une fois par version de QGIS après chaque installation / mise à jour de Plume.

WREATCHED commented 2 years ago

Corrigé sur la version en cours 0.5.0 Bêta image

alhyss commented 2 years ago

Super !

J'ai fléché ça sur la v1.0. Je ne pense pas que ça justifie en soi de sortir une version corrective, considérant qu'il y a une méthode de dépannage simple.

En y repensant, il y a tout de même des chances que certains de nos testeurs soient confrontés au problème. Peut-être que d'aucuns vont profiter de l'été pour passer de QGIS 3.18/python 3.7 à QGIS 3.22/python 3.9...