Zappa: Нет модуля с именем '_cffi_backend'

Недавно я загрузил Django-приложение с использованием Zappa, которое работало совершенно нормально.

Теперь, я хотел обновить это приложение, и оно внезапно выдает мне эту ошибку: (Изменения, которые я сделал, были не очень большими, удалил blank=True в моем models.py)

ModuleNotFoundError: No module named '_cffi_backend'
Traceback (most recent call last):
  File "/var/task/handler.py", line 657, in lambda_handler
    return LambdaHandler.lambda_handler(event, context)
  File "/var/task/handler.py", line 251, in lambda_handler
    handler = cls()
  File "/var/task/handler.py", line 160, in __init__
    wsgi_app_function = get_django_wsgi(self.settings.DJANGO_SETTINGS)
  File "/var/task/zappa/ext/django_zappa.py", line 21, in get_django_wsgi
    return get_wsgi_application()
  File "/tmp/mysite/django/core/wsgi.py", line 12, in get_wsgi_application
    django.setup(set_prefix=False)
  File "/tmp/mysite/django/__init__.py", line 24, in setup
    apps.populate(settings.INSTALLED_APPS)
  File "/tmp/mysite/django/apps/registry.py", line 122, in populate
    app_config.ready()
  File "/tmp/mysite/core/apps.py", line 8, in ready
    from core import signals
  File "/tmp/mysite/core/signals.py", line 1, in <module>
    import cairosvg
  File "/tmp/mysite/cairosvg/__init__.py", line 26, in <module>
    from . import surface  # noqa isort:skip
  File "/tmp/mysite/cairosvg/surface.py", line 9, in <module>
    import cairocffi as cairo
  File "/tmp/mysite/cairocffi/__init__.py", line 17, in <module>
    from ._generated.ffi import ffi
  File "/tmp/mysite/cairocffi/_generated/ffi.py", line 2, in <module>
    import _cffi_backend

Я использую пакет CairoSVG и при его отключении мое приложение снова работает. Странно то, что я использовал этот пакет и в предыдущей версии без каких-либо проблем.

при обновлении с помощью zappa update dev он показывает мне следующее:

Calling update for stage dev..
Downloading and installing dependencies..
 - reportlab==3.6.6: Using locally cached manylinux wheel
 - pyproj==3.3.0: Using locally cached manylinux wheel
 - psycopg2-binary==2.9.3: Using locally cached manylinux wheel
'releases'
Packaging project as gzipped tarball.

Я заметил, что в предыдущих обновлениях была 4-я зависимость под названием "cffi", но теперь она исчезла.

Я понятия не имею, как это происходит и откуда берутся эти зависимости, потому что у меня в requirements.txt есть гораздо больше

Не знаю точно, что пошло не так, но я все исправил:

  1. полностью удаляет мою виртуальную среду
  2. создаю новую.
  3. установка пакетов с помощью pip install -r requirements.txt --no-cache-dir

--no-cache-dir было действительно важным добавлением.

Вернуться на верх