Merge branch 'develop' into releases/Release_2_11_2_Branch
[jalview.git] / utils / checkstyle / checkstyle.xml
index 7ca2d26..17946f7 100644 (file)
        </module>
 
        <!-- 
-               Allow suppression of rules by comments, e.g.:
-               // CHECKSTYLE.OFF: ParameterNumber
-               ..method declaration
-               // CHECKSTYLE.ON: ParameterNumber
-       -->
-       <module name="SuppressionCommentFilter">
-               <property name="offCommentFormat" value="CHECKSTYLE.OFF\: ([\w\|]+)"/>
-               <property name="onCommentFormat" value="CHECKSTYLE.ON\: ([\w\|]+)"/>
-               <property name="checkFormat" value="$1"/>
-       </module>
-
-       <!--
-               Maximum line count for source files
-       -->
-       <module name="FileLength">
-               <property name="max" value="1200"/>
-               <property name="fileExtensions" value="java"/>
-       </module>
-
-       <!-- 
                Check language bundles have the same keys and no duplicates
                (ensure Checkstyle is configured to scan non-source files)
         -->
            <property name="fileExtensions" value="properties" />
                <property name="severity" value="error"/>
        </module>
+
+       <!--
+               Maximum line count for source files
+               (note this can't be inside TreeWalker)
+       -->
+       <module name="FileLength">
+               <property name="max" value="1200"/>
+               <property name="fileExtensions" value="java"/>
+       </module>
        
        <module name="TreeWalker">
 
                <property name="tabWidth" value="4"/>
 
                <!-- 
-                       Enables parsing of suppressions comments
-                       see http://checkstyle.sourceforge.net/config_filters.html#SuppressionCommentFilter 
+                       Allow suppression of rules by comments, e.g.:
+                       // CHECKSTYLE.OFF: ParameterNumber
+                       ..method declaration
+                       // CHECKSTYLE.ON: ParameterNumber
                -->
-               <module name="FileContentsHolder"/>
+               <module name="SuppressionCommentFilter">
+                       <property name="offCommentFormat" value="CHECKSTYLE.OFF\: ([\w\|]+)"/>
+                       <property name="onCommentFormat" value="CHECKSTYLE.ON\: ([\w\|]+)"/>
+                       <property name="checkFormat" value="$1"/>
+               </module>
 
        <!-- ****************************** -->
        <!--         NAMING STANDARDS       -->
                <module name="HiddenField"/> 
 
                <!-- 
-                       Check that proper logging is used and never printing to System.out.
+                       Check that proper logging is used.
                        This may be suppressed in the class that provides logging functions.
                -->
                <module name="RegexpSinglelineJava">
+                       <property name="id" value="NoSysout" />
                        <property name="format" value="System\.out\.println"/>
                        <property name="ignoreComments" value="true"/>
+                       <message key="regexp.exceeded" value="Should use jalview.bin.Cache.log for logging"/>
+               </module>
+               <module name="RegexpSinglelineJava">
+                       <property name="id" value="NoSyserr" />
+                       <property name="format" value="System\.err\.println"/>
+                       <property name="ignoreComments" value="true"/>
+                       <message key="regexp.exceeded" value="Should use jalview.bin.Cache.log for logging"/>
                </module>
 
                <!--
                        Check for TODO and similar comments 
                -->
                <module name="TodoComment">
-                       <property name="format" value="(TODO)|(FIXME)|(DOCUMENT ME)"/>
+                       <property name="format" value="(TODO)|(FIXME)"/>
+                       <message key="todo.match" value="TODO or FIXME comment"/>
+               </module>
+
+               <module name="TodoComment">
+                       <property name="format" value="DOCUMENT ME"/>
+                       <message key="todo.match" value="Documentation incomplete"/>
                </module>
 
        </module>