[
https://issues.apache.org/jira/browse/MCHANGES-425?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17900606#comment-17900606
]
ASF GitHub Bot commented on MCHANGES-425:
-----------------------------------------
elharo commented on code in PR #42:
URL:
https://github.com/apache/maven-changes-plugin/pull/42#discussion_r1855231080
##########
src/main/java/org/apache/maven/plugins/changes/model/AbstractAction.java:
##########
@@ -0,0 +1,95 @@
+/*
+ * 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.plugins.changes.model;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+
+/**
+ * Abstract calls with helper methods for {@link Action}
+ */
+public abstract class AbstractAction {
+
+ private List<DueTo> dueTosList;
+
+ private List<String> fixedIssueList;
+
+ public abstract String getDueTo();
+
+ public abstract String getDueToEmail();
+
+ public abstract String getFixedIssuesString();
+
+ /**
+ * Parse due-to and due-to-email attributes
+ *
+ * @return a List of dut-to person
Review Comment:
due-to?
##########
src/main/java/org/apache/maven/plugins/changes/model/AbstractRelease.java:
##########
@@ -0,0 +1,58 @@
+/*
+ * 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.plugins.changes.model;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.stream.Collectors;
+
+/**
+ * Abstract calls with helper methods for {@link Release}
+ */
+public abstract class AbstractRelease {
+
+ private final java.util.List<Component> components = new ArrayList<>();
+
+ public abstract List<Action> getActions();
+
+ /**
+ * Retrieve action list by given type
+ *
+ * @param type action type
+ * @return an action list
+ */
+ public java.util.List<Action> getActions(String type) {
+ return getActions().stream()
+ .filter(a -> a.getType() != null)
+ .filter(a -> a.getType().equalsIgnoreCase(type))
+ .collect(Collectors.toList());
+ }
+
+ public void addComponent(String name, Release release) {
+ final Component component = new Component();
+ component.setName(name);
+ component.setDescription(release.getDescription());
+ component.setActions(release.getActions());
+ components.add(component);
+ }
+
+ public java.util.List<Component> getComponents() {
Review Comment:
don't need java.util here
##########
src/main/java/org/apache/maven/plugins/changes/model/AbstractRelease.java:
##########
@@ -0,0 +1,58 @@
+/*
+ * 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.plugins.changes.model;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.stream.Collectors;
+
+/**
+ * Abstract calls with helper methods for {@link Release}
+ */
+public abstract class AbstractRelease {
+
+ private final java.util.List<Component> components = new ArrayList<>();
+
+ public abstract List<Action> getActions();
+
+ /**
+ * Retrieve action list by given type
+ *
+ * @param type action type
+ * @return an action list
+ */
+ public java.util.List<Action> getActions(String type) {
Review Comment:
just List
##########
src/site/apt/examples/using-a-custom-announcement-template.apt.vm:
##########
@@ -131,6 +130,8 @@ Using a Custom Announcement Template
*-----------------+----------+-----------+-----------------+
| action* | String | 2.0 | What was done.
*-----------------+----------+-----------+-----------------+
+| date | String | 2.0 | Fix date.
+*-----------------+----------+-----------+-----------------+
| dev* | String | 2.0 | The developer who made the change.
*-----------------+----------+-----------+-----------------+
| dueTo* | String | 2.0 | If this was a contribution from a
non-developer, the name of that person.
Review Comment:
Maybe you mean committer and non-committer?
##########
src/site/apt/index.apt.vm:
##########
@@ -77,6 +77,18 @@ ${project.name}
{{{./scm.html}source repository}} and will find supplementary information in
the
{{{http://maven.apache.org/guides/development/guide-helping.html}guide to
helping with Maven}}.
+* Migration to 3.x
+
+** changes.xml - schema changes
+
+ * you should update schema in your changes.xml to <<<2.0.0>>> -
{{{./using-changes-xsd.html}Using the XML Schema}}.
+
+ * tag <<<action/dueto>>> - was removed, you can put your data into existing
+ <<<due-to>>> and <<<dueToEmail>>> attributes of <<<action>>> tag,
+ which can be coma separated.
Review Comment:
comma
##########
src/main/java/org/apache/maven/plugins/changes/model/AbstractAction.java:
##########
@@ -0,0 +1,95 @@
+/*
+ * 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.plugins.changes.model;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+
+/**
+ * Abstract calls with helper methods for {@link Action}
+ */
+public abstract class AbstractAction {
+
+ private List<DueTo> dueTosList;
+
+ private List<String> fixedIssueList;
+
+ public abstract String getDueTo();
+
+ public abstract String getDueToEmail();
+
+ public abstract String getFixedIssuesString();
+
+ /**
+ * Parse due-to and due-to-email attributes
+ *
+ * @return a List of dut-to person
+ */
+ public List<DueTo> getDueTos() {
+ if (dueTosList != null) {
+ return dueTosList;
+ }
+ dueTosList = new ArrayList<>();
+ List<String> dueTos = new ArrayList<>();
+ List<String> dueToEmails = new ArrayList<>();
+
+ if (getDueTo() != null) {
+ Arrays.stream(getDueTo().split(","))
+ .map(String::trim)
+ .filter(s -> !s.isEmpty())
+ .forEach(dueTos::add);
+ }
+
+ if (getDueToEmail() != null) {
+
Arrays.stream(getDueToEmail().split(",")).map(String::trim).forEach(dueToEmails::add);
+ }
+
+ while (dueToEmails.size() < dueTos.size()) {
+ dueToEmails.add("");
+ }
+
+ for (int i = 0; i < dueTos.size(); i++) {
+ DueTo dueTo = new DueTo();
+ dueTo.setName(dueTos.get(i));
+ dueTo.setEmail(dueToEmails.get(i));
+ dueTosList.add(dueTo);
+ }
+ return dueTosList;
+ }
+
+ /**
+ * Parse getFixedIssues articulate.
Review Comment:
What is an articulate?
##########
src/site/apt/index.apt.vm:
##########
@@ -77,6 +77,18 @@ ${project.name}
{{{./scm.html}source repository}} and will find supplementary information in
the
{{{http://maven.apache.org/guides/development/guide-helping.html}guide to
helping with Maven}}.
+* Migration to 3.x
+
+** changes.xml - schema changes
+
+ * you should update schema in your changes.xml to <<<2.0.0>>> -
{{{./using-changes-xsd.html}Using the XML Schema}}.
+
+ * tag <<<action/dueto>>> - was removed, you can put your data into existing
+ <<<due-to>>> and <<<dueToEmail>>> attributes of <<<action>>> tag,
+ which can be coma separated.
+
+ * tag <<<action/fixedIssues>>> - was changed to attribute of <<action>> tag,
it also can be comma separated.
Review Comment:
an attribute
##########
src/site/apt/examples/using-a-custom-announcement-template.apt.vm:
##########
@@ -141,11 +142,15 @@ Using a Custom Announcement Template
*-----------------+----------+-----------+-----------------+
| type* | String | 2.0 | What kind of change was this.
*-----------------+----------+-----------+-----------------+
+| dueTos* | List | 3.0 | Collection of parsed dueTo and
dueToEmail. Each item has variable name and email.
+*-----------------+----------+-----------+-----------------+
+| fixedIssues* | List | 3.0 | Collection of fixed issues.
+*-----------------+----------+-----------+-----------------+
<Variables marked with * are read-only.>
- Since 2.8 the Velocity Context contains all default tools as provided by the
{{{http://velocity.apache.org/tools/devel/standalone.html}ToolManager}}.
- See the {{{http://velocity.apache.org/tools/devel/summary.html}Tools Usage
Summary}} for further details.
+ Velocity Context contains all default tools as provided by the
{{{https://velocity.apache.org/tools/devel/standalone.html}ToolManager}}.
+ See the {{{https://velocity.apache.org/tools/devel/tools-summary.html}Tools
Usage Summary}} for further details.
For information on how to access variables in your template and more,
please see the
Review Comment:
no "please"
##########
src/test/java/org/apache/maven/plugins/changes/ChangesXMLTest.java:
##########
@@ -21,118 +21,66 @@
import java.io.File;
import java.util.List;
-import org.apache.maven.plugin.logging.Log;
+import org.apache.maven.plugin.logging.SystemStreamLog;
import org.apache.maven.plugins.changes.model.Action;
import org.apache.maven.plugins.changes.model.Release;
-import org.codehaus.plexus.PlexusTestCase;
-import org.codehaus.plexus.logging.Logger;
-import org.codehaus.plexus.logging.console.ConsoleLogger;
+import org.junit.Test;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.fail;
/**
* @author Olivier Lamy
* @since 27 juil. 2008
* @version $Id$
*/
-public class ChangesXMLTest extends PlexusTestCase {
-
- private static class MockLog implements Log {
- Logger consoleLogger;
-
- private MockLog() {
- consoleLogger = new ConsoleLogger(1, "test");
- }
-
- public void debug(CharSequence content) {
- consoleLogger.debug(content.toString());
- }
-
- public void debug(Throwable error) {
- consoleLogger.debug(error.getMessage());
- }
-
- public void debug(CharSequence content, Throwable error) {
- consoleLogger.debug(error.getMessage(), error);
- }
-
- public void error(CharSequence content) {
- consoleLogger.error(content.toString());
- }
-
- public void error(Throwable error) {
- consoleLogger.error(error.getMessage());
- }
-
- public void error(CharSequence content, Throwable error) {
- consoleLogger.error(error.getMessage(), error);
- }
-
- public void info(CharSequence content) {
- consoleLogger.info(content.toString());
- }
-
- public void info(Throwable error) {
- consoleLogger.info(error.getMessage());
- }
-
- public void info(CharSequence content, Throwable error) {
- consoleLogger.info(error.getMessage(), error);
- }
-
- public boolean isDebugEnabled() {
- return consoleLogger.isDebugEnabled();
- }
+public class ChangesXMLTest {
- public boolean isErrorEnabled() {
- return consoleLogger.isErrorEnabled();
- }
-
- public boolean isInfoEnabled() {
- return consoleLogger.isInfoEnabled();
- }
-
- public boolean isWarnEnabled() {
- return consoleLogger.isWarnEnabled();
- }
-
- public void warn(CharSequence content) {
- consoleLogger.warn(content.toString());
- }
-
- public void warn(Throwable error) {
- consoleLogger.warn(error.getMessage());
- }
-
- public void warn(CharSequence content, Throwable error) {
- consoleLogger.warn(content.toString(), error);
- }
+ private String getBasedir() {
+ final String path = System.getProperty("basedir");
+ return null != path ? path : new File("").getAbsolutePath();
Review Comment:
path != null
or
path == null
> Use the latest version of modello, update changes schema
> --------------------------------------------------------
>
> Key: MCHANGES-425
> URL: https://issues.apache.org/jira/browse/MCHANGES-425
> Project: Maven Changes Plugin
> Issue Type: Improvement
> Components: modello
> Reporter: Slawomir Jaranowski
> Assignee: Slawomir Jaranowski
> Priority: Major
> Fix For: 3.0.0
>
>
> The newer version of moddelo doesn't support mixed xml tagsĀ
> We will do:
> - move fixes to atribute
> - drop dueto tag - we have already attribute due-to, due-to-email
--
This message was sent by Atlassian Jira
(v8.20.10#820010)