Report config files (copied from "Commons RNG").
Project: http://git-wip-us.apache.org/repos/asf/commons-statistics/repo Commit: http://git-wip-us.apache.org/repos/asf/commons-statistics/commit/0efff4bf Tree: http://git-wip-us.apache.org/repos/asf/commons-statistics/tree/0efff4bf Diff: http://git-wip-us.apache.org/repos/asf/commons-statistics/diff/0efff4bf Branch: refs/heads/master Commit: 0efff4bffd4ebbffa8dea12fa701a3c3b3eafd9e Parents: 021d0f1 Author: Gilles Sadowski <[email protected]> Authored: Sun Jan 21 15:03:16 2018 +0100 Committer: Gilles Sadowski <[email protected]> Committed: Sun Jan 21 15:03:16 2018 +0100 ---------------------------------------------------------------------- src/main/resources/checkstyle/checkstyle.xml | 202 +++++++++++++++++++ .../resources/checkstyle/license-header.txt | 16 ++ src/main/resources/clirr/clirr-ignored.xml | 21 ++ .../findbugs/findbugs-exclude-filter.xml | 28 +++ src/main/resources/pmd/pmd-ruleset.xml | 57 ++++++ 5 files changed, 324 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/commons-statistics/blob/0efff4bf/src/main/resources/checkstyle/checkstyle.xml ---------------------------------------------------------------------- diff --git a/src/main/resources/checkstyle/checkstyle.xml b/src/main/resources/checkstyle/checkstyle.xml new file mode 100644 index 0000000..a138af6 --- /dev/null +++ b/src/main/resources/checkstyle/checkstyle.xml @@ -0,0 +1,202 @@ +<?xml version="1.0"?> + +<!-- + 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.1//EN" "http://www.puppycrawl.com/dtds/configuration_1_1.dtd"> + +<!-- Commons RNG customization of default Checkstyle behavior --> +<module name="Checker"> + <property name="localeLanguage" value="en"/> + + <module name="TreeWalker"> + + <!-- Operator must be at end of wrapped line --> + <module name="OperatorWrap"> + <property name="option" value="eol"/> + </module> + + <!-- No if/else/do/for/while without braces --> + <module name="NeedBraces"/> + + <!-- Interfaces must be types (not just constants) --> + <module name="InterfaceIsType"/> + + <!-- Must have class / interface header comments --> + <module name="JavadocType"/> + + <!-- Require method javadocs, allow undeclared RTE --> + <module name="JavadocMethod"> + <property name="allowUndeclaredRTE" value="true"/> + <property name="allowThrowsTagsForSubclasses" value="true"/> + <property name="validateThrows" value="false"/> + </module> + + <!-- Require field javadoc --> + <module name="JavadocVariable"/> + + <!-- No public fields --> + <module name="VisibilityModifier"> + <property name="protectedAllowed" value="true"/> + </module> + + <!-- Require hash code override when equals is --> + <module name="EqualsHashCode"/> + + <!-- Disallow unnecessary instantiation of Boolean, String --> + <module name="IllegalInstantiation"> + <property name="classes" value="java.lang.Boolean, java.lang.String"/> + </module> + + <!-- Required for SuppressionCommentFilter below --> + <module name="FileContentsHolder"/> + + <!-- Import should be explicit, really needed and only from pure java packages --> + <module name="AvoidStarImport" /> + <module name="UnusedImports" /> + <module name="IllegalImport" /> + + <!-- Utility class should not be instantiated, they must have a private constructor --> + <module name="HideUtilityClassConstructor" /> + + <!-- Switch statements should be complete and with independent cases --> + <module name="FallThrough" /> + <module name="MissingSwitchDefault" /> + + <!-- Constant names should obey the traditional all uppercase naming convention --> + <module name="ConstantName" /> + + <!-- Method parameters and local variables should not hide fields, except in constructors and setters --> + <module name="HiddenField"> + <property name="ignoreConstructorParameter" value="true" /> + <property name="ignoreSetter" value="true" /> + </module> + + <!-- No trailing whitespace --> + <module name="Regexp"> + <property name="format" value="[ \t]+$"/> + <property name="illegalPattern" value="true"/> + <property name="message" value="Trailing whitespace"/> + </module> + + <!-- No System.out.println() statements --> + <module name="Regexp"> + <!-- no sysouts --> + <property name="format" value="System\.out\.println"/> + <property name="illegalPattern" value="true"/> + </module> + + <!-- Authors should be in pom.xml file --> + <module name="Regexp"> + <property name="format" value="@author"/> + <property name="illegalPattern" value="true"/> + <property name="message" value="developers names should be in pom file"/> + </module> + + <!-- Use a consistent way to put modifiers --> + <module name="RedundantModifier" /> + <module name="ModifierOrder" /> + + <!-- Use a consistent way to put declarations --> + <module name="DeclarationOrder" /> + + <!-- Don't add up parentheses when they are not required --> + <module name="UnnecessaryParentheses" /> + + <!-- Don't use too widespread catch (Exception, Throwable, RuntimeException) --> + <module name="IllegalCatch" /> + + <!-- Don't use = or != for string comparisons --> + <module name="StringLiteralEquality" /> + + <!-- Don't declare multiple variables in the same statement --> + <module name="MultipleVariableDeclarations" /> + + <!-- String literals more than one character long should not be repeated several times --> + <!-- the "unchecked" string is also accepted to allow @SuppressWarnings("unchecked") --> + <module name="MultipleStringLiterals" > + <property name="ignoreStringsRegexp" value='^(("")|(".")|("unchecked"))$'/> + </module> + + <!-- Check if @Override tags are present --> + <module name="MissingOverride" /> + + <!-- <module name="TodoComment" /> --> + + </module> + + <!-- Verify that EVERY source file has the appropriate license --> + <module name="Header"> + <property name="headerFile" value="${checkstyle.header.file}"/> + </module> + + <!-- No tabs allowed! --> + <module name="FileTabCharacter"/> + + <!-- Require files to end with newline characters --> + <module name="NewlineAtEndOfFile"/> + + <!-- Require package javadoc --> + <module name="JavadocPackage"/> + + <!-- Setup special comments to suppress specific checks from source files --> + <module name="SuppressionCommentFilter"> + <property name="offCommentFormat" value="CHECKSTYLE\: stop JavadocVariable"/> + <property name="onCommentFormat" value="CHECKSTYLE\: resume JavadocVariable"/> + <property name="checkFormat" value="JavadocVariable"/> + </module> + <module name="SuppressionCommentFilter"> + <property name="offCommentFormat" value="CHECKSTYLE\: stop JavadocMethodCheck"/> + <property name="onCommentFormat" value="CHECKSTYLE\: resume JavadocMethodCheck"/> + <property name="checkFormat" value="JavadocMethodCheck"/> + </module> + <module name="SuppressionCommentFilter"> + <property name="offCommentFormat" value="CHECKSTYLE\: stop ConstantName"/> + <property name="onCommentFormat" value="CHECKSTYLE\: resume ConstantName"/> + <property name="checkFormat" value="ConstantName"/> + </module> + <module name="SuppressionCommentFilter"> + <property name="offCommentFormat" value="CHECKSTYLE\: stop HideUtilityClassConstructor"/> + <property name="onCommentFormat" value="CHECKSTYLE\: resume HideUtilityClassConstructor"/> + <property name="checkFormat" value="HideUtilityClassConstructor"/> + </module> + <module name="SuppressionCommentFilter"> + <property name="offCommentFormat" value="CHECKSTYLE\: stop MultipleVariableDeclarations"/> + <property name="onCommentFormat" value="CHECKSTYLE\: resume MultipleVariableDeclarations"/> + <property name="checkFormat" value="MultipleVariableDeclarations"/> + </module> + <module name="SuppressionCommentFilter"> + <property name="offCommentFormat" value="CHECKSTYLE\: stop IllegalCatch"/> + <property name="onCommentFormat" value="CHECKSTYLE\: resume IllegalCatch"/> + <property name="checkFormat" value="IllegalCatch"/> + </module> + <module name="SuppressionCommentFilter"> + <property name="offCommentFormat" value="CHECKSTYLE\: stop DeclarationOrder"/> + <property name="onCommentFormat" value="CHECKSTYLE\: resume DeclarationOrder"/> + <property name="checkFormat" value="DeclarationOrder"/> + </module> + <module name="SuppressionCommentFilter"> + <property name="offCommentFormat" value="CHECKSTYLE\: stop RedundantModifier"/> + <property name="onCommentFormat" value="CHECKSTYLE\: resume RedundantModifier"/> + <property name="checkFormat" value="RedundantModifier"/> + </module> + <module name="SuppressionCommentFilter"> + <property name="offCommentFormat" value="CHECKSTYLE\: stop all"/> + <property name="onCommentFormat" value="CHECKSTYLE\: resume all"/> + </module> +</module> + http://git-wip-us.apache.org/repos/asf/commons-statistics/blob/0efff4bf/src/main/resources/checkstyle/license-header.txt ---------------------------------------------------------------------- diff --git a/src/main/resources/checkstyle/license-header.txt b/src/main/resources/checkstyle/license-header.txt new file mode 100644 index 0000000..ae6f28c --- /dev/null +++ b/src/main/resources/checkstyle/license-header.txt @@ -0,0 +1,16 @@ +/* + * 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. + */ http://git-wip-us.apache.org/repos/asf/commons-statistics/blob/0efff4bf/src/main/resources/clirr/clirr-ignored.xml ---------------------------------------------------------------------- diff --git a/src/main/resources/clirr/clirr-ignored.xml b/src/main/resources/clirr/clirr-ignored.xml new file mode 100644 index 0000000..ed97259 --- /dev/null +++ b/src/main/resources/clirr/clirr-ignored.xml @@ -0,0 +1,21 @@ +<?xml version="1.0"?> +<!-- + 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. +--> + +<differences> + +</differences> http://git-wip-us.apache.org/repos/asf/commons-statistics/blob/0efff4bf/src/main/resources/findbugs/findbugs-exclude-filter.xml ---------------------------------------------------------------------- diff --git a/src/main/resources/findbugs/findbugs-exclude-filter.xml b/src/main/resources/findbugs/findbugs-exclude-filter.xml new file mode 100644 index 0000000..8a9c858 --- /dev/null +++ b/src/main/resources/findbugs/findbugs-exclude-filter.xml @@ -0,0 +1,28 @@ +<?xml version="1.0"?> +<!-- + 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. +--> + +<!-- + This file contains some false positive bugs detected by findbugs. Their + false positive nature has been analyzed individually and they have been + put here to instruct findbugs it must ignore them. +--> +<FindBugsFilter> + + <Class name="~.*\.jmh\.generated\..*" /> + +</FindBugsFilter> http://git-wip-us.apache.org/repos/asf/commons-statistics/blob/0efff4bf/src/main/resources/pmd/pmd-ruleset.xml ---------------------------------------------------------------------- diff --git a/src/main/resources/pmd/pmd-ruleset.xml b/src/main/resources/pmd/pmd-ruleset.xml new file mode 100644 index 0000000..0524d61 --- /dev/null +++ b/src/main/resources/pmd/pmd-ruleset.xml @@ -0,0 +1,57 @@ +<?xml version="1.0"?> +<!-- + 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. +--> +<ruleset name="commons-statistics-customized" + xmlns="http://pmd.sourceforge.net/ruleset/2.0.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://pmd.sourceforge.net/ruleset/2.0.0 http://pmd.sourceforge.net/ruleset_2_0_0.xsd"> + <description> + This ruleset checks the code for discouraged programming constructs. + </description> + + <rule ref="rulesets/java/basic.xml"/> + + <rule ref="rulesets/java/braces.xml"/> + + <rule ref="rulesets/java/comments.xml"> + <exclude name="CommentSize"/> + </rule> + <rule ref="rulesets/java/comments.xml/CommentSize"> + <properties> + <property name="maxLines" value="200"/> + <property name="maxLineLength" value="256"/> + </properties> + </rule> + + <rule ref="rulesets/java/empty.xml"/> + + <rule ref="rulesets/java/finalizers.xml"/> + + <rule ref="rulesets/java/imports.xml"/> + + <rule ref="rulesets/java/typeresolution.xml"/> + + <rule ref="rulesets/java/clone.xml"/> + + <rule ref="rulesets/java/unnecessary.xml"> + <!-- We do use extra parentheses there as most people do not recall operator precedence, + this means even if the parentheses are useless for the compiler, we don't consider + them useless for the developer. This is the reason why we disable this rule. --> + <exclude name="UselessParentheses"/> + </rule> + +</ruleset>
