Thanks for sharing your question with the community! Check out our guidelines on how to post an effective question here and please include links to your app, repo, and share the contents of your requirements file.
Streamlit looks at your requirements fileβs filename to determine which Python dependency manager to use in the order described in App dependencies. Streamlit will stop and install the first requirements file found, which in your case is the Pipfile.
If you want the dependencies within requirements.txt to get installed, you have to delete Pipfile and reboot the app.
You also have a Pipfile which does not have gTTS as a requirement. To streamlit, that one takes precedence over requirements.txt (Check App dependencies - Streamlit Docs). What if you delete Pipfile from the repo and leave only requirements.txt?
The version of pandas in your requirements file is ancient. Installation wheels for the default version of Python on Community Cloud (3.9) do not exist:
You need to either unpin the version of pandas, or pin a more recent version that has a Python 3.9 installation candidate.
Thatβs entirely up to your discretion. As a general best practice, only include dependencies that your app actually uses. If your app or your appβs dependencies donβt use pandas, you could remove it.
ModuleNotFoundError: This app has encountered an error. The original error message is redacted to prevent data leaks. Full error details have been recorded in the logs (if youβre on Streamlit Cloud, click on βManage appβ in the lower right of your app).
Traceback:
File "/home/appuser/venv/lib/python3.9/site-packages/streamlit/runtime/scriptrunner/script_runner.py", line 562, in _run_script
exec(code, module.__dict__)File "/app/easy-edit-app/main.py", line 6, in <module>
from gtts import gTTS
As Iβve stated previously, you canβt have both Pipfile and requirements.txt in the same repo. You need to delete Pipfile, and reboot your appβ¦ Once you do that, your app should deploy without the ModuleNotFoundError: