[jira] [Updated] (SUREFIRE-2199) [WARNING] * org.apache.maven.plugins:maven-surefire-report-plugin:3.1.2

2023-10-07 Thread Eric Kolotyluk (Jira)


 [ 
https://issues.apache.org/jira/browse/SUREFIRE-2199?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Kolotyluk updated SUREFIRE-2199:
-
Description: 
When running {{mvn clean site -Dmaven.plugin.validation=VERBOSE}} I get

{{[WARNING]  * org.apache.maven.plugins:maven-surefire-report-plugin:3.1.2}}
{{[WARNING]   Declared at location(s):}}
{{[WARNING]    * unknown}}
{{[WARNING]   Mojo EXTERNAL issue(s):}}
{{[WARNING]    * Mojo surefire-report:failsafe-report-only 
(org.apache.maven.plugins.surefire.report.FailsafeReportMojo)}}
{{[WARNING]      - Parameter 'localRepository' uses deprecated parameter 
expression '${localRepository}': ArtifactRepository type is deprecated and its 
use in Mojos should be avoided.}}
{{[WARNING]    * Mojo surefire-report:report 
(org.apache.maven.plugins.surefire.report.SurefireReportMojo)}}
{{[WARNING]      - Parameter 'localRepository' uses deprecated parameter 
expression '${localRepository}': ArtifactRepository type is deprecated and its 
use in Mojos should be avoided.}}
{{[WARNING]    * Mojo surefire-report:report-only 
(org.apache.maven.plugins.surefire.report.SurefireReportOnlyMojo)}}
{{[WARNING]      - Parameter 'localRepository' uses deprecated parameter 
expression '${localRepository}': ArtifactRepository type is deprecated and its 
use in Mojos should be avoided.}}
[WARNING]

_*I wish I could eliminate all warnings in my projects, but it's not always 
easy or possible.*_ ;)

My context is

{{$ mvn -version}}
{{Apache Maven 3.9.5 (57804ffe001d7215b5e7bcb531cf83df38f93546)}}
{{Maven home: C:\Program Files (Open)\Apache\apache-maven-3.9.5}}
{{Java version: 21, vendor: Oracle Corporation, runtime: C:\Program 
Files\java\jdk-21}}
{{Default locale: en_CA, platform encoding: UTF-8}}
{{OS name: "windows 10", version: "10.0", arch: "amd64", family: "windows"}}

 

> [WARNING]  * org.apache.maven.plugins:maven-surefire-report-plugin:3.1.2
> 
>
> Key: SUREFIRE-2199
> URL: https://issues.apache.org/jira/browse/SUREFIRE-2199
> Project: Maven Surefire
>  Issue Type: Wish
>Affects Versions: 3.1.2
>Reporter: Eric Kolotyluk
>Priority: Minor
>
> When running {{mvn clean site -Dmaven.plugin.validation=VERBOSE}} I get
> {{[WARNING]  * org.apache.maven.plugins:maven-surefire-report-plugin:3.1.2}}
> {{[WARNING]   Declared at location(s):}}
> {{[WARNING]    * unknown}}
> {{[WARNING]   Mojo EXTERNAL issue(s):}}
> {{[WARNING]    * Mojo surefire-report:failsafe-report-only 
> (org.apache.maven.plugins.surefire.report.FailsafeReportMojo)}}
> {{[WARNING]      - Parameter 'localRepository' uses deprecated parameter 
> expression '${localRepository}': ArtifactRepository type is deprecated and 
> its use in Mojos should be avoided.}}
> {{[WARNING]    * Mojo surefire-report:report 
> (org.apache.maven.plugins.surefire.report.SurefireReportMojo)}}
> {{[WARNING]      - Parameter 'localRepository' uses deprecated parameter 
> expression '${localRepository}': ArtifactRepository type is deprecated and 
> its use in Mojos should be avoided.}}
> {{[WARNING]    * Mojo surefire-report:report-only 
> (org.apache.maven.plugins.surefire.report.SurefireReportOnlyMojo)}}
> {{[WARNING]      - Parameter 'localRepository' uses deprecated parameter 
> expression '${localRepository}': ArtifactRepository type is deprecated and 
> its use in Mojos should be avoided.}}
> [WARNING]
> _*I wish I could eliminate all warnings in my projects, but it's not always 
> easy or possible.*_ ;)
> My context is
> {{$ mvn -version}}
> {{Apache Maven 3.9.5 (57804ffe001d7215b5e7bcb531cf83df38f93546)}}
> {{Maven home: C:\Program Files (Open)\Apache\apache-maven-3.9.5}}
> {{Java version: 21, vendor: Oracle Corporation, runtime: C:\Program 
> Files\java\jdk-21}}
> {{Default locale: en_CA, platform encoding: UTF-8}}
> {{OS name: "windows 10", version: "10.0", arch: "amd64", family: "windows"}}
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (SUREFIRE-2199) [WARNING] * org.apache.maven.plugins:maven-surefire-report-plugin:3.1.2

