forked from adoptium/temurin-build
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Cleanup excessive linter checks (adoptium#2609)
* Cleanup excessive linter checks Commiters have identified that the super linter checks are excessively strict, so this pr attempts to summarise and eliminate checks that appear non-blocking to the Adoptium community Signed-off-by: Morgan Davies <[email protected]> * Disable rules for build template * They're mostly to do with how the build template is lain out which doesn't matter as values get replaced when it is executed Signed-off-by: Morgan Davies <[email protected]> * Cleanup of markdown files A lot of these are simple changes but the rules that were flagged are valid issues imo (the only one not being so is MD029 which is handled automatically by github so there is no need to enforce it) Signed-off-by: Morgan Davies <[email protected]> * Disable shellcheck on build template This file is modified by build.sh so it shouldn't really be linted Signed-off-by: Morgan Davies <[email protected]> * Linter regex exclude pointing to wrong location * Add lang tag to Azure Readme * Add initial checkstyle java linter config * This allows us to exclude and configure linter rules * Add jscpd config * This is warning us about code clones in the test files which are not actually clones as they implement different parameters Signed-off-by: Morgan Davies <[email protected]> * Disable the more strict java rules * Common standards are to include a comment on why they have been disabled Signed-off-by: Morgan Davies <[email protected]> * Commenting the rules out didn't work, try disabling them using the xml class * Java config file should have underscore * Expand jscpd to cover backward paths too * Use a suppression config file * Missing doctype declaration and correct format * Add filepaths * Move suppression filter out of treewalker * Cleanup reamaining shell errors * Ignore tab warnings * Tabs and spaces generally do the same thing Signed-off-by: Morgan Davies <[email protected]> * Fix CudaEnabled & FeatureTest lint issues * Fix JdkPlatform & StreamUtils lint jobs * Missing periods and final keyword * Disable perl linting for now * Spawned an issue to address seperatly * Revert enable of VALIDATE_ALL_CODEBASE * Delete java-tool * Hasn't been touched in 3 years * Generating lots of errors
- Loading branch information
Morgan Davies
authored
May 5, 2021
1 parent
aa9ac3c
commit 0d358c4
Showing
21 changed files
with
374 additions
and
1,432 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
{ | ||
"threshold": 0, | ||
"reporters": [ | ||
"consoleFull" | ||
], | ||
"ignore": [ | ||
"**/__snapshots__/**", | ||
"**/test/**" | ||
], | ||
"absolute": true | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,186 @@ | ||
<?xml version="1.0"?> | ||
<!DOCTYPE module PUBLIC | ||
"-//Checkstyle//DTD Checkstyle Configuration 1.3//EN" | ||
"https://checkstyle.org/dtds/configuration_1_3.dtd"> | ||
|
||
<!-- | ||
Checkstyle configuration that checks the sun coding conventions from: | ||
- 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 | ||
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 | ||
https://checkstyle.org/config.html#Checker | ||
<property name="basedir" value="${basedir}"/> | ||
--> | ||
<property name="severity" value="error"/> | ||
|
||
<property name="fileExtensions" value="java, properties, xml"/> | ||
|
||
<!-- Excludes all 'module-info.java' files --> | ||
<!-- See https://checkstyle.org/config_filefilters.html --> | ||
<module name="BeforeExecutionExclusionFileFilter"> | ||
<property name="fileNamePattern" value="module\-info\.java$"/> | ||
</module> | ||
|
||
<!-- https://checkstyle.org/config_filters.html#SuppressionFilter --> | ||
<module name="SuppressionFilter"> | ||
<property name="file" value="${org.checkstyle.sun.suppressionfilter.config}" default="checkstyle-suppressions.xml" /> | ||
<property name="optional" value="true"/> | ||
</module> | ||
|
||
<!-- Checks that a package-info.java file exists for each package. --> | ||
<!-- See https://checkstyle.org/config_javadoc.html#JavadocPackage --> | ||
<module name="JavadocPackage"/> | ||
|
||
<!-- Checks whether files end with a new line. --> | ||
<!-- See https://checkstyle.org/config_misc.html#NewlineAtEndOfFile --> | ||
<module name="NewlineAtEndOfFile"/> | ||
|
||
<!-- Checks that property files contain the same keys. --> | ||
<!-- See https://checkstyle.org/config_misc.html#Translation --> | ||
<module name="Translation"/> | ||
|
||
<!-- Miscellaneous other checks. --> | ||
<!-- See https://checkstyle.org/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> | ||
|
||
<!-- Enables @SuppressWarnings Support --> | ||
<module name="SuppressWarningsFilter"/> | ||
|
||
<!-- Suppress checks with config file --> | ||
<module name="SuppressionFilter"> | ||
<property name="file" value=".github/linters/suppressed-java.xml"/> | ||
</module> | ||
|
||
<module name="TreeWalker"> | ||
|
||
<!-- Checks for Javadoc comments. --> | ||
<!-- See https://checkstyle.org/config_javadoc.html --> | ||
<module name="InvalidJavadocPosition"/> | ||
<module name="JavadocMethod"/> | ||
<module name="JavadocType"/> | ||
<module name="JavadocStyle"/> | ||
<module name="MissingJavadocMethod"/> | ||
<!-- Enables @SuppressWarnings Support --> | ||
<module name="SuppressWarningsHolder"/> | ||
|
||
<!-- Checks for Naming Conventions. --> | ||
<!-- See https://checkstyle.org/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 https://checkstyle.org/config_imports.html --> | ||
<module name="AvoidStarImport"/> | ||
<module name="IllegalImport"/> | ||
<!-- defaults to sun.* packages --> | ||
<module name="RedundantImport"/> | ||
<module name="UnusedImports"> | ||
<property name="processJavadoc" value="false"/> | ||
</module> | ||
|
||
<!-- Checks for Size Violations. --> | ||
<!-- See https://checkstyle.org/config_sizes.html --> | ||
<module name="MethodLength"/> | ||
<module name="ParameterNumber"/> | ||
|
||
<!-- Checks for whitespace --> | ||
<!-- See https://checkstyle.org/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 https://checkstyle.org/config_modifiers.html --> | ||
<module name="ModifierOrder"/> | ||
<module name="RedundantModifier"/> | ||
|
||
<!-- Checks for blocks. You know, those {}'s --> | ||
<!-- See https://checkstyle.org/config_blocks.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/config_coding.html --> | ||
<module name="EmptyStatement"/> | ||
<module name="EqualsHashCode"/> | ||
<module name="HiddenField"/> | ||
<module name="IllegalInstantiation"/> | ||
<module name="InnerAssignment"/> | ||
<module name="MissingSwitchDefault"/> | ||
<module name="MultipleVariableDeclarations"/> | ||
<module name="SimplifyBooleanExpression"/> | ||
<module name="SimplifyBooleanReturn"/> | ||
|
||
<!-- Checks for class design --> | ||
<!-- See https://checkstyle.org/config_design.html --> | ||
<module name="DesignForExtension"/> | ||
<module name="FinalClass"/> | ||
<module name="HideUtilityClassConstructor"/> | ||
<module name="InterfaceIsType"/> | ||
<module name="VisibilityModifier"/> | ||
|
||
<!-- Miscellaneous other checks. --> | ||
<!-- See https://checkstyle.org/config_misc.html --> | ||
<module name="ArrayTypeStyle"/> | ||
<module name="FinalParameters"/> | ||
<module name="UpperEll"/> | ||
|
||
<!-- https://checkstyle.org/config_filters.html#SuppressionXpathFilter --> | ||
<module name="SuppressionXpathFilter"> | ||
<property name="file" value="${org.checkstyle.sun.suppressionxpathfilter.config}" default="checkstyle-xpath-suppressions.xml" /> | ||
<property name="optional" value="true"/> | ||
</module> | ||
|
||
</module> | ||
|
||
</module> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
<?xml version="1.0"?> | ||
|
||
<!DOCTYPE suppressions PUBLIC | ||
"-//Checkstyle//DTD SuppressionFilter Configuration 1.2//EN" | ||
"https://checkstyle.org/dtds/suppressions_1_2.dtd" | ||
> | ||
|
||
<suppressions> | ||
<suppress files="." checks="MagicNumber" /> <!-- Disabled because magic numbers are not generally abused and are more useful being allowed --> | ||
<suppress files="." checks="TodoComment" /> <!-- We shouldn't have to be reminded about todo's on every linter iteration, we have IDE"s that do that! --> | ||
<suppress files="." checks="JavadocVariable" /> <!-- Disabled as we don't need comments on every single new variable --> | ||
<suppress files="." checks="FileLength" /> <!-- These two are disabled as we don't care if line or file size is too big --> | ||
<suppress files="." checks="LineLength" /> | ||
<suppress files="." checks="Header" /> <!-- Disabled as we don't use headers in our project for the test files --> | ||
<suppress files="." checks="FileTabCharacter" /> <!-- Disabled as it generally doesn't matter if tabs are disabled or not --> | ||
</suppressions> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.