Как устранить ошибку сборки Heroku, специфичную для Python 3.8.0 - PullRequest
0 голосов
/ 03 ноября 2019

Я развертываю приложение Python (flask) в Heroku через командную строку, и после указания Python 3.8.0 во время выполнения я получил ошибку, связанную с расширением '_ast27', с которой я не уверен, что делать.

Если я создаю приложение с использованием Python 3.6.9, оно работает нормально, без ошибок.

Когда я добавляю файл runtime.txt, указывающий python-3.8.0, я получаю ошибку во времясборка и сборка завершается неудачно (ошибка: команда 'gcc' завершилась неудачно с состоянием выхода 1).

Удаление файла runtime.txt и сборка с Python 3.6.9 решают проблему, но я бы предпочел использовать 3.8. 0 из-за обновления безопасности.

Вот две части журнала, которые выглядят важными:

building '_ast27' extension
creating build/temp.linux-x86_64-3.8
creating build/temp.linux-x86_64-3.8/ast27
creating build/temp.linux-x86_64-3.8/ast27/Parser
creating build/temp.linux-x86_64-3.8/ast27/Python
creating build/temp.linux-x86_64-3.8/ast27/Custom
gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -fPIC -Iast27/Include -I/app/.heroku/python/include/python3.8 -c ast27/Parser/acceler.c -o build/temp.linux-x86_64-3.8/ast27/Parser/acceler.o
           ast27/Parser/acceler.c:13:10: fatal error: pgenheaders.h: No such file or directory
#include "pgenheaders.h"
^~~~~~~~~~~~~~~
compilation terminated.
error: command 'gcc' failed with exit status 1
Command "/app/.heroku/python/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-i8bnpa9v/typed-ast/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /tmp/pip-aq2n5sd0-record/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /tmp/pip-build-i8bnpa9v/typed-ast/
 !     Push rejected, failed to compile Python app.

Я признаю, что не понимаю, что такое typed-ast,или для чего это. Поиск в Google, который я сделал до сих пор, не выявил ничего конкретного, связанного с pythom 3.8.0, поэтому я буду признателен за любые предложения.

Спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...