Error Installing Requirements for App Deployment

Hello I am trying to deploy an app and keep running into an error with installing certain requirements. Here is the what the terminal is giving me:

ModuleNotFoundError: No module named ‘distutils’
[notice] A new release of pip is available: 24.0 → 24.3.1
[notice] To update, run: pip install --upgrade pip
Checking if Streamlit is installed
[16:46:44] :exclamation: installer returned a non-zero exit code
[16:46:44] :exclamation: Error during processing dependencies! Please fix the error and push an update, or try restarting the app.
[16:48:22] :exclamation: Streamlit server consistently failed status checks
[16:48:22] :exclamation: Please fix the errors, push an update to the git repo, or reboot the app.

Here is my requirements.txt file

You probably need an older python or a newer numpy.

I changed the dumpy to numpy<2. Looks like there is something wrong with boto

  And because aiobotocore==2.17.0 depends on botocore>=1.35.74,<1.35.94
  and botocore>=1.36.0,<1.36.2, we can conclude that

  aiobotocore>=2.5.4,<2.19.0 depends on one of:

      botocore>=1.31.16,<1.31.65

      botocore>=1.32.4,<1.34.35

      botocore>=1.34.41,<1.35.8

      botocore>=1.35.16,<1.35.37

      botocore>=1.35.74,<1.35.94

      botocore>=1.36.0,<1.36.2
  And because we know from (1) that all of:

      aiobotocore<2.5.4

      aiobotocore==2.19.0

      aiobotocore>=3.0.0

  , all of:

      botocore<1.36.0

      botocore>=1.36.4

  , s3fs>=2023.10.0,<2024.0.0 are incompatible, we can conclude that

  s3fs>=2023.10.0,<2024.0.0 depends on one of:

      botocore>=1.31.16,<1.31.65

      botocore>=1.32.4,<1.34.35
      botocore>=1.34.41,<1.35.8

      botocore>=1.35.16,<1.35.37

      botocore>=1.35.74,<1.35.94

      botocore>=1.36.0,<1.36.4

  And because you require botocore==1.29.13 and s3fs>=2023.10.0,<2024.0.0,

  we can conclude that your requirements are unsatisfiable.

Checking if Streamlit is installed

Not “somethinw wrong” but a very specific issue that the message describes in excruciating detail, concluding:

Is there something you don’t understand about that?

No need to be rude about anything. Appreciate the help :+1:

When we have dependency issues while deploying sometimes is better not to specify specific version, like numpy==1.23.3 instead you can choose to say numpy>=1.23.3, similarly for boto3 you can specify the specific version or if you are not sure just mention boto3 and while installing it will pick up the appropriate version. If you specify specific version for packages that have dependency you’ll get errors like you mentioned above. Hope this helps.

Sorry for coming across like that. I just can’t think of a better way to explain the issue.