[ https://issues.apache.org/jira/browse/FLINK-6107?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15940555#comment-15940555 ]
ASF GitHub Bot commented on FLINK-6107: --------------------------------------- Github user greghogan commented on a diff in the pull request: https://github.com/apache/flink/pull/3567#discussion_r107777860 --- Diff: tools/maven/strict-checkstyle.xml --- @@ -0,0 +1,550 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- +Licensed to the Apache Software Foundation (ASF) under one +or more contributor license agreements. See the NOTICE file +distributed with this work for additional information +regarding copyright ownership. The ASF licenses this file +to you under the Apache License, Version 2.0 (the +"License"); you may not use this file except in compliance +with the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, +software distributed under the License is distributed on an +"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +KIND, either express or implied. See the License for the +specific language governing permissions and limitations +under the License. +--> +<!DOCTYPE module PUBLIC + "-//Puppy Crawl//DTD Check Configuration 1.3//EN" + "http://www.puppycrawl.com/dtds/configuration_1_3.dtd"> + +<!-- +This is a checkstyle configuration file. For descriptions of +what the following rules do, please see the checkstyle configuration +page at http://checkstyle.sourceforge.net/config.html. + +This file is based on the checkstyle file of Apache Beam. +--> + +<module name="Checker"> + + <!--<module name="FileTabCharacter">--> + <!--<!– Checks that there are no tab characters in the file. –>--> + <!--</module>--> + + <module name="NewlineAtEndOfFile"> + <!-- windows can use \n\r vs \n, so enforce the most used one ie UNIx style --> + <property name="lineSeparator" value="lf" /> + </module> + + <module name="RegexpSingleline"> + <!-- Checks that TODOs don't have stuff in parenthesis, e.g., username. --> + <property name="format" value="((//.*)|(\*.*))TODO\(" /> + <property name="message" value="TODO comments must not include usernames." /> + <property name="severity" value="error" /> + </module> + + <module name="RegexpSingleline"> + <property name="format" value="\s+$"/> + <property name="message" value="Trailing whitespace"/> + <property name="severity" value="error"/> + </module> + + <module name="RegexpSingleline"> + <property name="format" value="Throwables.propagate\("/> + <property name="message" value="Throwables.propagate is deprecated"/> + <property name="severity" value="error"/> + </module> + + <!-- Prevent *Tests.java as tools may not pick them up --> + <!--<module name="RegexpOnFilename">--> + <!--<property name="fileNamePattern" value=".*Tests\.java$" />--> + <!--</module>--> + + <!-- Allow use of comment to suppress javadocstyle --> + <module name="SuppressionCommentFilter"> + <property name="offCommentFormat" value="CHECKSTYLE.OFF\: ([\w\|]+)"/> + <property name="onCommentFormat" value="CHECKSTYLE.ON\: ([\w\|]+)"/> + <property name="checkFormat" value="$1"/> + </module> + <module name="SuppressionFilter"> + <property name="file" value="${checkstyle.suppressions.file}" default="suppressions.xml" /> + </module> + + <!-- Check that every module has a package-info.java --> + <!--<module name="JavadocPackage"/>--> + + <!-- + + FLINK CUSTOM CHECKS + + --> + + <module name="FileLength"> + <property name="max" value="2500"/> + </module> + + <!-- All Java AST specific tests live under TreeWalker module. --> + <module name="TreeWalker"> + + <!-- + + FLINK CUSTOM CHECKS + + --> + + <module name="RegexpSinglelineJava"> + <property name="format" value="^\t* +\t*\S" /> + <property name="message" + value="Line has leading space characters; indentation should be performed with tabs only." /> + <property name="ignoreComments" value="true" /> + </module> + + <!-- Prohibit T.getT() methods for standard boxed types --> + <module name="Regexp"> + <property name="format" value="Boolean\.getBoolean"/> + <property name="illegalPattern" value="true"/> + <property name="message" value="Use System.getProperties() to get system properties."/> --- End diff -- This looks to be the wrong message (same for the two following configurations). > Add custom checkstyle for flink-streaming-java > ---------------------------------------------- > > Key: FLINK-6107 > URL: https://issues.apache.org/jira/browse/FLINK-6107 > Project: Flink > Issue Type: Improvement > Components: DataStream API > Reporter: Aljoscha Krettek > Assignee: Aljoscha Krettek > > There was some consensus on the ML > (https://lists.apache.org/thread.html/94c8c5186b315c58c3f8aaf536501b99e8b92ee97b0034dee295ff6a@%3Cdev.flink.apache.org%3E) > that we want to have a more uniform code style. We should start > module-by-module and by introducing increasingly stricter rules. We have to > be aware of the PR situation and ensure that we have minimal breakage for > contributors. > This issue aims at adding a custom checkstyle.xml for > {{flink-streaming-java}} that is based on our current checkstyle.xml but adds > these checks for Javadocs: > {code} > <!-- > JAVADOC CHECKS > --> > <!-- Checks for Javadoc comments. --> > <!-- See http://checkstyle.sf.net/config_javadoc.html --> > <module name="JavadocMethod"> > <property name="scope" value="protected"/> > <property name="severity" value="error"/> > <property name="allowMissingJavadoc" value="true"/> > <property name="allowMissingParamTags" value="true"/> > <property name="allowMissingReturnTag" value="true"/> > <property name="allowMissingThrowsTags" value="true"/> > <property name="allowThrowsTagsForSubclasses" value="true"/> > <property name="allowUndeclaredRTE" value="true"/> > </module> > <!-- Check that paragraph tags are used correctly in Javadoc. --> > <module name="JavadocParagraph"/> > <module name="JavadocType"> > <property name="scope" value="protected"/> > <property name="severity" value="error"/> > <property name="allowMissingParamTags" value="true"/> > </module> > <module name="JavadocStyle"> > <property name="severity" value="error"/> > <property name="checkHtml" value="true"/> > </module> > {code} > This checks: > - Every type has a type-level Javadoc > - Proper use of {{<p>}} in Javadocs > - First sentence must end with a proper punctuation mark > - Proper use (including closing) of HTML tags -- This message was sent by Atlassian JIRA (v6.3.15#6346)