ModuleNotFoundError: No module named 'pkg_resources' à l'installation de tikka 0.14.1

Suite à l’annonce de tikka 0.14.1 (FEUILLE DE ROUTE de Tikka - #104 by vit), j’ai tenté l’install, mais il manque sûrement une dépendance :

$ pipx install tikka
  installed package tikka 0.14.1, installed using Python 3.13.2
  These apps are now globally available
    - tikka
done! ✨ 🌟 ✨
$ tikka
Traceback (most recent call last):
  File "/home/hugo/.local/bin/tikka", line 5, in <module>
    from tikka.__main__ import main
  File "/home/hugo/.local/share/pipx/venvs/tikka/lib/python3.13/site-packages/tikka/__main__.py", line 20, in <module>
    from tikka.domains.application import Application
  File "/home/hugo/.local/share/pipx/venvs/tikka/lib/python3.13/site-packages/tikka/domains/application.py", line 26, in <module>
    from tikka.adapters.repository.repository import Repository
  File "/home/hugo/.local/share/pipx/venvs/tikka/lib/python3.13/site-packages/tikka/adapters/repository/repository.py", line 23, in <module>
    from tikka.adapters.repository.file_db_client import FileDBClient
  File "/home/hugo/.local/share/pipx/venvs/tikka/lib/python3.13/site-packages/tikka/adapters/repository/file_db_client.py", line 23, in <module>
    from yoyo import get_backend, read_migrations
  File "/home/hugo/.local/share/pipx/venvs/tikka/lib/python3.13/site-packages/yoyo/__init__.py", line 27, in <module>
    from yoyo.connections import get_backend
  File "/home/hugo/.local/share/pipx/venvs/tikka/lib/python3.13/site-packages/yoyo/connections.py", line 23, in <module>
    from yoyo.backends import get_backend_class
  File "/home/hugo/.local/share/pipx/venvs/tikka/lib/python3.13/site-packages/yoyo/backends/__init__.py", line 1, in <module>
    from yoyo.backends.base import DatabaseBackend
  File "/home/hugo/.local/share/pipx/venvs/tikka/lib/python3.13/site-packages/yoyo/backends/base.py", line 32, in <module>
    from yoyo import internalmigrations
  File "/home/hugo/.local/share/pipx/venvs/tikka/lib/python3.13/site-packages/yoyo/internalmigrations/__init__.py", line 8, in <module>
    from . import v2
  File "/home/hugo/.local/share/pipx/venvs/tikka/lib/python3.13/site-packages/yoyo/internalmigrations/v2.py", line 7, in <module>
    from yoyo.migrations import get_migration_hash
  File "/home/hugo/.local/share/pipx/venvs/tikka/lib/python3.13/site-packages/yoyo/migrations.py", line 34, in <module>
    import pkg_resources
ModuleNotFoundError: No module named 'pkg_resources'
1 Like

Ça semble être un problème de la dépendance yoyo-migrations.
Tu peux l’installer ainsi :

  • sur ton système : python3-pkginfo
  • pipx inject tikka pkginfos

python3-pkginfo était déjà installé sur mon système, car c’est une dépendance de Poetry.

1 Like

J’ai installé ce paquet système là :

$ pacman -Ss python-pkginfo
extra/python-pkginfo 1.12.0-1
    Query metadata from sdists / bdists / installed packages

Mais j’ai toujours le même message. Je cherche…

J’ai aussi setuptools :

$ pacman -Ss python-setuptools
extra/python-setuptools 1:75.8.0-1 (python-build-backend) [installé]
    Easily download, build, install, upgrade, and uninstall Python packages

Je me suis trompé, pkg_resources ne vient pas du paquet pkginfo mais, bien de setuptools. Ce module a été retiré de Python 3.12. Il n’est peut-être plus installé/able sous Manjaro. Étrange, je l’ai sous Fedora. Je vois que yoyo-migration a sortie une v9.0 sur PyPI, mais il n’y a pas de changelog. J’ai vérifé, elle n’utilise plus cette dépendance pkg_resources dépréciée de setuptools. Permettre la v9.0.0 dans le pyproject.toml devrait corriger le problème.

Effectivement, je suis en python 3.13.2. Un peu la flemme d’installer une version de python plus ancienne, si j’ai le temps je viendrai libérer la contrainte dans le manifest.

Ok, changelog v9.0.0 trouvé. Ça ajoute bien la gestion de Python v3.12.

2 Likes

Merci à tous les deux pour ces précieux retours !

Je vais mettre en place un test sur les différentes versions de python pour Tikka.

Et poster un correctif rapidement !

2 Likes