documenter args setup fixed #520
pmd.yml
on: push
PMD Static Code Analysis
41s
Annotations
11 errors and 13 warnings
Logger calls should be surrounded by log level guards.:
file:///home/runner/work/zingg/zingg/common/client/src/main/java/zingg/common/client/ArgumentsUtil.java#L65
Whenever using a log level, one should check if it is actually enabled, or
otherwise skip the associate String creation and manipulation, as well as any method calls.
An alternative to checking the log level are substituting parameters, formatters or lazy logging
with lambdas. The available alternatives depend on the actual logging framework.
GuardLogStatement (Priority: 2, Ruleset: Best Practices)
https://docs.pmd-code.org/pmd-doc-7.7.0/pmd_rules_java_bestpractices.html#guardlogstatement
|
Logger calls should be surrounded by log level guards.:
file:///home/runner/work/zingg/zingg/common/client/src/main/java/zingg/common/client/ArgumentsUtil.java#L71
Whenever using a log level, one should check if it is actually enabled, or
otherwise skip the associate String creation and manipulation, as well as any method calls.
An alternative to checking the log level are substituting parameters, formatters or lazy logging
with lambdas. The available alternatives depend on the actual logging framework.
GuardLogStatement (Priority: 2, Ruleset: Best Practices)
https://docs.pmd-code.org/pmd-doc-7.7.0/pmd_rules_java_bestpractices.html#guardlogstatement
|
Logger calls should be surrounded by log level guards.:
file:///home/runner/work/zingg/zingg/common/client/src/main/java/zingg/common/client/ArgumentsUtil.java#L96
Whenever using a log level, one should check if it is actually enabled, or
otherwise skip the associate String creation and manipulation, as well as any method calls.
An alternative to checking the log level are substituting parameters, formatters or lazy logging
with lambdas. The available alternatives depend on the actual logging framework.
GuardLogStatement (Priority: 2, Ruleset: Best Practices)
https://docs.pmd-code.org/pmd-doc-7.7.0/pmd_rules_java_bestpractices.html#guardlogstatement
|
Logger calls should be surrounded by log level guards.:
file:///home/runner/work/zingg/zingg/common/client/src/main/java/zingg/common/client/ArgumentsUtil.java#L125
Whenever using a log level, one should check if it is actually enabled, or
otherwise skip the associate String creation and manipulation, as well as any method calls.
An alternative to checking the log level are substituting parameters, formatters or lazy logging
with lambdas. The available alternatives depend on the actual logging framework.
GuardLogStatement (Priority: 2, Ruleset: Best Practices)
https://docs.pmd-code.org/pmd-doc-7.7.0/pmd_rules_java_bestpractices.html#guardlogstatement
|
Logger calls should be surrounded by log level guards.:
file:///home/runner/work/zingg/zingg/common/client/src/main/java/zingg/common/client/ArgumentsUtil.java#L138
Whenever using a log level, one should check if it is actually enabled, or
otherwise skip the associate String creation and manipulation, as well as any method calls.
An alternative to checking the log level are substituting parameters, formatters or lazy logging
with lambdas. The available alternatives depend on the actual logging framework.
GuardLogStatement (Priority: 2, Ruleset: Best Practices)
https://docs.pmd-code.org/pmd-doc-7.7.0/pmd_rules_java_bestpractices.html#guardlogstatement
|
Logger calls should be surrounded by log level guards.:
file:///home/runner/work/zingg/zingg/common/client/src/main/java/zingg/common/client/ArgumentsUtil.java#L166
Whenever using a log level, one should check if it is actually enabled, or
otherwise skip the associate String creation and manipulation, as well as any method calls.
An alternative to checking the log level are substituting parameters, formatters or lazy logging
with lambdas. The available alternatives depend on the actual logging framework.
GuardLogStatement (Priority: 2, Ruleset: Best Practices)
https://docs.pmd-code.org/pmd-doc-7.7.0/pmd_rules_java_bestpractices.html#guardlogstatement
|
Logger calls should be surrounded by log level guards.:
file:///home/runner/work/zingg/zingg/common/client/src/main/java/zingg/common/client/Client.java#L78
Whenever using a log level, one should check if it is actually enabled, or
otherwise skip the associate String creation and manipulation, as well as any method calls.
An alternative to checking the log level are substituting parameters, formatters or lazy logging
with lambdas. The available alternatives depend on the actual logging framework.
GuardLogStatement (Priority: 2, Ruleset: Best Practices)
https://docs.pmd-code.org/pmd-doc-7.7.0/pmd_rules_java_bestpractices.html#guardlogstatement
|
Logger calls should be surrounded by log level guards.:
file:///home/runner/work/zingg/zingg/common/client/src/main/java/zingg/common/client/Client.java#L84
Whenever using a log level, one should check if it is actually enabled, or
otherwise skip the associate String creation and manipulation, as well as any method calls.
An alternative to checking the log level are substituting parameters, formatters or lazy logging
with lambdas. The available alternatives depend on the actual logging framework.
GuardLogStatement (Priority: 2, Ruleset: Best Practices)
https://docs.pmd-code.org/pmd-doc-7.7.0/pmd_rules_java_bestpractices.html#guardlogstatement
|
Logger calls should be surrounded by log level guards.:
file:///home/runner/work/zingg/zingg/common/client/src/main/java/zingg/common/client/Client.java#L152
Whenever using a log level, one should check if it is actually enabled, or
otherwise skip the associate String creation and manipulation, as well as any method calls.
An alternative to checking the log level are substituting parameters, formatters or lazy logging
with lambdas. The available alternatives depend on the actual logging framework.
GuardLogStatement (Priority: 2, Ruleset: Best Practices)
https://docs.pmd-code.org/pmd-doc-7.7.0/pmd_rules_java_bestpractices.html#guardlogstatement
|
Logger calls should be surrounded by log level guards.:
file:///home/runner/work/zingg/zingg/common/client/src/main/java/zingg/common/client/Client.java#L157
Whenever using a log level, one should check if it is actually enabled, or
otherwise skip the associate String creation and manipulation, as well as any method calls.
An alternative to checking the log level are substituting parameters, formatters or lazy logging
with lambdas. The available alternatives depend on the actual logging framework.
GuardLogStatement (Priority: 2, Ruleset: Best Practices)
https://docs.pmd-code.org/pmd-doc-7.7.0/pmd_rules_java_bestpractices.html#guardlogstatement
|
PMD Static Code Analysis
This version of the CodeQL Action was deprecated on January 18th, 2023, and is no longer updated or supported. For better performance, improved security, and new features, upgrade to v2. For more information, see https://github.blog/changelog/2023-01-18-code-scanning-codeql-action-v1-is-now-deprecated/
|
PMD Static Code Analysis
The following actions uses node12 which is deprecated and will be forced to run on node16: github/codeql-action/upload-sarif@v1. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/
|
PMD Static Code Analysis
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v3, actions/setup-java@v3, pmd/pmd-github-action@v1, github/codeql-action/upload-sarif@v1. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
|
Logger should be defined private static final and have the correct class:
file:///home/runner/work/zingg/zingg/common/client/src/main/java/zingg/common/client/Arguments.java#L107
A logger should normally be defined private static final and be associated with the correct class.
`private final Log log;` is also allowed for rare cases where loggers need to be passed around,
with the restriction that the logger needs to be passed into the constructor.
ProperLogger (Priority: 3, Ruleset: Error Prone)
https://docs.pmd-code.org/pmd-doc-7.7.0/pmd_rules_java_errorprone.html#properlogger
|
Avoid unnecessary constructors - the compiler will generate these for you:
file:///home/runner/work/zingg/zingg/common/client/src/main/java/zingg/common/client/Arguments.java#L112
This rule detects when a constructor is not necessary; i.e., when there is only one constructor and the
constructor is identical to the default constructor. The default constructor should has same access
modifier as the declaring class. In an enum type, the default constructor is implicitly private.
UnnecessaryConstructor (Priority: 3, Ruleset: Code Style)
https://docs.pmd-code.org/pmd-doc-7.7.0/pmd_rules_java_codestyle.html#unnecessaryconstructor
|
Document empty constructor:
file:///home/runner/work/zingg/zingg/common/client/src/main/java/zingg/common/client/Arguments.java#L112
Uncommented Empty Constructor finds instances where a constructor does not
contain statements, but there is no comment. By explicitly commenting empty
constructors it is easier to distinguish between intentional (commented)
and unintentional empty constructors.
UncommentedEmptyConstructor (Priority: 3, Ruleset: Documentation)
https://docs.pmd-code.org/pmd-doc-7.7.0/pmd_rules_java_documentation.html#uncommentedemptyconstructor
|
This statement should have braces:
file:///home/runner/work/zingg/zingg/common/client/src/main/java/zingg/common/client/Arguments.java#L123
Enforce a policy for braces on control statements. It is recommended to use braces on 'if ... else'
statements and loop statements, even if they are optional. This usually makes the code clearer, and
helps prepare the future when you need to add another statement. That said, this rule lets you control
which statements are required to have braces via properties.
From 6.2.0 on, this rule supersedes WhileLoopMustUseBraces, ForLoopMustUseBraces, IfStmtMustUseBraces,
and IfElseStmtMustUseBraces.
ControlStatementBraces (Priority: 3, Ruleset: Code Style)
https://docs.pmd-code.org/pmd-doc-7.7.0/pmd_rules_java_codestyle.html#controlstatementbraces
|
This statement should have braces:
file:///home/runner/work/zingg/zingg/common/client/src/main/java/zingg/common/client/Arguments.java#L155
Enforce a policy for braces on control statements. It is recommended to use braces on 'if ... else'
statements and loop statements, even if they are optional. This usually makes the code clearer, and
helps prepare the future when you need to add another statement. That said, this rule lets you control
which statements are required to have braces via properties.
From 6.2.0 on, this rule supersedes WhileLoopMustUseBraces, ForLoopMustUseBraces, IfStmtMustUseBraces,
and IfElseStmtMustUseBraces.
ControlStatementBraces (Priority: 3, Ruleset: Code Style)
https://docs.pmd-code.org/pmd-doc-7.7.0/pmd_rules_java_codestyle.html#controlstatementbraces
|
This statement should have braces:
file:///home/runner/work/zingg/zingg/common/client/src/main/java/zingg/common/client/Arguments.java#L291
Enforce a policy for braces on control statements. It is recommended to use braces on 'if ... else'
statements and loop statements, even if they are optional. This usually makes the code clearer, and
helps prepare the future when you need to add another statement. That said, this rule lets you control
which statements are required to have braces via properties.
From 6.2.0 on, this rule supersedes WhileLoopMustUseBraces, ForLoopMustUseBraces, IfStmtMustUseBraces,
and IfElseStmtMustUseBraces.
ControlStatementBraces (Priority: 3, Ruleset: Code Style)
https://docs.pmd-code.org/pmd-doc-7.7.0/pmd_rules_java_codestyle.html#controlstatementbraces
|
Logger should be defined private static final and have the correct class:
file:///home/runner/work/zingg/zingg/common/client/src/main/java/zingg/common/client/ArgumentsUtil.java#L27
A logger should normally be defined private static final and be associated with the correct class.
`private final Log log;` is also allowed for rare cases where loggers need to be passed around,
with the restriction that the logger needs to be passed into the constructor.
ProperLogger (Priority: 3, Ruleset: Error Prone)
https://docs.pmd-code.org/pmd-doc-7.7.0/pmd_rules_java_errorprone.html#properlogger
|
Thrown exception does not preserve the stack trace of exception 'e' on all code paths:
file:///home/runner/work/zingg/zingg/common/client/src/main/java/zingg/common/client/ArgumentsUtil.java#L130
Reports exceptions that are thrown from within a catch block, yet don't refer to the
exception parameter declared by that catch block. The stack trace of the original
exception could be lost, which makes the thrown exception less informative.
To preserve the stack trace, the original exception may be used as the cause of
the new exception, using `Throwable#initCause`, or passed as a constructor argument
to the new exception. It may also be preserved using `Throwable#addSuppressed`.
The rule actually assumes that any method or constructor that takes the original
exception as argument preserves the original stack trace.
The rule allows `InvocationTargetException` and `PrivilegedActionException` to be
replaced by their cause exception. The discarded part of the stack trace is in those
cases only JDK-internal code, which is not very useful. The rule also ignores exceptions
whose name starts with `ignored`.
PreserveStackTrace (Priority: 3, Ruleset: Best Practices)
https://docs.pmd-code.org/pmd-doc-7.7.0/pmd_rules_java_bestpractices.html#preservestacktrace
|
Consider simply returning the value vs storing it in local variable 'args':
file:///home/runner/work/zingg/zingg/common/client/src/main/java/zingg/common/client/ArgumentsUtil.java#L143
Avoid the creation of unnecessary local variables
UnnecessaryLocalBeforeReturn (Priority: 3, Ruleset: Code Style)
https://docs.pmd-code.org/pmd-doc-7.7.0/pmd_rules_java_codestyle.html#unnecessarylocalbeforereturn
|
Thrown exception does not preserve the stack trace of exception 'e' on all code paths:
file:///home/runner/work/zingg/zingg/common/client/src/main/java/zingg/common/client/ArgumentsUtil.java#L147
Reports exceptions that are thrown from within a catch block, yet don't refer to the
exception parameter declared by that catch block. The stack trace of the original
exception could be lost, which makes the thrown exception less informative.
To preserve the stack trace, the original exception may be used as the cause of
the new exception, using `Throwable#initCause`, or passed as a constructor argument
to the new exception. It may also be preserved using `Throwable#addSuppressed`.
The rule actually assumes that any method or constructor that takes the original
exception as argument preserves the original stack trace.
The rule allows `InvocationTargetException` and `PrivilegedActionException` to be
replaced by their cause exception. The discarded part of the stack trace is in those
cases only JDK-internal code, which is not very useful. The rule also ignores exceptions
whose name starts with `ignored`.
PreserveStackTrace (Priority: 3, Ruleset: Best Practices)
https://docs.pmd-code.org/pmd-doc-7.7.0/pmd_rules_java_bestpractices.html#preservestacktrace
|
Deprecation notice: v1, v2, and v3 of the artifact actions
The following artifacts were uploaded using a version of actions/upload-artifact that is scheduled for deprecation: "PMD Report".
Please update your workflow to use v4 of the artifact actions.
Learn more: https://github.blog/changelog/2024-04-16-deprecation-notice-v3-of-the-artifact-actions/
|
Artifacts
Produced during runtime
Name | Size | |
---|---|---|
PMD Report
|
982 KB |
|