Semgrep ha lanzado la versión v1.163.0, una actualización menor enfocada en rendimiento y seguridad, disponible desde el 15 de mayo de 2026. Esta versión, que sucede a v1.162.0, ofrece optimizaciones clave y mejoras en el soporte de lenguajes. Para detalles completos, consulte el changelog oficial.

Cambios Clave

Mejoras de Rendimiento: Esta versión introduce múltiples optimizaciones destinadas a reducir significativamente los tiempos de arranque del escaneo y el uso general de memoria. semgrep ci ahora inicia más rápido al evitar inteligentemente la validación duplicada de reglas de semgrep-core durante la carga de reglas CLI, manteniendo al mismo tiempo los fallos de estilo de configuración para reglas inválidas. Las reglas “dependency-aware” ahora se validan únicamente en el lado del core, lo que agiliza aún más el proceso de arranque. Para conjuntos de reglas grandes, la validación de reglas ahora se ejecuta en paralelo a través de múltiples cores, distribuyendo la carga de trabajo y acelerando las comprobaciones iniciales. De manera similar, el parsing de reglas ahora se ejecuta en paralelo a través de shards en máquinas multi-core, reduciendo drásticamente el tiempo de procesamiento. Otras optimizaciones incluyen un prefiltrado y parsing de reglas mejorados, junto con una corrección crítica para el rendimiento del parsing de reglas de “transitive reachability” al corregir un problema de sufijo de archivo. Estos esfuerzos combinados también contribuyen a reducir el uso máximo de memoria al escanear repositorios con conjuntos de reglas extensos.

Soporte de Lenguajes: El parsing de PHP ha sido actualizado para soportar completamente los cambios gramaticales introducidos en las versiones de PHP 8.1 a 8.5. Esto asegura un análisis estático más amplio y preciso para aplicaciones PHP modernas, permitiendo a los equipos de QA escanear bases de código más recientes con confianza.

Corrección de Errores: La resolución de nombres para nombres completamente calificados en Java, Kotlin y Scala ha sido significativamente mejorada. Esta mejora se traduce directamente en menos falsos positivos y más verdaderos positivos, proporcionando hallazgos de seguridad y calidad más precisos al identificar correctamente los elementos del código. También se abordó un error específico de resolución de nombres en Java (relevante para usuarios de Semgrep Pro), mejorando aún más la precisión.

Impacto para Equipos QA

Los equipos de QA se beneficiarán de ciclos de retroalimentación significativamente más rápidos debido a la reducción en los tiempos de arranque del escaneo, permitiendo una integración más ágil en los pipelines de CI/CD y una iteración más rápida. La precisión mejorada en Java, Kotlin y Scala, junto con el soporte ampliado para PHP, significa resultados de análisis estático más confiables. Esto ayuda a identificar problemas críticos de seguridad y calidad en etapas más tempranas del ciclo de desarrollo, reduciendo los costos de remediación y mejorando la calidad general del código.

Preguntas Frecuentes

P: ¿Cuál es el enfoque principal de Semgrep v1.163.0? R: El enfoque principal es en mejoras significativas de rendimiento en el arranque del escaneo y el procesamiento de reglas, junto con un soporte de lenguaje mejorado para PHP y Java.

P: ¿Cómo beneficia esta actualización a los usuarios de semgrep ci? R: Los usuarios de semgrep ci experimentarán tiempos de arranque significativamente más rápidos debido a la validación de reglas optimizada, el procesamiento paralelo de reglas y la reducción de la sobrecarga.

P: ¿Hay cambios para proyectos de Java, Kotlin o Scala? R: Sí, la resolución de nombres para nombres completamente calificados ha sido mejorada, lo que lleva a hallazgos más precisos con menos falsos positivos y más verdaderos positivos en estos lenguajes.