Error al intentar ejecutar phan 2.x debido a php-ast

Error al intentar ejecutar phan 2.x debido a php-ast

No puedo encontrar la solución sobre "ERROR: Phan 2.x requiere php-ast 1.0.1+ porque depende de la versión 70 de AST. Está instalado php-ast 0.1.6".

root@desk:/mnt/d/ibr/phan$ ./phan
ERROR: Phan 2.x requires php-ast 1.0.1+ because it depends on AST version 70. php-ast 0.1.6 is installed.
Exiting without analyzing files.

Respuesta1

La versión AST que viene en el repositorio oficial de PHP es demasiado antigua para funcionar con phan. Tienes 2 opciones aquí:

  1. Ejecute phan con --allow-polyfill-parser parameter, que es significativamente más lento, pero funciona sin instalar la extensión.

  2. Instale ast desde pecl.

    Para Ubuntu 18.04 tuve que hacer:

    sudo apt install php7.2-dev php-pear
    sudo pecl install ast`
    sudo phpenmod ast
    

    Para distribuciones no basadas en Debian, debe instalar phpizey peclejecutar pecl install astcomo root y luego editar php.ini para agregarextension=ast.so

información relacionada