Checkstyle 13.6.0, una actualización de Checkstyle, se centra en la estabilidad y la compatibilidad mejorada con las características modernas de Java. Esta versión, con fecha 2026-06-15, es crucial para los ingenieros de QA y desarrolladores que dependen del análisis de código estático.
Cambios Clave
Nuevas Características y Mejoras:
- Agrupación de Constructores: El
ConstructorsDeclarationGroupingCheckahora incluye una nueva propiedadrequired. Esto permite ordenar los constructores según la aridad creciente, asegurando un estilo de código consistente. - Mejora de
NoLineWrap: Se ha resuelto un falso negativo para las declaracionesimport module(MODULE_IMPORT) envueltas, lo que hace que la verificación sea más precisa.
Correcciones de Errores Clave:
Una parte significativa de esta actualización aborda problemas relacionados con JEP 512: Compact Source Files and Instance Main Methods, introducido en JDK 25.
- Estabilidad JEP 512: Se han corregido numerosos
NullPointerException(NPEs) que ocurrían en archivos fuente compactos en varias comprobaciones, incluyendoMagicNumberCheck,EmptyLineSeparatorCheck,FinalLocalVariableCheck,ModifiedControlVariableCheck,MissingOverrideCheck,MissingOverrideOnRecordAccessorCheck,MethodNameCheckyUnusedLocalVariableCheck. Esto mejora enormemente la fiabilidad de Checkstyle al analizar bases de código Java modernas. - Declaraciones
import module: Se han corregido varios falsos negativos e indentaciones incorrectas para las declaracionesimport moduleen las comprobacionesEmptyLineSeparatoreIndentation. - Comprobaciones de Estilo OpenJDK: Se han añadido nuevas comprobaciones para el estilo OpenJDK §3.3 - Import statements y Wildcard Imports, asegurando una mejor adhesión a estas directrices.
- Analizador Javadoc: Se han resuelto múltiples problemas con el analizador Javadoc, mejorando su precisión y evitando errores en archivos fuente complejos como
java/lang/Character.java. - Falsos Positivos:
PackageDeclarationCheckyOuterTypeFilenameya no reportan falsos positivos en archivos fuente compactos JEP 512. - Archivos SARIF y de Supresión: Las mejoras incluyen la codificación porcentual adecuada de las comillas dobles en las URIs de archivos SARIFLogger y el escape de nombres de archivo en los archivos de supresión generados.
Para una lista completa de cambios, consulte las notas de la versión oficial.
Impacto para Equipos de QA
Los equipos de QA se beneficiarán de un análisis estático más fiable, especialmente al trabajar con proyectos que utilizan características modernas de Java como los archivos fuente compactos JEP 512. Menos falsos positivos y NullPointerExceptions significan informes más limpios y menos tiempo dedicado a clasificar problemas irrelevantes, permitiendo centrarse en preocupaciones genuinas de calidad del código. Esta actualización asegura que Checkstyle siga siendo una herramienta eficaz para aplicar estándares de codificación.
