kedro-org / kedro

Kedro is a toolbox for production-ready data science. It uses software engineering best practices to help you create data engineering and data science pipelines that are reproducible, maintainable, and modular.
https://kedro.org
Apache License 2.0
10.02k stars 906 forks source link

Make import failures in kedro-datasets clearer, take 2 #4331

Closed astrojuanlu closed 1 week ago

astrojuanlu commented 1 week ago

Description

In #2943 we partly addressed the issue of unclear errors with datasets.

However, looks like this is still an issue. For example: https://kedro.hall.community/running-kedroviz-on-docker-without-installing-the-library-H0d61LTldx29#bae33c48-aa82-447b-82e7-80486a95ecef

The user was getting

Class 'projx.models.audio.io.LargeModel' not found, is this a typo?

but the actual underlying error was:

>>> from projx.models.audio.io import LargeModel
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/app/src/projx/models/audio/__init__.py", line 1, in <module>
    from .base import LAM
  File "/app/src/projx/models/audio/base.py", line 1, in <module>
    from elevenlabs.client import ElevenLabs
ModuleNotFoundError: No module named 'elevenlabs'

Another internal user reported this today, which prompted me to open this issue.

Context

Steps to Reproduce

(TBC)

Expected Result

Actual Result

-- If you received an error, place it here.
-- Separate them if you have more than one.

Your Environment

yury-fedotov commented 1 week ago

I think this is related as well: #3971 ?

astrojuanlu commented 1 week ago

Oh you're right @yury-fedotov. Let me actually close this one!