So I have gone through the forums in search for an answer but haven’t found one that works for me. I am using Windows machine and my Django application works on Localhost but when I try to deploy the same application to Heroku it gives me this error.
INFO: pip is looking at multiple versions of anyio to determine which version is compatible with other requirements. This could take a while. remote: ERROR: Could not find a version that satisfies the requirement pywin32>=223 (from pypiwin32) (from versions: none) remote: ERROR: No matching distribution found for pywin32>=223 remote: ! Push rejected, failed to compile Python app.
I have removed pywin32
from the requirements.txt file but still when I run the
git push heroku master
command, I keep getting the same error.
I have also tried to copy all my source code into a new folder and deleted the initial git
file and re-initialized Git but still nothing seems to be working.
Forum Articles I have read that did not help include:
- Could not find a version that satisfies the requirement pywin32==227 heroku
- Heroku fails to install pywin32 library
Allow me to attach my full error log
:
Enumerating objects: 268, done. Counting objects: 100% (268/268), done. Delta compression using up to 8 threads Compressing objects: 100% (259/259), done. Writing objects: 100% (268/268), 377.32 KiB | 4.49 MiB/s, done. Total 268 (delta 147), reused 0 (delta 0), pack-reused 0 remote: Compressing source files... done. remote: Building source: remote: remote: -----> Building on the Heroku-20 stack remote: -----> Determining which buildpack to use for this app remote: -----> Python app detected remote: -----> No Python version was specified. Using the buildpack default: python-3.9.8 remote: To use a different version, see: https://devcenter.heroku.com/articles/python-runtimes remote: -----> Installing python-3.9.8 remote: -----> Installing pip 21.3.1, setuptools 57.5.0 and wheel 0.37.0 remote: -----> Installing SQLite3 remote: -----> Installing requirements with pip remote: Ignoring pywin32: markers 'platform_system == "Windows"' don't match your environment remote: Collecting anyio==3.3.0 remote: Downloading anyio-3.3.0-py3-none-any.whl (77 kB) remote: Collecting argon2-cffi==20.1.0 remote: Downloading argon2_cffi-20.1.0-cp35-abi3-manylinux1_x86_64.whl (97 kB) remote: Collecting asgiref==3.4.1 remote: Downloading asgiref-3.4.1-py3-none-any.whl (25 kB) remote: Collecting attrs==21.2.0 remote: Downloading attrs-21.2.0-py2.py3-none-any.whl (53 kB) remote: Collecting autopep8==1.5.7 remote: Downloading autopep8-1.5.7-py2.py3-none-any.whl (45 kB) remote: Collecting Babel==2.9.1 remote: Downloading Babel-2.9.1-py2.py3-none-any.whl (8.8 MB) remote: Collecting backcall==0.2.0 remote: Downloading backcall-0.2.0-py2.py3-none-any.whl (11 kB) remote: Collecting beautifulsoup4==4.9.3 remote: Downloading beautifulsoup4-4.9.3-py3-none-any.whl (115 kB) remote: Collecting bleach==4.0.0 remote: Downloading bleach-4.0.0-py2.py3-none-any.whl (146 kB) remote: Collecting branca==0.4.2 remote: Downloading branca-0.4.2-py3-none-any.whl (24 kB) remote: Collecting certifi==2021.5.30 remote: Downloading certifi-2021.5.30-py2.py3-none-any.whl (145 kB) remote: Collecting cffi==1.14.6 remote: Downloading cffi-1.14.6-cp39-cp39-manylinux1_x86_64.whl (405 kB) remote: Collecting charset-normalizer==2.0.4 remote: Downloading charset_normalizer-2.0.4-py3-none-any.whl (36 kB) remote: Collecting click==8.0.1 remote: Downloading click-8.0.1-py3-none-any.whl (97 kB) remote: Collecting click-plugins==1.1.1 remote: Downloading click_plugins-1.1.1-py2.py3-none-any.whl (7.5 kB) remote: Collecting cligj==0.7.2 remote: Downloading cligj-0.7.2-py3-none-any.whl (7.1 kB) remote: Collecting colorama==0.4.4 remote: Downloading colorama-0.4.4-py2.py3-none-any.whl (16 kB) remote: Collecting cryptography==3.4.7 remote: Downloading cryptography-3.4.7-cp36-abi3-manylinux2014_x86_64.whl (3.2 MB) remote: Collecting cycler==0.10.0 remote: Downloading cycler-0.10.0-py2.py3-none-any.whl (6.5 kB) remote: Collecting debugpy==1.4.1 remote: Downloading debugpy-1.4.1-cp39-cp39-manylinux2014_x86_64.whl (4.5 MB) remote: Collecting decorator==5.0.9 remote: Downloading decorator-5.0.9-py3-none-any.whl (8.9 kB) remote: Collecting defusedxml==0.7.1 remote: Downloading defusedxml-0.7.1-py2.py3-none-any.whl (25 kB) remote: Collecting dj-database-url==0.5.0 remote: Downloading dj_database_url-0.5.0-py2.py3-none-any.whl (5.5 kB) remote: Collecting Django==3.2.9 remote: Downloading Django-3.2.9-py3-none-any.whl (7.9 MB) remote: Collecting django-crispy-forms==1.12.0 remote: Downloading django_crispy_forms-1.12.0-py3-none-any.whl (122 kB) remote: Collecting django-heroku==0.3.1 remote: Downloading django_heroku-0.3.1-py2.py3-none-any.whl (6.2 kB) remote: Collecting django-taggit==1.5.1 remote: Downloading django_taggit-1.5.1-py3-none-any.whl (53 kB) remote: Collecting docopt==0.6.2 remote: Downloading docopt-0.6.2.tar.gz (25 kB) remote: Preparing metadata (setup.py): started remote: Preparing metadata (setup.py): finished with status 'done' remote: Collecting entrypoints==0.3 remote: Downloading entrypoints-0.3-py2.py3-none-any.whl (11 kB) remote: Collecting folium==0.12.1 remote: Downloading folium-0.12.1-py2.py3-none-any.whl (94 kB) remote: Collecting future==0.18.2 remote: Downloading future-0.18.2.tar.gz (829 kB) remote: Preparing metadata (setup.py): started remote: Preparing metadata (setup.py): finished with status 'done' remote: Collecting geocoder==1.38.1 remote: Downloading geocoder-1.38.1-py2.py3-none-any.whl (98 kB) remote: Collecting geographiclib==1.52 remote: Downloading geographiclib-1.52-py3-none-any.whl (38 kB) remote: Collecting geopy==2.2.0 remote: Downloading geopy-2.2.0-py3-none-any.whl (118 kB) remote: Collecting gunicorn==20.1.0 remote: Downloading gunicorn-20.1.0-py3-none-any.whl (79 kB) remote: Collecting idna==3.2 remote: Downloading idna-3.2-py3-none-any.whl (59 kB) remote: Collecting importlib-metadata==4.6.4 remote: Downloading importlib_metadata-4.6.4-py3-none-any.whl (17 kB) remote: Collecting ipykernel==6.2.0 remote: Downloading ipykernel-6.2.0-py3-none-any.whl (122 kB) remote: Collecting ipython==7.26.0 remote: Downloading ipython-7.26.0-py3-none-any.whl (786 kB) remote: Collecting ipython-genutils==0.2.0 remote: Downloading ipython_genutils-0.2.0-py2.py3-none-any.whl (26 kB) remote: Collecting ipywidgets==7.6.3 remote: Downloading ipywidgets-7.6.3-py2.py3-none-any.whl (121 kB) remote: Collecting jedi==0.18.0 remote: Downloading jedi-0.18.0-py2.py3-none-any.whl (1.4 MB) remote: Collecting Jinja2==3.0.1 remote: Downloading Jinja2-3.0.1-py3-none-any.whl (133 kB) remote: Collecting Js2Py==0.71 remote: Downloading Js2Py-0.71-py3-none-any.whl (1.0 MB) remote: Collecting json5==0.9.6 remote: Downloading json5-0.9.6-py2.py3-none-any.whl (18 kB) remote: Collecting jsonschema==3.2.0 remote: Downloading jsonschema-3.2.0-py2.py3-none-any.whl (56 kB) remote: Collecting jupyter-client==7.0.1 remote: Downloading jupyter_client-7.0.1-py3-none-any.whl (122 kB) remote: Collecting jupyter-core==4.7.1 remote: Downloading jupyter_core-4.7.1-py3-none-any.whl (82 kB) remote: Collecting jupyter-server==1.10.2 remote: Downloading jupyter_server-1.10.2-py3-none-any.whl (392 kB) remote: Collecting jupyterlab==3.1.7 remote: Downloading jupyterlab-3.1.7-py3-none-any.whl (8.5 MB) remote: Collecting jupyterlab-pygments==0.1.2 remote: Downloading jupyterlab_pygments-0.1.2-py2.py3-none-any.whl (4.6 kB) remote: Collecting jupyterlab-server==2.7.2 remote: Downloading jupyterlab_server-2.7.2-py3-none-any.whl (55 kB) remote: Collecting jupyterlab-widgets==1.0.0 remote: Downloading jupyterlab_widgets-1.0.0-py3-none-any.whl (243 kB) remote: Collecting keyring==23.1.0 remote: Downloading keyring-23.1.0-py3-none-any.whl (32 kB) remote: Collecting kiwisolver==1.3.1 remote: Downloading kiwisolver-1.3.1-cp39-cp39-manylinux1_x86_64.whl (1.2 MB) remote: Collecting lerc==0.1.0 remote: Downloading lerc-0.1.0.tar.gz (567 kB) remote: Preparing metadata (setup.py): started remote: Preparing metadata (setup.py): finished with status 'done' remote: Collecting MarkupSafe==2.0.1 remote: Downloading MarkupSafe-2.0.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (30 kB) remote: Collecting matplotlib==3.4.3 remote: Downloading matplotlib-3.4.3-cp39-cp39-manylinux1_x86_64.whl (10.3 MB) remote: Collecting matplotlib-inline==0.1.2 remote: Downloading matplotlib_inline-0.1.2-py3-none-any.whl (8.2 kB) remote: Collecting mistune==0.8.4 remote: Downloading mistune-0.8.4-py2.py3-none-any.whl (16 kB) remote: Collecting munch==2.5.0 remote: Downloading munch-2.5.0-py2.py3-none-any.whl (10 kB) remote: Collecting nbclassic==0.3.1 remote: Downloading nbclassic-0.3.1-py3-none-any.whl (18 kB) remote: Collecting nbclient==0.5.4 remote: Downloading nbclient-0.5.4-py3-none-any.whl (66 kB) remote: Collecting nbconvert==6.1.0 remote: Downloading nbconvert-6.1.0-py3-none-any.whl (551 kB) remote: Collecting nbformat==5.1.3 remote: Downloading nbformat-5.1.3-py3-none-any.whl (178 kB) remote: Collecting nest-asyncio==1.5.1 remote: Downloading nest_asyncio-1.5.1-py3-none-any.whl (5.0 kB) remote: Collecting notebook==6.4.3 remote: Downloading notebook-6.4.3-py3-none-any.whl (9.9 MB) remote: Collecting ntlm-auth==1.5.0 remote: Downloading ntlm_auth-1.5.0-py2.py3-none-any.whl (29 kB) remote: Collecting numpy==1.21.4 remote: Downloading numpy-1.21.4-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (15.7 MB) remote: Collecting oauthlib==3.1.1 remote: Downloading oauthlib-3.1.1-py2.py3-none-any.whl (146 kB) remote: Collecting packaging==21.0 remote: Downloading packaging-21.0-py3-none-any.whl (40 kB) remote: Collecting pandas==1.3.2 remote: Downloading pandas-1.3.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (11.5 MB) remote: Collecting pandocfilters==1.4.3 remote: Downloading pandocfilters-1.4.3.tar.gz (16 kB) remote: Preparing metadata (setup.py): started remote: Preparing metadata (setup.py): finished with status 'done' remote: Collecting parso==0.8.2 remote: Downloading parso-0.8.2-py2.py3-none-any.whl (94 kB) remote: Collecting pickleshare==0.7.5 remote: Downloading pickleshare-0.7.5-py2.py3-none-any.whl (6.9 kB) remote: Collecting Pillow==8.3.1 remote: Downloading Pillow-8.3.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.whl (3.0 MB) remote: Collecting prometheus-client==0.11.0 remote: Downloading prometheus_client-0.11.0-py2.py3-none-any.whl (56 kB) remote: Collecting prompt-toolkit==3.0.20 remote: Downloading prompt_toolkit-3.0.20-py3-none-any.whl (370 kB) remote: Collecting psycopg2==2.9.1 remote: Downloading psycopg2-2.9.1.tar.gz (379 kB) remote: Preparing metadata (setup.py): started remote: Preparing metadata (setup.py): finished with status 'done' remote: Collecting psycopg2-binary==2.9.1 remote: Downloading psycopg2_binary-2.9.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.4 MB) remote: Collecting pycodestyle==2.7.0 remote: Downloading pycodestyle-2.7.0-py2.py3-none-any.whl (41 kB) remote: Collecting pycparser==2.20 remote: Downloading pycparser-2.20-py2.py3-none-any.whl (112 kB) remote: Collecting Pygments==2.10.0 remote: Downloading Pygments-2.10.0-py3-none-any.whl (1.0 MB) remote: Collecting pyjsparser==2.7.1 remote: Downloading pyjsparser-2.7.1.tar.gz (24 kB) remote: Preparing metadata (setup.py): started remote: Preparing metadata (setup.py): finished with status 'done' remote: Collecting pyparsing==2.4.7 remote: Downloading pyparsing-2.4.7-py2.py3-none-any.whl (67 kB) remote: Collecting PyPrind==2.11.3 remote: Downloading PyPrind-2.11.3-py2.py3-none-any.whl (8.4 kB) remote: Collecting pyproj==3.1.0 remote: Downloading pyproj-3.1.0-cp39-cp39-manylinux2010_x86_64.whl (6.6 MB) remote: Collecting pyrsistent==0.18.0 remote: Downloading pyrsistent-0.18.0-cp39-cp39-manylinux1_x86_64.whl (117 kB) remote: Collecting pyshp==2.1.3 remote: Downloading pyshp-2.1.3.tar.gz (219 kB) remote: Preparing metadata (setup.py): started remote: Preparing metadata (setup.py): finished with status 'done' remote: Collecting pySmartDL==1.3.4 remote: Downloading pySmartDL-1.3.4-py3-none-any.whl (20 kB) remote: Collecting python-dateutil==2.8.2 remote: Downloading python_dateutil-2.8.2-py2.py3-none-any.whl (247 kB) remote: Collecting python-decouple==3.4 remote: Downloading python_decouple-3.4-py3-none-any.whl (9.5 kB) remote: Collecting pytz==2021.1 remote: Downloading pytz-2021.1-py2.py3-none-any.whl (510 kB) remote: Collecting pyzmq==22.2.1 remote: Downloading pyzmq-22.2.1-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (1.1 MB) remote: Collecting ratelim==0.1.6 remote: Downloading ratelim-0.1.6-py2.py3-none-any.whl (4.0 kB) remote: Collecting requests==2.26.0 remote: Downloading requests-2.26.0-py2.py3-none-any.whl (62 kB) remote: Collecting requests-kerberos==0.12.0 remote: Downloading requests_kerberos-0.12.0-py2.py3-none-any.whl (14 kB) remote: Collecting requests-negotiate-sspi==0.5.2 remote: Downloading requests_negotiate_sspi-0.5.2-py2.py3-none-any.whl (7.1 kB) remote: Collecting requests-ntlm==1.1.0 remote: Downloading requests_ntlm-1.1.0-py2.py3-none-any.whl (5.7 kB) remote: Collecting requests-oauthlib==1.3.0 remote: Downloading requests_oauthlib-1.3.0-py2.py3-none-any.whl (23 kB) remote: Collecting requests-toolbelt==0.9.1 remote: Downloading requests_toolbelt-0.9.1-py2.py3-none-any.whl (54 kB) remote: Collecting requests-unixsocket==0.2.0 remote: Downloading requests_unixsocket-0.2.0-py2.py3-none-any.whl (11 kB) remote: Collecting Send2Trash==1.8.0 remote: Downloading Send2Trash-1.8.0-py3-none-any.whl (18 kB) remote: Collecting setuptools-scm==6.0.1 remote: Downloading setuptools_scm-6.0.1-py3-none-any.whl (27 kB) remote: Collecting Shapely==1.7.1 remote: Downloading Shapely-1.7.1-1-cp39-cp39-manylinux1_x86_64.whl (1.0 MB) remote: Collecting six==1.16.0 remote: Downloading six-1.16.0-py2.py3-none-any.whl (11 kB) remote: Collecting sniffio==1.2.0 remote: Downloading sniffio-1.2.0-py3-none-any.whl (10 kB) remote: Collecting soupsieve==2.2.1 remote: Downloading soupsieve-2.2.1-py3-none-any.whl (33 kB) remote: Collecting sqlparse==0.4.1 remote: Downloading sqlparse-0.4.1-py3-none-any.whl (42 kB) remote: Collecting terminado==0.11.1 remote: Downloading terminado-0.11.1-py3-none-any.whl (15 kB) remote: Collecting testpath==0.5.0 remote: Downloading testpath-0.5.0-py3-none-any.whl (84 kB) remote: Collecting toml==0.10.2 remote: Downloading toml-0.10.2-py2.py3-none-any.whl (16 kB) remote: Collecting tornado==6.1 remote: Downloading tornado-6.1-cp39-cp39-manylinux2010_x86_64.whl (427 kB) remote: Collecting traitlets==5.0.5 remote: Downloading traitlets-5.0.5-py3-none-any.whl (100 kB) remote: Collecting tzdata==2021.1 remote: Downloading tzdata-2021.1-py2.py3-none-any.whl (338 kB) remote: Collecting tzlocal==3.0 remote: Downloading tzlocal-3.0-py3-none-any.whl (16 kB) remote: Collecting ujson==4.1.0 remote: Downloading ujson-4.1.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.whl (179 kB) remote: Collecting urllib3==1.26.6 remote: Downloading urllib3-1.26.6-py2.py3-none-any.whl (138 kB) remote: Collecting wcwidth==0.2.5 remote: Downloading wcwidth-0.2.5-py2.py3-none-any.whl (30 kB) remote: Collecting webencodings==0.5.1 remote: Downloading webencodings-0.5.1-py2.py3-none-any.whl (11 kB) remote: Collecting websocket-client==1.2.1 remote: Downloading websocket_client-1.2.1-py2.py3-none-any.whl (52 kB) remote: Collecting whitenoise==5.3.0 remote: Downloading whitenoise-5.3.0-py2.py3-none-any.whl (19 kB) remote: Collecting widgetsnbextension==3.5.1 remote: Downloading widgetsnbextension-3.5.1-py2.py3-none-any.whl (2.2 MB) remote: Collecting winkerberos==0.8.0 remote: Downloading winkerberos-0.8.0.zip (44 kB) remote: Preparing metadata (setup.py): started remote: Preparing metadata (setup.py): finished with status 'done' remote: Collecting wrapt==1.12.1 remote: Downloading wrapt-1.12.1.tar.gz (27 kB) remote: Preparing metadata (setup.py): started remote: Preparing metadata (setup.py): finished with status 'done' remote: Collecting zipp==3.5.0 remote: Downloading zipp-3.5.0-py3-none-any.whl (5.7 kB) remote: Collecting pexpect>4.3 remote: Downloading pexpect-4.8.0-py2.py3-none-any.whl (59 kB) remote: Collecting SecretStorage>=3.2 remote: Downloading SecretStorage-3.3.1-py3-none-any.whl (15 kB) remote: Collecting jeepney>=0.4.2 remote: Downloading jeepney-0.7.1-py3-none-any.whl (54 kB) remote: Collecting pykerberos<2.0.0,>=1.1.8 remote: Downloading pykerberos-1.2.1.tar.gz (24 kB) remote: Preparing metadata (setup.py): started remote: Preparing metadata (setup.py): finished with status 'done' remote: Collecting pypiwin32>=223 remote: Downloading pypiwin32-223-py3-none-any.whl (1.7 kB) remote: Collecting ptyprocess remote: Downloading ptyprocess-0.7.0-py2.py3-none-any.whl (13 kB) remote: INFO: pip is looking at multiple versions of pykerberos to determine which version is compatible with other requirements. This could take a while. remote: Collecting pykerberos<2.0.0,>=1.1.8 remote: Downloading pykerberos-1.1.14.tar.gz (20 kB) remote: Preparing metadata (setup.py): started remote: Preparing metadata (setup.py): finished with status 'done' remote: INFO: pip is looking at multiple versions of ptyprocess to determine which version is compatible with other requirements. This could take a while. remote: Collecting ptyprocess remote: Downloading ptyprocess-0.6.0-py2.py3-none-any.whl (39 kB) remote: INFO: pip is looking at multiple versions of pexpect to determine which version is compatible with other requirements. This could take a while. remote: Collecting pexpect>4.3 remote: Downloading pexpect-4.7.0-py2.py3-none-any.whl (58 kB) remote: INFO: pip is looking at multiple versions of jeepney to determine which version is compatible with other requirements. This could take a while. remote: Collecting jeepney>=0.4.2 remote: Downloading jeepney-0.7.0-py3-none-any.whl (53 kB) remote: INFO: pip is looking at multiple versions of zipp to determine which version is compatible with other requirements. This could take a while. remote: INFO: pip is looking at multiple versions of geographiclib to determine which version is compatible with other requirements. This could take a while. remote: INFO: pip is looking at multiple versions of geocoder to determine which version is compatible with other requirements. This could take a while. remote: INFO: pip is looking at multiple versions of future to determine which version is compatible with other requirements. This could take a while. remote: INFO: pip is looking at multiple versions of folium to determine which version is compatible with other requirements. This could take a while. remote: INFO: pip is looking at multiple versions of entrypoints to determine which version is compatible with other requirements. This could take a while. remote: INFO: pip is looking at multiple versions of docopt to determine which version is compatible with other requirements. This could take a while. remote: INFO: pip is looking at multiple versions of django-taggit to determine which version is compatible with other requirements. This could take a while. remote: INFO: pip is looking at multiple versions of django-heroku to determine which version is compatible with other requirements. This could take a while. remote: INFO: pip is looking at multiple versions of django-crispy-forms to determine which version is compatible with other requirements. This could take a while. remote: INFO: pip is looking at multiple versions of django to determine which version is compatible with other requirements. This could take a while. remote: INFO: pip is looking at multiple versions of dj-database-url to determine which version is compatible with other requirements. This could take a while. remote: INFO: pip is looking at multiple versions of defusedxml to determine which version is compatible with other requirements. This could take a while. remote: INFO: pip is looking at multiple versions of decorator to determine which version is compatible with other requirements. This could take a while. remote: INFO: pip is looking at multiple versions of debugpy to determine which version is compatible with other requirements. This could take a while. remote: INFO: pip is looking at multiple versions of cycler to determine which version is compatible with other requirements. This could take a while. remote: INFO: pip is looking at multiple versions of cryptography to determine which version is compatible with other requirements. This could take a while. remote: INFO: pip is looking at multiple versions of colorama to determine which version is compatible with other requirements. This could take a while. remote: INFO: pip is looking at multiple versions of cligj to determine which version is compatible with other requirements. This could take a while. remote: INFO: pip is looking at multiple versions of click-plugins to determine which version is compatible with other requirements. This could take a while. remote: INFO: pip is looking at multiple versions of click to determine which version is compatible with other requirements. This could take a while. remote: INFO: pip is looking at multiple versions of charset-normalizer to determine which version is compatible with other requirements. This could take a while. remote: INFO: pip is looking at multiple versions of cffi to determine which version is compatible with other requirements. This could take a while. remote: INFO: pip is looking at multiple versions of certifi to determine which version is compatible with other requirements. This could take a while. remote: INFO: pip is looking at multiple versions of branca to determine which version is compatible with other requirements. This could take a while. remote: INFO: pip is looking at multiple versions of bleach to determine which version is compatible with other requirements. This could take a while. remote: INFO: pip is looking at multiple versions of beautifulsoup4 to determine which version is compatible with other requirements. This could take a while. remote: INFO: pip is looking at multiple versions of backcall to determine which version is compatible with other requirements. This could take a while. remote: INFO: pip is looking at multiple versions of babel to determine which version is compatible with other requirements. This could take a while. remote: INFO: pip is looking at multiple versions of autopep8 to determine which version is compatible with other requirements. This could take a while. remote: INFO: pip is looking at multiple versions of attrs to determine which version is compatible with other requirements. This could take a while. remote: INFO: pip is looking at multiple versions of asgiref to determine which version is compatible with other requirements. This could take a while. remote: INFO: pip is looking at multiple versions of argon2-cffi to determine which version is compatible with other requirements. This could take a while. remote: INFO: pip is looking at multiple versions of <Python from Requires-Python> to determine which version is compatible with other requirements. This could take a while. remote: INFO: pip is looking at multiple versions of anyio to determine which version is compatible with other requirements. This could take a while. remote: ERROR: Could not find a version that satisfies the requirement pywin32>=223 (from pypiwin32) (from versions: none) remote: ERROR: No matching distribution found for pywin32>=223 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: 5876ebd1f6928d422590ee2bced6db875179e28e remote: ! remote: ! We have detected that you have triggered a build from source code with version 5876ebd1f6928d422590ee2bced6db875179e28e 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 djangogis. remote: To https://git.heroku.com/djangogis.git ! [remote rejected] master -> master (pre-receive hook declined) error: failed to push some refs to 'https://git.heroku.com/djangogis.git'
and then my requirements file
Anyone who can help me I would really appreciate. Where exactly am I getting it wrong?
Advertisement
Answer
In your current requirements.txt
you marked pywin32
with environment marker platform_system == "Windows"
. I think the syntax is wrong. The correct syntax from PEP 496 is:
pywin32==223; sys_platform == "win32"