Skip to content

MIssig dependencies to run tests #5797

@arogl

Description

@arogl

When testing on an minimal Arch install after following the instructions here contibuting

Problem

poe test
Poe => pytest -p no:cov
========================================================================================================= test session starts ==========================================================================================================
platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
cachedir: /tmp/pytest_cache
rootdir: /mnt/e/Git/arogl-beets
configfile: setup.cfg
plugins: flask-1.3.0, requests-mock-1.12.1, anyio-4.9.0
collected 1850 items / 1 error / 2 skipped

================================================================================================================ ERRORS ================================================================================================================
_____________________________________________________________________________________________ ERROR collecting test/plugins/test_lyrics.py _____________________________________________________________________________________________
ImportError while importing test module '/mnt/e/Git/arogl-beets/test/plugins/test_lyrics.py'.
Hint: make sure your test modules/packages have valid Python names.
Traceback:
/usr/lib/python3.13/importlib/__init__.py:88: in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
test/plugins/test_lyrics.py:29: in <module>
    from beetsplug import lyrics
beetsplug/lyrics.py:34: in <module>
    import langdetect
E   ModuleNotFoundError: No module named 'langdetect'
=========================================================================================================== warnings summary ===========================================================================================================
../../../../home/arogl/.cache/pypoetry/virtualenvs/beets-LGjnwsNN-py3.13/lib/python3.13/site-packages/confuse/util.py:118
  /home/arogl/.cache/pypoetry/virtualenvs/beets-LGjnwsNN-py3.13/lib/python3.13/site-packages/confuse/util.py:118: DeprecationWarning: 'pkgutil.get_loader' is deprecated and slated for removal in Python 3.14; use importlib.util.find_spec() instead
    loader = pkgutil.get_loader(name)

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
======================================================================================================= short test summary info ========================================================================================================
SKIPPED [1] test/plugins/test_autobpm.py:10: librosa isn't available
SKIPPED [1] test/test_release.py:9: could not import 'extra.release': No module named 'sphinx'
ERROR test/plugins/test_lyrics.py

Led to this problem:

Missing dependencies on install as minimum to run tests:
. langdetect

Extra missing dependencies on install to run full tests:
. librosa
. sphinx

Setup

  • OS: Arch
  • Python version: 3.13
  • beets version: git head

I'll look to see how to add and create a PR

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions