Mayavi: Aucun module nommé 'importlib_resources' pour Python 3.8

Créé le 9 janv. 2021  ·  4Commentaires  ·  Source: enthought/mayavi

Installé avec conda 4.8.2 sur Python 3.8, l'importation échoue :

Python 3.8.6 | packaged by conda-forge | (default, Oct  7 2020, 18:42:56)
[Clang 10.0.1 ] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> from mayavi import mlab
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/scott/opt/anaconda3/envs/mapping/lib/python3.8/site-packages/mayavi/mlab.py", line 16, in <module>
    from mayavi.tools.camera import view, roll, yaw, pitch, move
  File "/Users/scott/opt/anaconda3/envs/mapping/lib/python3.8/site-packages/mayavi/tools/camera.py", line 24, in <module>
    from .engine_manager import get_engine
  File "/Users/scott/opt/anaconda3/envs/mapping/lib/python3.8/site-packages/mayavi/tools/engine_manager.py", line 12, in <module>
    from mayavi.preferences.api import preference_manager
  File "/Users/scott/opt/anaconda3/envs/mapping/lib/python3.8/site-packages/mayavi/preferences/api.py", line 4, in <module>
    from .preference_manager import preference_manager
  File "/Users/scott/opt/anaconda3/envs/mapping/lib/python3.8/site-packages/mayavi/preferences/preference_manager.py", line 29, in <module>
    from traitsui.api import View, Group, Item
  File "/Users/scott/opt/anaconda3/envs/mapping/lib/python3.8/site-packages/traitsui/api.py", line 35, in <module>
    from .editors.api import (
  File "/Users/scott/opt/anaconda3/envs/mapping/lib/python3.8/site-packages/traitsui/editors/__init__.py", line 26, in <module>
    from .api import (
  File "/Users/scott/opt/anaconda3/envs/mapping/lib/python3.8/site-packages/traitsui/editors/api.py", line 45, in <module>
    from .list_str_editor import ListStrEditor
  File "/Users/scott/opt/anaconda3/envs/mapping/lib/python3.8/site-packages/traitsui/editors/list_str_editor.py", line 29, in <module>
    from pyface.image_resource import ImageResource
  File "/Users/scott/opt/anaconda3/envs/mapping/lib/python3.8/site-packages/pyface/image_resource.py", line 19, in <module>
    ImageResource = toolkit_object("image_resource:ImageResource")
  File "/Users/scott/opt/anaconda3/envs/mapping/lib/python3.8/site-packages/pyface/base_toolkit.py", line 152, in __call__
    module = import_module(mname, package)
  File "/Users/scott/opt/anaconda3/envs/mapping/lib/python3.8/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "/Users/scott/opt/anaconda3/envs/mapping/lib/python3.8/site-packages/pyface/ui/qt4/image_resource.py", line 25, in <module>
    from pyface.i_image_resource import IImageResource, MImageResource
  File "/Users/scott/opt/anaconda3/envs/mapping/lib/python3.8/site-packages/pyface/i_image_resource.py", line 14, in <module>
    from pyface.resource_manager import resource_manager
  File "/Users/scott/opt/anaconda3/envs/mapping/lib/python3.8/site-packages/pyface/resource_manager.py", line 14, in <module>
    from pyface.resource.api import ResourceManager
  File "/Users/scott/opt/anaconda3/envs/mapping/lib/python3.8/site-packages/pyface/resource/api.py", line 13, in <module>
    from .resource_manager import ResourceManager
  File "/Users/scott/opt/anaconda3/envs/mapping/lib/python3.8/site-packages/pyface/resource/resource_manager.py", line 20, in <module>
    from importlib_resources import files
ModuleNotFoundError: No module named 'importlib_resources'

Je pense que cela peut être lié à la prise en charge de Python 3.9, car l'exécution
pip install importlib-resources
corrige le problème (trouvé sur https://pypi.org/project/importlib-resources/).

Je ne sais pas quelle serait la meilleure façon de résoudre ce problème, ou je contribuerais au PR.

Commentaire le plus utile

Je pense que ce n'est pas le bogue de mayavi , mais plutôt l'empaquetage de pyface de conda-forge, donc cela devrait être le bon problème à surveiller :

https://github.com/conda-forge/pyface-feedstock/pull/27

Tous les 4 commentaires

Pour une raison quelconque, votre installation de Pyface ne détecte pas la dépendance sur importlib_resources (et peut-être aussi importlib_metadata ). Si vous utilisez pip ou edm ils devraient s'installer correctement, mais il semble que vous utilisiez conda , vous devez donc signaler ce problème à la personne qui fournit vos versions de Pyface.

Si vous utilisez pip pour installer Pyface (ou Mayavi), veuillez le signaler comme un problème sur le dépôt Pyface !

Je vais fermer ceci, car ce n'est pas un problème direct avec Mayavi.

Votre colis ne fonctionne pas correctement avec conda
Vous ne devriez pas simplement fermer le problème/vos yeux dessus

Je pense que ce n'est pas le bogue de mayavi , mais plutôt l'empaquetage de pyface de conda-forge, donc cela devrait être le bon problème à surveiller :

https://github.com/conda-forge/pyface-feedstock/pull/27

Merci @larsoner d' avoir signalé le problème dans conda-forge. Espérons que vos relations publiques seront bientôt fusionnées !

Cette page vous a été utile?
0 / 5 - 0 notes