You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by db...@apache.org on 2021/05/18 22:33:54 UTC
[tomee-release-tools] branch master updated: Remove any dependency
upgrades that have been superseded
This is an automated email from the ASF dual-hosted git repository.
dblevins pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/tomee-release-tools.git
The following commit(s) were added to refs/heads/master by this push:
new e8a20a7 Remove any dependency upgrades that have been superseded
e8a20a7 is described below
commit e8a20a74fe4f85d9c6bb10da64c61eaee5f075e0
Author: David Blevins <da...@gmail.com>
AuthorDate: Tue May 18 15:06:07 2021 -0700
Remove any dependency upgrades that have been superseded
---
.../openejb/tools/release/cmd/ReleaseNotes.java | 26 +++++++++++++++++++++-
1 file changed, 25 insertions(+), 1 deletion(-)
diff --git a/src/main/java/org/apache/openejb/tools/release/cmd/ReleaseNotes.java b/src/main/java/org/apache/openejb/tools/release/cmd/ReleaseNotes.java
index 0867223..8164729 100644
--- a/src/main/java/org/apache/openejb/tools/release/cmd/ReleaseNotes.java
+++ b/src/main/java/org/apache/openejb/tools/release/cmd/ReleaseNotes.java
@@ -18,6 +18,8 @@ package org.apache.openejb.tools.release.cmd;
import com.atlassian.jira.rest.client.api.SearchRestClient;
import com.atlassian.jira.rest.client.api.domain.Issue;
+import com.atlassian.jira.rest.client.api.domain.IssueLink;
+import com.atlassian.jira.rest.client.api.domain.IssueLinkType;
import com.atlassian.jira.rest.client.api.domain.IssueType;
import com.atlassian.jira.rest.client.api.domain.SearchResult;
import lombok.Getter;
@@ -32,6 +34,7 @@ import org.tomitribe.jamira.core.Client;
import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.Arrays;
+import java.util.Collection;
import java.util.Comparator;
import java.util.HashMap;
import java.util.HashSet;
@@ -42,6 +45,9 @@ import java.util.concurrent.ExecutionException;
import java.util.regex.Pattern;
import java.util.stream.Collectors;
+import static com.atlassian.jira.rest.client.api.domain.IssueLinkType.Direction.INBOUND;
+import static com.atlassian.jira.rest.client.api.domain.IssueLinkType.Direction.OUTBOUND;
+
/**
* @version $Rev$ $Date$
*/
@@ -117,9 +123,10 @@ public class ReleaseNotes {
out.println();
out.printf("== %s%n", section.getName());
out.println();
+ out.println("[.compact]");
if (section.getName().equals("Dependency upgrade")) {
- issues.stream()
+ removeSuperseded(issues).stream()
.map(Upgrade::new)
.sorted(Comparator.comparing(Upgrade::getSummary))
.forEach(upgrade -> {
@@ -141,6 +148,23 @@ public class ReleaseNotes {
};
}
+ public static Collection<Issue> removeSuperseded(final List<Issue> issues) {
+ final Map<String, Issue> map = new HashMap<>();
+ issues.forEach(issue -> map.put(issue.getKey(), issue));
+
+ for (final Issue issue : issues) {
+ for (final IssueLink link : issue.getIssueLinks()) {
+ final IssueLinkType linkType = link.getIssueLinkType();
+ if (!"Supercedes".equalsIgnoreCase(linkType.getName())) continue;
+ if (!OUTBOUND.equals(linkType.getDirection())) continue;
+
+ map.remove(link.getTargetIssueKey());
+ }
+ }
+
+ return map.values();
+ }
+
public static void main(final String[] args) throws Throwable {
final List<String> argsList = new ArrayList<String>();