2023-10-07 Thread Eric Kolotyluk (Jira)


 [ 
https://issues.apache.org/jira/browse/SUREFIRE-2199?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Kolotyluk updated SUREFIRE-2199:
-
Affects Version/s: 3.1.2

> [WARNING]  * org.apache.maven.plugins:maven-surefire-report-plugin:3.1.2
> 
>
> Key: SUREFIRE-2199
> URL: https://issues.apache.org/jira/browse/SUREFIRE-2199
> Project: Maven Surefire
>  Issue Type: Wish
>Affects Versions: 3.1.2
>Reporter: Eric Kolotyluk
>Priority: Minor
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (SUREFIRE-2199) [WARNING] * org.apache.maven.plugins:maven-surefire-report-plugin:3.1.2

2023-10-07 Thread Eric Kolotyluk (Jira)


 [ 
https://issues.apache.org/jira/browse/SUREFIRE-2199?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Kolotyluk updated SUREFIRE-2199:
-
Priority: Minor  (was: Major)

> [WARNING]  * org.apache.maven.plugins:maven-surefire-report-plugin:3.1.2
> 
>
> Key: SUREFIRE-2199
> URL: https://issues.apache.org/jira/browse/SUREFIRE-2199
> Project: Maven Surefire
>  Issue Type: Wish
>Reporter: Eric Kolotyluk
>Priority: Minor
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (SUREFIRE-2199) [WARNING] * org.apache.maven.plugins:maven-surefire-report-plugin:3.1.2

2023-10-07 Thread Eric Kolotyluk (Jira)


 [ 
https://issues.apache.org/jira/browse/SUREFIRE-2199?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Kolotyluk updated SUREFIRE-2199:
-
Issue Type: Wish  (was: Bug)

> [WARNING]  * org.apache.maven.plugins:maven-surefire-report-plugin:3.1.2
> 
>
> Key: SUREFIRE-2199
> URL: https://issues.apache.org/jira/browse/SUREFIRE-2199
> Project: Maven Surefire
>  Issue Type: Wish
>Reporter: Eric Kolotyluk
>Priority: Major
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (SUREFIRE-2199) [WARNING] * org.apache.maven.plugins:maven-surefire-report-plugin:3.1.2

2023-10-07 Thread Eric Kolotyluk (Jira)


 [ 
https://issues.apache.org/jira/browse/SUREFIRE-2199?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Kolotyluk updated SUREFIRE-2199:
-
Summary: [WARNING]  * 
org.apache.maven.plugins:maven-surefire-report-plugin:3.1.2  (was: Obscure 
warning)

> [WARNING]  * org.apache.maven.plugins:maven-surefire-report-plugin:3.1.2
> 
>
> Key: SUREFIRE-2199
> URL: https://issues.apache.org/jira/browse/SUREFIRE-2199
> Project: Maven Surefire
>  Issue Type: Bug
>Reporter: Eric Kolotyluk
>Priority: Major
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (SUREFIRE-2199) Obscure warning

2023-10-07 Thread Eric Kolotyluk (Jira)
Eric Kolotyluk created SUREFIRE-2199:


 Summary: Obscure warning
 Key: SUREFIRE-2199
 URL: https://issues.apache.org/jira/browse/SUREFIRE-2199
 Project: Maven Surefire
  Issue Type: Bug
Reporter: Eric Kolotyluk






--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (MPLUGIN-442) Get rid of deprecated XDoc format

2023-10-07 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/MPLUGIN-442?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17772885#comment-17772885
 ] 

ASF GitHub Bot commented on MPLUGIN-442:


michael-o commented on code in PR #225:
URL: 
https://github.com/apache/maven-plugin-tools/pull/225#discussion_r1349572491


##
maven-plugin-report-plugin/src/main/java/org/apache/maven/plugin/plugin/report/GoalRenderer.java:
##
@@ -0,0 +1,533 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.maven.plugin.plugin.report;
+
+import java.io.File;
+import java.net.URI;
+import java.net.URISyntaxException;
+import java.text.MessageFormat;
+import java.util.AbstractMap.SimpleEntry;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Locale;
+import java.util.Map;
+import java.util.Optional;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+import java.util.stream.Collectors;
+
+import org.apache.commons.lang3.StringUtils;
+import org.apache.maven.doxia.sink.Sink;
+import org.apache.maven.doxia.sink.impl.SinkEventAttributeSet.Semantics;
+import org.apache.maven.doxia.util.HtmlTools;
+import org.apache.maven.plugin.descriptor.MojoDescriptor;
+import org.apache.maven.plugin.descriptor.Parameter;
+import org.apache.maven.plugin.logging.Log;
+import org.apache.maven.project.MavenProject;
+import org.apache.maven.tools.plugin.EnhancedParameterWrapper;
+import org.apache.maven.tools.plugin.ExtendedMojoDescriptor;
+import org.apache.maven.tools.plugin.javadoc.JavadocLinkGenerator;
+import org.apache.maven.tools.plugin.util.PluginUtils;
+import org.codehaus.plexus.i18n.I18N;
+
+public class GoalRenderer extends AbstractPluginReportRenderer {
+
+/** Regular expression matching an XHTML link with group 1 = link target, 
group 2 = link label. */
+private static final Pattern HTML_LINK_PATTERN = Pattern.compile("(.*?)");
+
+/** The directory where the generated site is written. Used for resolving 
relative links to javadoc. */
+private final File reportOutputDirectory;
+
+private final MojoDescriptor descriptor;
+private final boolean disableInternalJavadocLinkValidation;
+
+private final Log log;
+
+public GoalRenderer(
+Sink sink,
+I18N i18n,
+Locale locale,
+MavenProject project,
+MojoDescriptor descriptor,
+File reportOutputDirectory,
+boolean disableInternalJavadocLinkValidation,
+Log log) {
+super(sink, locale, i18n, project);
+this.reportOutputDirectory = reportOutputDirectory;
+this.descriptor = descriptor;
+this.disableInternalJavadocLinkValidation = 
disableInternalJavadocLinkValidation;
+this.log = log;
+}
+
+@Override
+public String getTitle() {
+return descriptor.getFullGoalName();
+}
+
+@Override
+protected void renderBody() {
+startSection(descriptor.getFullGoalName());
+renderReportNotice();
+renderDescription("fullname", descriptor.getPluginDescriptor().getId() 
+ ":" + descriptor.getGoal(), false);
+
+String context = "goal " + descriptor.getGoal();
+if (StringUtils.isNotEmpty(descriptor.getDeprecated())) {
+renderDescription("deprecated", 
getXhtmlWithValidatedLinks(descriptor.getDeprecated(), context), true);
+}
+if (StringUtils.isNotEmpty(descriptor.getDescription())) {
+renderDescription("description", 
getXhtmlWithValidatedLinks(descriptor.getDescription(), context), true);
+} else {
+renderDescription("description", getI18nString("nodescription"), 
false);
+}
+renderAttributes();
+
+List parameterList = filterParameters(
+descriptor.getParameters() != null ? 
descriptor.getParameters() : Collections.emptyList());
+if (parameterList.isEmpty()) {
+startSection(getI18nString("parameters"));
+sink.paragraph();
+sink.text(getI18nString("noParameter"));
+sink.paragraph_();
+

Re: [PR] [MPLUGIN-442] Generate goal documentation leveraging Sink API [maven-plugin-tools]

2023-10-07 Thread via GitHub


michael-o commented on code in PR #225:
URL: 
https://github.com/apache/maven-plugin-tools/pull/225#discussion_r1349572491


##
maven-plugin-report-plugin/src/main/java/org/apache/maven/plugin/plugin/report/GoalRenderer.java:
##
@@ -0,0 +1,533 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.maven.plugin.plugin.report;
+
+import java.io.File;
+import java.net.URI;
+import java.net.URISyntaxException;
+import java.text.MessageFormat;
+import java.util.AbstractMap.SimpleEntry;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Locale;
+import java.util.Map;
+import java.util.Optional;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+import java.util.stream.Collectors;
+
+import org.apache.commons.lang3.StringUtils;
+import org.apache.maven.doxia.sink.Sink;
+import org.apache.maven.doxia.sink.impl.SinkEventAttributeSet.Semantics;
+import org.apache.maven.doxia.util.HtmlTools;
+import org.apache.maven.plugin.descriptor.MojoDescriptor;
+import org.apache.maven.plugin.descriptor.Parameter;
+import org.apache.maven.plugin.logging.Log;
+import org.apache.maven.project.MavenProject;
+import org.apache.maven.tools.plugin.EnhancedParameterWrapper;
+import org.apache.maven.tools.plugin.ExtendedMojoDescriptor;
+import org.apache.maven.tools.plugin.javadoc.JavadocLinkGenerator;
+import org.apache.maven.tools.plugin.util.PluginUtils;
+import org.codehaus.plexus.i18n.I18N;
+
+public class GoalRenderer extends AbstractPluginReportRenderer {
+
+/** Regular expression matching an XHTML link with group 1 = link target, 
group 2 = link label. */
+private static final Pattern HTML_LINK_PATTERN = Pattern.compile("(.*?)");
+
+/** The directory where the generated site is written. Used for resolving 
relative links to javadoc. */
+private final File reportOutputDirectory;
+
+private final MojoDescriptor descriptor;
+private final boolean disableInternalJavadocLinkValidation;
+
+private final Log log;
+
+public GoalRenderer(
+Sink sink,
+I18N i18n,
+Locale locale,
+MavenProject project,
+MojoDescriptor descriptor,
+File reportOutputDirectory,
+boolean disableInternalJavadocLinkValidation,
+Log log) {
+super(sink, locale, i18n, project);
+this.reportOutputDirectory = reportOutputDirectory;
+this.descriptor = descriptor;
+this.disableInternalJavadocLinkValidation = 
disableInternalJavadocLinkValidation;
+this.log = log;
+}
+
+@Override
+public String getTitle() {
+return descriptor.getFullGoalName();
+}
+
+@Override
+protected void renderBody() {
+startSection(descriptor.getFullGoalName());
+renderReportNotice();
+renderDescription("fullname", descriptor.getPluginDescriptor().getId() 
+ ":" + descriptor.getGoal(), false);
+
+String context = "goal " + descriptor.getGoal();
+if (StringUtils.isNotEmpty(descriptor.getDeprecated())) {
+renderDescription("deprecated", 
getXhtmlWithValidatedLinks(descriptor.getDeprecated(), context), true);
+}
+if (StringUtils.isNotEmpty(descriptor.getDescription())) {
+renderDescription("description", 
getXhtmlWithValidatedLinks(descriptor.getDescription(), context), true);
+} else {
+renderDescription("description", getI18nString("nodescription"), 
false);
+}
+renderAttributes();
+
+List parameterList = filterParameters(
+descriptor.getParameters() != null ? 
descriptor.getParameters() : Collections.emptyList());
+if (parameterList.isEmpty()) {
+startSection(getI18nString("parameters"));
+sink.paragraph();
+sink.text(getI18nString("noParameter"));
+sink.paragraph_();
+endSection();
+} else {
+renderParameterOverviewTable(
+getI18nString("requiredParameters"),
+
parameterList.stream().filter(Parameter::isRequired).iterator());
+

[jira] [Commented] (MPLUGIN-442) Get rid of deprecated XDoc format

2023-10-07 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/MPLUGIN-442?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17772884#comment-17772884
 ] 

ASF GitHub Bot commented on MPLUGIN-442:


kwin commented on code in PR #225:
URL: 
https://github.com/apache/maven-plugin-tools/pull/225#discussion_r1349572333


##
maven-plugin-report-plugin/src/main/java/org/apache/maven/plugin/plugin/report/GoalRenderer.java:
##
@@ -0,0 +1,533 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.maven.plugin.plugin.report;
+
+import java.io.File;
+import java.net.URI;
+import java.net.URISyntaxException;
+import java.text.MessageFormat;
+import java.util.AbstractMap.SimpleEntry;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Locale;
+import java.util.Map;
+import java.util.Optional;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+import java.util.stream.Collectors;
+
+import org.apache.commons.lang3.StringUtils;
+import org.apache.maven.doxia.sink.Sink;
+import org.apache.maven.doxia.sink.impl.SinkEventAttributeSet.Semantics;
+import org.apache.maven.doxia.util.HtmlTools;
+import org.apache.maven.plugin.descriptor.MojoDescriptor;
+import org.apache.maven.plugin.descriptor.Parameter;
+import org.apache.maven.plugin.logging.Log;
+import org.apache.maven.project.MavenProject;
+import org.apache.maven.tools.plugin.EnhancedParameterWrapper;
+import org.apache.maven.tools.plugin.ExtendedMojoDescriptor;
+import org.apache.maven.tools.plugin.javadoc.JavadocLinkGenerator;
+import org.apache.maven.tools.plugin.util.PluginUtils;
+import org.codehaus.plexus.i18n.I18N;
+
+public class GoalRenderer extends AbstractPluginReportRenderer {
+
+/** Regular expression matching an XHTML link with group 1 = link target, 
group 2 = link label. */
+private static final Pattern HTML_LINK_PATTERN = Pattern.compile("(.*?)");
+
+/** The directory where the generated site is written. Used for resolving 
relative links to javadoc. */
+private final File reportOutputDirectory;
+
+private final MojoDescriptor descriptor;
+private final boolean disableInternalJavadocLinkValidation;
+
+private final Log log;
+
+public GoalRenderer(
+Sink sink,
+I18N i18n,
+Locale locale,
+MavenProject project,
+MojoDescriptor descriptor,
+File reportOutputDirectory,
+boolean disableInternalJavadocLinkValidation,
+Log log) {
+super(sink, locale, i18n, project);
+this.reportOutputDirectory = reportOutputDirectory;
+this.descriptor = descriptor;
+this.disableInternalJavadocLinkValidation = 
disableInternalJavadocLinkValidation;
+this.log = log;
+}
+
+@Override
+public String getTitle() {
+return descriptor.getFullGoalName();
+}
+
+@Override
+protected void renderBody() {
+startSection(descriptor.getFullGoalName());
+renderReportNotice();
+renderDescription("fullname", descriptor.getPluginDescriptor().getId() 
+ ":" + descriptor.getGoal(), false);
+
+String context = "goal " + descriptor.getGoal();
+if (StringUtils.isNotEmpty(descriptor.getDeprecated())) {
+renderDescription("deprecated", 
getXhtmlWithValidatedLinks(descriptor.getDeprecated(), context), true);
+}
+if (StringUtils.isNotEmpty(descriptor.getDescription())) {
+renderDescription("description", 
getXhtmlWithValidatedLinks(descriptor.getDescription(), context), true);
+} else {
+renderDescription("description", getI18nString("nodescription"), 
false);
+}
+renderAttributes();
+
+List parameterList = filterParameters(
+descriptor.getParameters() != null ? 
descriptor.getParameters() : Collections.emptyList());
+if (parameterList.isEmpty()) {
+startSection(getI18nString("parameters"));
+sink.paragraph();
+sink.text(getI18nString("noParameter"));
+sink.paragraph_();
+

Re: [PR] [MPLUGIN-442] Generate goal documentation leveraging Sink API [maven-plugin-tools]

2023-10-07 Thread via GitHub


kwin commented on code in PR #225:
URL: 
https://github.com/apache/maven-plugin-tools/pull/225#discussion_r1349572333


##
maven-plugin-report-plugin/src/main/java/org/apache/maven/plugin/plugin/report/GoalRenderer.java:
##
@@ -0,0 +1,533 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.maven.plugin.plugin.report;
+
+import java.io.File;
+import java.net.URI;
+import java.net.URISyntaxException;
+import java.text.MessageFormat;
+import java.util.AbstractMap.SimpleEntry;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Locale;
+import java.util.Map;
+import java.util.Optional;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+import java.util.stream.Collectors;
+
+import org.apache.commons.lang3.StringUtils;
+import org.apache.maven.doxia.sink.Sink;
+import org.apache.maven.doxia.sink.impl.SinkEventAttributeSet.Semantics;
+import org.apache.maven.doxia.util.HtmlTools;
+import org.apache.maven.plugin.descriptor.MojoDescriptor;
+import org.apache.maven.plugin.descriptor.Parameter;
+import org.apache.maven.plugin.logging.Log;
+import org.apache.maven.project.MavenProject;
+import org.apache.maven.tools.plugin.EnhancedParameterWrapper;
+import org.apache.maven.tools.plugin.ExtendedMojoDescriptor;
+import org.apache.maven.tools.plugin.javadoc.JavadocLinkGenerator;
+import org.apache.maven.tools.plugin.util.PluginUtils;
+import org.codehaus.plexus.i18n.I18N;
+
+public class GoalRenderer extends AbstractPluginReportRenderer {
+
+/** Regular expression matching an XHTML link with group 1 = link target, 
group 2 = link label. */
+private static final Pattern HTML_LINK_PATTERN = Pattern.compile("(.*?)");
+
+/** The directory where the generated site is written. Used for resolving 
relative links to javadoc. */
+private final File reportOutputDirectory;
+
+private final MojoDescriptor descriptor;
+private final boolean disableInternalJavadocLinkValidation;
+
+private final Log log;
+
+public GoalRenderer(
+Sink sink,
+I18N i18n,
+Locale locale,
+MavenProject project,
+MojoDescriptor descriptor,
+File reportOutputDirectory,
+boolean disableInternalJavadocLinkValidation,
+Log log) {
+super(sink, locale, i18n, project);
+this.reportOutputDirectory = reportOutputDirectory;
+this.descriptor = descriptor;
+this.disableInternalJavadocLinkValidation = 
disableInternalJavadocLinkValidation;
+this.log = log;
+}
+
+@Override
+public String getTitle() {
+return descriptor.getFullGoalName();
+}
+
+@Override
+protected void renderBody() {
+startSection(descriptor.getFullGoalName());
+renderReportNotice();
+renderDescription("fullname", descriptor.getPluginDescriptor().getId() 
+ ":" + descriptor.getGoal(), false);
+
+String context = "goal " + descriptor.getGoal();
+if (StringUtils.isNotEmpty(descriptor.getDeprecated())) {
+renderDescription("deprecated", 
getXhtmlWithValidatedLinks(descriptor.getDeprecated(), context), true);
+}
+if (StringUtils.isNotEmpty(descriptor.getDescription())) {
+renderDescription("description", 
getXhtmlWithValidatedLinks(descriptor.getDescription(), context), true);
+} else {
+renderDescription("description", getI18nString("nodescription"), 
false);
+}
+renderAttributes();
+
+List parameterList = filterParameters(
+descriptor.getParameters() != null ? 
descriptor.getParameters() : Collections.emptyList());
+if (parameterList.isEmpty()) {
+startSection(getI18nString("parameters"));
+sink.paragraph();
+sink.text(getI18nString("noParameter"));
+sink.paragraph_();
+endSection();
+} else {
+renderParameterOverviewTable(
+getI18nString("requiredParameters"),
+
parameterList.stream().filter(Parameter::isRequired).iterator());
+

[jira] [Commented] (MPLUGIN-442) Get rid of deprecated XDoc format

2023-10-07 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/MPLUGIN-442?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17772883#comment-17772883
 ] 

ASF GitHub Bot commented on MPLUGIN-442:


michael-o commented on code in PR #225:
URL: 
https://github.com/apache/maven-plugin-tools/pull/225#discussion_r1349572217


##
maven-plugin-report-plugin/src/main/java/org/apache/maven/plugin/plugin/report/GoalRenderer.java:
##
@@ -0,0 +1,533 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.maven.plugin.plugin.report;
+
+import java.io.File;
+import java.net.URI;
+import java.net.URISyntaxException;
+import java.text.MessageFormat;
+import java.util.AbstractMap.SimpleEntry;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Locale;
+import java.util.Map;
+import java.util.Optional;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+import java.util.stream.Collectors;
+
+import org.apache.commons.lang3.StringUtils;
+import org.apache.maven.doxia.sink.Sink;
+import org.apache.maven.doxia.sink.impl.SinkEventAttributeSet.Semantics;
+import org.apache.maven.doxia.util.HtmlTools;
+import org.apache.maven.plugin.descriptor.MojoDescriptor;
+import org.apache.maven.plugin.descriptor.Parameter;
+import org.apache.maven.plugin.logging.Log;
+import org.apache.maven.project.MavenProject;
+import org.apache.maven.tools.plugin.EnhancedParameterWrapper;
+import org.apache.maven.tools.plugin.ExtendedMojoDescriptor;
+import org.apache.maven.tools.plugin.javadoc.JavadocLinkGenerator;
+import org.apache.maven.tools.plugin.util.PluginUtils;
+import org.codehaus.plexus.i18n.I18N;
+
+public class GoalRenderer extends AbstractPluginReportRenderer {
+
+/** Regular expression matching an XHTML link with group 1 = link target, 
group 2 = link label. */
+private static final Pattern HTML_LINK_PATTERN = Pattern.compile("(.*?)");
+
+/** The directory where the generated site is written. Used for resolving 
relative links to javadoc. */
+private final File reportOutputDirectory;
+
+private final MojoDescriptor descriptor;
+private final boolean disableInternalJavadocLinkValidation;
+
+private final Log log;
+
+public GoalRenderer(
+Sink sink,
+I18N i18n,
+Locale locale,
+MavenProject project,
+MojoDescriptor descriptor,
+File reportOutputDirectory,
+boolean disableInternalJavadocLinkValidation,
+Log log) {
+super(sink, locale, i18n, project);
+this.reportOutputDirectory = reportOutputDirectory;
+this.descriptor = descriptor;
+this.disableInternalJavadocLinkValidation = 
disableInternalJavadocLinkValidation;
+this.log = log;
+}
+
+@Override
+public String getTitle() {
+return descriptor.getFullGoalName();
+}
+
+@Override
+protected void renderBody() {
+startSection(descriptor.getFullGoalName());
+renderReportNotice();
+renderDescription("fullname", descriptor.getPluginDescriptor().getId() 
+ ":" + descriptor.getGoal(), false);
+
+String context = "goal " + descriptor.getGoal();
+if (StringUtils.isNotEmpty(descriptor.getDeprecated())) {
+renderDescription("deprecated", 
getXhtmlWithValidatedLinks(descriptor.getDeprecated(), context), true);
+}
+if (StringUtils.isNotEmpty(descriptor.getDescription())) {
+renderDescription("description", 
getXhtmlWithValidatedLinks(descriptor.getDescription(), context), true);
+} else {
+renderDescription("description", getI18nString("nodescription"), 
false);
+}
+renderAttributes();
+
+List parameterList = filterParameters(
+descriptor.getParameters() != null ? 
descriptor.getParameters() : Collections.emptyList());
+if (parameterList.isEmpty()) {
+startSection(getI18nString("parameters"));
+sink.paragraph();
+sink.text(getI18nString("noParameter"));
+sink.paragraph_();
+

Re: [PR] [MPLUGIN-442] Generate goal documentation leveraging Sink API [maven-plugin-tools]

2023-10-07 Thread via GitHub


michael-o commented on code in PR #225:
URL: 
https://github.com/apache/maven-plugin-tools/pull/225#discussion_r1349572217


##
maven-plugin-report-plugin/src/main/java/org/apache/maven/plugin/plugin/report/GoalRenderer.java:
##
@@ -0,0 +1,533 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.maven.plugin.plugin.report;
+
+import java.io.File;
+import java.net.URI;
+import java.net.URISyntaxException;
+import java.text.MessageFormat;
+import java.util.AbstractMap.SimpleEntry;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Locale;
+import java.util.Map;
+import java.util.Optional;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+import java.util.stream.Collectors;
+
+import org.apache.commons.lang3.StringUtils;
+import org.apache.maven.doxia.sink.Sink;
+import org.apache.maven.doxia.sink.impl.SinkEventAttributeSet.Semantics;
+import org.apache.maven.doxia.util.HtmlTools;
+import org.apache.maven.plugin.descriptor.MojoDescriptor;
+import org.apache.maven.plugin.descriptor.Parameter;
+import org.apache.maven.plugin.logging.Log;
+import org.apache.maven.project.MavenProject;
+import org.apache.maven.tools.plugin.EnhancedParameterWrapper;
+import org.apache.maven.tools.plugin.ExtendedMojoDescriptor;
+import org.apache.maven.tools.plugin.javadoc.JavadocLinkGenerator;
+import org.apache.maven.tools.plugin.util.PluginUtils;
+import org.codehaus.plexus.i18n.I18N;
+
+public class GoalRenderer extends AbstractPluginReportRenderer {
+
+/** Regular expression matching an XHTML link with group 1 = link target, 
group 2 = link label. */
+private static final Pattern HTML_LINK_PATTERN = Pattern.compile("(.*?)");
+
+/** The directory where the generated site is written. Used for resolving 
relative links to javadoc. */
+private final File reportOutputDirectory;
+
+private final MojoDescriptor descriptor;
+private final boolean disableInternalJavadocLinkValidation;
+
+private final Log log;
+
+public GoalRenderer(
+Sink sink,
+I18N i18n,
+Locale locale,
+MavenProject project,
+MojoDescriptor descriptor,
+File reportOutputDirectory,
+boolean disableInternalJavadocLinkValidation,
+Log log) {
+super(sink, locale, i18n, project);
+this.reportOutputDirectory = reportOutputDirectory;
+this.descriptor = descriptor;
+this.disableInternalJavadocLinkValidation = 
disableInternalJavadocLinkValidation;
+this.log = log;
+}
+
+@Override
+public String getTitle() {
+return descriptor.getFullGoalName();
+}
+
+@Override
+protected void renderBody() {
+startSection(descriptor.getFullGoalName());
+renderReportNotice();
+renderDescription("fullname", descriptor.getPluginDescriptor().getId() 
+ ":" + descriptor.getGoal(), false);
+
+String context = "goal " + descriptor.getGoal();
+if (StringUtils.isNotEmpty(descriptor.getDeprecated())) {
+renderDescription("deprecated", 
getXhtmlWithValidatedLinks(descriptor.getDeprecated(), context), true);
+}
+if (StringUtils.isNotEmpty(descriptor.getDescription())) {
+renderDescription("description", 
getXhtmlWithValidatedLinks(descriptor.getDescription(), context), true);
+} else {
+renderDescription("description", getI18nString("nodescription"), 
false);
+}
+renderAttributes();
+
+List parameterList = filterParameters(
+descriptor.getParameters() != null ? 
descriptor.getParameters() : Collections.emptyList());
+if (parameterList.isEmpty()) {
+startSection(getI18nString("parameters"));
+sink.paragraph();
+sink.text(getI18nString("noParameter"));
+sink.paragraph_();
+endSection();
+} else {
+renderParameterOverviewTable(
+getI18nString("requiredParameters"),
+
parameterList.stream().filter(Parameter::isRequired).iterator());
+

[jira] [Commented] (MPLUGIN-442) Get rid of deprecated XDoc format

2023-10-07 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/MPLUGIN-442?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17772881#comment-17772881
 ] 

ASF GitHub Bot commented on MPLUGIN-442:


kwin commented on code in PR #225:
URL: 
https://github.com/apache/maven-plugin-tools/pull/225#discussion_r1349571929


##
maven-plugin-report-plugin/src/main/java/org/apache/maven/plugin/plugin/report/GoalRenderer.java:
##
@@ -0,0 +1,533 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.maven.plugin.plugin.report;
+
+import java.io.File;
+import java.net.URI;
+import java.net.URISyntaxException;
+import java.text.MessageFormat;
+import java.util.AbstractMap.SimpleEntry;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Locale;
+import java.util.Map;
+import java.util.Optional;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+import java.util.stream.Collectors;
+
+import org.apache.commons.lang3.StringUtils;
+import org.apache.maven.doxia.sink.Sink;
+import org.apache.maven.doxia.sink.impl.SinkEventAttributeSet.Semantics;
+import org.apache.maven.doxia.util.HtmlTools;
+import org.apache.maven.plugin.descriptor.MojoDescriptor;
+import org.apache.maven.plugin.descriptor.Parameter;
+import org.apache.maven.plugin.logging.Log;
+import org.apache.maven.project.MavenProject;
+import org.apache.maven.tools.plugin.EnhancedParameterWrapper;
+import org.apache.maven.tools.plugin.ExtendedMojoDescriptor;
+import org.apache.maven.tools.plugin.javadoc.JavadocLinkGenerator;
+import org.apache.maven.tools.plugin.util.PluginUtils;
+import org.codehaus.plexus.i18n.I18N;
+
+public class GoalRenderer extends AbstractPluginReportRenderer {
+
+/** Regular expression matching an XHTML link with group 1 = link target, 
group 2 = link label. */
+private static final Pattern HTML_LINK_PATTERN = Pattern.compile("(.*?)");
+
+/** The directory where the generated site is written. Used for resolving 
relative links to javadoc. */
+private final File reportOutputDirectory;
+
+private final MojoDescriptor descriptor;
+private final boolean disableInternalJavadocLinkValidation;
+
+private final Log log;
+
+public GoalRenderer(
+Sink sink,
+I18N i18n,
+Locale locale,
+MavenProject project,
+MojoDescriptor descriptor,
+File reportOutputDirectory,
+boolean disableInternalJavadocLinkValidation,
+Log log) {
+super(sink, locale, i18n, project);
+this.reportOutputDirectory = reportOutputDirectory;
+this.descriptor = descriptor;
+this.disableInternalJavadocLinkValidation = 
disableInternalJavadocLinkValidation;
+this.log = log;
+}
+
+@Override
+public String getTitle() {
+return descriptor.getFullGoalName();
+}
+
+@Override
+protected void renderBody() {
+startSection(descriptor.getFullGoalName());
+renderReportNotice();
+renderDescription("fullname", descriptor.getPluginDescriptor().getId() 
+ ":" + descriptor.getGoal(), false);
+
+String context = "goal " + descriptor.getGoal();
+if (StringUtils.isNotEmpty(descriptor.getDeprecated())) {
+renderDescription("deprecated", 
getXhtmlWithValidatedLinks(descriptor.getDeprecated(), context), true);
+}
+if (StringUtils.isNotEmpty(descriptor.getDescription())) {
+renderDescription("description", 
getXhtmlWithValidatedLinks(descriptor.getDescription(), context), true);
+} else {
+renderDescription("description", getI18nString("nodescription"), 
false);
+}
+renderAttributes();
+
+List parameterList = filterParameters(
+descriptor.getParameters() != null ? 
descriptor.getParameters() : Collections.emptyList());
+if (parameterList.isEmpty()) {
+startSection(getI18nString("parameters"));
+sink.paragraph();
+sink.text(getI18nString("noParameter"));
+sink.paragraph_();
+

[jira] [Created] (MCOMPILER-549) improve recompilation cause display

2023-10-07 Thread Herve Boutemy (Jira)
Herve Boutemy created MCOMPILER-549:
---

 Summary: improve recompilation cause display
 Key: MCOMPILER-549
 URL: https://issues.apache.org/jira/browse/MCOMPILER-549
 Project: Maven Compiler Plugin
  Issue Type: Improvement
Affects Versions: 3.11.0
Reporter: Herve Boutemy
 Fix For: 3.11.1


recompilation cause message has been implemented in MCOMPILER-499

But message format is strange and some values are not clear: see last comment 
in MCOMPILER-499 and users feedback 
https://lists.apache.org/thread/on96m5fkngm43tppr67hxrjmk3wy2s79

we need to improve the message a little bit



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


Re: [PR] [MPLUGIN-442] Generate goal documentation leveraging Sink API [maven-plugin-tools]

2023-10-07 Thread via GitHub


kwin commented on code in PR #225:
URL: 
https://github.com/apache/maven-plugin-tools/pull/225#discussion_r1349571929


##
maven-plugin-report-plugin/src/main/java/org/apache/maven/plugin/plugin/report/GoalRenderer.java:
##
@@ -0,0 +1,533 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.maven.plugin.plugin.report;
+
+import java.io.File;
+import java.net.URI;
+import java.net.URISyntaxException;
+import java.text.MessageFormat;
+import java.util.AbstractMap.SimpleEntry;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Locale;
+import java.util.Map;
+import java.util.Optional;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+import java.util.stream.Collectors;
+
+import org.apache.commons.lang3.StringUtils;
+import org.apache.maven.doxia.sink.Sink;
+import org.apache.maven.doxia.sink.impl.SinkEventAttributeSet.Semantics;
+import org.apache.maven.doxia.util.HtmlTools;
+import org.apache.maven.plugin.descriptor.MojoDescriptor;
+import org.apache.maven.plugin.descriptor.Parameter;
+import org.apache.maven.plugin.logging.Log;
+import org.apache.maven.project.MavenProject;
+import org.apache.maven.tools.plugin.EnhancedParameterWrapper;
+import org.apache.maven.tools.plugin.ExtendedMojoDescriptor;
+import org.apache.maven.tools.plugin.javadoc.JavadocLinkGenerator;
+import org.apache.maven.tools.plugin.util.PluginUtils;
+import org.codehaus.plexus.i18n.I18N;
+
+public class GoalRenderer extends AbstractPluginReportRenderer {
+
+/** Regular expression matching an XHTML link with group 1 = link target, 
group 2 = link label. */
+private static final Pattern HTML_LINK_PATTERN = Pattern.compile("(.*?)");
+
+/** The directory where the generated site is written. Used for resolving 
relative links to javadoc. */
+private final File reportOutputDirectory;
+
+private final MojoDescriptor descriptor;
+private final boolean disableInternalJavadocLinkValidation;
+
+private final Log log;
+
+public GoalRenderer(
+Sink sink,
+I18N i18n,
+Locale locale,
+MavenProject project,
+MojoDescriptor descriptor,
+File reportOutputDirectory,
+boolean disableInternalJavadocLinkValidation,
+Log log) {
+super(sink, locale, i18n, project);
+this.reportOutputDirectory = reportOutputDirectory;
+this.descriptor = descriptor;
+this.disableInternalJavadocLinkValidation = 
disableInternalJavadocLinkValidation;
+this.log = log;
+}
+
+@Override
+public String getTitle() {
+return descriptor.getFullGoalName();
+}
+
+@Override
+protected void renderBody() {
+startSection(descriptor.getFullGoalName());
+renderReportNotice();
+renderDescription("fullname", descriptor.getPluginDescriptor().getId() 
+ ":" + descriptor.getGoal(), false);
+
+String context = "goal " + descriptor.getGoal();
+if (StringUtils.isNotEmpty(descriptor.getDeprecated())) {
+renderDescription("deprecated", 
getXhtmlWithValidatedLinks(descriptor.getDeprecated(), context), true);
+}
+if (StringUtils.isNotEmpty(descriptor.getDescription())) {
+renderDescription("description", 
getXhtmlWithValidatedLinks(descriptor.getDescription(), context), true);
+} else {
+renderDescription("description", getI18nString("nodescription"), 
false);
+}
+renderAttributes();
+
+List parameterList = filterParameters(
+descriptor.getParameters() != null ? 
descriptor.getParameters() : Collections.emptyList());
+if (parameterList.isEmpty()) {
+startSection(getI18nString("parameters"));
+sink.paragraph();
+sink.text(getI18nString("noParameter"));
+sink.paragraph_();
+endSection();
+} else {
+renderParameterOverviewTable(
+getI18nString("requiredParameters"),
+
parameterList.stream().filter(Parameter::isRequired).iterator());
+

[jira] [Commented] (MPLUGIN-442) Get rid of deprecated XDoc format

2023-10-07 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/MPLUGIN-442?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17772880#comment-17772880
 ] 

ASF GitHub Bot commented on MPLUGIN-442:


kwin commented on code in PR #225:
URL: 
https://github.com/apache/maven-plugin-tools/pull/225#discussion_r1349571929


##
maven-plugin-report-plugin/src/main/java/org/apache/maven/plugin/plugin/report/GoalRenderer.java:
##
@@ -0,0 +1,533 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.maven.plugin.plugin.report;
+
+import java.io.File;
+import java.net.URI;
+import java.net.URISyntaxException;
+import java.text.MessageFormat;
+import java.util.AbstractMap.SimpleEntry;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Locale;
+import java.util.Map;
+import java.util.Optional;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+import java.util.stream.Collectors;
+
+import org.apache.commons.lang3.StringUtils;
+import org.apache.maven.doxia.sink.Sink;
+import org.apache.maven.doxia.sink.impl.SinkEventAttributeSet.Semantics;
+import org.apache.maven.doxia.util.HtmlTools;
+import org.apache.maven.plugin.descriptor.MojoDescriptor;
+import org.apache.maven.plugin.descriptor.Parameter;
+import org.apache.maven.plugin.logging.Log;
+import org.apache.maven.project.MavenProject;
+import org.apache.maven.tools.plugin.EnhancedParameterWrapper;
+import org.apache.maven.tools.plugin.ExtendedMojoDescriptor;
+import org.apache.maven.tools.plugin.javadoc.JavadocLinkGenerator;
+import org.apache.maven.tools.plugin.util.PluginUtils;
+import org.codehaus.plexus.i18n.I18N;
+
+public class GoalRenderer extends AbstractPluginReportRenderer {
+
+/** Regular expression matching an XHTML link with group 1 = link target, 
group 2 = link label. */
+private static final Pattern HTML_LINK_PATTERN = Pattern.compile("(.*?)");
+
+/** The directory where the generated site is written. Used for resolving 
relative links to javadoc. */
+private final File reportOutputDirectory;
+
+private final MojoDescriptor descriptor;
+private final boolean disableInternalJavadocLinkValidation;
+
+private final Log log;
+
+public GoalRenderer(
+Sink sink,
+I18N i18n,
+Locale locale,
+MavenProject project,
+MojoDescriptor descriptor,
+File reportOutputDirectory,
+boolean disableInternalJavadocLinkValidation,
+Log log) {
+super(sink, locale, i18n, project);
+this.reportOutputDirectory = reportOutputDirectory;
+this.descriptor = descriptor;
+this.disableInternalJavadocLinkValidation = 
disableInternalJavadocLinkValidation;
+this.log = log;
+}
+
+@Override
+public String getTitle() {
+return descriptor.getFullGoalName();
+}
+
+@Override
+protected void renderBody() {
+startSection(descriptor.getFullGoalName());
+renderReportNotice();
+renderDescription("fullname", descriptor.getPluginDescriptor().getId() 
+ ":" + descriptor.getGoal(), false);
+
+String context = "goal " + descriptor.getGoal();
+if (StringUtils.isNotEmpty(descriptor.getDeprecated())) {
+renderDescription("deprecated", 
getXhtmlWithValidatedLinks(descriptor.getDeprecated(), context), true);
+}
+if (StringUtils.isNotEmpty(descriptor.getDescription())) {
+renderDescription("description", 
getXhtmlWithValidatedLinks(descriptor.getDescription(), context), true);
+} else {
+renderDescription("description", getI18nString("nodescription"), 
false);
+}
+renderAttributes();
+
+List parameterList = filterParameters(
+descriptor.getParameters() != null ? 
descriptor.getParameters() : Collections.emptyList());
+if (parameterList.isEmpty()) {
+startSection(getI18nString("parameters"));
+sink.paragraph();
+sink.text(getI18nString("noParameter"));
+sink.paragraph_();
+

Re: [PR] [MPLUGIN-442] Generate goal documentation leveraging Sink API [maven-plugin-tools]

2023-10-07 Thread via GitHub


kwin commented on code in PR #225:
URL: 
https://github.com/apache/maven-plugin-tools/pull/225#discussion_r1349571929


##
maven-plugin-report-plugin/src/main/java/org/apache/maven/plugin/plugin/report/GoalRenderer.java:
##
@@ -0,0 +1,533 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.maven.plugin.plugin.report;
+
+import java.io.File;
+import java.net.URI;
+import java.net.URISyntaxException;
+import java.text.MessageFormat;
+import java.util.AbstractMap.SimpleEntry;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Locale;
+import java.util.Map;
+import java.util.Optional;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+import java.util.stream.Collectors;
+
+import org.apache.commons.lang3.StringUtils;
+import org.apache.maven.doxia.sink.Sink;
+import org.apache.maven.doxia.sink.impl.SinkEventAttributeSet.Semantics;
+import org.apache.maven.doxia.util.HtmlTools;
+import org.apache.maven.plugin.descriptor.MojoDescriptor;
+import org.apache.maven.plugin.descriptor.Parameter;
+import org.apache.maven.plugin.logging.Log;
+import org.apache.maven.project.MavenProject;
+import org.apache.maven.tools.plugin.EnhancedParameterWrapper;
+import org.apache.maven.tools.plugin.ExtendedMojoDescriptor;
+import org.apache.maven.tools.plugin.javadoc.JavadocLinkGenerator;
+import org.apache.maven.tools.plugin.util.PluginUtils;
+import org.codehaus.plexus.i18n.I18N;
+
+public class GoalRenderer extends AbstractPluginReportRenderer {
+
+/** Regular expression matching an XHTML link with group 1 = link target, 
group 2 = link label. */
+private static final Pattern HTML_LINK_PATTERN = Pattern.compile("(.*?)");
+
+/** The directory where the generated site is written. Used for resolving 
relative links to javadoc. */
+private final File reportOutputDirectory;
+
+private final MojoDescriptor descriptor;
+private final boolean disableInternalJavadocLinkValidation;
+
+private final Log log;
+
+public GoalRenderer(
+Sink sink,
+I18N i18n,
+Locale locale,
+MavenProject project,
+MojoDescriptor descriptor,
+File reportOutputDirectory,
+boolean disableInternalJavadocLinkValidation,
+Log log) {
+super(sink, locale, i18n, project);
+this.reportOutputDirectory = reportOutputDirectory;
+this.descriptor = descriptor;
+this.disableInternalJavadocLinkValidation = 
disableInternalJavadocLinkValidation;
+this.log = log;
+}
+
+@Override
+public String getTitle() {
+return descriptor.getFullGoalName();
+}
+
+@Override
+protected void renderBody() {
+startSection(descriptor.getFullGoalName());
+renderReportNotice();
+renderDescription("fullname", descriptor.getPluginDescriptor().getId() 
+ ":" + descriptor.getGoal(), false);
+
+String context = "goal " + descriptor.getGoal();
+if (StringUtils.isNotEmpty(descriptor.getDeprecated())) {
+renderDescription("deprecated", 
getXhtmlWithValidatedLinks(descriptor.getDeprecated(), context), true);
+}
+if (StringUtils.isNotEmpty(descriptor.getDescription())) {
+renderDescription("description", 
getXhtmlWithValidatedLinks(descriptor.getDescription(), context), true);
+} else {
+renderDescription("description", getI18nString("nodescription"), 
false);
+}
+renderAttributes();
+
+List parameterList = filterParameters(
+descriptor.getParameters() != null ? 
descriptor.getParameters() : Collections.emptyList());
+if (parameterList.isEmpty()) {
+startSection(getI18nString("parameters"));
+sink.paragraph();
+sink.text(getI18nString("noParameter"));
+sink.paragraph_();
+endSection();
+} else {
+renderParameterOverviewTable(
+getI18nString("requiredParameters"),
+
parameterList.stream().filter(Parameter::isRequired).iterator());
+

[jira] [Commented] (MPLUGIN-442) Get rid of deprecated XDoc format

2023-10-07 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/MPLUGIN-442?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17772876#comment-17772876
 ] 

ASF GitHub Bot commented on MPLUGIN-442:


michael-o commented on code in PR #225:
URL: 
https://github.com/apache/maven-plugin-tools/pull/225#discussion_r1349571106


##
maven-plugin-report-plugin/src/main/java/org/apache/maven/plugin/plugin/report/GoalRenderer.java:
##
@@ -0,0 +1,533 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.maven.plugin.plugin.report;
+
+import java.io.File;
+import java.net.URI;
+import java.net.URISyntaxException;
+import java.text.MessageFormat;
+import java.util.AbstractMap.SimpleEntry;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Locale;
+import java.util.Map;
+import java.util.Optional;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+import java.util.stream.Collectors;
+
+import org.apache.commons.lang3.StringUtils;
+import org.apache.maven.doxia.sink.Sink;
+import org.apache.maven.doxia.sink.impl.SinkEventAttributeSet.Semantics;
+import org.apache.maven.doxia.util.HtmlTools;
+import org.apache.maven.plugin.descriptor.MojoDescriptor;
+import org.apache.maven.plugin.descriptor.Parameter;
+import org.apache.maven.plugin.logging.Log;
+import org.apache.maven.project.MavenProject;
+import org.apache.maven.tools.plugin.EnhancedParameterWrapper;
+import org.apache.maven.tools.plugin.ExtendedMojoDescriptor;
+import org.apache.maven.tools.plugin.javadoc.JavadocLinkGenerator;
+import org.apache.maven.tools.plugin.util.PluginUtils;
+import org.codehaus.plexus.i18n.I18N;
+
+public class GoalRenderer extends AbstractPluginReportRenderer {
+
+/** Regular expression matching an XHTML link with group 1 = link target, 
group 2 = link label. */
+private static final Pattern HTML_LINK_PATTERN = Pattern.compile("(.*?)");
+
+/** The directory where the generated site is written. Used for resolving 
relative links to javadoc. */
+private final File reportOutputDirectory;
+
+private final MojoDescriptor descriptor;
+private final boolean disableInternalJavadocLinkValidation;
+
+private final Log log;
+
+public GoalRenderer(
+Sink sink,
+I18N i18n,
+Locale locale,
+MavenProject project,
+MojoDescriptor descriptor,
+File reportOutputDirectory,
+boolean disableInternalJavadocLinkValidation,
+Log log) {
+super(sink, locale, i18n, project);
+this.reportOutputDirectory = reportOutputDirectory;
+this.descriptor = descriptor;
+this.disableInternalJavadocLinkValidation = 
disableInternalJavadocLinkValidation;
+this.log = log;
+}
+
+@Override
+public String getTitle() {
+return descriptor.getFullGoalName();
+}
+
+@Override
+protected void renderBody() {
+startSection(descriptor.getFullGoalName());
+renderReportNotice();
+renderDescription("fullname", descriptor.getPluginDescriptor().getId() 
+ ":" + descriptor.getGoal(), false);
+
+String context = "goal " + descriptor.getGoal();
+if (StringUtils.isNotEmpty(descriptor.getDeprecated())) {
+renderDescription("deprecated", 
getXhtmlWithValidatedLinks(descriptor.getDeprecated(), context), true);
+}
+if (StringUtils.isNotEmpty(descriptor.getDescription())) {
+renderDescription("description", 
getXhtmlWithValidatedLinks(descriptor.getDescription(), context), true);
+} else {
+renderDescription("description", getI18nString("nodescription"), 
false);
+}
+renderAttributes();
+
+List parameterList = filterParameters(
+descriptor.getParameters() != null ? 
descriptor.getParameters() : Collections.emptyList());
+if (parameterList.isEmpty()) {
+startSection(getI18nString("parameters"));
+sink.paragraph();
+sink.text(getI18nString("noParameter"));
+sink.paragraph_();
+

Re: [PR] [MPLUGIN-442] Generate goal documentation leveraging Sink API [maven-plugin-tools]

2023-10-07 Thread via GitHub


michael-o commented on code in PR #225:
URL: 
https://github.com/apache/maven-plugin-tools/pull/225#discussion_r1349571106


##
maven-plugin-report-plugin/src/main/java/org/apache/maven/plugin/plugin/report/GoalRenderer.java:
##
@@ -0,0 +1,533 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.maven.plugin.plugin.report;
+
+import java.io.File;
+import java.net.URI;
+import java.net.URISyntaxException;
+import java.text.MessageFormat;
+import java.util.AbstractMap.SimpleEntry;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Locale;
+import java.util.Map;
+import java.util.Optional;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+import java.util.stream.Collectors;
+
+import org.apache.commons.lang3.StringUtils;
+import org.apache.maven.doxia.sink.Sink;
+import org.apache.maven.doxia.sink.impl.SinkEventAttributeSet.Semantics;
+import org.apache.maven.doxia.util.HtmlTools;
+import org.apache.maven.plugin.descriptor.MojoDescriptor;
+import org.apache.maven.plugin.descriptor.Parameter;
+import org.apache.maven.plugin.logging.Log;
+import org.apache.maven.project.MavenProject;
+import org.apache.maven.tools.plugin.EnhancedParameterWrapper;
+import org.apache.maven.tools.plugin.ExtendedMojoDescriptor;
+import org.apache.maven.tools.plugin.javadoc.JavadocLinkGenerator;
+import org.apache.maven.tools.plugin.util.PluginUtils;
+import org.codehaus.plexus.i18n.I18N;
+
+public class GoalRenderer extends AbstractPluginReportRenderer {
+
+/** Regular expression matching an XHTML link with group 1 = link target, 
group 2 = link label. */
+private static final Pattern HTML_LINK_PATTERN = Pattern.compile("(.*?)");
+
+/** The directory where the generated site is written. Used for resolving 
relative links to javadoc. */
+private final File reportOutputDirectory;
+
+private final MojoDescriptor descriptor;
+private final boolean disableInternalJavadocLinkValidation;
+
+private final Log log;
+
+public GoalRenderer(
+Sink sink,
+I18N i18n,
+Locale locale,
+MavenProject project,
+MojoDescriptor descriptor,
+File reportOutputDirectory,
+boolean disableInternalJavadocLinkValidation,
+Log log) {
+super(sink, locale, i18n, project);
+this.reportOutputDirectory = reportOutputDirectory;
+this.descriptor = descriptor;
+this.disableInternalJavadocLinkValidation = 
disableInternalJavadocLinkValidation;
+this.log = log;
+}
+
+@Override
+public String getTitle() {
+return descriptor.getFullGoalName();
+}
+
+@Override
+protected void renderBody() {
+startSection(descriptor.getFullGoalName());
+renderReportNotice();
+renderDescription("fullname", descriptor.getPluginDescriptor().getId() 
+ ":" + descriptor.getGoal(), false);
+
+String context = "goal " + descriptor.getGoal();
+if (StringUtils.isNotEmpty(descriptor.getDeprecated())) {
+renderDescription("deprecated", 
getXhtmlWithValidatedLinks(descriptor.getDeprecated(), context), true);
+}
+if (StringUtils.isNotEmpty(descriptor.getDescription())) {
+renderDescription("description", 
getXhtmlWithValidatedLinks(descriptor.getDescription(), context), true);
+} else {
+renderDescription("description", getI18nString("nodescription"), 
false);
+}
+renderAttributes();
+
+List parameterList = filterParameters(
+descriptor.getParameters() != null ? 
descriptor.getParameters() : Collections.emptyList());
+if (parameterList.isEmpty()) {
+startSection(getI18nString("parameters"));
+sink.paragraph();
+sink.text(getI18nString("noParameter"));
+sink.paragraph_();
+endSection();
+} else {
+renderParameterOverviewTable(
+getI18nString("requiredParameters"),
+
parameterList.stream().filter(Parameter::isRequired).iterator());
+

[jira] [Updated] (MCOMPILER-510) NullPointerException when using --patch-module compiler argument

2023-10-07 Thread Herve Boutemy (Jira)


 [ 
https://issues.apache.org/jira/browse/MCOMPILER-510?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Herve Boutemy updated MCOMPILER-510:

Fix Version/s: 3.11.1
   (was: 3.12.0)

> NullPointerException when using --patch-module compiler argument
> 
>
> Key: MCOMPILER-510
> URL: https://issues.apache.org/jira/browse/MCOMPILER-510
> Project: Maven Compiler Plugin
>  Issue Type: Bug
>Affects Versions: 3.10.1
>Reporter: Artem K.
>Priority: Major
> Fix For: 3.11.1
>
> Attachments: poc.zip
>
>
> h2. Summary
> When using {{--patch-module}} compiler argument, there is a 
> {{NullPointerException}} due to field {{pathElements}} not being initialized 
> in {{{}CompilerMojo{}}}.
> h2. Description
> The method {{preparePaths}} in {{CompilerMojo}} has two code paths:
> {code:java}
> @Override
> protected void preparePaths( Set sourceFiles )
> {
>     boolean hasModuleDescriptor = false;
> // ...
>     if ( hasModuleDescriptor )
> {
>         modulepathElements = new ArrayList<>( compilePath.size() );
> classpathElements = new ArrayList<>( compilePath.size() );
> pathElements = new LinkedHashMap<>( compilePath.size() );
>     }
> else
> {
> classpathElements = new ArrayList<>();
> modulepathElements = Collections.emptyList();
> // ...
> }
> }{code}
> Notice that in the else part, {{pathElements}} is not initialized. This field 
> is used when the compiler arguments contain {{--patch-module}} switch. So 
> whenever the compiler is used with this switch and there is no module 
> descriptor in the project, NPE occurs.
> h2. Proof-of-concept
> Attached is a simple proof-of-concept to illustrate the issue. The project 
> consists of a single class with raises {{NullPointerException}} using a new 
> constructor {{{}NullPointerException(Throwable){}}}, which does not exist in 
> base JDK.
>  * When executing {{{}javac{}}}}} src\main\java\poc\Main.java{}}}, the 
> compilation fails as expected.
>  * Using a replacement {{NullPointerException}} class in {{java_base.jar}} 
> with the added constructor, the compilation works fine:}} javac 
> --patch-module java.base=java_base.jar src\main\java\poc\Main.java{}}}.
>  * Attempting to do the same using Maven compiler plugin results in 
> NullPointerException: {{mvn -X compile}}
> h2. Walkaround
> I was able to fix the problem by adding the line
> {code:java}
> pathElements = Collections.emptyMap(); {code}
> to the else part of the {{{}CompilerMojo.preparePaths{}}}.
> The compilation started working, it does however produce a warning
> {noformat}
> [WARNING] Can't locate java_base.jar{noformat}
> every single time. I did not investigate much the cause of this message.
> Also note that while similar, this issues is not the same as MCOMPILER-311.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (MCOMPILER-544) ZipException: zip END header not found on POM dependency with Eclipse compiler

2023-10-07 Thread Herve Boutemy (Jira)


 [ 
https://issues.apache.org/jira/browse/MCOMPILER-544?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Herve Boutemy updated MCOMPILER-544:

Fix Version/s: 3.11.1
   (was: 3.12.0)

> ZipException: zip END header not found on POM dependency with Eclipse compiler
> --
>
> Key: MCOMPILER-544
> URL: https://issues.apache.org/jira/browse/MCOMPILER-544
> Project: Maven Compiler Plugin
>  Issue Type: Bug
>Affects Versions: 3.11.0
>Reporter: Václav Haisman
>Assignee: Slawomir Jaranowski
>Priority: Major
> Fix For: 3.11.1
>
>
> There is an impedance matching issue between Maven Compiler Plugin, 
> [plexus-compiler-eclipse|https://github.com/codehaus-plexus/plexus-compiler/issues/302],
>  and 
> [eclipse.jdt.core|https://github.com/eclipse-jdt/eclipse.jdt.core/issues/1274].
>  m-c-p adds POM dependency's POM file to classpath, which makes it through 
> plexus-compiler-eclipse to JDT and that prints an exception {{ZipException: 
> zip END header not found}}. Arguably, m-c-p should not be adding non-JAR, 
> non-wildcard-directory path to classpath for the compiler.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (MCOMPILER-547) NPE when --patch-module is used in non-module project

2023-10-07 Thread Herve Boutemy (Jira)


 [ 
https://issues.apache.org/jira/browse/MCOMPILER-547?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Herve Boutemy updated MCOMPILER-547:

Fix Version/s: 3.11.1
   (was: 3.12.0)

> NPE when --patch-module is used in non-module project
> -
>
> Key: MCOMPILER-547
> URL: https://issues.apache.org/jira/browse/MCOMPILER-547
> Project: Maven Compiler Plugin
>  Issue Type: Bug
>Affects Versions: 3.10.1, 3.11.0
>Reporter: Robert Varga
>Assignee: Slawomir Jaranowski
>Priority: Major
> Fix For: 3.11.1
>
>
> Encountered while working on KARAF-7754:
> {noformat}
> Caused by: org.apache.maven.plugin.PluginExecutionException: Execution 
> default-compile of goal 
> org.apache.maven.plugins:maven-compiler-plugin:3.10.1:compile failed: Cannot 
> invoke "java.util.Map.get(Object)" because the return value of 
> "org.apache.maven.plugin.compiler.AbstractCompilerMojo.getPathElements()" is 
> null
> at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo 
> (DefaultBuildPluginManager.java:133)
> at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2 
> (MojoExecutor.java:328)
> at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute 
> (MojoExecutor.java:316)
> at org.apache.maven.lifecycle.internal.MojoExecutor.execute 
> (MojoExecutor.java:212)
> at org.apache.maven.lifecycle.internal.MojoExecutor.execute 
> (MojoExecutor.java:174)
> at org.apache.maven.lifecycle.internal.MojoExecutor.access$000 
> (MojoExecutor.java:75)
> at org.apache.maven.lifecycle.internal.MojoExecutor$1.run 
> (MojoExecutor.java:162)
> at org.apache.maven.plugin.DefaultMojosExecutionStrategy.execute 
> (DefaultMojosExecutionStrategy.java:39)
> at org.apache.maven.lifecycle.internal.MojoExecutor.execute 
> (MojoExecutor.java:159)
> at 
> org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject 
> (LifecycleModuleBuilder.java:105)
> at io.takari.maven.builder.smart.SmartBuilderImpl.buildProject 
> (SmartBuilderImpl.java:209)
> at io.takari.maven.builder.smart.SmartBuilderImpl$ProjectBuildTask.run 
> (SmartBuilderImpl.java:81)
> at java.util.concurrent.Executors$RunnableAdapter.call 
> (Executors.java:539)
> at java.util.concurrent.FutureTask.run (FutureTask.java:264)
> at java.util.concurrent.ThreadPoolExecutor.runWorker 
> (ThreadPoolExecutor.java:1136)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run 
> (ThreadPoolExecutor.java:635)
> at java.lang.Thread.run (Thread.java:833)
> Caused by: java.lang.NullPointerException: Cannot invoke 
> "java.util.Map.get(Object)" because the return value of 
> "org.apache.maven.plugin.compiler.AbstractCompilerMojo.getPathElements()" is 
> null
> at org.apache.maven.plugin.compiler.AbstractCompilerMojo.execute 
> (AbstractCompilerMojo.java:1126)
> at org.apache.maven.plugin.compiler.CompilerMojo.execute 
> (CompilerMojo.java:198)
> at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo 
> (DefaultBuildPluginManager.java:126)
> at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2 
> (MojoExecutor.java:328)
> at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute 
> (MojoExecutor.java:316)
> at org.apache.maven.lifecycle.internal.MojoExecutor.execute 
> (MojoExecutor.java:212)
> at org.apache.maven.lifecycle.internal.MojoExecutor.execute 
> (MojoExecutor.java:174)
> at org.apache.maven.lifecycle.internal.MojoExecutor.access$000 
> (MojoExecutor.java:75)
> at org.apache.maven.lifecycle.internal.MojoExecutor$1.run 
> (MojoExecutor.java:162)
> at org.apache.maven.plugin.DefaultMojosExecutionStrategy.execute 
> (DefaultMojosExecutionStrategy.java:39)
> at org.apache.maven.lifecycle.internal.MojoExecutor.execute 
> (MojoExecutor.java:159)
> at 
> org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject 
> (LifecycleModuleBuilder.java:105)
> at io.takari.maven.builder.smart.SmartBuilderImpl.buildProject 
> (SmartBuilderImpl.java:209)
> at io.takari.maven.builder.smart.SmartBuilderImpl$ProjectBuildTask.run 
> (SmartBuilderImpl.java:81)
> at java.util.concurrent.Executors$RunnableAdapter.call 
> (Executors.java:539)
> at java.util.concurrent.FutureTask.run (FutureTask.java:264)
> at java.util.concurrent.ThreadPoolExecutor.runWorker 
> (ThreadPoolExecutor.java:1136)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run 
> (ThreadPoolExecutor.java:635)
> at java.lang.Thread.run (Thread.java:833)
> {noformat}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (MCOMPILER-391) annotationProcessorPaths have to follow dependencyManagement rules

2023-10-07 Thread Herve Boutemy (Jira)


 [ 
https://issues.apache.org/jira/browse/MCOMPILER-391?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Herve Boutemy updated MCOMPILER-391:

Fix Version/s: 3.11.1
   (was: 3.12.0)

> annotationProcessorPaths have to follow dependencyManagement rules
> --
>
> Key: MCOMPILER-391
> URL: https://issues.apache.org/jira/browse/MCOMPILER-391
> Project: Maven Compiler Plugin
>  Issue Type: Bug
>Affects Versions: 3.8.0
>Reporter: Stanislav Spiridonov
>Assignee: Slawomir Jaranowski
>Priority: Blocker
> Fix For: 3.11.1
>
> Attachments: MCOMPILER-391.zip
>
>
> # Use the version from dependency management
>  # Respect the exclude (blocker for me)



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (ARCHETYPE-651) add a message when updating local catalog

2023-10-07 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/ARCHETYPE-651?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17772875#comment-17772875
 ] 

ASF GitHub Bot commented on ARCHETYPE-651:
--

hboutemy opened a new pull request, #157:
URL: https://github.com/apache/maven-archetype/pull/157

   (no comment)




> add a message when updating local catalog
> -
>
> Key: ARCHETYPE-651
> URL: https://issues.apache.org/jira/browse/ARCHETYPE-651
> Project: Maven Archetype
>  Issue Type: Improvement
>  Components: Plugin
>Affects Versions: 3.2.1
>Reporter: Herve Boutemy
>Priority: Major
> Fix For: 3.3.0
>
>
> {noformat}
> $ mvn install
> [INFO] Scanning for projects...
> [INFO]
> [INFO] -< org.apache.maven.archetypes:maven-archetype-simple 
> >-
> [INFO] Building Maven Simple Project Archetype 1.5-SNAPSHOT
> [INFO]   from pom.xml
> [INFO] --[ maven-archetype 
> ]---
> ...
> [INFO] --- install:2.5.2:install (default-install) @ maven-archetype-simple 
> ---
> [INFO] Installing target/maven-archetype-simple-1.5-SNAPSHOT.jar to 
> ~/.m2/repository/org/apache/maven/archetypes/maven-archetype-simple/1.5-SNAPSHOT/maven-archetype-simple-1.5-SNAPSHOT.jar
> [INFO] Installing pom.xml to 
> ~/.m2/repository/org/apache/maven/archetypes/maven-archetype-simple/1.5-SNAPSHOT/maven-archetype-simple-1.5-SNAPSHOT.pom
> [INFO]
> [INFO] --- archetype:3.2.0:update-local-catalog 
> (default-update-local-catalog) @ maven-archetype-simple ---
> [INFO] 
> 
> [INFO] BUILD SUCCESS
> [INFO] 
> 
> [INFO] Total time:  15.633 s
> [INFO] Finished at: 2023-10-07T07:10:55-03:00
> [INFO] 
> 
> {noformat}
> pointing to the updated file would better show what happened during the goal 
> execution: nothing?



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[PR] [ARCHETYPE-651] add INFO when catalog updated [maven-archetype]

2023-10-07 Thread via GitHub


hboutemy opened a new pull request, #157:
URL: https://github.com/apache/maven-archetype/pull/157

   (no comment)


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



[PR] [ARCHETYPE-650] point to archetype file in error message [maven-archetype]

2023-10-07 Thread via GitHub


hboutemy opened a new pull request, #156:
URL: https://github.com/apache/maven-archetype/pull/156

   (no comment)


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



[jira] [Commented] (ARCHETYPE-650) improve "The defined artifact is not an archetype" error message

2023-10-07 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/ARCHETYPE-650?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17772855#comment-17772855
 ] 

ASF GitHub Bot commented on ARCHETYPE-650:
--

hboutemy opened a new pull request, #156:
URL: https://github.com/apache/maven-archetype/pull/156

   (no comment)




> improve "The defined artifact is not an archetype" error message
> 
>
> Key: ARCHETYPE-650
> URL: https://issues.apache.org/jira/browse/ARCHETYPE-650
> Project: Maven Archetype
>  Issue Type: Improvement
>  Components: Plugin
>Affects Versions: 3.2.0
>Reporter: Herve Boutemy
>Priority: Major
> Fix For: 3.3.0
>
>
> see https://lists.apache.org/thread/pssotrxjjgvd6dflp594h7z7rl89h297
> the message does not help at all understanding WHY: what file is looking at? 
> is it looking at the wrong file, or is the file not containing expected 
> content?
> we should at least point to the file that was tried to be used as an 
> archetype so the user can investigate further



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


Re: [PR] Use Maven 3.9.5 as default [maven-gh-actions-shared]

2023-10-07 Thread via GitHub


slawekjaranowski merged PR #83:
URL: https://github.com/apache/maven-gh-actions-shared/pull/83


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



[jira] [Commented] (MNG-7902) sort plugins in validation report

2023-10-07 Thread Michael Osipov (Jira)


[ 
https://issues.apache.org/jira/browse/MNG-7902?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17772835#comment-17772835
 ] 

Michael Osipov commented on MNG-7902:
-

Keeping brain muscles active!

> sort plugins in validation report
> -
>
> Key: MNG-7902
> URL: https://issues.apache.org/jira/browse/MNG-7902
> Project: Maven
>  Issue Type: Improvement
>  Components: Core
>Reporter: Michael Keppler
>Priority: Minor
> Attachments: image-2023-10-07-13-33-27-762.png
>
>
> Please don't ever output the content of a Set for consumption by humans 
> without sorting it first. The order is otherwise "random". Sorting (case 
> insensitive) makes the same output easier to read, especially when trying to 
> find one specific entry (e.g. "Did we fix plugin foo already?")
> !image-2023-10-07-13-33-27-762.png!



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


Re: [PR] [MPLUGIN-442] Generate goal documentation leveraging Sink API [maven-plugin-tools]

2023-10-07 Thread via GitHub


kwin commented on code in PR #225:
URL: 
https://github.com/apache/maven-plugin-tools/pull/225#discussion_r1349527396


##
maven-plugin-report-plugin/src/main/java/org/apache/maven/plugin/plugin/report/GoalRenderer.java:
##
@@ -0,0 +1,533 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.maven.plugin.plugin.report;
+
+import java.io.File;
+import java.net.URI;
+import java.net.URISyntaxException;
+import java.text.MessageFormat;
+import java.util.AbstractMap.SimpleEntry;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Locale;
+import java.util.Map;
+import java.util.Optional;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+import java.util.stream.Collectors;
+
+import org.apache.commons.lang3.StringUtils;
+import org.apache.maven.doxia.sink.Sink;
+import org.apache.maven.doxia.sink.impl.SinkEventAttributeSet.Semantics;
+import org.apache.maven.doxia.util.HtmlTools;
+import org.apache.maven.plugin.descriptor.MojoDescriptor;
+import org.apache.maven.plugin.descriptor.Parameter;
+import org.apache.maven.plugin.logging.Log;
+import org.apache.maven.project.MavenProject;
+import org.apache.maven.tools.plugin.EnhancedParameterWrapper;
+import org.apache.maven.tools.plugin.ExtendedMojoDescriptor;
+import org.apache.maven.tools.plugin.javadoc.JavadocLinkGenerator;
+import org.apache.maven.tools.plugin.util.PluginUtils;
+import org.codehaus.plexus.i18n.I18N;
+
+public class GoalRenderer extends AbstractPluginReportRenderer {
+
+/** Regular expression matching an XHTML link with group 1 = link target, 
group 2 = link label. */
+private static final Pattern HTML_LINK_PATTERN = Pattern.compile("(.*?)");
+
+/** The directory where the generated site is written. Used for resolving 
relative links to javadoc. */
+private final File reportOutputDirectory;
+
+private final MojoDescriptor descriptor;
+private final boolean disableInternalJavadocLinkValidation;
+
+private final Log log;
+
+public GoalRenderer(
+Sink sink,
+I18N i18n,
+Locale locale,
+MavenProject project,
+MojoDescriptor descriptor,
+File reportOutputDirectory,
+boolean disableInternalJavadocLinkValidation,
+Log log) {
+super(sink, locale, i18n, project);
+this.reportOutputDirectory = reportOutputDirectory;
+this.descriptor = descriptor;
+this.disableInternalJavadocLinkValidation = 
disableInternalJavadocLinkValidation;
+this.log = log;
+}
+
+@Override
+public String getTitle() {
+return descriptor.getFullGoalName();
+}
+
+@Override
+protected void renderBody() {
+startSection(descriptor.getFullGoalName());
+renderReportNotice();
+renderDescription("fullname", descriptor.getPluginDescriptor().getId() 
+ ":" + descriptor.getGoal(), false);
+
+String context = "goal " + descriptor.getGoal();
+if (StringUtils.isNotEmpty(descriptor.getDeprecated())) {
+renderDescription("deprecated", 
getXhtmlWithValidatedLinks(descriptor.getDeprecated(), context), true);
+}
+if (StringUtils.isNotEmpty(descriptor.getDescription())) {
+renderDescription("description", 
getXhtmlWithValidatedLinks(descriptor.getDescription(), context), true);
+} else {
+renderDescription("description", getI18nString("nodescription"), 
false);
+}
+renderAttributes();
+
+List parameterList = filterParameters(
+descriptor.getParameters() != null ? 
descriptor.getParameters() : Collections.emptyList());
+if (parameterList.isEmpty()) {
+startSection(getI18nString("parameters"));
+sink.paragraph();
+sink.text(getI18nString("noParameter"));
+sink.paragraph_();
+endSection();
+} else {
+renderParameterOverviewTable(
+getI18nString("requiredParameters"),
+
parameterList.stream().filter(Parameter::isRequired).iterator());
+

[jira] [Commented] (MPLUGIN-442) Get rid of deprecated XDoc format

2023-10-07 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/MPLUGIN-442?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17772825#comment-17772825
 ] 

ASF GitHub Bot commented on MPLUGIN-442:


kwin commented on code in PR #225:
URL: 
https://github.com/apache/maven-plugin-tools/pull/225#discussion_r1349527396


##
maven-plugin-report-plugin/src/main/java/org/apache/maven/plugin/plugin/report/GoalRenderer.java:
##
@@ -0,0 +1,533 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.maven.plugin.plugin.report;
+
+import java.io.File;
+import java.net.URI;
+import java.net.URISyntaxException;
+import java.text.MessageFormat;
+import java.util.AbstractMap.SimpleEntry;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Locale;
+import java.util.Map;
+import java.util.Optional;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+import java.util.stream.Collectors;
+
+import org.apache.commons.lang3.StringUtils;
+import org.apache.maven.doxia.sink.Sink;
+import org.apache.maven.doxia.sink.impl.SinkEventAttributeSet.Semantics;
+import org.apache.maven.doxia.util.HtmlTools;
+import org.apache.maven.plugin.descriptor.MojoDescriptor;
+import org.apache.maven.plugin.descriptor.Parameter;
+import org.apache.maven.plugin.logging.Log;
+import org.apache.maven.project.MavenProject;
+import org.apache.maven.tools.plugin.EnhancedParameterWrapper;
+import org.apache.maven.tools.plugin.ExtendedMojoDescriptor;
+import org.apache.maven.tools.plugin.javadoc.JavadocLinkGenerator;
+import org.apache.maven.tools.plugin.util.PluginUtils;
+import org.codehaus.plexus.i18n.I18N;
+
+public class GoalRenderer extends AbstractPluginReportRenderer {
+
+/** Regular expression matching an XHTML link with group 1 = link target, 
group 2 = link label. */
+private static final Pattern HTML_LINK_PATTERN = Pattern.compile("(.*?)");
+
+/** The directory where the generated site is written. Used for resolving 
relative links to javadoc. */
+private final File reportOutputDirectory;
+
+private final MojoDescriptor descriptor;
+private final boolean disableInternalJavadocLinkValidation;
+
+private final Log log;
+
+public GoalRenderer(
+Sink sink,
+I18N i18n,
+Locale locale,
+MavenProject project,
+MojoDescriptor descriptor,
+File reportOutputDirectory,
+boolean disableInternalJavadocLinkValidation,
+Log log) {
+super(sink, locale, i18n, project);
+this.reportOutputDirectory = reportOutputDirectory;
+this.descriptor = descriptor;
+this.disableInternalJavadocLinkValidation = 
disableInternalJavadocLinkValidation;
+this.log = log;
+}
+
+@Override
+public String getTitle() {
+return descriptor.getFullGoalName();
+}
+
+@Override
+protected void renderBody() {
+startSection(descriptor.getFullGoalName());
+renderReportNotice();
+renderDescription("fullname", descriptor.getPluginDescriptor().getId() 
+ ":" + descriptor.getGoal(), false);
+
+String context = "goal " + descriptor.getGoal();
+if (StringUtils.isNotEmpty(descriptor.getDeprecated())) {
+renderDescription("deprecated", 
getXhtmlWithValidatedLinks(descriptor.getDeprecated(), context), true);
+}
+if (StringUtils.isNotEmpty(descriptor.getDescription())) {
+renderDescription("description", 
getXhtmlWithValidatedLinks(descriptor.getDescription(), context), true);
+} else {
+renderDescription("description", getI18nString("nodescription"), 
false);
+}
+renderAttributes();
+
+List parameterList = filterParameters(
+descriptor.getParameters() != null ? 
descriptor.getParameters() : Collections.emptyList());
+if (parameterList.isEmpty()) {
+startSection(getI18nString("parameters"));
+sink.paragraph();
+sink.text(getI18nString("noParameter"));
+sink.paragraph_();
+

[jira] [Commented] (MPLUGIN-442) Get rid of deprecated XDoc format

2023-10-07 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/MPLUGIN-442?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17772824#comment-17772824
 ] 

ASF GitHub Bot commented on MPLUGIN-442:


kwin commented on code in PR #225:
URL: 
https://github.com/apache/maven-plugin-tools/pull/225#discussion_r1349527396


##
maven-plugin-report-plugin/src/main/java/org/apache/maven/plugin/plugin/report/GoalRenderer.java:
##
@@ -0,0 +1,533 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.maven.plugin.plugin.report;
+
+import java.io.File;
+import java.net.URI;
+import java.net.URISyntaxException;
+import java.text.MessageFormat;
+import java.util.AbstractMap.SimpleEntry;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Locale;
+import java.util.Map;
+import java.util.Optional;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+import java.util.stream.Collectors;
+
+import org.apache.commons.lang3.StringUtils;
+import org.apache.maven.doxia.sink.Sink;
+import org.apache.maven.doxia.sink.impl.SinkEventAttributeSet.Semantics;
+import org.apache.maven.doxia.util.HtmlTools;
+import org.apache.maven.plugin.descriptor.MojoDescriptor;
+import org.apache.maven.plugin.descriptor.Parameter;
+import org.apache.maven.plugin.logging.Log;
+import org.apache.maven.project.MavenProject;
+import org.apache.maven.tools.plugin.EnhancedParameterWrapper;
+import org.apache.maven.tools.plugin.ExtendedMojoDescriptor;
+import org.apache.maven.tools.plugin.javadoc.JavadocLinkGenerator;
+import org.apache.maven.tools.plugin.util.PluginUtils;
+import org.codehaus.plexus.i18n.I18N;
+
+public class GoalRenderer extends AbstractPluginReportRenderer {
+
+/** Regular expression matching an XHTML link with group 1 = link target, 
group 2 = link label. */
+private static final Pattern HTML_LINK_PATTERN = Pattern.compile("(.*?)");
+
+/** The directory where the generated site is written. Used for resolving 
relative links to javadoc. */
+private final File reportOutputDirectory;
+
+private final MojoDescriptor descriptor;
+private final boolean disableInternalJavadocLinkValidation;
+
+private final Log log;
+
+public GoalRenderer(
+Sink sink,
+I18N i18n,
+Locale locale,
+MavenProject project,
+MojoDescriptor descriptor,
+File reportOutputDirectory,
+boolean disableInternalJavadocLinkValidation,
+Log log) {
+super(sink, locale, i18n, project);
+this.reportOutputDirectory = reportOutputDirectory;
+this.descriptor = descriptor;
+this.disableInternalJavadocLinkValidation = 
disableInternalJavadocLinkValidation;
+this.log = log;
+}
+
+@Override
+public String getTitle() {
+return descriptor.getFullGoalName();
+}
+
+@Override
+protected void renderBody() {
+startSection(descriptor.getFullGoalName());
+renderReportNotice();
+renderDescription("fullname", descriptor.getPluginDescriptor().getId() 
+ ":" + descriptor.getGoal(), false);
+
+String context = "goal " + descriptor.getGoal();
+if (StringUtils.isNotEmpty(descriptor.getDeprecated())) {
+renderDescription("deprecated", 
getXhtmlWithValidatedLinks(descriptor.getDeprecated(), context), true);
+}
+if (StringUtils.isNotEmpty(descriptor.getDescription())) {
+renderDescription("description", 
getXhtmlWithValidatedLinks(descriptor.getDescription(), context), true);
+} else {
+renderDescription("description", getI18nString("nodescription"), 
false);
+}
+renderAttributes();
+
+List parameterList = filterParameters(
+descriptor.getParameters() != null ? 
descriptor.getParameters() : Collections.emptyList());
+if (parameterList.isEmpty()) {
+startSection(getI18nString("parameters"));
+sink.paragraph();
+sink.text(getI18nString("noParameter"));
+sink.paragraph_();
+

Re: [PR] [MPLUGIN-442] Generate goal documentation leveraging Sink API [maven-plugin-tools]

2023-10-07 Thread via GitHub


kwin commented on code in PR #225:
URL: 
https://github.com/apache/maven-plugin-tools/pull/225#discussion_r1349527396


##
maven-plugin-report-plugin/src/main/java/org/apache/maven/plugin/plugin/report/GoalRenderer.java:
##
@@ -0,0 +1,533 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.maven.plugin.plugin.report;
+
+import java.io.File;
+import java.net.URI;
+import java.net.URISyntaxException;
+import java.text.MessageFormat;
+import java.util.AbstractMap.SimpleEntry;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Locale;
+import java.util.Map;
+import java.util.Optional;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+import java.util.stream.Collectors;
+
+import org.apache.commons.lang3.StringUtils;
+import org.apache.maven.doxia.sink.Sink;
+import org.apache.maven.doxia.sink.impl.SinkEventAttributeSet.Semantics;
+import org.apache.maven.doxia.util.HtmlTools;
+import org.apache.maven.plugin.descriptor.MojoDescriptor;
+import org.apache.maven.plugin.descriptor.Parameter;
+import org.apache.maven.plugin.logging.Log;
+import org.apache.maven.project.MavenProject;
+import org.apache.maven.tools.plugin.EnhancedParameterWrapper;
+import org.apache.maven.tools.plugin.ExtendedMojoDescriptor;
+import org.apache.maven.tools.plugin.javadoc.JavadocLinkGenerator;
+import org.apache.maven.tools.plugin.util.PluginUtils;
+import org.codehaus.plexus.i18n.I18N;
+
+public class GoalRenderer extends AbstractPluginReportRenderer {
+
+/** Regular expression matching an XHTML link with group 1 = link target, 
group 2 = link label. */
+private static final Pattern HTML_LINK_PATTERN = Pattern.compile("(.*?)");
+
+/** The directory where the generated site is written. Used for resolving 
relative links to javadoc. */
+private final File reportOutputDirectory;
+
+private final MojoDescriptor descriptor;
+private final boolean disableInternalJavadocLinkValidation;
+
+private final Log log;
+
+public GoalRenderer(
+Sink sink,
+I18N i18n,
+Locale locale,
+MavenProject project,
+MojoDescriptor descriptor,
+File reportOutputDirectory,
+boolean disableInternalJavadocLinkValidation,
+Log log) {
+super(sink, locale, i18n, project);
+this.reportOutputDirectory = reportOutputDirectory;
+this.descriptor = descriptor;
+this.disableInternalJavadocLinkValidation = 
disableInternalJavadocLinkValidation;
+this.log = log;
+}
+
+@Override
+public String getTitle() {
+return descriptor.getFullGoalName();
+}
+
+@Override
+protected void renderBody() {
+startSection(descriptor.getFullGoalName());
+renderReportNotice();
+renderDescription("fullname", descriptor.getPluginDescriptor().getId() 
+ ":" + descriptor.getGoal(), false);
+
+String context = "goal " + descriptor.getGoal();
+if (StringUtils.isNotEmpty(descriptor.getDeprecated())) {
+renderDescription("deprecated", 
getXhtmlWithValidatedLinks(descriptor.getDeprecated(), context), true);
+}
+if (StringUtils.isNotEmpty(descriptor.getDescription())) {
+renderDescription("description", 
getXhtmlWithValidatedLinks(descriptor.getDescription(), context), true);
+} else {
+renderDescription("description", getI18nString("nodescription"), 
false);
+}
+renderAttributes();
+
+List parameterList = filterParameters(
+descriptor.getParameters() != null ? 
descriptor.getParameters() : Collections.emptyList());
+if (parameterList.isEmpty()) {
+startSection(getI18nString("parameters"));
+sink.paragraph();
+sink.text(getI18nString("noParameter"));
+sink.paragraph_();
+endSection();
+} else {
+renderParameterOverviewTable(
+getI18nString("requiredParameters"),
+
parameterList.stream().filter(Parameter::isRequired).iterator());
+

[jira] [Created] (MSHARED-1315) PR template references non-existing maven profile for verification

2023-10-07 Thread Michael Keppler (Jira)
Michael Keppler created MSHARED-1315:


 Summary: PR template references non-existing maven profile for 
verification
 Key: MSHARED-1315
 URL: https://issues.apache.org/jira/browse/MSHARED-1315
 Project: Maven Shared Components
  Issue Type: Bug
Reporter: Michael Keppler


[https://github.com/apache/maven-filtering/blob/master/.github/pull_request_template.md]
 asks contributors to verify with a specific profile. The profile doesn't exist 
in that project. Might be a copy-paste error, if that was taken from another 
component.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (SUREFIRE-1563) NoClassDefFoundError for JPMS modules with "require static"

2023-10-07 Thread Robert Scholte (Jira)


[ 
https://issues.apache.org/jira/browse/SUREFIRE-1563?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17772809#comment-17772809
 ] 

Robert Scholte commented on SUREFIRE-1563:
--

Not sure what the status is, and what you expect here:
{{}}
{{  --add-modules=org.slf4j}}
{{}}
This works, not sure if it is enough

The rational: By default all static required modules are not added to the 
runtime, as they are optional. The developer needs to decide how to execute 
these tests: without these or with one or more optional(static) modules.


> NoClassDefFoundError for JPMS modules with "require static"
> ---
>
> Key: SUREFIRE-1563
> URL: https://issues.apache.org/jira/browse/SUREFIRE-1563
> Project: Maven Surefire
>  Issue Type: Bug
>  Components: Maven Surefire Plugin
>Affects Versions: 2.22.0
>Reporter: Simone Bordet
>Assignee: Olivier Lamy
>Priority: Major
> Attachments: maven-jpms.tgz
>
>
> When a Maven module has a {{module-info.java}} that contains a {{requires 
> static}}, Surefire throws {{NoClassDefFoundError}} when running the tests for 
> that Maven module.
> If the dependency is declared only as {{required}} (no {{static}}), then the 
> tests run fine.
> Attached a reproducible project.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[PR] Fix typos and grammar [maven-filtering]

2023-10-07 Thread via GitHub


Bananeweizen opened a new pull request, #81:
URL: https://github.com/apache/maven-filtering/pull/81

- [X] Make sure there is a [JIRA 
issue](https://issues.apache.org/jira/browse/MSHARED) filed 
  for the change (usually before you start working on it).  Trivial 
changes like typos do not 
  require a JIRA issue.  Your pull request should address just this 
issue, without 
  pulling in other changes.
- [X] Each commit in the pull request should have a meaningful subject line 
and body.
- [X] Run `mvn clean verify -Prun-its` to make sure basic checks pass. A 
more thorough check will 
  be performed on your pull request automatically.
   
   To make clear that you license your contribution under 
   the [Apache License Version 2.0, January 
2004](http://www.apache.org/licenses/LICENSE-2.0)
   you have to acknowledge this by using the following check-box.
   
- [X] I hereby declare this contribution to be licenced under the [Apache 
License Version 2.0, January 2004](http://www.apache.org/licenses/LICENSE-2.0)
   
- [ ] In any other case, please file an [Apache Individual Contributor 
License Agreement](https://www.apache.org/licenses/icla.pdf).
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



[jira] [Updated] (ARCHETYPE-651) add a message when updating local catalog

2023-10-07 Thread Herve Boutemy (Jira)


 [ 
https://issues.apache.org/jira/browse/ARCHETYPE-651?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Herve Boutemy updated ARCHETYPE-651:

Summary: add a message when updating local catalog  (was: add a message 
wuehn updating local catalog)

> add a message when updating local catalog
> -
>
> Key: ARCHETYPE-651
> URL: https://issues.apache.org/jira/browse/ARCHETYPE-651
> Project: Maven Archetype
>  Issue Type: Improvement
>  Components: Plugin
>Affects Versions: 3.2.1
>Reporter: Herve Boutemy
>Priority: Major
> Fix For: 3.3.0
>
>
> {noformat}
> $ mvn install
> [INFO] Scanning for projects...
> [INFO]
> [INFO] -< org.apache.maven.archetypes:maven-archetype-simple 
> >-
> [INFO] Building Maven Simple Project Archetype 1.5-SNAPSHOT
> [INFO]   from pom.xml
> [INFO] --[ maven-archetype 
> ]---
> ...
> [INFO] --- install:2.5.2:install (default-install) @ maven-archetype-simple 
> ---
> [INFO] Installing target/maven-archetype-simple-1.5-SNAPSHOT.jar to 
> ~/.m2/repository/org/apache/maven/archetypes/maven-archetype-simple/1.5-SNAPSHOT/maven-archetype-simple-1.5-SNAPSHOT.jar
> [INFO] Installing pom.xml to 
> ~/.m2/repository/org/apache/maven/archetypes/maven-archetype-simple/1.5-SNAPSHOT/maven-archetype-simple-1.5-SNAPSHOT.pom
> [INFO]
> [INFO] --- archetype:3.2.0:update-local-catalog 
> (default-update-local-catalog) @ maven-archetype-simple ---
> [INFO] 
> 
> [INFO] BUILD SUCCESS
> [INFO] 
> 
> [INFO] Total time:  15.633 s
> [INFO] Finished at: 2023-10-07T07:10:55-03:00
> [INFO] 
> 
> {noformat}
> pointing to the updated file would better show what happened during the goal 
> execution: nothing?



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (MNG-7902) sort plugins in validation report

2023-10-07 Thread Michael Keppler (Jira)
Michael Keppler created MNG-7902:


 Summary: sort plugins in validation report
 Key: MNG-7902
 URL: https://issues.apache.org/jira/browse/MNG-7902
 Project: Maven
  Issue Type: Improvement
  Components: Core
Reporter: Michael Keppler
 Attachments: image-2023-10-07-13-33-27-762.png

Please don't ever output the content of a Set for consumption by humans without 
sorting it first. The order is otherwise "random". Sorting (case insensitive) 
makes the same output easier to read, especially when trying to find one 
specific entry (e.g. "Did we fix plugin foo already?")

!image-2023-10-07-13-33-27-762.png!



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (MSHARED-1314) mark execute() final to avoid users extending reporting-impl implementation

2023-10-07 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/MSHARED-1314?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17772802#comment-17772802
 ] 

ASF GitHub Bot commented on MSHARED-1314:
-

michael-o commented on code in PR #24:
URL: 
https://github.com/apache/maven-reporting-impl/pull/24#discussion_r1349508543


##
src/main/java/org/apache/maven/reporting/AbstractMavenReport.java:
##
@@ -179,12 +179,14 @@ public abstract class AbstractMavenReport extends 
AbstractMojo implements MavenM
 
 /**
  * This method is called when the report generation is invoked directly as 
a standalone Mojo.
+ * This implementation is now marked {@code final} as it is not expected 
to be overridden:
+ * {@code maven-reporting-impl} provides that plumbing.

Review Comment:
   ...provides all necessary plumbing.



##
src/site/apt/index.apt.vm:
##
@@ -38,10 +38,13 @@ ${project.name}
 
   []
 
+  The 2 APIs implementations are provided by 
<<<{{{./apidocs/org/apache/maven/reporting/AbstractMavenReport.html}AbstractMavenReport}},

Review Comment:
   The two API implementations...





> mark execute() final to avoid users extending reporting-impl implementation
> ---
>
> Key: MSHARED-1314
> URL: https://issues.apache.org/jira/browse/MSHARED-1314
> Project: Maven Shared Components
>  Issue Type: Improvement
>  Components: maven-reporting-impl
>Affects Versions: maven-reporting-impl-4.0.0-M10
>Reporter: Herve Boutemy
>Assignee: Herve Boutemy
>Priority: Major
>
> see https://lists.apache.org/thread/mcbh55967j79dpv72tqnoqgowxhgvoj6



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


Re: [PR] [MSHARED-1314] mark execute() final and improve documentation [maven-reporting-impl]

2023-10-07 Thread via GitHub


michael-o commented on code in PR #24:
URL: 
https://github.com/apache/maven-reporting-impl/pull/24#discussion_r1349508543


##
src/main/java/org/apache/maven/reporting/AbstractMavenReport.java:
##
@@ -179,12 +179,14 @@ public abstract class AbstractMavenReport extends 
AbstractMojo implements MavenM
 
 /**
  * This method is called when the report generation is invoked directly as 
a standalone Mojo.
+ * This implementation is now marked {@code final} as it is not expected 
to be overridden:
+ * {@code maven-reporting-impl} provides that plumbing.

Review Comment:
   ...provides all necessary plumbing.



##
src/site/apt/index.apt.vm:
##
@@ -38,10 +38,13 @@ ${project.name}
 
   []
 
+  The 2 APIs implementations are provided by 
<<<{{{./apidocs/org/apache/maven/reporting/AbstractMavenReport.html}AbstractMavenReport}},

Review Comment:
   The two API implementations...



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



[jira] [Created] (ARCHETYPE-652) document requirement history

2023-10-07 Thread Herve Boutemy (Jira)
Herve Boutemy created ARCHETYPE-652:
---

 Summary: document requirement history
 Key: ARCHETYPE-652
 URL: https://issues.apache.org/jira/browse/ARCHETYPE-652
 Project: Maven Archetype
  Issue Type: Task
Affects Versions: 3.2.1
Reporter: Herve Boutemy
 Fix For: 3.3.0


required by upgrade to Java 8: people ned to know how to keep a Java 7 
compatible plugin previous release



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Closed] (ARCHETYPE-623) Require Java 8

2023-10-07 Thread Herve Boutemy (Jira)


 [ 
https://issues.apache.org/jira/browse/ARCHETYPE-623?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Herve Boutemy closed ARCHETYPE-623.
---
Fix Version/s: (was: 3.3.0)
   Resolution: Fixed

> Require Java 8
> --
>
> Key: ARCHETYPE-623
> URL: https://issues.apache.org/jira/browse/ARCHETYPE-623
> Project: Maven Archetype
>  Issue Type: Dependency upgrade
>Affects Versions: 3.2.1
>Reporter: Sylwester Lachiewicz
>Priority: Major
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (MPLUGIN-442) Get rid of deprecated XDoc format

2023-10-07 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/MPLUGIN-442?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17772799#comment-17772799
 ] 

ASF GitHub Bot commented on MPLUGIN-442:


michael-o commented on code in PR #225:
URL: 
https://github.com/apache/maven-plugin-tools/pull/225#discussion_r1349506533


##
maven-plugin-report-plugin/src/main/java/org/apache/maven/plugin/plugin/report/GoalRenderer.java:
##
@@ -0,0 +1,533 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.maven.plugin.plugin.report;
+
+import java.io.File;
+import java.net.URI;
+import java.net.URISyntaxException;
+import java.text.MessageFormat;
+import java.util.AbstractMap.SimpleEntry;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Locale;
+import java.util.Map;
+import java.util.Optional;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+import java.util.stream.Collectors;
+
+import org.apache.commons.lang3.StringUtils;
+import org.apache.maven.doxia.sink.Sink;
+import org.apache.maven.doxia.sink.impl.SinkEventAttributeSet.Semantics;
+import org.apache.maven.doxia.util.HtmlTools;
+import org.apache.maven.plugin.descriptor.MojoDescriptor;
+import org.apache.maven.plugin.descriptor.Parameter;
+import org.apache.maven.plugin.logging.Log;
+import org.apache.maven.project.MavenProject;
+import org.apache.maven.tools.plugin.EnhancedParameterWrapper;
+import org.apache.maven.tools.plugin.ExtendedMojoDescriptor;
+import org.apache.maven.tools.plugin.javadoc.JavadocLinkGenerator;
+import org.apache.maven.tools.plugin.util.PluginUtils;
+import org.codehaus.plexus.i18n.I18N;
+
+public class GoalRenderer extends AbstractPluginReportRenderer {
+
+/** Regular expression matching an XHTML link with group 1 = link target, 
group 2 = link label. */
+private static final Pattern HTML_LINK_PATTERN = Pattern.compile("(.*?)");
+
+/** The directory where the generated site is written. Used for resolving 
relative links to javadoc. */
+private final File reportOutputDirectory;
+
+private final MojoDescriptor descriptor;
+private final boolean disableInternalJavadocLinkValidation;
+
+private final Log log;
+
+public GoalRenderer(
+Sink sink,
+I18N i18n,
+Locale locale,
+MavenProject project,
+MojoDescriptor descriptor,
+File reportOutputDirectory,
+boolean disableInternalJavadocLinkValidation,
+Log log) {
+super(sink, locale, i18n, project);
+this.reportOutputDirectory = reportOutputDirectory;
+this.descriptor = descriptor;
+this.disableInternalJavadocLinkValidation = 
disableInternalJavadocLinkValidation;
+this.log = log;
+}
+
+@Override
+public String getTitle() {
+return descriptor.getFullGoalName();
+}
+
+@Override
+protected void renderBody() {
+startSection(descriptor.getFullGoalName());
+renderReportNotice();
+renderDescription("fullname", descriptor.getPluginDescriptor().getId() 
+ ":" + descriptor.getGoal(), false);
+
+String context = "goal " + descriptor.getGoal();
+if (StringUtils.isNotEmpty(descriptor.getDeprecated())) {
+renderDescription("deprecated", 
getXhtmlWithValidatedLinks(descriptor.getDeprecated(), context), true);
+}
+if (StringUtils.isNotEmpty(descriptor.getDescription())) {
+renderDescription("description", 
getXhtmlWithValidatedLinks(descriptor.getDescription(), context), true);
+} else {
+renderDescription("description", getI18nString("nodescription"), 
false);
+}
+renderAttributes();
+
+List parameterList = filterParameters(
+descriptor.getParameters() != null ? 
descriptor.getParameters() : Collections.emptyList());
+if (parameterList.isEmpty()) {
+startSection(getI18nString("parameters"));
+sink.paragraph();
+sink.text(getI18nString("noParameter"));
+sink.paragraph_();
+

Re: [PR] [MPLUGIN-442] Generate goal documentation leveraging Sink API [maven-plugin-tools]

2023-10-07 Thread via GitHub


michael-o commented on code in PR #225:
URL: 
https://github.com/apache/maven-plugin-tools/pull/225#discussion_r1349506533


##
maven-plugin-report-plugin/src/main/java/org/apache/maven/plugin/plugin/report/GoalRenderer.java:
##
@@ -0,0 +1,533 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.maven.plugin.plugin.report;
+
+import java.io.File;
+import java.net.URI;
+import java.net.URISyntaxException;
+import java.text.MessageFormat;
+import java.util.AbstractMap.SimpleEntry;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Locale;
+import java.util.Map;
+import java.util.Optional;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+import java.util.stream.Collectors;
+
+import org.apache.commons.lang3.StringUtils;
+import org.apache.maven.doxia.sink.Sink;
+import org.apache.maven.doxia.sink.impl.SinkEventAttributeSet.Semantics;
+import org.apache.maven.doxia.util.HtmlTools;
+import org.apache.maven.plugin.descriptor.MojoDescriptor;
+import org.apache.maven.plugin.descriptor.Parameter;
+import org.apache.maven.plugin.logging.Log;
+import org.apache.maven.project.MavenProject;
+import org.apache.maven.tools.plugin.EnhancedParameterWrapper;
+import org.apache.maven.tools.plugin.ExtendedMojoDescriptor;
+import org.apache.maven.tools.plugin.javadoc.JavadocLinkGenerator;
+import org.apache.maven.tools.plugin.util.PluginUtils;
+import org.codehaus.plexus.i18n.I18N;
+
+public class GoalRenderer extends AbstractPluginReportRenderer {
+
+/** Regular expression matching an XHTML link with group 1 = link target, 
group 2 = link label. */
+private static final Pattern HTML_LINK_PATTERN = Pattern.compile("(.*?)");
+
+/** The directory where the generated site is written. Used for resolving 
relative links to javadoc. */
+private final File reportOutputDirectory;
+
+private final MojoDescriptor descriptor;
+private final boolean disableInternalJavadocLinkValidation;
+
+private final Log log;
+
+public GoalRenderer(
+Sink sink,
+I18N i18n,
+Locale locale,
+MavenProject project,
+MojoDescriptor descriptor,
+File reportOutputDirectory,
+boolean disableInternalJavadocLinkValidation,
+Log log) {
+super(sink, locale, i18n, project);
+this.reportOutputDirectory = reportOutputDirectory;
+this.descriptor = descriptor;
+this.disableInternalJavadocLinkValidation = 
disableInternalJavadocLinkValidation;
+this.log = log;
+}
+
+@Override
+public String getTitle() {
+return descriptor.getFullGoalName();
+}
+
+@Override
+protected void renderBody() {
+startSection(descriptor.getFullGoalName());
+renderReportNotice();
+renderDescription("fullname", descriptor.getPluginDescriptor().getId() 
+ ":" + descriptor.getGoal(), false);
+
+String context = "goal " + descriptor.getGoal();
+if (StringUtils.isNotEmpty(descriptor.getDeprecated())) {
+renderDescription("deprecated", 
getXhtmlWithValidatedLinks(descriptor.getDeprecated(), context), true);
+}
+if (StringUtils.isNotEmpty(descriptor.getDescription())) {
+renderDescription("description", 
getXhtmlWithValidatedLinks(descriptor.getDescription(), context), true);
+} else {
+renderDescription("description", getI18nString("nodescription"), 
false);
+}
+renderAttributes();
+
+List parameterList = filterParameters(
+descriptor.getParameters() != null ? 
descriptor.getParameters() : Collections.emptyList());
+if (parameterList.isEmpty()) {
+startSection(getI18nString("parameters"));
+sink.paragraph();
+sink.text(getI18nString("noParameter"));
+sink.paragraph_();
+endSection();
+} else {
+renderParameterOverviewTable(
+getI18nString("requiredParameters"),
+
parameterList.stream().filter(Parameter::isRequired).iterator());
+

[jira] [Commented] (ARCHETYPE-643) Update minimum Java version to 8

2023-10-07 Thread Herve Boutemy (Jira)


[ 
https://issues.apache.org/jira/browse/ARCHETYPE-643?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17772798#comment-17772798
 ] 

Herve Boutemy commented on ARCHETYPE-643:
-

requires to update target version to 3.3.0 instead of 3.2.1
and requires also to document requirements history 
https://ci-maven.apache.org/job/Maven/job/maven-box/job/maven-dist-tool/job/master/site/dist-tool-prerequisites.html
 

> Update minimum Java version to 8
> 
>
> Key: ARCHETYPE-643
> URL: https://issues.apache.org/jira/browse/ARCHETYPE-643
> Project: Maven Archetype
>  Issue Type: Dependency upgrade
>Affects Versions: 3.2.1
>Reporter: Elliotte Rusty Harold
>Assignee: Elliotte Rusty Harold
>Priority: Major
> Fix For: 3.3.0
>
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Assigned] (ARCHETYPE-643) Update minimum Java version to 8

2023-10-07 Thread Herve Boutemy (Jira)


 [ 
https://issues.apache.org/jira/browse/ARCHETYPE-643?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Herve Boutemy reassigned ARCHETYPE-643:
---

Assignee: Elliotte Rusty Harold

> Update minimum Java version to 8
> 
>
> Key: ARCHETYPE-643
> URL: https://issues.apache.org/jira/browse/ARCHETYPE-643
> Project: Maven Archetype
>  Issue Type: Dependency upgrade
>Affects Versions: 3.2.1
>Reporter: Elliotte Rusty Harold
>Assignee: Elliotte Rusty Harold
>Priority: Major
> Fix For: 3.3.0
>
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (ARCHETYPE-643) Update minimum Java version to 8

2023-10-07 Thread Herve Boutemy (Jira)


 [ 
https://issues.apache.org/jira/browse/ARCHETYPE-643?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Herve Boutemy updated ARCHETYPE-643:

Affects Version/s: 3.2.1

> Update minimum Java version to 8
> 
>
> Key: ARCHETYPE-643
> URL: https://issues.apache.org/jira/browse/ARCHETYPE-643
> Project: Maven Archetype
>  Issue Type: Dependency upgrade
>Affects Versions: 3.2.1
>Reporter: Elliotte Rusty Harold
>Priority: Major
> Fix For: 3.2.2
>
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Comment Edited] (ARCHETYPE-623) Require Java 8

2023-10-07 Thread Herve Boutemy (Jira)


[ 
https://issues.apache.org/jira/browse/ARCHETYPE-623?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17772797#comment-17772797
 ] 

Herve Boutemy edited comment on ARCHETYPE-623 at 10/7/23 11:08 AM:
---

reasonable move as of today
will just require to call that version 3.3 instead of 3.2.2


was (Author: hboutemy):
will require to call that version 3.3 instead of 3.2.2

> Require Java 8
> --
>
> Key: ARCHETYPE-623
> URL: https://issues.apache.org/jira/browse/ARCHETYPE-623
> Project: Maven Archetype
>  Issue Type: Dependency upgrade
>Affects Versions: 3.2.1
>Reporter: Sylwester Lachiewicz
>Priority: Major
> Fix For: 3.2.2
>
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (ARCHETYPE-623) Require Java 8

2023-10-07 Thread Herve Boutemy (Jira)


[ 
https://issues.apache.org/jira/browse/ARCHETYPE-623?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17772797#comment-17772797
 ] 

Herve Boutemy commented on ARCHETYPE-623:
-

will require to call that version 3.3 instead of 3.2.2

> Require Java 8
> --
>
> Key: ARCHETYPE-623
> URL: https://issues.apache.org/jira/browse/ARCHETYPE-623
> Project: Maven Archetype
>  Issue Type: Dependency upgrade
>Affects Versions: 3.2.1
>Reporter: Sylwester Lachiewicz
>Priority: Major
> Fix For: 3.2.2
>
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Assigned] (ARCHETYPE-637) PomUtils.addNewModule Pretty-Printing has issue on java 9+

2023-10-07 Thread Herve Boutemy (Jira)


 [ 
https://issues.apache.org/jira/browse/ARCHETYPE-637?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Herve Boutemy reassigned ARCHETYPE-637:
---

Assignee: Tamas Cservenak

> PomUtils.addNewModule Pretty-Printing has issue on java 9+
> --
>
> Key: ARCHETYPE-637
> URL: https://issues.apache.org/jira/browse/ARCHETYPE-637
> Project: Maven Archetype
>  Issue Type: Bug
>  Components: Generator
>Reporter: qxo
>Assignee: Tamas Cservenak
>Priority: Minor
> Fix For: 3.2.2
>
>
>  
> *As of Java 9, the _Transformer_ class's pretty-print feature doesn't define 
> the actual format. Therefore, whitespace-only nodes will be outputted as 
> well.* This has been discussed in this [JDK bug 
> ticket|https://bugs.openjdk.java.net/browse/JDK-8262285?attachmentViewMode=list].
>  Also, [Java 9's release 
> note|https://www.oracle.com/java/technologies/javase/9-notes.html] has 
> explained this in the xml/jaxp section.
> *If we want our pretty-print method to always generate the same format under 
> various Java versions, we need to provide a stylesheet file.*
> ref:
>    [https://bugs.openjdk.java.net/browse/JDK-8262285?attachmentViewMode=list]
>    
> [https://www.baeldung.com/java-pretty-print-xml#pretty-printing-xml-with-the-transformer-class]



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


Re: [PR] Update plugin WIP [maven-archetype]

2023-10-07 Thread via GitHub


hboutemy commented on PR #148:
URL: https://github.com/apache/maven-archetype/pull/148#issuecomment-1751682788

   this PR should IMHO be split into reviewable parts
   
   and IUUC what is behind the cryptic judgement message "move off archaic 
components, introduce what we have", this one MUST be put in another PR (with 
proper explanation of the intent as an improvement)


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



[jira] [Updated] (ARCHETYPE-650) improve "The defined artifact is not an archetype" error message

2023-10-07 Thread Herve Boutemy (Jira)


 [ 
https://issues.apache.org/jira/browse/ARCHETYPE-650?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Herve Boutemy updated ARCHETYPE-650:

Affects Version/s: 3.2.0
   (was: 3.2.1)

> improve "The defined artifact is not an archetype" error message
> 
>
> Key: ARCHETYPE-650
> URL: https://issues.apache.org/jira/browse/ARCHETYPE-650
> Project: Maven Archetype
>  Issue Type: Improvement
>  Components: Plugin
>Affects Versions: 3.2.0
>Reporter: Herve Boutemy
>Priority: Major
> Fix For: 3.2.2
>
>
> see https://lists.apache.org/thread/pssotrxjjgvd6dflp594h7z7rl89h297
> the message does not help at all understanding WHY: what file is looking at? 
> is it looking at the wrong file, or is the file not containing expected 
> content?
> we should at least point to the file that was tried to be used as an 
> archetype so the user can investigate further



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (ARCHETYPE-651) add a message wuehn updating local catalog

2023-10-07 Thread Herve Boutemy (Jira)
Herve Boutemy created ARCHETYPE-651:
---

 Summary: add a message wuehn updating local catalog
 Key: ARCHETYPE-651
 URL: https://issues.apache.org/jira/browse/ARCHETYPE-651
 Project: Maven Archetype
  Issue Type: Improvement
  Components: Plugin
Affects Versions: 3.2.1
Reporter: Herve Boutemy
 Fix For: 3.2.2


{noformat}
$ mvn install
[INFO] Scanning for projects...
[INFO]
[INFO] -< org.apache.maven.archetypes:maven-archetype-simple >-
[INFO] Building Maven Simple Project Archetype 1.5-SNAPSHOT
[INFO]   from pom.xml
[INFO] --[ maven-archetype ]---
...
[INFO] --- install:2.5.2:install (default-install) @ maven-archetype-simple ---
[INFO] Installing target/maven-archetype-simple-1.5-SNAPSHOT.jar to 
~/.m2/repository/org/apache/maven/archetypes/maven-archetype-simple/1.5-SNAPSHOT/maven-archetype-simple-1.5-SNAPSHOT.jar
[INFO] Installing pom.xml to 
~/.m2/repository/org/apache/maven/archetypes/maven-archetype-simple/1.5-SNAPSHOT/maven-archetype-simple-1.5-SNAPSHOT.pom
[INFO]
[INFO] --- archetype:3.2.0:update-local-catalog (default-update-local-catalog) 
@ maven-archetype-simple ---
[INFO] 
[INFO] BUILD SUCCESS
[INFO] 
[INFO] Total time:  15.633 s
[INFO] Finished at: 2023-10-07T07:10:55-03:00
[INFO] 
{noformat}

pointing to the updated file would better show what happened during the goal 
execution: nothing?



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (ARCHETYPE-650) improve "The defined artifact is not an archetype" error message

2023-10-07 Thread Herve Boutemy (Jira)
Herve Boutemy created ARCHETYPE-650:
---

 Summary: improve "The defined artifact is not an archetype" error 
message
 Key: ARCHETYPE-650
 URL: https://issues.apache.org/jira/browse/ARCHETYPE-650
 Project: Maven Archetype
  Issue Type: Improvement
  Components: Plugin
Affects Versions: 3.2.1
Reporter: Herve Boutemy
 Fix For: 3.2.2


see https://lists.apache.org/thread/pssotrxjjgvd6dflp594h7z7rl89h297
the message does not help at all understanding WHY: what file is looking at? is 
it looking at the wrong file, or is the file not containing expected content?

we should at least point to the file that was tried to be used as an archetype 
so the user can investigate further



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (ARCHETYPE-495) rename ArchetypeGenerator.generateArchetype() to ProjectGenerator.generateProject()

2023-10-07 Thread Herve Boutemy (Jira)


 [ 
https://issues.apache.org/jira/browse/ARCHETYPE-495?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Herve Boutemy updated ARCHETYPE-495:

Fix Version/s: backlog

> rename ArchetypeGenerator.generateArchetype() to 
> ProjectGenerator.generateProject()
> ---
>
> Key: ARCHETYPE-495
> URL: https://issues.apache.org/jira/browse/ARCHETYPE-495
> Project: Maven Archetype
>  Issue Type: Improvement
>  Components: Generator
>Affects Versions: 2.4
>Reporter: Herve Boutemy
>Priority: Major
> Fix For: backlog
>
>
> {{ArchetypeGenerator.generateArchetype()}} is really misleading: it's not 
> about generating an archetype, but about generating *a project from* an 
> archetype
> this API cause strong confusion in the archetype lifecycle: sample project -> 
> archetype project -> archetype artifact -> generated project



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (ARCHETYPE-626) mvn install deploy does not work with 3.2.1 but worked with 3.2.0

2023-10-07 Thread Herve Boutemy (Jira)


 [ 
https://issues.apache.org/jira/browse/ARCHETYPE-626?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Herve Boutemy updated ARCHETYPE-626:

Fix Version/s: 3.2.2

> mvn install deploy does not work with 3.2.1 but worked with 3.2.0
> -
>
> Key: ARCHETYPE-626
> URL: https://issues.apache.org/jira/browse/ARCHETYPE-626
> Project: Maven Archetype
>  Issue Type: Bug
>  Components: Plugin
>Affects Versions: 3.2.1
> Environment: * Linux machine (Kernel 3.10.0)
> * OpenJDK 11.0.13.0.8-1.el7_9.x86_64 (11.0.1)
> * Maven 3.8.4 (did also occur with 3.3.9)
>Reporter: Jan Mosig
>Priority: Major
> Fix For: 3.2.2
>
> Attachments: archetype-plugin-failed-build.txt, 
> archetype-plugin-successful-build.txt
>
>
> Hi there,
> I've got an archetype build that used to work fine with 3.2.0 but fails with 
> 3.2.1.
> The problem with 3.2.1 is that all the files in 
> target/test-classes/projects/it-basic/project/basic-project do exist but are 
> all empty (0 bytes).
> The build is run with {{mvn -U clean install deploy}}. If I run it with {{mvn 
> -U clean deploy}} it works. Although the install goal may be superfluous, I 
> guess there is something wrong there with version 3.2.1.
> I attached the logs of a successful run and a failed one to this ticket.
> You may find the failing project here (Branch archetype-plugin-321-bug): 
> https://github.com/itemis/fluffyj-archetype/tree/archetype-plugin-321-bug



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[PR] Bump org.codehaus.plexus:plexus-archiver from 4.2.2 to 4.8.0 in /maven-archetype-plugin [maven-archetype]

2023-10-07 Thread via GitHub


dependabot[bot] opened a new pull request, #155:
URL: https://github.com/apache/maven-archetype/pull/155

   Bumps 
[org.codehaus.plexus:plexus-archiver](https://github.com/codehaus-plexus/plexus-archiver)
 from 4.2.2 to 4.8.0.
   
   Release notes
   Sourced from https://github.com/codehaus-plexus/plexus-archiver/releases;>org.codehaus.plexus:plexus-archiver's
 releases.
   
   4.8.0
   
    New features and improvements
   
   Add tzst alias for tar.zst archiver/unarchived (https://redirect.github.com/codehaus-plexus/plexus-archiver/pull/274;>#274)
 https://github.com/slawekjaranowski;>@​slawekjaranowski
   
    Bug Fixes
   
   detect permissions for addFile (https://redirect.github.com/codehaus-plexus/plexus-archiver/pull/293;>#293)
 https://github.com/hboutemy;>@​hboutemy
   
    Dependency updates
   
   Bump org.codehaus.plexus:plexus from 13 to 14 (https://redirect.github.com/codehaus-plexus/plexus-archiver/pull/296;>#296)
 https://github.com/dependabot;>@​dependabot
   Bump zstd-jni from 1.5.5-4 to 1.5.5-5 (https://redirect.github.com/codehaus-plexus/plexus-archiver/pull/295;>#295)
 https://github.com/dependabot;>@​dependabot
   Bump Eclipse Sisu and  from 0.3.5 to 0.9.0.M2 (https://redirect.github.com/codehaus-plexus/plexus-archiver/pull/289;>#289)
 https://github.com/slachiewicz;>@​slachiewicz
   Bump commons-io from 2.12.0 to 2.13.0 (https://redirect.github.com/codehaus-plexus/plexus-archiver/pull/288;>#288)
 https://github.com/dependabot;>@​dependabot
   Bump zstd-jni from 1.5.5-3 to 1.5.5-4 (https://redirect.github.com/codehaus-plexus/plexus-archiver/pull/287;>#287)
 https://github.com/dependabot;>@​dependabot
   Bump plexus-utils from 3.5.1 to 4.0.0 (https://redirect.github.com/codehaus-plexus/plexus-archiver/pull/283;>#283)
 https://github.com/dependabot;>@​dependabot
   Bump commons-io from 2.11.0 to 2.12.0 (https://redirect.github.com/codehaus-plexus/plexus-archiver/pull/277;>#277)
 https://github.com/dependabot;>@​dependabot
   Bump zstd-jni from 1.5.5-2 to 1.5.5-3 (https://redirect.github.com/codehaus-plexus/plexus-archiver/pull/284;>#284)
 https://github.com/dependabot;>@​dependabot
   Bump guice from 5.1.0 to 6.0.0 (https://redirect.github.com/codehaus-plexus/plexus-archiver/pull/278;>#278)
 https://github.com/dependabot;>@​dependabot
   Bump plexus from 10 to 13 (https://redirect.github.com/codehaus-plexus/plexus-archiver/pull/280;>#280)
 https://github.com/dependabot;>@​dependabot
   
    Maintenance
   
   Remove public modifier from JUnit 5 tests (https://redirect.github.com/codehaus-plexus/plexus-archiver/pull/294;>#294)
 https://github.com/slawekjaranowski;>@​slawekjaranowski
   Use https in scm/url (https://redirect.github.com/codehaus-plexus/plexus-archiver/pull/291;>#291)
 https://github.com/slawekjaranowski;>@​slawekjaranowski
   Remove junit-jupiter-engine from project dependencies (https://redirect.github.com/codehaus-plexus/plexus-archiver/pull/292;>#292)
 https://github.com/slawekjaranowski;>@​slawekjaranowski
   Remove parent and reports menu from site (https://redirect.github.com/codehaus-plexus/plexus-archiver/pull/282;>#282)
 https://github.com/slawekjaranowski;>@​slawekjaranowski
   Cleanup after veryLargeJar test (https://redirect.github.com/codehaus-plexus/plexus-archiver/pull/281;>#281)
 https://github.com/slachiewicz;>@​slachiewicz
   Override project.url (https://redirect.github.com/codehaus-plexus/plexus-archiver/pull/279;>#279)
 https://github.com/slawekjaranowski;>@​slawekjaranowski
   
   Plexus Archiver 4.7.1
   
    Bug Fixes
   
   don't apply umask on unknown perms (Win) (https://redirect.github.com/codehaus-plexus/plexus-archiver/pull/273;>#273)
 https://github.com/hboutemy;>@​hboutemy
   
   Plexus Archiver 4.7.0
   
    New features and improvements
   
   add umask support and use 022 in RB mode (https://redirect.github.com/codehaus-plexus/plexus-archiver/pull/271;>#271)
 https://github.com/hboutemy;>@​hboutemy
   Use NIO Files for creating temporary files (https://redirect.github.com/codehaus-plexus/plexus-archiver/pull/270;>#270)
 https://github.com/slawekjaranowski;>@​slawekjaranowski
   Deprecate the JAR Index feature (JDK-8302819) (https://redirect.github.com/codehaus-plexus/plexus-archiver/pull/268;>#268)
 https://github.com/jorsol;>@​jorsol
   Add Archiver aliases for tar.* (https://redirect.github.com/codehaus-plexus/plexus-archiver/pull/266;>#266)
 https://github.com/slawekjaranowski;>@​slawekjaranowski
   
    Dependency updates
   
   Bump junitVersion from 5.9.2 to 5.9.3 (https://redirect.github.com/codehaus-plexus/plexus-archiver/pull/267;>#267)
 https://github.com/dependabot;>@​dependabot
   
   
   
   ... (truncated)
   
   
   Commits
   
   https://github.com/codehaus-plexus/plexus-archiver/commit/0333ef8a42cf9ba66941cf73e8d35b7aa5faa342;>0333ef8
 [maven-release-plugin] prepare release plexus-archiver-4.8.0
   https://github.com/codehaus-plexus/plexus-archiver/commit/54759839fbdf85caf8442076f001d5fd64e0dcb2;>5475983
 

[jira] [Commented] (ARCHETYPE-648) upgrade plexus-util 3 to plexus-utils 4 + plexus-xml 3

2023-10-07 Thread ASF GitHub Bot (Jira)


[ 
https://issues.apache.org/jira/browse/ARCHETYPE-648?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17772793#comment-17772793
 ] 

ASF GitHub Bot commented on ARCHETYPE-648:
--

hboutemy merged PR #153:
URL: https://github.com/apache/maven-archetype/pull/153




> upgrade plexus-util 3 to plexus-utils 4 + plexus-xml 3
> --
>
> Key: ARCHETYPE-648
> URL: https://issues.apache.org/jira/browse/ARCHETYPE-648
> Project: Maven Archetype
>  Issue Type: Dependency upgrade
>Affects Versions: 3.2.1
>Reporter: Herve Boutemy
>Priority: Major
> Fix For: 3.2.2
>
>
> - Modello generated code for archetype-descriptor and archetype-catalog 
> require Maven 3 XML APIs to read/write XML descriptors => plexus-xml 3 is a 
> key requirement
> - plexus-xml 4 is Maven 4 specific, then upgrading plexus-xml from 3 to 4 has 
> to be avoided
> - plexus-utils 4 remains useful as code generated by Modello still require a 
> few classes like StringUtils...
> this upgrade is a proof of seamless upgrade from plexus-utils 3 to 
> plexus-utils 4 + plexus-xml 3 when XML API are required
> MJARSIGNER-71 is the proof when plexus-xml is even not required in the upgrade



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Closed] (ARCHETYPE-648) upgrade plexus-util 3 to plexus-utils 4 + plexus-xml 3

2023-10-07 Thread Herve Boutemy (Jira)


 [ 
https://issues.apache.org/jira/browse/ARCHETYPE-648?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Herve Boutemy closed ARCHETYPE-648.
---
  Assignee: Herve Boutemy
Resolution: Fixed

> upgrade plexus-util 3 to plexus-utils 4 + plexus-xml 3
> --
>
> Key: ARCHETYPE-648
> URL: https://issues.apache.org/jira/browse/ARCHETYPE-648
> Project: Maven Archetype
>  Issue Type: Dependency upgrade
>Affects Versions: 3.2.1
>Reporter: Herve Boutemy
>Assignee: Herve Boutemy
>Priority: Major
> Fix For: 3.2.2
>
>
> - Modello generated code for archetype-descriptor and archetype-catalog 
> require Maven 3 XML APIs to read/write XML descriptors => plexus-xml 3 is a 
> key requirement
> - plexus-xml 4 is Maven 4 specific, then upgrading plexus-xml from 3 to 4 has 
> to be avoided
> - plexus-utils 4 remains useful as code generated by Modello still require a 
> few classes like StringUtils...
> this upgrade is a proof of seamless upgrade from plexus-utils 3 to 
> plexus-utils 4 + plexus-xml 3 when XML API are required
> MJARSIGNER-71 is the proof when plexus-xml is even not required in the upgrade



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


Re: [PR] [ARCHETYPE-648] upgrade p-u 3 to p-u 4 + p-xml 3 [maven-archetype]

2023-10-07 Thread via GitHub


hboutemy merged PR #153:
URL: https://github.com/apache/maven-archetype/pull/153


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org