No module named 'requests' - Django deployment onto Heroku - django

Deployed some new code into an app on Heroku and now showing the following message: No module named 'requests' . The app was working fine before, so this has to be something I changed.
Before I show the code there is 2 things that I noticed: my Procfile & requirements files are not visible from Visual Studio (can be seen from Sublime Text Editor). Recently started using VS and only noticed it now. Not sure if this is of importance here.
I am not sure where the error is coming from so I left below traceback, Procfile and requirements.txt files.
Let me know if I need to add something else.
Traceback
$ git push heroku master
Enumerating objects: 111, done.
Counting objects: 100% (111/111), done.
Delta compression using up to 4 threads
Compressing objects: 100% (80/80), done.
Writing objects: 100% (81/81), 129.38 KiB | 2.59 MiB/s, done.
Total 81 (delta 23), reused 1 (delta 0), pack-reused 0
remote: Compressing source files... done.
remote: Building source:
remote:
remote: -----> Building on the Heroku-20 stack
remote: -----> Using buildpack: heroku/python
remote: -----> Python app detected
remote: -----> No Python version was specified. Using the same version as the last build: python-3.10.5
remote: To use a different version, see: https://devcenter.heroku.com/articles/python-runtimes
remote: !
remote: ! A Python security update is available! Upgrade as soon as possible to: python-3.10.7
remote: ! See: https://devcenter.heroku.com/articles/python-runtimes
remote: !
remote: -----> No change in requirements detected, installing from cache
remote: -----> Using cached install of python-3.10.5
remote: -----> Installing pip 22.2.2, setuptools 63.4.3 and wheel 0.37.1
remote: -----> Installing SQLite3
remote: -----> Installing requirements with pip
remote: -----> $ python manage.py collectstatic --noinput
remote: Found another file with the destination path 'Logo.png'. It will be ignored since only the first encountered file is collected. If this is not what you want, make sure every static file has a unique path.
remote: 139 static files copied to '/tmp/build_42cf0f4b/staticfiles', 5 unmodified, 378 post-processed.
remote:
remote: -----> Discovering process types
remote: Procfile declares types -> web
remote:
remote: -----> Compressing...
remote: Done: 92.2M
remote: -----> Launching...
remote: Released v53
remote: App deployed to Heroku
Procfile
web: gunicorn mysite.wsgi
Requirements.txt
asgiref==3.5.2
click==8.1.3
colorama==0.4.5
defusedxml==0.7.1
diff-match-patch==20200713
dj-database-url==0.5.0
Django==4.0.6
django-crispy-forms==1.14.0
django-heroku==0.3.1
django-import-export==2.8.0
et-xmlfile==1.1.0
Flask==2.1.3
gunicorn==20.1.0
itsdangerous==2.1.2
Jinja2==3.1.2
MarkupPy==1.14
MarkupSafe==2.1.1
numpy==1.23.1
odfpy==1.4.1
openpyxl==3.0.10
pandas==1.4.3
Pillow==9.2.0
psycopg2==2.9.3
pymongo==4.1.1
python-dateutil==2.8.2
python-decouple==3.6
pytz==2022.1
PyYAML==6.0
six==1.16.0
sqlparse==0.4.2
tablib==3.2.1
tzdata==2022.1
Werkzeug==2.1.2
whitenoise==6.2.0
xlrd==2.0.1
xlwt==1.3.0

You have to add requests in Requirements.txt like this :
requests==2.28.1

Install request by running the below command
pip install requests
Then update your Requirements.txt just run
pip freeze > Requirements.txt
This will add all libraries that you have used in the project including the newly installed.

Related

'"ERROR: No .egg-info directory found" during deployment to heroku

