Проблема развертывания Django в heroku
При попытке развернуть мой проект django я сталкиваюсь со странной ошибкой:
Есть зависимость, которую я не использовал и удалил, но которая все еще пытается загрузиться с requirements.txt
во время сборки.
Я удалил все зависимости, удалил его из requirements.txt
, запустил makemigrations
и migrate
, но он все еще пытается загрузить его, что приводит к сбою развертывания.
PyGObject
- это зависимость.
рабочий процесс:
Procfile - web: gunicorn solarsystem.wsgi
запущен - pip3 freeze > requirements.txt
зависимость больше не отображается после ее удаления.
однако во время сборки:
Collecting PyGObject
remote: Downloading PyGObject-3.42.0.tar.gz (716 kB)
remote: Installing build dependencies: started
remote: Installing build dependencies: finished with status 'done'
remote: Getting requirements to build wheel: started
remote: Getting requirements to build wheel: finished with status 'done'
remote: Preparing wheel metadata: started
remote: Preparing wheel metadata: finished with status 'done'
...
ERROR: Failed building wheel for PyGObject
...
ERROR: Could not build wheels for PyGObject which use PEP 517 and cannot be installed directly
и вот мой requirements.txt
:
asgiref==3.3.4
autopep8==1.5.7
boto3==1.17.108
botocore==1.20.108
click==8.0.1
cm-rgb==0.3.6
cycler==0.10.0
dj-database-url==0.5.0
Django==3.2.3
django-appconf==1.0.4
django-compressor==2.2
django-heroku==0.3.1
django-libsass==0.9
django-material==1.9.0
django-materializecss-form==1.1.17
django-on-heroku==1.1.2
django-sass-processor==1.0.1
gunicorn==20.1.0
hidapi==0.10.1
Jinja2==3.0.1
jmespath==0.10.0
kiwisolver==1.3.1
libsass==0.21.0
MarkupSafe==2.0.1
matplotlib==3.4.3
mpld3==0.5.5
numpy==1.21.2
Pillow==8.3.1
psutil==5.8.0
psycopg2==2.9.1
psycopg2-binary==2.9.1
pycairo==1.20.1
pycodestyle==2.7.0
pyparsing==2.4.7
python-dateutil==2.8.1
pytz==2021.1
PyYAML==5.4.1
rcssmin==1.0.6
rjsmin==1.0.12
s3transfer==0.4.2
six==1.16.0
sqlparse==0.4.1
toml==0.10.2
urllib3==1.26.6
whitenoise==5.3.0
Я перепробовал множество вариантов конфигураций requirements.txt
и Procfile
, просмотрел весь исходный код на предмет импорта PyGObject
или gi
, но их нет. Я также проверил документацию PyGObject
и другие ресурсы stack overflow без успеха.
повторюсь, я бы хотел каким-то образом полностью удалить его другим способом, или каким-то образом добавить заявление об игнорировании для этой зависимости, чтобы я мог успешно развернуть.
matplotlib использует PyGobject, поэтому он пытается установить PyGobject, когда вы устанавливаете файл requirements.txt, https://pygobject.readthedocs.io/en/latest/. Попробуйте использовать следующие команды. Это, вероятно, решит проблему установки PyGobject
python3 -m pip install --no-use-pep517 cm-rgb
или
sudo pacman -S python cairo pkgconf gobject-introspection gtk3
pip3 install pycairo to build and install Pycairo
pip3 install PyGObject to build and install PyGObject