diff --git a/README.md b/README.md index e0c3067..9cdfee9 100644 --- a/README.md +++ b/README.md @@ -66,19 +66,11 @@ The level is now specified as a configuration parameter. See the example below. - - - - sevntu-maven - sevntu-maven - http://sevntu-checkstyle.github.io/sevntu.checkstyle/maven2 - - ```` ## All Checks -Rule|Level|Source|Enabled|Suppressable +Rule|Level|Source|Enabled|Suppressible ----|-----|------|-------|------------ [AbbreviationAsWordInName](#abbreviationaswordinname)|naming|checkstyle|Yes| [AbstractClassName](#abstractclassname)|naming|checkstyle|Yes| @@ -143,7 +135,7 @@ Rule|Level|Source|Enabled|Suppressable [ForbidInstantiation](#forbidinstantiation)|unspecified|sevntu|| [ForbidReturnInFinallyBlock](#forbidreturninfinallyblock)|complexity|sevntu|Yes| [ForbidThrowAnonymousExceptions](#forbidthrowanonymousexceptions)|tweaks|sevntu|| -[ForbidWildcardAsReturnType](#forbidwildcardasreturntype)|complexity|sevntu|| +[ForbidWildcardAsReturnType](#forbidwildcardasreturntype)|complexity|sevntu|Yes| [GenericWhitespace](#genericwhitespace)|layout|checkstyle|Yes| [Header](#header)|layout|checkstyle|Yes| [HiddenField](#hiddenfield)|tweaks|checkstyle|Yes| @@ -2264,32 +2256,13 @@ Checks that when an exception is caught, that if it is logged then it is not als Accepts `java.util.logging.Logger` and `org.slf4j.Logger`. #### [EnumValueName](http://sevntu-checkstyle.github.io/sevntu.checkstyle/apidocs/com/github/sevntu/checkstyle/checks/naming/EnumValueNameCheck.html) -Enums are considered to be of two distinct types: 'Class' or 'Value' enumerations. The distinction being that Class Enumerations have methods (other than `toString()`) defined. - -The values defined in the `enum` must match the appropriate pattern: - -* Class: `^[A-Z][a-zA-Z0-9]*$` -* Value: `^[A-Z][A-Z0-9]*(_[A-Z0-9]+)*$` - -The difference being that Class enumerations can't contain underscores but can include lowercase letters (after the first initial capital). Value enumerations can include underscores, but not as the first or second character. +Checks that Enum Values match the pattern: `^[A-Z][A-Z0-9]*(_[A-Z0-9]+)*$` Valid: ```` -enum ValidConstants { +enum Valid { - ALPHA, BETA; -} - -enum ValidClassLike { - - Alpha("a"), - Beta("b"); - - private String name; - - ValidClassLike(String name) { - this.name = name; - } + ALPHA, BETA, GAMMA_RAY; } ```` @@ -2297,19 +2270,7 @@ Invalid: ```` enum InvalidConstants { - alpha, Beta, GAMMA_RAY; -} - -enum InvalidClassLike { - - alpha("a"), - beta("b"); - - private String name; - - InvalidClassLike(String name) { - this.name = name; - } + alpha, Beta; } ```` #### [ForbidCCommentsInMethods](http://sevntu-checkstyle.github.io/sevntu.checkstyle/apidocs/com/github/sevntu/checkstyle/checks/coding/ForbidCCommentsInMethodsCheck.html) @@ -2343,6 +2304,19 @@ try { return true; // invalid } ```` +#### [ForbidWildcardAsReturnType](http://sevntu-checkstyle.github.io/sevntu.checkstyle/apidocs/com/github/sevntu/checkstyle/checks/design/ForbidWildcardAsReturnTypeCheck.html) + +Prevents declaring a method from returning a wildcard type as its return value. + +Valid: +```` + List getList() {} +```` + +Invalid: +```` + List getList() {} +```` #### [LogicConditionNeedOptimization](http://sevntu-checkstyle.github.io/sevntu.checkstyle/apidocs/com/github/sevntu/checkstyle/checks/coding/LogicConditionNeedOptimizationCheck.html) Prevent the placement of variables or fields after methods in an expression. @@ -2703,9 +2677,6 @@ Generic rule; doesn't embody a 'quality' check. #### [ForbidThrowAnonymousExceptions](http://sevntu-checkstyle.github.io/sevntu.checkstyle/apidocs/com/github/sevntu/checkstyle/checks/coding/ForbidThrowAnonymousExceptionsCheck.html) [IllegalThrows](#illegalthrows) performs a similar check. -#### [ForbidWildcardAsReturnType](http://sevntu-checkstyle.github.io/sevntu.checkstyle/apidocs/com/github/sevntu/checkstyle/checks/design/ForbidWildcardAsReturnTypeCheck.html) - -Causes `NullPointerException` when used with `@Value.Immutables` from `org.immutables:value` #### [RequiredParameterForAnnotation](http://sevntu-checkstyle.github.io/sevntu.checkstyle/apidocs/com/github/sevntu/checkstyle/checks/annotation/RequiredParameterForAnnotationCheck.html) Generic rule; doesn't embody a 'quality' check. diff --git a/builder/src/main/resources/README-template.md b/builder/src/main/resources/README-template.md index 93250af..a6f9614 100644 --- a/builder/src/main/resources/README-template.md +++ b/builder/src/main/resources/README-template.md @@ -66,19 +66,11 @@ The level is now specified as a configuration parameter. See the example below. - - - - sevntu-maven - sevntu-maven - http://sevntu-checkstyle.github.io/sevntu.checkstyle/maven2 - - ```` ## All Checks -Rule|Level|Source|Enabled|Suppressable +Rule|Level|Source|Enabled|Suppressible ----|-----|------|-------|------------ %s diff --git a/builder/src/main/resources/application.yml b/builder/src/main/resources/application.yml index 3380f3a..7519e16 100644 --- a/builder/src/main/resources/application.yml +++ b/builder/src/main/resources/application.yml @@ -1056,10 +1056,9 @@ rules: name: ForbidWildcardAsReturnType parent: TREEWALKER level: COMPLEXITY - enabled: false + enabled: true source: SEVNTU uri: http://sevntu-checkstyle.github.io/sevntu.checkstyle/apidocs/com/github/sevntu/checkstyle/checks/design/ForbidWildcardAsReturnTypeCheck.html - reason: Causes `NullPointerException` when used with `@Value.Immutables` from `org.immutables:value` - name: LogicConditionNeedOptimization parent: TREEWALKER diff --git a/builder/src/main/resources/rules/EnumValueName.md b/builder/src/main/resources/rules/EnumValueName.md index c389ed7..07e93b2 100644 --- a/builder/src/main/resources/rules/EnumValueName.md +++ b/builder/src/main/resources/rules/EnumValueName.md @@ -1,30 +1,11 @@ -Enums are considered to be of two distinct types: 'Class' or 'Value' enumerations. The distinction being that Class Enumerations have methods (other than `toString()`) defined. - -The values defined in the `enum` must match the appropriate pattern: - -* Class: `^[A-Z][a-zA-Z0-9]*$` -* Value: `^[A-Z][A-Z0-9]*(_[A-Z0-9]+)*$` - -The difference being that Class enumerations can't contain underscores but can include lowercase letters (after the first initial capital). Value enumerations can include underscores, but not as the first or second character. +Checks that Enum Values match the pattern: `^[A-Z][A-Z0-9]*(_[A-Z0-9]+)*$` Valid: ```` -enum ValidConstants { +enum Valid { - ALPHA, BETA; -} - -enum ValidClassLike { - - Alpha("a"), - Beta("b"); - - private String name; - - ValidClassLike(String name) { - this.name = name; - } + ALPHA, BETA, GAMMA_RAY; } ```` @@ -32,18 +13,6 @@ Invalid: ```` enum InvalidConstants { - alpha, Beta, GAMMA_RAY; -} - -enum InvalidClassLike { - - alpha("a"), - beta("b"); - - private String name; - - InvalidClassLike(String name) { - this.name = name; - } + alpha, Beta; } ```` diff --git a/plugin/pom.xml b/plugin/pom.xml index 270b3fd..db90e76 100644 --- a/plugin/pom.xml +++ b/plugin/pom.xml @@ -151,11 +151,4 @@ - - - sevntu-maven - sevntu-maven - http://sevntu-checkstyle.github.io/sevntu.checkstyle/maven2 - - diff --git a/plugin/src/main/java/net/kemitix/checkstyle/ruleset/plugin/DefaultCheckstyleExecutor.java b/plugin/src/main/java/net/kemitix/checkstyle/ruleset/plugin/DefaultCheckstyleExecutor.java index 24d8e7d..68f03c6 100644 --- a/plugin/src/main/java/net/kemitix/checkstyle/ruleset/plugin/DefaultCheckstyleExecutor.java +++ b/plugin/src/main/java/net/kemitix/checkstyle/ruleset/plugin/DefaultCheckstyleExecutor.java @@ -60,7 +60,7 @@ public class DefaultCheckstyleExecutor implements CheckstyleExecutor { private static final String CHECKSTYLE_ARTIFACTID = "checkstyle"; - private static final String SEVNTU_GROUPID = "com.github.sevntu.checkstyle"; + private static final String SEVNTU_GROUPID = "com.github.sevntu-checkstyle"; private static final String SEVNTU_ARTIFACTID = "sevntu-checkstyle-maven-plugin"; diff --git a/pom.xml b/pom.xml index ea9865f..f5c9d8f 100644 --- a/pom.xml +++ b/pom.xml @@ -21,8 +21,8 @@ 2.8.2 2.17 - 1.23.1 7.7 + 1.24.0 1.10.19 3.8.0 diff --git a/ruleset/src/main/resources/net/kemitix/checkstyle-5-complexity.xml b/ruleset/src/main/resources/net/kemitix/checkstyle-5-complexity.xml index 8c9c3fa..b258137 100644 --- a/ruleset/src/main/resources/net/kemitix/checkstyle-5-complexity.xml +++ b/ruleset/src/main/resources/net/kemitix/checkstyle-5-complexity.xml @@ -210,6 +210,7 @@ +