Hello I'm deploying my first project on the heroku and I got an error:
ERROR: No .egg-info directory found in /tmp/pip-pip-egg-info-wgaqr45r
I have tried to update setuptools but it's not a case. Any Idea what could go wrong?
My git bash commands:
gg#DESKTOP-PNHHOHJ MINGW64 /c/projekty/tabele/tabenv (master)
$ git push heroku master
Enumerating objects: 9199, done.
Counting objects: 100% (9199/9199), done.
Delta compression using up to 4 threads
Compressing objects: 100% (5826/5826), done.
Writing objects: 100% (9199/9199), 17.71 MiB | 4.97 MiB/s, done.
Total 9199 (delta 2302), reused 9182 (delta 2296), pack-reused 0
remote: Compressing source files... done.
remote: Building source:
remote:
remote: -----> Building on the Heroku-20 stack
remote: -----> Python app detected
remote: cp: cannot stat '/tmp/build_8554d289/requirements.txt': No such file or directory
remote: -----> Installing python-3.8.8
remote: -----> Installing pip 20.1.1, setuptools 47.1.1 and wheel 0.34.2
remote: -----> Installing SQLite3
remote: -----> Installing requirements with pip
remote: Obtaining file:///tmp/build_8554d289 (from -r /tmp/build_8554d289/requirements.txt (line 1))
remote: ERROR: No .egg-info directory found in /tmp/pip-pip-egg-info-wgaqr45r
remote: ! Push rejected, failed to compile Python app.
remote:
remote: ! Push failed
remote: !
remote: ! ## Warning - The same version of this code has already been built: 830c4b88b9a54ed95a860492a144d53bf95172c0
remote: !
remote: ! We have detected that you have triggered a build from source code with version 830c4b88b9a54ed95a860492a144d53bf95172c0
remote: ! at least twice. One common cause of this behavior is attempting to deploy code from a different branch.
remote: !
remote: ! If you are developing on a branch and deploying via git you must run:
remote: !
remote: ! git push heroku <branchname>:main
remote: !
remote: ! This article goes into details on the behavior:
remote: ! https://devcenter.heroku.com/articles/duplicate-build-version
remote:
remote: Verifying deploy...
remote:
remote: ! Push rejected to thawing-falls-31558.
remote:
To https://git.heroku.com/thawing-falls-31558.git
! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'https://git.heroku.com/thawing-falls-31558.git'
(tabenv)
gg#DESKTOP-PNHHOHJ MINGW64 /c/projekty/tabele/tabenv (master)
$ python.exe -m pip install --upgrade setuptools pip
Requirement already satisfied: setuptools in c:\projekty\tabele\tabenv\lib\site-packages (54.0.0)
Requirement already satisfied: pip in c:\projekty\tabele\tabenv\lib\site-packages (21.0.1)
(tabenv)

During deploying Django blog on heroku showes me errors

