Slither
(Compatible desde Remix IDE v0.15.0 y Remixd v0.5.0)
Remixd y Slither
Nota: Si no ha utilizado remixd
antes, lea más sobre él here
Cuando se instala el módulo remixd NPM, también se instalan Slither y solc-select y la última versión de solc.
Python3.6+ (pip3)
needs to already be installed on the System. In case of any discrepancy, Slither can also be installed along with other dependencies using command remixd -i slither
(This packaging of Slither with the remixd module is supported since Remixd v0.6.3
)
cuando remixd
se esté ejecutando localmente en su dispositivo, un plugin websocket adicional estará escuchando en el puerto 65523
que estará dedicado para la integración de Slither. (Soportado desde Remixd v0.5.0
)
El remixd Slither listener es un plugin websocket similar a remixd y se utiliza para realizar análisis Slither con Remix IDE.
Habilitar el análisis de deslizamiento
Requisitos previos
Para utilizar eficazmente el análisis Slither con el IDE Remix, las siguientes herramientas deben estar instaladas localmente en el sistema:
Solc: https://docs.soliditylang.org/en/latest/installing-solidity.html
Solc-select: https://github.com/crytic/solc-select#quickstart
Se configura con la instalación de remixd o se puede hacer utilizando el comando remixd -i slither
.
Cómo utilizarlo
Si se comparte un proyecto a través de remixd y se carga el espacio de trabajo localhost
en Remix IDE, aparecerá una casilla de verificación adicional en el plugin Solidity Static Analysis
con la etiqueta Enable Slither Analysis
.
Hay un icono de información a la derecha de la etiqueta que redirige a una sección específica de la documentación oficial de Remix que explica cómo utilizar el Análisis de Slither y los requisitos previos para ello.
Se puede marcar la casilla Habilitar análisis de Slither
para ejecutar el análisis utilizando Slither junto con la biblioteca de análisis de Remix.
El último informe del análisis de Slither se almacenará localmente en la raíz del proyecto con un archivo llamado remix-slither-report.json
.
El informe de análisis de Slither también se mostrará en el IDE de Remix después del informe de análisis de Remix para una mejor legibilidad por parte del usuario.
El resultado del análisis se mostrará en el terminal Remix IDE
y también en la consola remixd.
Para ejecutar sólo el Análisis de Slither, desmarque la casilla Seleccionar todo
y haga clic en Ejecutar
. Ahora sólo se mostrará el informe del Análisis de Slither.
By default, it doesn’t show the warnings for external libraries like remix-tests.sol, hardhat/console.sol etc. To have a look at them, check the box with label Show warnings for external libraries
.
Más detalles
El análisis para Slither se ejecuta utilizando la versión establecida en el plugin Solidity Compiler
de Remix IDE. Slither es una herramienta CLI y requiere solc
para ejecutar el análisis. Antes de ejecutar el análisis, el plugin websocket de Slither comprueba si la versión actual de solc es la misma que la versión establecida en Remix IDE.
Si la versión del compilador establecida en Solidity Compiler es diferente de la versión actual de solc instalada localmente, el complemento de websocket de Slither actualizará solc
para que coincida con la versión requerida solc-select
.
Por ejemplo, si la versión actual de solc
en el sistema es 0.8.4 y en el IDE Remix se establece 0.8.6, remixd
logs explica la selección de la versión remota de solc
Tras la ejecución satisfactoria del análisis: