A
문제상황
현재 배포의 과정(배포시 git action의 작동순서)
ImportError: cannot import name 'soft_unicode' from 'markupsafe' (/usr/local/lib/python3.8/site-packages/markupsafe/__init__.py)
# pipdetree 를 install
pip install pipdeptree
# api 가 실행되는 python 가상환경에서 pipdetree
pipdeptree
# 문제의 의존성 - JinJa2 와 JinJa2를 쓰는 Flask 에서 문제발생
Jinja2==3.0.3
- MarkupSafe [required: >=2.0, installed: 2.0.1]
Version 2.1.0
Released 2022-02-17
Drop support for Python 3.6. #262
Remove soft_unicode, which was previously deprecated. Use soft_str instead. #261
Raise error on missing single placeholder during string interpolation. #225
Disable speedups module for GraalPython. #277
PYPI : https://pypi.org/project/Jinja2/
Github: https://github.com/pallets/jinja/
from setuptools import setup
# Metadata goes in setup.cfg. These are here for GitHub's dependency graph.
setup(
name="Jinja2",
install_requires=["MarkupSafe>=2.0"],
extras_require={"i18n": ["Babel>=2.7"]},
)
현재 가장 최신의 버전인 MarkupSafe:2.1.0 만 문제가 발생한 것으로 이전에 문제가 발생하지 않았던 MarkupSafe:2.0.1 버전으로 고정시켜서 다운받게 하면 문제가 발생하지 않는다.
requirements.txt 에 MarkupSafe==2.0.1 추가
MarkupSafe==2.0.1