When I deploy app in heroku show me this error
remote: ERROR: Could not find a version that satisfies the requirement apturl==0.5.2 (from -r /tmp/build_16067d5dbf345d8d906970e4d4f44d30/requirements.txt
I searched on internet to finding the solution of that problem but can't successfully find this.
So I show you what steps I had do for deploy app in heroku
I typed in terminal
heroku login
pip3 freeze
pip3 freeze > requirements.txt
Then for instaling gunicorn type in terminal
pip3 install gunicorn
Then make a file in root directory write name is Procifle in which I write
web: gunicorn django_project.wsgi
Then my heroku blog name
heroku git:remote -a naqviblog
I also show you my requirements.txt file
apturl==0.5.2
asgiref==3.2.3
asn1crypto==0.24.0
blinker==1.4
boto3==1.9.96
botocore==1.12.96
Brlapi==0.6.7
certifi==2018.8.24
chardet==3.0.4
command-not-found==0.3
cryptography==2.3
cupshelpers==1.0
defer==1.0.6
distro==1.3.0
distro-info===0.21ubuntu2
dj-database-url==0.5.0
Django==3.0.4
django-crispy-forms==1.9.0
django-heroku==0.3.1
django-storages==1.7.1
docutils==0.14
entrypoints==0.3
f.lux-indicator-applet==1.1.11rc0
galternatives==1.0.3
gunicorn==20.0.4
httplib2==0.11.3
idna==2.6
jmespath==0.9.3
keyring==17.1.1
keyrings.alt==3.1.1
language-selector==0.1
launchpadlib==1.10.6
lazr.restfulclient==0.14.2
lazr.uri==1.0.3
lightdm-gtk-greeter-settings==1.2.2
louis==3.8.0
macaroonbakery==1.2.1
Mako==1.0.7
MarkupSafe==1.1.0
netifaces==0.10.4
oauth==1.0.1
oauthlib==2.1.0
olefile==0.46
pbr==5.4.4
pexpect==4.6.0
Pillow==5.4.1
protobuf==3.6.1
psycopg2==2.7.7
pycairo==1.16.2
pycrypto==2.6.1
pycups==1.9.73
PyGObject==3.32.0
PyJWT==1.7.0
pymacaroons==0.13.0
PyNaCl==1.3.0
pyOpenSSL==19.0.0
pyRFC3339==1.1
python-apt===1.8.5-ubuntu0.3
python-dateutil==2.7.3
python-debian==0.1.34
python-decouple==3.3
pytz==2018.9
pyxattr==0.6.1
pyxdg==0.25
PyYAML==3.13
reportlab==3.5.18
requests==2.21.0
requests-unixsocket==0.1.5
s3transfer==0.2.0
SecretStorage==2.3.1
simplejson==3.16.0
six==1.12.0
sqlparse==0.3.1
system-service==0.3
systemd-python==234
testresources==2.0.1
ubuntu-advantage-tools==19.2
ubuntu-drivers-common==0.0.0
ufw==0.36
unattended-upgrades==0.1
urllib3==1.24.1
usb-creator==0.3.3
virtualenv==15.1.0
wadllib==1.3.3
whitenoise==4.1.2
xkit==0.0.0
youtube-dl==2019.1.17
zope.interface==4.3.2
Then type in terminal
git add .
git commit -m "commit changes"
finally type
git push heroku master
then showed me this error
Enumerating objects: 77, done.
Counting objects: 100% (77/77), done.
Delta compression using up to 4 threads
Compressing objects: 100% (60/60), done.
Writing objects: 100% (67/67), 3.72 MiB | 421.00 KiB/s, done.
Total 67 (delta 21), reused 0 (delta 0)
remote: Compressing source files... done.
remote: Building source:
remote:
remote: -----> Python app detected
remote: -----> Clearing cached dependencies
remote: -----> Installing python-3.6.10
remote: -----> Installing pip
remote: -----> Installing SQLite3
remote: Sqlite3 successfully installed.
remote: -----> Installing requirements with pip
remote: ERROR: Could not find a version that satisfies the requirement apturl==0.5.2 (from -r /tmp/build_d533b9574fcab74e6906cdc8732269b2/requirements.txt (line 1)) (from versions: none)
remote: ERROR: No matching distribution found for apturl==0.5.2 (from -r /tmp/build_d533b9574fcab74e6906cdc8732269b2/requirements.txt (line 1))
remote: ! Push rejected, failed to compile Python app.
remote:
remote: ! Push failed
remote: Verifying deploy...
remote:
remote: ! Push rejected to naqviblog.
remote:
To https://git.heroku.com/naqviblog.git
! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'https://git.heroku.com/naqviblog.git'
when open this link https://git.heroku.com/naqviblog.git
then show me on browser
Method Not Allowed
That's a lot of packages. Are you sure your project requires them all?
You added the python-3.7 tag but Heroku says it is using python 3.6. Ensure that both developing and production environment match.
apturl does not exist on PyPI https://pypi.org/. When you run python -m pip install packagename you search for it on PyPI. It does not exist on there. You may have installed it through apt, setup.py, wheels, etc.

error: failed to push some refs to 'https://git.heroku.com/xxxxxxxxx.git'

I got an error,error: failed to push some refs to 'https://git.heroku.com/xxxxxxxxx.git'.I want to upload my application which be made Django to heroku.I run heroku create xxxxxxxxx. And I run git push heroku ,so
Counting objects: 6951, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (5952/5952), done.
Writing objects: 100% (6951/6951), 11.21 MiB | 891.00 KiB/s, done.
Total 6951 (delta 2087), reused 0 (delta 0)
remote: Compressing source files... done.
remote: Building source:
remote:
remote: -----> Python app detected
remote: ! The latest version of Python 3 is python-3.6.5 (you are using python-3.6.4, which is unsupported).
remote: ! We recommend upgrading by specifying the latest version (python-3.6.5).
remote: Learn More: https://devcenter.heroku.com/articles/python-runtimes
remote: -----> Installing python-3.6.4
remote: -----> Installing pip
remote: -----> Installing requirements with pip
remote: Collecting alabaster==0.7.10 (from -r /tmp/build_6adefb27873345001cb4512d3fd963e3/requirements.txt (line 1))
remote: Downloading https://files.pythonhosted.org/packages/2e/c3/9b7dcd8548cf2c00531763ba154e524af575e8f36701bacfe5bcadc67440/alabaster-0.7.10-py2.py3-none-any.whl
remote: Collecting anaconda-client==1.6.9 (from -r /tmp/build_6adefb27873345001cb4512d3fd963e3/requirements.txt (line 2))
remote: Could not find a version that satisfies the requirement anaconda-client==1.6.9 (from -r /tmp/build_6adefb27873345001cb4512d3fd963e3/requirements.txt (line 2)) (from versions: 1.1.1, 1.2.2)
remote: No matching distribution found for anaconda-client==1.6.9 (from -r /tmp/build_6adefb27873345001cb4512d3fd963e3/requirements.txt (line 2))
remote: ! Push rejected, failed to compile Python app.
remote:
remote: ! Push failed
remote: Verifying deploy...
remote:
remote: ! Push rejected to xxxxxxxxx.
remote:
To https://git.heroku.com/xxxxxxxxx.git
! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'https://git.heroku.com/xxxxxxxxx.git'
I searched this error,maybe conda install pip command should be installed.So I run it and heroku create command run again, but same error happens.What is wrong?How should I fix this?
The error is telling you that it cannot install anaconda-client, because it can't find version 1.6.9 which you specified in the requirements.txt. The latest version of that library on PyPi is version 1.2.2. However, it appears to be abandoned - why have you specified it at all? What are you using it for?

Outdated Pipfile.lock

I'm trying to deploy a large django project to heroku. I installed Heroku CLI, logged in, created an app and ran:
git push heroku master
I have a Pipfile and requirements.txt already set up. I added a runtime.txt to specify that I need python 2.7. This is also in the Pipfile. This is what I get from pushing to heroku:
Counting objects: 12159, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (4853/4853), done.
Writing objects: 100% (12159/12159), 20.94 MiB | 1.82 MiB/s, done.
Total 12159 (delta 6859), reused 12036 (delta 6751)
remote: Compressing source files... done.
remote: Building source:
remote:
remote: -----> Python app detected
remote: -----> Installing python-3.6.4
remote: -----> Installing pip
remote: -----> Installing dependencies with Pipenv 11.8.2…
remote: Your Pipfile.lock (3b2ba9) is out of date. Expected: (83a5b4).
remote: Aborting deploy.
remote: ! Push rejected, failed to compile Python app.
remote:
remote: ! Push failed
remote: Verifying deploy....
remote:
remote: ! Push rejected to camp-infinity.
remote:
To https://git.heroku.com/camp-infinity.git
! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'https://git.heroku.com/camp-infinity.git'
I'm not sure why it tries to install python 3, and it also doesn't like my Pipfile.lock file. I've tried deleting it and generating it again with pipenv install but that didn't change anything.
Make sure you have initialised your environment in Python 2.X with pipenv --two, then - given your code runs locally and all dependencies are specified in your Pipfile - run pipenv install and commit all changes including the Pipfile.lock to your local git repo (git add * && git commit -m "your message"). Finally push to heroku. Hope it now builds correctly.

Deploying Python bottle app with pymssql on heroku

I'm having issues with deploying my website with pymssql onto heroku. I'm using the following build pack and still am having errors:
heroku config:add BUILDPACK_URL=https://github.com/amanjain/heroku-buildpack-python-freetds-pymssql.git
This is the error that I keep getting:
remote: warning: no files found matching 'pymssql_version.py'
remote: warning: no files found matching 'win32/freetds.zip'
remote: warning: no previously-included files matching '*' found under directory 'docs/_build'
remote: Successfully installed pymssql
remote: Cleaning up...
remote: -----> Installing dependencies with pip
remote: Downloading/unpacking bottle==0.12.9 (from -r requirements.txt (line 1))
remote: Running setup.py (path:/tmp/pip_build_u13919/bottle/setup.py) egg_info for package bottle
remote:
remote: Downloading/unpacking DateTime==4.0.1 (from -r requirements.txt (line 2))
remote: Running setup.py (path:/tmp/pip_build_u13919/DateTime/setup.py) egg_info for package DateTime
remote:
remote: Downloading/unpacking functools32==3.2.3.post2 (from -r requirements.txt (line 3))
remote: Could not find a version that satisfies the requirement functools32==3.2.3.post2 (from -r requirements.txt (line 3)) (from versions: 3.2.3-1, 3.2.3-1, 3.2.3-2, 3.2.3-2)
remote: Cleaning up...
remote: No distributions matching the version for functools32==3.2.3.post2 (from -r requirements.txt (line 3))
remote: Storing debug log for failure in /app/.pip/pip.log
remote:
remote: ! Push rejected, failed to compile Python + FreeTDS + pymssql app
remote:
remote: Verifying deploy...
remote:
remote: ! Push rejected to shelf2xerotest1.
remote:
To https://git.heroku.com/shelf2xerotest1.git
! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to
'https://git.heroku.com/shelf2xerotest1.git'
Has anyone else run into this issue?
It looks like that buildpack is built for Linux systems, and it appears you're trying to install it on Windows.
In the trace log, it appears to be looking for a FreeTDS build in a win32 directory:
warning: no files found matching 'win32/freetds.zip'
It also appears to be install Python 2.7. If you're just getting started, I'd strongly recommend using Python 3. Good luck.