Desde que actualizamos a Python 3.9.8, recibimos un error al usar Black en nuestra canalización de CI .
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_DecodeUnicodeEscapeEl error se puede reproducir fácilmente con:
% 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_DecodeUnicodeEscapeActualmente, la única solución es cambiar a Python 3.9.7.
¿Hay otra solución disponible?
Ver también Bug#998854: símbolo indefinido: _PyUnicode_DecodeUnicodeEscape
El error inicial fue una canalización fallida de Python Black . Black falló porque estaba anclado a una versión anterior que ahora falla con Python 3.9.8.
Actualizar Black a la última versión, 21.10b0 , me solucionó el error.
Ver también typed_ast problema #169 :
Para otros que pueden encontrar esto en una búsqueda, me encontré con este problema a través de negro porque tenía negro anclado a una versión anterior. La versión actual de black parece que ya no usa typed-ast y, por lo tanto, no encontrará este problema.
Usar la última versión typed-ast >= 1.5.0 parece funcionar también.
Por ejemplo, pip install typed-ast --upgrade