由于更新到python@3.9.8
,我们在CI管道中使用Black时出错.
black....................................................................Failed
- hook id: black
- exit code: 1
Traceback (most recent call last):
File "../.cache/pre-commit/repol9drvp84/py_env-python3/bin/black", line 5, in <module>
from black import patched_main
File "../.cache/pre-commit/repol9drvp84/py_env-python3/lib/python3.9/site-packages/black/__init__.py", line 52, in <module>
from typed_ast import ast3, ast27
File "../.cache/pre-commit/repol9drvp84/py_env-python3/lib/python3.9/site-packages/typed_ast/ast3.py", line 40, in <module>
from typed_ast import _ast3
ImportError: ../.cache/pre-commit/repol9drvp84/py_env-python3/lib/python3.9/site-packages/typed_ast/_ast3.cpython-39-x86_64-linux-gnu.so: undefined symbol: _PyUnicode_DecodeUnicodeEscape
可以通过以下方式轻松重现错误:
% pip install typed_ast
% python3 -c 'from typed_ast import ast3'
Traceback (most recent call last):
File "<string>", line 1, in <module>
ImportError:
/usr/lib/python3/dist-packages/typed_ast/_ast3.cpython-39-x86_64-linux-gnu.so:
undefined symbol: _PyUnicode_DecodeUnicodeEscape
目前唯一的解决办法是降级到python@3.9.7
.
还有其他修复方法吗?
另见第https://www.mail-archive.com/debian-bugs-dist@lists.debian.org/msg1829077.html页