This is an automated email from the ASF dual-hosted git repository. cstamas pushed a commit to branch maven-3.9.x in repository https://gitbox.apache.org/repos/asf/maven.git
The following commit(s) were added to refs/heads/maven-3.9.x by this push: new 8cc6b2710 [MNG-7799] Plugin validation may falsely report there are issues (#1136) 8cc6b2710 is described below commit 8cc6b2710ddd71237bdfd951fb3ba18b2fedde48 Author: Tamas Cservenak <ta...@cservenak.net> AuthorDate: Thu Jun 1 19:00:06 2023 +0200 [MNG-7799] Plugin validation may falsely report there are issues (#1136) But to show no issue, as locality to be shown is not same as reported issues. --- https://issues.apache.org/jira/browse/MNG-7799 --- .../internal/DefaultPluginValidationManager.java | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultPluginValidationManager.java b/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultPluginValidationManager.java index 17423b6f6..bf4122fa2 100644 --- a/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultPluginValidationManager.java +++ b/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultPluginValidationManager.java @@ -161,12 +161,11 @@ public final class DefaultPluginValidationManager extends AbstractEventSpy imple return; // we were asked to not report anything OR reporting already happened inline } ConcurrentHashMap<String, PluginValidationIssues> issuesMap = pluginIssues(mavenSession.getRepositorySession()); - if (!issuesMap.isEmpty()) { - - EnumSet<IssueLocality> issueLocalitiesToReport = validationReportLevel == ValidationReportLevel.VERBOSE - ? EnumSet.allOf(IssueLocality.class) - : EnumSet.of(IssueLocality.INTERNAL); + EnumSet<IssueLocality> issueLocalitiesToReport = validationReportLevel == ValidationReportLevel.VERBOSE + ? EnumSet.allOf(IssueLocality.class) + : EnumSet.of(IssueLocality.INTERNAL); + if (hasAnythingToReport(issuesMap, issueLocalitiesToReport)) { logger.warn(""); logger.warn("Plugin {} validation issues were detected in following plugin(s)", issueLocalitiesToReport); logger.warn(""); @@ -227,6 +226,16 @@ public final class DefaultPluginValidationManager extends AbstractEventSpy imple } } + private boolean hasAnythingToReport( + Map<String, PluginValidationIssues> issuesMap, EnumSet<IssueLocality> issueLocalitiesToReport) { + for (PluginValidationIssues issues : issuesMap.values()) { + if (hasAnythingToReport(issues, issueLocalitiesToReport)) { + return true; + } + } + return false; + } + private boolean hasAnythingToReport(PluginValidationIssues issues, EnumSet<IssueLocality> issueLocalitiesToReport) { for (IssueLocality issueLocality : issueLocalitiesToReport) { Set<String> pluginIssues = issues.pluginIssues.get(issueLocality);