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
0 stars 1 forks source link

RDFLib 7.0.0 #168

Closed alhyss closed 5 months ago

alhyss commented 8 months ago

RDFLib 7.0.0 est disponible depuis août 2023.

Cette version comporte une évolution notable pour Plume : l'abandon de la prise en charge de Python 3.7. Il s'en suivrait que Plume ne serait plus compatible avec les installations anciennes de QGIS qui embarquaient cette version de Python (même si elles peuvent aussi autoriser des versions plus récentes). @WREATCHED, tu dois en savoir plus que moi sur les versions de QGIS effectivement concernées.

Est-ce qu'à ce stade abandonner Python 3.7 serait encore un problème pour les utilisateurs de Plume ?

Le bon côté, c'est qu'une large part des dépendances de RDFLib étaient là pour des questions de compatibilité avec Python 3.7. Avec RDFLib 7.0.0, les seules bibliothèques supplémentaires que Plume aurait à embarquer sont apparemment isodate (>=0.6.0,<0.7.0), pyparsing (>=2.1.0,<4) et six, dont dépend isodate.

>>> from importlib.metadata import requires
>>> requires('rdflib')
['berkeleydb (>=18.1.0,<19.0.0) ; extra == "berkeleydb"', 'html5lib (>=1.0,<2.0) ; extra == "html"', 'isodate (>=0.6.0,<0.7.0)', 'lxml (>=4.3.0,<5.0.0) ; extra == "lxml"', 'networkx (>=2.0.0,<3.0.0) ; extra == "networkx"', 'pyparsing (>=2.1.0,<4)']
>>> requires('pyparsing')
['railroad-diagrams ; extra == "diagrams"', 'jinja2 ; extra == "diagrams"']
>>> requires('isodate')
['six']
alhyss commented 8 months ago

Sinon j'ai fait tourner les tests, et pas de problème à signaler avec cette nouvelle version.

WREATCHED commented 8 months ago

Information Apparemment, Qgis passe en version 3.9.5 de python à partir de 3.22, et peut-être 3.20, mais je n'en ai plus. Par contre jusqu'à la version 3.18 de Qgis, nous sommes en 2.7 Je ne pense pas que les SIDSIC ont le temps de migrer les QGIS au minimum en 3.22

alhyss commented 8 months ago

Aucune version de QGIS n'a été distribuée avec Python 3.8 ?

Peut-être que ça mériterait d'enquêter un peu pour mesurer l'ampleur du problème. Pourquoi ne pas faire un petit sondage auprès des membres du GT PostGIS, voir un sondage ouvert sur labo.qgis ? Juste une question pour connaître la version de Python avec laquelle tourne leur QGIS (en leur rappelant comment trouver l'info) et éventuellement une autre pour la version de QGIS elle-même. Si tu dis dans le message que la question de savoir s'il faut maintenir la compatibilité des outils avec Python 3.7 se pose, ça devrait motiver ceux qui utilisent des versions anciennes à le signaler. Accessoirement ce n'est pas une mauvaise chose de faire sentir aux services qui n'ont pas encore migré que ça va tôt ou tard commencer à poser problème, et ça peut aussi être un argument vis-à-vis du SIDSIC.

Sinon, considérant que Plume n'utilise pas pour l'heure les fonctionnalités nouvelles de RDFLib 7.0.0, il pourrait être imaginable de conserver pour le moment RDFLib 6.3.2 pour Python 3.7 tout en passant à RDFLib 7.0.0 pour les versions plus récentes. Ce n'est pas ça qui va alléger le plugin, mais soit.

alhyss commented 8 months ago

Solution retenue pour l'heure :

WREATCHED commented 6 months ago

Issue réouverte pour faire suite aux échangés sur le canal Ariane

LECLERC Didier @didier.leclerc
09:36
Hello Leslie et Silvère,
l'issue https://github.com/MTES-MCT/metadata-postgresql/issues/168 est taguée "Closed".
Toutefois, dans l'hypothèse de diffuser une 1.2.0 avant fin janvier (que se passe t-il fin janvier ? 😉 ) je scanne les versions des bibliothèques comme il est précisé dans la diffusion d'une nouvelle version.
Dans ce cadre, sans mémoire du projet, le futur responsable de la conception de la diffusion d'une nouvelle version, qui forcerait la version 7.0.0 de rdflib ferait en sorte de poser un problème comme c'est indiqué dans l'issue en fonction de la version de python embarquée dans Qgis.
Ma question est : la #168 pour moi ne devrait pas être fermée dans la mesure où la cible est la 2.0 ou bien recréer une autre ?
Un avis, une proposition ? Pour moi, j'enlèverai simplement le tag "Closed"
CHIEUSSE Silvère @silvere.chieusse
17:26
Oui tout à fait cette issue paraît "à surveiller" plutôt que "Closed".
Est-ce que le questionnaire à venir sur l'utilisation d'Asgard/Plume dans les services peut être l'occasion de récolter leurs versions QGIS + Python ?

Ceci afin d'anticiper les futures évolutions de version et de diffuser des recommandations de mise à jour ?
WREATCHED commented 6 months ago

LECLERC Didier @didier.leclerc 08:35 For silvère

Seule la version de Qgis est nécessaire comme indicateur, car Qgis embarque sa propre version de Python nécessaire à l'exécution du code des plugins.

alhyss commented 6 months ago

Je considère que l'issue est close parce qu'on y a répondu en choisissant de rester pour l'heure sur RDFLib 6.3.2 et en actant d'intégrer aux tests préalables à la diffusion des nouvelles versions la vérification de compatibilité avec la dernière version en date de RDFLib, même si ce n'est actuellement pas celle qui est distribuée avec Plume.

Ces tests sont tracés dans les notes de versions, pas besoin de laisser une issue ouverte pour ça, et si jamais un problème de compatibilité est détecté, je pense préférable d'ouvrir une nouvelle issue à son sujet.