Un complemento Sonarqube gratuito y de código abierto para el análisis de código estático de proyectos Scala.
Sonar-Scala es un complemento de Sonarqube independiente, conducido y desarrollado con: Heart: por la comunidad.
Destinado a Sonarqube 9.4, Sonarqube 8.9 Lts, Sonarqube 7.9 Lts, Sonarqube 6.7 Lts y Scala 2.11/2.12/2.13.
Sonar-Scala se desarrolla en Scala. Utiliza la biblioteca escalariforme para analizar el código fuente y se integra con la población (cobertura de código), el estilo de escalón y el chivo expiatorio (análisis de código estático). También proporciona la funcionalidad de decoración de solicitudes de extracción, que puede revisar las solicitudes de extracción en GitHub y hacer comentarios sobre nuevos problemas directamente en la solicitud de extracción en lugar de informarlas a Sonarqube.
Actualmente, no es compatible con el análisis desde una máquina de Windows; utilice Linux u otro sistema operativo similar a UNIX.
Consulte el sitio web del proyecto Sonar-scala.com para la documentación.
Para construir el proyecto a partir de fuentes, ejecute la tarea assembly en SBT Shell y el JAR ensamblado con todas las dependencias requeridas por este complemento debe crearse en el directorio target/scala-2.13 .
Para depurar el complemento, exporte la siguiente variable de entorno antes de ejecutar sonar-scanner para su proyecto:
export SONAR_SCANNER_OPTS= " -agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=8000 " Una vez que haya hecho eso, sonar-scanner debe mostrar el siguiente mensaje Listening for transport dt_socket at address: 8000 . Ahora puede adjuntar su IDE al proceso en el puerto 8000 , establecer puntos de interrupción y depurar el código.
Este proyecto es una continuación del complemento SONAR-Scala, que inicialmente fue desarrollado por Sagacify.
Muchos otros proyectos se han utilizado como inspiración, aquí hay una lista de los principales:
Para obtener una lista completa de cambios y lanzamientos, consulte ChangeLog.
El proyecto tiene licencia bajo el GNU LGPL V3. Consulte el archivo de licencia para obtener más detalles.