diff --git a/config/sun_checks.xml b/config/sun_checks.xml index 5c5481e5b9c3fb1f427e7c72c9b7f8d6ee921676..e76901bd375649e46dd6bd94d690481c8168cf46 100644 --- a/config/sun_checks.xml +++ b/config/sun_checks.xml @@ -1,183 +1,193 @@ <?xml version="1.0"?> <!DOCTYPE module PUBLIC - "-//Checkstyle//DTD Check Configuration 1.3//EN" - "https://checkstyle.org/dtds/configuration_1_3.dtd"> -<!-- - This is a checkstyle configuration file derived from Sun coding conventions. - For descriptions of what the following rules do, please see the checkstyle - configuration page at http://checkstyle.sourceforge.net/config.html ---> + "-//Checkstyle//DTD Checkstyle Configuration 1.3//EN" + "https://checkstyle.org/dtds/configuration_1_3.dtd"> +<!-- This is a checkstyle configuration file derived from Sun coding conventions. + For descriptions of what the following rules do, please see the checkstyle + configuration page at http://checkstyle.sourceforge.net/config.html --> <!-- + Checkstyle configuration that checks the sun coding conventions from: - - the Java Language Specification at - http://java.sun.com/docs/books/jls/second_edition/html/index.html - - the Sun Code Conventions at http://java.sun.com/docs/codeconv/ - - the Javadoc guidelines at - http://java.sun.com/j2se/javadoc/writingdoccomments/index.html - - the JDK Api documentation http://java.sun.com/j2se/docs/api/index.html - - some best practices + + - the Java Language Specification at + https://docs.oracle.com/javase/specs/jls/se11/html/index.html + + - the Sun Code Conventions at https://www.oracle.com/java/technologies/javase/codeconventions-contents.html + + - the Javadoc guidelines at + https://www.oracle.com/technical-resources/articles/java/javadoc-tool.html + + - the JDK Api documentation https://docs.oracle.com/en/java/javase/11/ + + - some best practices + Checkstyle is very configurable. Be sure to read the documentation at - http://checkstyle.sf.net (or in your downloaded distribution). + https://checkstyle.org (or in your downloaded distribution). + Most Checks are configurable, be sure to consult the documentation. + To completely disable a check, just comment it out or delete it from the file. + To suppress certain violations please review suppression filters. + Finally, it is worth reading the documentation. ---> +--> <module name="Checker"> - <!-- - If you set the basedir property below, then all reported file - names will be relative to the specified directory. See - http://checkstyle.sourceforge.net/5.x/config.html#Checker - - <property name="basedir" value="${basedir}"/> - --> - - <property name="fileExtensions" value="java, xml"/> - - <!-- Checks that a package-info.java file exists for each package. --> - <!-- See http://checkstyle.sf.net/config_javadoc.html#JavadocPackage --> - <module name="JavadocPackage" /> - - <!-- Checks whether files end with a new line. --> - <!-- See http://checkstyle.sf.net/config_misc.html#NewlineAtEndOfFile --> - <module name="NewlineAtEndOfFile" /> - - <!-- Checks that property files contain the same keys. --> - <!-- See http://checkstyle.sf.net/config_misc.html#Translation --> - <module name="Translation" /> - - <!-- Checks for Size Violations. --> - <!-- See http://checkstyle.sf.net/config_sizes.html --> - <module name="FileLength" /> - - <!-- Checks for whitespace --> - <!-- See http://checkstyle.sf.net/config_whitespace.html --> - <module name="FileTabCharacter"> - <property name="fileExtensions" value="java" /> - </module> - - <!-- https://checkstyle.sourceforge.io/config_sizes.html#LineLength --> - <module name="LineLength"> - <property name="ignorePattern" value="^import " /> - <property name="max" value="120" /> - </module> - - <!-- Miscellaneous other checks. --> - <!-- See http://checkstyle.sf.net/config_misc.html --> - <module name="RegexpSingleline"> - <property name="format" value="\s+$" /> - <property name="minimum" value="0" /> - <property name="maximum" value="0" /> - <property name="message" value="Line has trailing spaces." /> - </module> - - <module name="SuppressionFilter"> - <property name="file" - value="${basedir}/config/checkstyle-suppressions.xml" /> - </module> - - <!-- Adding to Sun convention: --> - <module name="SuppressWarningsFilter" /> - - <module name="TreeWalker"> - - <!-- Checks for Javadoc comments. --> - <!-- See http://checkstyle.sf.net/config_javadoc.html --> - <module name="JavadocMethod" /> - <module name="JavadocType" /> - <module name="JavadocVariable" /> - <module name="JavadocStyle" /> - - - <!-- Checks for Naming Conventions. --> - <!-- See http://checkstyle.sf.net/config_naming.html --> - <module name="ConstantName" /> - <module name="LocalFinalVariableName" /> - <module name="LocalVariableName" /> - <module name="MemberName" /> - <module name="MethodName" /> - <module name="PackageName" /> - <module name="ParameterName" /> - <module name="StaticVariableName" /> - <module name="TypeName" /> - - - <!-- Checks for imports --> - <!-- See http://checkstyle.sf.net/config_import.html --> - <module name="AvoidStarImport" /> - <module name="IllegalImport" /> <!-- defaults to sun.* packages --> - <module name="RedundantImport" /> - <module name="UnusedImports" /> - - - <!-- Checks for Size Violations. --> - <!-- See http://checkstyle.sf.net/config_sizes.html --> - <module name="MethodLength" /> - <module name="ParameterNumber"> - <property name="max" value="9"/> - </module> - - <!-- Checks for whitespace --> - <!-- See http://checkstyle.sf.net/config_whitespace.html --> - <module name="EmptyForIteratorPad" /> - <module name="GenericWhitespace" /> - <module name="MethodParamPad" /> - <module name="NoWhitespaceAfter" /> - <module name="NoWhitespaceBefore" /> - <module name="OperatorWrap" /> - <module name="ParenPad" /> - <module name="TypecastParenPad" /> - <module name="WhitespaceAfter" /> - <module name="WhitespaceAround" /> - - - <!-- Modifier Checks --> - <!-- See http://checkstyle.sf.net/config_modifiers.html --> - <module name="ModifierOrder" /> - <module name="RedundantModifier" /> - - - <!-- Checks for blocks. You know, those {}'s --> - <!-- See http://checkstyle.sf.net/config_blocks.html --> - <module name="AvoidNestedBlocks" /> - <module name="EmptyBlock" /> - <module name="LeftCurly" /> - <module name="NeedBraces" /> - <module name="RightCurly" /> - - - <!-- Checks for common coding problems --> - <!-- See http://checkstyle.sf.net/config_coding.html --> - <module name="AvoidInlineConditionals" /> - <module name="EmptyStatement" /> - <module name="EqualsHashCode" /> - <module name="HiddenField" /> - <module name="IllegalInstantiation" /> - <module name="InnerAssignment" /> - <module name="MagicNumber" /> - <module name="MissingSwitchDefault" /> - <module name="SimplifyBooleanExpression" /> - <module name="SimplifyBooleanReturn" /> - - <!-- Checks for class design --> - <!-- See http://checkstyle.sf.net/config_design.html --> - <module name="DesignForExtension" /> - <module name="FinalClass" /> - <module name="HideUtilityClassConstructor" /> - <module name="InterfaceIsType" /> - <module name="VisibilityModifier" /> - - - <!-- Miscellaneous other checks. --> - <!-- See http://checkstyle.sf.net/config_misc.html --> - <module name="ArrayTypeStyle" /> - <module name="FinalParameters" /> - <module name="TodoComment" /> - <module name="UpperEll" /> - - <!-- Adding to Sun convention: --> - <module name="SuppressWarningsHolder" /> - </module> + <!-- + If you set the basedir property below, then all reported file + names will be relative to the specified directory. See + https://checkstyle.org/config.html#Checker + + <property name="basedir" value="${basedir}"/> + --> + <property name="severity" value="error"/> + + <property name="fileExtensions" value="java, xml"/> + + <!-- https://checkstyle.org/filters/suppressionfilter.html --> + <module name="SuppressionFilter"> + <property name="file" + value="${basedir}/config/checkstyle-suppressions.xml" /> + <property name="optional" value="false"/> + </module> + + <!-- Checks that a package-info.java file exists for each package. --> + <!-- See https://checkstyle.org/checks/javadoc/javadocpackage.html#JavadocPackage --> + <module name="JavadocPackage" /> + + <!-- Checks whether files end with a new line. --> + <!-- See https://checkstyle.org/checks/misc/newlineatendoffile.html --> + <module name="NewlineAtEndOfFile" /> + + <!-- Checks that property files contain the same keys. --> + <!-- See https://checkstyle.org/checks/misc/translation.html --> + <module name="Translation" /> + + <!-- Checks for Size Violations. --> + <!-- See https://checkstyle.org/checks/sizes/index.html --> + <module name="FileLength" /> + <module name="LineLength"> + <property name="fileExtensions" value="java"/> + <!-- Added to Sun convention: --> + <property name="ignorePattern" value="^import " /> + <property name="max" value="120" /> + </module> + + <!-- Checks for whitespace --> + <!-- See https://checkstyle.org/checks/whitespace/index.html --> + <module name="FileTabCharacter" /> + + <!-- Miscellaneous other checks. --> + <!-- See https://checkstyle.org/checks/misc/index.html --> + <module name="RegexpSingleline"> + <property name="format" value="\s+$" /> + <property name="minimum" value="0" /> + <property name="maximum" value="0" /> + <property name="message" value="Line has trailing spaces." /> + </module> + + <!-- Checks for Headers --> + <!-- See https://checkstyle.org/checks/header/index.html --> + <!-- <module name="Header"> --> + <!-- <property name="headerFile" value="${checkstyle.header.file}"/> --> + <!-- <property name="fileExtensions" value="java"/> --> + <!-- </module> --> + <module name="TreeWalker"> + + <!-- Checks for Javadoc comments. --> + <!-- See https://checkstyle.org/checks/javadoc/index.html --> + <module name="InvalidJavadocPosition"/> + <module name="JavadocMethod" /> + <module name="JavadocType" /> + <module name="JavadocVariable" /> + <module name="JavadocStyle" /> + <module name="MissingJavadocMethod"/> + + <!-- Checks for Naming Conventions. --> + <!-- See https://checkstyle.org/checks/naming/index.html --> + <module name="ConstantName" /> + <module name="LocalFinalVariableName" /> + <module name="LocalVariableName" /> + <module name="MemberName" /> + <module name="MethodName" /> + <module name="PackageName" /> + <module name="ParameterName" /> + <module name="StaticVariableName" /> + <module name="TypeName" /> + + <!-- Checks for imports --> + <!-- See https://checkstyle.org/checks/imports/index.html --> + <module name="AvoidStarImport" /> + <module name="IllegalImport" /> <!-- defaults to sun.* packages --> + <module name="RedundantImport" /> + <module name="UnusedImports" /> + + + <!-- Checks for Size Violations. --> + <!-- See https://checkstyle.org/checks/sizes/index.html --> + <module name="MethodLength" /> + <module name="ParameterNumber"> + <property name="max" value="9"/> + </module> + + <!-- Checks for whitespace --> + <!-- See https://checkstyle.org/checks/whitespace/index.html --> + <module name="EmptyForIteratorPad" /> + <module name="GenericWhitespace" /> + <module name="MethodParamPad" /> + <module name="NoWhitespaceAfter" /> + <module name="NoWhitespaceBefore" /> + <module name="OperatorWrap" /> + <module name="ParenPad" /> + <module name="TypecastParenPad" /> + <module name="WhitespaceAfter" /> + <module name="WhitespaceAround" /> + + <!-- Modifier Checks --> + <!-- See https://checkstyle.org/checks/modifier/index.html --> + <module name="ModifierOrder" /> + <module name="RedundantModifier" /> + + <!-- Checks for blocks. You know, those {}'s --> + <!-- See https://checkstyle.org/checks/blocks/index.html --> + <module name="AvoidNestedBlocks" /> + <module name="EmptyBlock" /> + <module name="LeftCurly" /> + <module name="NeedBraces" /> + <module name="RightCurly" /> + + <!-- Checks for common coding problems --> + <!-- See https://checkstyle.org/checks/coding/index.html --> + <module name="AvoidInlineConditionals" /> + <module name="EmptyStatement" /> + <module name="EqualsHashCode" /> + <module name="HiddenField" /> + <module name="IllegalInstantiation" /> + <module name="InnerAssignment" /> + <module name="MagicNumber" /> + <module name="MissingSwitchDefault" /> + <module name="MultipleVariableDeclarations"/> + <module name="SimplifyBooleanExpression" /> + <module name="SimplifyBooleanReturn" /> + + <!-- Checks for class design --> + <!-- See https://checkstyle.org/checks/design/index.html --> + <module name="DesignForExtension" /> + <module name="FinalClass" /> + <module name="HideUtilityClassConstructor" /> + <module name="InterfaceIsType" /> + <module name="VisibilityModifier" /> + + <!-- Miscellaneous other checks. --> + <!-- See https://checkstyle.org/checks/misc/index.html --> + <module name="ArrayTypeStyle" /> + <module name="FinalParameters" /> + <module name="TodoComment" /> + <module name="UpperEll" /> + + <!-- Added to Sun convention: --> + <module name="SuppressWarningsHolder" /> + </module> </module>