Support groovy lint exclusions
makefiles/utils/include.mk
--------------------------
o Added helper method path-by-makefile.
o Derive a path relative to an active makefile.
makefiles/lint/groovy/include.mk
makefiles/lint/groovy/.groovylintrc.json
makefiles/lint/groovy/urls
----------------------------------------
o make lint-groovy: pass argument --config to npm-groovy-lint.
o Bulk filter subjective and personal-preference items to help
shrink logfile size until the warning volume is under control.
o https://github.com/nvuillam/npm-groovy-lint/blob/main/lib/.groovylintrc-recommended.json
[HOWTO: test]
% git clone onf-make
% cd onf-make
% make lint-groovy HIDE=
Display command line being launched (HIDE=@ cleared):
[...] npm-groovy-lint --config "...../onf-make/makefiles/lint/groovy/.groovylintrc.json"
Change-Id: I0f3bf3f7f949d7911c89e809f1702a1615418ea6
diff --git a/makefiles/lint/groovy/.groovylintrc.json b/makefiles/lint/groovy/.groovylintrc.json
new file mode 100644
index 0000000..3392108
--- /dev/null
+++ b/makefiles/lint/groovy/.groovylintrc.json
@@ -0,0 +1,46 @@
+{
+ "extends": "all",
+ "rules": {
+ "basic.DeadCode": "error",
+ "convention.CompileStatic": {
+ "severity": "info"
+ },
+ "convention.FieldTypeRequired": "info",
+ "convention.IfStatementCouldBeTernary": "info",
+ "convention.NoDef": "info",
+ "convention.TrailingComma": "off",
+ "convention.VariableTypeRequired": "info",
+ "dry.DuplicateListLiteral": "info",
+ "dry.DuplicateMapLiteral": "warning",
+ "dry.DuplicateNumberLiteral": {
+ "ignoreNumbers": [0, 1, 2, 3, -1],
+ "severity": "info"
+ },
+ "dry.DuplicateStringLiteral": "info",
+ "exceptions.ThrowException": "info",
+ "exceptions.ThrowNullPointerException": "info",
+ "exceptions.ThrowRuntimeException": "info",
+ "exceptions.ThrowThrowable": "info",
+ "formatting.BracesForClass": "info",
+ "formatting.BracesForForLoop": "info",
+ "formatting.BracesForIfElse": "off",
+ "formatting.BracesForMethod": "off",
+ "formatting.BracesForTryCatchFinally": "off",
+ "formatting.Indentation": {
+ "spacesPerIndentLevel": 4,
+ "severity": "info"
+ },
+ "formatting.SpaceAroundMapEntryColon": "off",
+ "groovyism.ExplicitCallToEqualsMethod": "info",
+ "logging.Println": "off",
+ "unused.UnusedArray": "error",
+ "unused.UnusedObject": "error",
+ "unused.UnusedPrivateField": "error",
+ "unused.UnusedPrivateMethod": "error",
+ "unused.UnusedPrivateMethodParameter": "error",
+ "unused.UnusedVariable": "error",
+ "unnecessary.UnnecessaryReturnKeyword": "off"
+ },
+ "see-also" : {
+ ".groovylintrc-recommended.json" : "https://github.com/nvuillam/npm-groovy-lint/blob/main/lib/.groovylintrc-recommended.json" }
+}