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

Import des dépendances de la bibliothèque RDFLib #39

Closed alhyss closed 2 years ago

alhyss commented 2 years ago

Signalé par la DRAAF ARA. Sous QGIS 3.18, depuis le RIE, erreur à l'installation due à l'impossibilité de passer le proxy pour importer la bibliothèque isodate dont dépend rdflib (elle-même intégrée aux fichiers d'installation du plugin).

Processing c:\users\username\appdata\roaming\qgis\qgis3\profiles\default\python\plugins\plume\bibli_install\rdflib-6.1.1.tar.gz
WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ConnectTimeoutError(<pip._vendor.urllib3.connection.HTTPSConnection object at 0x00000204F1CE8080>, 'Connection to pypi.org timed out. (connect timeout=15)')': /simple/isodate/
WARNING: Retrying (Retry(total=3, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ConnectTimeoutError(<pip._vendor.urllib3.connection.HTTPSConnection object at 0x00000204F1CE8AC8>, 'Connection to pypi.org timed out. (connect timeout=15)')': /simple/isodate/
WARNING: Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ConnectTimeoutError(<pip._vendor.urllib3.connection.HTTPSConnection object at 0x00000204F1CE8A58>, 'Connection to pypi.org timed out. (connect timeout=15)')': /simple/isodate/
WARNING: Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ConnectTimeoutError(<pip._vendor.urllib3.connection.HTTPSConnection object at 0x00000204F1CE8C50>, 'Connection to pypi.org timed out. (connect timeout=15)')': /simple/isodate/
WARNING: Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ConnectTimeoutError(<pip._vendor.urllib3.connection.HTTPSConnection object at 0x00000204F1CE82B0>, 'Connection to pypi.org timed out. (connect timeout=15)')': /simple/isodate/
ERROR: Could not find a version that satisfies the requirement isodate (from rdflib==6.1.1) (from versions: none)
ERROR: No matching distribution found for isodate (from rdflib==6.1.1)

Liste des dépendances de RDFLib : https://github.com/RDFLib/rdflib/blob/master/requirements.txt.

WREATCHED commented 2 years ago

Merci Michael pour cette remontée. RDFLIB a deux dépendances (isodate et pyparsing) J'ai modifié le code pour pouvoir installer ces deux librairies comme celle de RDFLIB Je t'envoie en 7z (mdp : "qgis_dl") pour que tu puisses tester avant une nouvelle diffusion aux membres du GT PostGIS

alhyss commented 2 years ago

Ce que j'ai avec importlib.metadata comme dépendances :

>>> from importlib.metadata import requires
>>> requires('rdflib')
['isodate', 'pyparsing', 'setuptools', 'importlib-metadata ; python_version < "3.8.0"', "sphinx (<5) ; extra == 'docs'", "sphinxcontrib-apidoc ; extra == 'docs'", "html5lib ; extra == 'html'", "berkeleydb ; extra == 'tests'", "html5lib ; extra == 'tests'", "networkx ; extra == 'tests'", "pytest ; extra == 'tests'", "pytest-cov ; extra == 'tests'", "pytest-subtests ; extra == 'tests'"]

Donc a priori : isodate, pyparsing, setuptools + importlib-metadata pour les versions de python antérieures à la 3.8.

alhyss commented 2 years ago

Pour les dépendances des dépendances :

WREATCHED commented 2 years ago

Après investigation, le problème semble résolu. Le code et les appels sont changés ainsi que le type de bibliothèques Toutefois, nous vous remercions d'avance si vous pouvez tester la version en pièce jointe afin que nous puissions communiquer et la diffuser à l'ensemble du GT PostGIS

En attente de test de la DDM40 et la DRAAF AURA

alhyss commented 2 years ago

En conclusion. Le problème est corrigé par la version corrective 0.3.1 bêta. Plume embarque maintenant toutes les dépendances, y compris par héritage.

Bibliothèque Dépendance de... Fiche PyPi Remarques
rdflib Plume https://pypi.org/project/rdflib/ Seule dépendance directe de Plume, déjà incorporée dans Plume v0.3 bêta.
isodate rdflib https://pypi.org/project/isodate/
six isodate https://pypi.org/project/six/
pyparsing rdflib https://pypi.org/project/pyparsing/
setuptools rdflib https://pypi.org/project/setuptools/
importlib-metadata rdflib https://pypi.org/project/importlib-metadata/ Installée uniquement pour les versions de python strictement inférieures à la 3.8.0.
zipp importlib-metadata https://pypi.org/project/zipp/ Installée uniquement pour les versions de python strictement inférieures à la 3.8.0.