You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by hb...@apache.org on 2022/04/17 15:36:55 UTC

[maven-dist-tool] branch master updated: add release date column

This is an automated email from the ASF dual-hosted git repository.

hboutemy pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/maven-dist-tool.git


The following commit(s) were added to refs/heads/master by this push:
     new 9972af9  add release date column
9972af9 is described below

commit 9972af99af9d58da645f2e2b77b69316cf142c17
Author: Hervé Boutemy <hb...@apache.org>
AuthorDate: Sun Apr 17 17:36:43 2022 +0200

    add release date column
---
 .../maven/dist/tools/prerequisites/GetPrerequisites.java    | 13 +++++++++++--
 .../tools/prerequisites/ListPluginsPrerequisitesReport.java |  9 +++++++++
 .../maven/dist/tools/prerequisites/PluginPrerequisites.java | 11 ++++++++++-
 3 files changed, 30 insertions(+), 3 deletions(-)

diff --git a/src/main/java/org/apache/maven/dist/tools/prerequisites/GetPrerequisites.java b/src/main/java/org/apache/maven/dist/tools/prerequisites/GetPrerequisites.java
index 0e337e6..6f7ed21 100644
--- a/src/main/java/org/apache/maven/dist/tools/prerequisites/GetPrerequisites.java
+++ b/src/main/java/org/apache/maven/dist/tools/prerequisites/GetPrerequisites.java
@@ -106,6 +106,15 @@ public class GetPrerequisites
 
         Document doc = JsoupRetry.get( url );
 
+        String releaseDate = "?";
+        Elements breadcrumbs = doc.select( "div[id=breadcrumbs]" ); // breadcrumbs
+        if ( breadcrumbs.size() >= 0 )
+        {
+            String text = breadcrumbs.get( 0 ).text();
+            int index = text.indexOf( "Last Published: " );
+            releaseDate = text.substring( index + 16 ).substring( 0, 10 );
+        }
+
         Elements select = doc.select( "table.bodyTable" ); // Stylus skin
 
         if ( select.size() < 1 )
@@ -116,7 +125,7 @@ public class GetPrerequisites
         if ( select.size() < 1 )
         {
             System.err.println( "Could not find expected plugin info for " + url );
-            return new PluginPrerequisites( pluginName, "?", "?", "?" );
+            return new PluginPrerequisites( pluginName, "?", "?", "?", "?" );
         }
 
         Element tableInfo = select.get( 1 );
@@ -149,7 +158,7 @@ public class GetPrerequisites
             pluginVersion = pluginVersion.substring( 0, pluginVersion.indexOf( "</version>" ) );
         }
 
-        return new PluginPrerequisites( pluginName, pluginVersion, mavenVersion, jdkVersion );
+        return new PluginPrerequisites( pluginName, pluginVersion, releaseDate, mavenVersion, jdkVersion );
     }
 
     public List<PluginPrerequisites> getPrequisites()
diff --git a/src/main/java/org/apache/maven/dist/tools/prerequisites/ListPluginsPrerequisitesReport.java b/src/main/java/org/apache/maven/dist/tools/prerequisites/ListPluginsPrerequisitesReport.java
index 10ffe89..64fa845 100644
--- a/src/main/java/org/apache/maven/dist/tools/prerequisites/ListPluginsPrerequisitesReport.java
+++ b/src/main/java/org/apache/maven/dist/tools/prerequisites/ListPluginsPrerequisitesReport.java
@@ -93,6 +93,10 @@ public class ListPluginsPrerequisitesReport
                         sink.rawText( "JDK Version" );
                         sink.tableHeaderCell_();
 
+                        sink.tableHeaderCell();
+                        sink.rawText( "Release Date" );
+                        sink.tableHeaderCell_();
+
                         sink.tableRow_();
 
                         for ( PluginPrerequisites pluginPrerequisites : pluginsPrerequisites )
@@ -105,6 +109,7 @@ public class ListPluginsPrerequisitesReport
                             sink.text( " " );
                             sink.text( pluginPrerequisites.getPluginVersion() );
                             sink.tableCell_();
+
                             sink.tableCell();
                             sink.text( pluginPrerequisites.getMavenVersion().toString() );
                             sink.tableCell_();
@@ -112,6 +117,10 @@ public class ListPluginsPrerequisitesReport
                             sink.tableCell();
                             sink.text( pluginPrerequisites.getJdkVersion() );
                             sink.tableCell_();
+
+                            sink.tableCell();
+                            sink.text( pluginPrerequisites.getReleaseDate() );
+                            sink.tableCell_();
                             sink.tableRow_();
                         }
 
diff --git a/src/main/java/org/apache/maven/dist/tools/prerequisites/PluginPrerequisites.java b/src/main/java/org/apache/maven/dist/tools/prerequisites/PluginPrerequisites.java
index 38b5f6b..f8f1aac 100644
--- a/src/main/java/org/apache/maven/dist/tools/prerequisites/PluginPrerequisites.java
+++ b/src/main/java/org/apache/maven/dist/tools/prerequisites/PluginPrerequisites.java
@@ -32,14 +32,18 @@ public class PluginPrerequisites
 
     private String pluginVersion;
 
+    private String releaseDate;
+
     private ArtifactVersion mavenVersion;
 
     private String jdkVersion;
 
-    public PluginPrerequisites( String pluginName, String pluginVersion, String mavenVersion, String jdkVersion )
+    public PluginPrerequisites( String pluginName, String pluginVersion, String releaseDate, String mavenVersion,
+                                String jdkVersion )
     {
         this.pluginName = pluginName;
         this.pluginVersion = pluginVersion;
+        this.releaseDate = releaseDate;
         this.mavenVersion = new DefaultArtifactVersion( mavenVersion );
         this.jdkVersion = jdkVersion;
     }
@@ -74,6 +78,11 @@ public class PluginPrerequisites
         return pluginVersion;
     }
 
+    public String getReleaseDate()
+    {
+        return releaseDate;
+    }
+
     public void setPluginName( String pluginName )
     {
         this.pluginName = pluginName;