You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by sj...@apache.org on 2023/01/18 17:57:47 UTC

[maven-enforcer] branch MENFORCER-460 updated (7c3aaa7 -> e53ca6b)

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

sjaranowski pushed a change to branch MENFORCER-460
in repository https://gitbox.apache.org/repos/asf/maven-enforcer.git


 discard 7c3aaa7  [MENFORCER-460] Deprecate display-info mojo
     new e53ca6b  [MENFORCER-460] Deprecate display-info mojo

This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version.  This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:

 * -- * -- B -- O -- O -- O   (7c3aaa7)
            \
             N -- N -- N   refs/heads/MENFORCER-460 (e53ca6b)

You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../org/apache/maven/enforcer/rules/version/RequireJavaVersion.java   | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)


[maven-enforcer] 01/01: [MENFORCER-460] Deprecate display-info mojo

Posted by sj...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

sjaranowski pushed a commit to branch MENFORCER-460
in repository https://gitbox.apache.org/repos/asf/maven-enforcer.git

commit e53ca6b27e66e4985f1234bd26dcb5c84ca2c068
Author: Slawomir Jaranowski <s....@gmail.com>
AuthorDate: Wed Jan 18 18:10:19 2023 +0100

    [MENFORCER-460] Deprecate display-info mojo
---
 .../org/apache/maven/enforcer/rules/RequireOS.java |  2 +-
 .../rules/version/AbstractVersionEnforcer.java     |  5 -----
 .../enforcer/rules/version/RequireJavaVersion.java | 26 +++++++++++++++++-----
 .../rules/version/RequireMavenVersion.java         |  5 +++++
 .../src/site/apt/requireJavaVersion.apt.vm         | 19 ++++++----------
 enforcer-rules/src/site/apt/requireOS.apt.vm       | 13 ++++++-----
 .../maven/plugins/enforcer/DisplayInfoMojo.java    |  2 ++
 maven-enforcer-plugin/src/site/apt/index.apt       |  6 ++---
 maven-enforcer-plugin/src/site/apt/usage.apt.vm    | 13 -----------
 9 files changed, 45 insertions(+), 46 deletions(-)

diff --git a/enforcer-rules/src/main/java/org/apache/maven/enforcer/rules/RequireOS.java b/enforcer-rules/src/main/java/org/apache/maven/enforcer/rules/RequireOS.java
index 29738da..eae734a 100644
--- a/enforcer-rules/src/main/java/org/apache/maven/enforcer/rules/RequireOS.java
+++ b/enforcer-rules/src/main/java/org/apache/maven/enforcer/rules/RequireOS.java
@@ -97,7 +97,7 @@ public final class RequireOS extends AbstractStandardEnforcerRule {
         if (allParamsEmpty()) {
             throw new EnforcerRuleError("All parameters can not be empty. "
                     + "You must pick at least one of (family, name, version, arch), "
-                    + "you can use mvn enforcer:display-info to see the current OS information.");
+                    + "you can use mvn --version to see the current OS information.");
         }
 
         if (isValidFamily(this.family)) {
diff --git a/enforcer-rules/src/main/java/org/apache/maven/enforcer/rules/version/AbstractVersionEnforcer.java b/enforcer-rules/src/main/java/org/apache/maven/enforcer/rules/version/AbstractVersionEnforcer.java
index 042bbc4..946a58d 100644
--- a/enforcer-rules/src/main/java/org/apache/maven/enforcer/rules/version/AbstractVersionEnforcer.java
+++ b/enforcer-rules/src/main/java/org/apache/maven/enforcer/rules/version/AbstractVersionEnforcer.java
@@ -138,9 +138,4 @@ abstract class AbstractVersionEnforcer extends AbstractStandardEnforcerRule {
     public void setVersion(String theVersion) {
         this.version = theVersion;
     }
-
-    @Override
-    public String toString() {
-        return String.format("%s[message=%s, version=%s]", getClass().getSimpleName(), getMessage(), version);
-    }
 }
diff --git a/enforcer-rules/src/main/java/org/apache/maven/enforcer/rules/version/RequireJavaVersion.java b/enforcer-rules/src/main/java/org/apache/maven/enforcer/rules/version/RequireJavaVersion.java
index ad44406..dcaeb68 100644
--- a/enforcer-rules/src/main/java/org/apache/maven/enforcer/rules/version/RequireJavaVersion.java
+++ b/enforcer-rules/src/main/java/org/apache/maven/enforcer/rules/version/RequireJavaVersion.java
@@ -44,6 +44,11 @@ public final class RequireJavaVersion extends AbstractVersionEnforcer {
 
     private static final Pattern JDK8_VERSION_PATTERN = Pattern.compile("([\\[(,]?)(1\\.8|8)([]),]?)");
 
+    /**
+     * Display the normalized JDK version.
+     */
+    private boolean display = false;
+
     @Override
     public void setVersion(String theVersion) {
 
@@ -66,12 +71,16 @@ public final class RequireJavaVersion extends AbstractVersionEnforcer {
     @Override
     public void execute() throws EnforcerRuleException {
         String javaVersion = SystemUtils.JAVA_VERSION;
+        String javaVersionNormalized = normalizeJDKVersion(javaVersion);
+        if (display) {
+            getLog().info("Detected Java Version: '" + javaVersion + "'");
+            getLog().info("Normalized Java Version: '" + javaVersionNormalized + "'");
+        } else {
+            getLog().debug("Detected Java Version: '" + javaVersion + "'");
+            getLog().debug("Normalized Java Version: '" + javaVersionNormalized + "'");
+        }
 
-        getLog().debug("Detected Java String: '" + javaVersion + "'");
-        javaVersion = normalizeJDKVersion(javaVersion);
-        getLog().debug("Normalized Java String: '" + javaVersion + "'");
-
-        ArtifactVersion detectedJdkVersion = new DefaultArtifactVersion(javaVersion);
+        ArtifactVersion detectedJdkVersion = new DefaultArtifactVersion(javaVersionNormalized);
 
         getLog().debug("Parsed Version: Major: " + detectedJdkVersion.getMajorVersion() + " Minor: "
                 + detectedJdkVersion.getMinorVersion() + " Incremental: " + detectedJdkVersion.getIncrementalVersion()
@@ -133,4 +142,11 @@ public final class RequireJavaVersion extends AbstractVersionEnforcer {
             super.setMessage(message);
         }
     }
+
+    @Override
+    public String toString() {
+        return String.format(
+                "%s[message=%s, version=%s, display=%b]",
+                getClass().getSimpleName(), getMessage(), getVersion(), display);
+    }
 }
diff --git a/enforcer-rules/src/main/java/org/apache/maven/enforcer/rules/version/RequireMavenVersion.java b/enforcer-rules/src/main/java/org/apache/maven/enforcer/rules/version/RequireMavenVersion.java
index 4dfb9e8..144f365 100644
--- a/enforcer-rules/src/main/java/org/apache/maven/enforcer/rules/version/RequireMavenVersion.java
+++ b/enforcer-rules/src/main/java/org/apache/maven/enforcer/rules/version/RequireMavenVersion.java
@@ -52,4 +52,9 @@ public final class RequireMavenVersion extends AbstractVersionEnforcer {
         DefaultArtifactVersion detectedVersion = new DefaultArtifactVersion(mavenVersion);
         enforceVersion("Maven", getVersion(), detectedVersion);
     }
+
+    @Override
+    public String toString() {
+        return String.format("%s[message=%s, version=%s]", getClass().getSimpleName(), getMessage(), getVersion());
+    }
 }
diff --git a/enforcer-rules/src/site/apt/requireJavaVersion.apt.vm b/enforcer-rules/src/site/apt/requireJavaVersion.apt.vm
index 39cd978..f4acb71 100644
--- a/enforcer-rules/src/site/apt/requireJavaVersion.apt.vm
+++ b/enforcer-rules/src/site/apt/requireJavaVersion.apt.vm
@@ -33,6 +33,9 @@ Require Java Version
    
    * <<version>> - {{{./versionRanges.html}range}} of allowed JDKs.
 
+   * <<display>> -  flag to display the normalized JDK version.
+
+
    For JDK 1.8 you can also use simple <<<8>>> as <version> - it will be internally changed to <<<1.8>>>
    
    []
@@ -49,18 +52,10 @@ Require Java Version
   
   []
    
-   This preprocessing normalizes various JDK version strings into a standard x.y.z-b version number. Your required range should therefore use the x.y.z-b format for comparison. 
-   There is an easy way to see how your current JDK string will be normalized:
-     
-+---+
-mvn enforcer:display-info
-...
-[INFO] Maven Version: 3.8.7
-[INFO] JDK Version: 1.8.0_352 normalized as: 1.8.0-352
-[INFO] Java Vendor: Homebrew
-[INFO] OS Info - Arch: x86_64, Family: mac, Name: mac os x, Version: 12.6.1
-+---+
- 
+   This preprocessing normalizes various JDK version strings into a standard x.y.z-b version number.
+   Your required range should therefore use the x.y.z-b format for comparison.
+   There is an easy way to see how your current JDK string will be normalized, you can enable <<display>> option.
+
    Sample Plugin Configuration:
    
 +---+
diff --git a/enforcer-rules/src/site/apt/requireOS.apt.vm b/enforcer-rules/src/site/apt/requireOS.apt.vm
index 85e6dda..8c66d4c 100644
--- a/enforcer-rules/src/site/apt/requireOS.apt.vm
+++ b/enforcer-rules/src/site/apt/requireOS.apt.vm
@@ -89,12 +89,13 @@ Require OS Version
    information for the current system:
    
 +---+
-mvn enforcer:display-info
-...
-[INFO] Maven Version: 3.8.7
-[INFO] JDK Version: 1.8.0_352 normalized as: 1.8.0-352
-[INFO] Java Vendor: Homebrew
-[INFO] OS Info - Arch: x86_64, Family: mac, Name: mac os x, Version: 12.6.1
+mvn --version
+
+Apache Maven 3.8.7 (b89d5959fcde851dcb1c8946a785a163f14e1e29)
+Maven home: /usr/local/Cellar/maven/3.8.7/libexec
+Java version: 1.8.0_352, vendor: Homebrew, runtime: /usr/local/Cellar/openjdk@8/1.8.0+352/libexec/openjdk.jdk/Contents/Home/jre
+Default locale: en_GB, platform encoding: UTF-8
+OS name: "mac os x", version: "12.6.1", arch: "x86_64", family: "mac"
 +---+
   
   Sample Plugin Configuration:
diff --git a/maven-enforcer-plugin/src/main/java/org/apache/maven/plugins/enforcer/DisplayInfoMojo.java b/maven-enforcer-plugin/src/main/java/org/apache/maven/plugins/enforcer/DisplayInfoMojo.java
index eebb7fb..9311fc2 100644
--- a/maven-enforcer-plugin/src/main/java/org/apache/maven/plugins/enforcer/DisplayInfoMojo.java
+++ b/maven-enforcer-plugin/src/main/java/org/apache/maven/plugins/enforcer/DisplayInfoMojo.java
@@ -29,7 +29,9 @@ import org.apache.maven.plugins.annotations.Parameter;
  * This goal displays the current platform information.
  *
  * @author <a href="mailto:brianf@apache.org">Brian Fox</a>
+ * @deprecated please use {@code mvn --version}
  */
+@Deprecated
 @Mojo(name = "display-info", threadSafe = true)
 public class DisplayInfoMojo extends AbstractMojo {
 
diff --git a/maven-enforcer-plugin/src/site/apt/index.apt b/maven-enforcer-plugin/src/site/apt/index.apt
index 1c5cf97..c15c17b 100644
--- a/maven-enforcer-plugin/src/site/apt/index.apt
+++ b/maven-enforcer-plugin/src/site/apt/index.apt
@@ -28,14 +28,12 @@ Maven Enforcer Plugin - The Loving Iron Fist of Maven\x99
   The Enforcer plugin provides goals to control certain environmental constraints such as Maven version, JDK version and OS family
   along with many more built-in rules and user created rules.
 
-* Goals Overview
+* Goal Overview
 
-  The Enforcer plugin has two goals:
+  The Enforcer plugin has a goal:
 
   *{{{./enforce-mojo.html}enforcer:enforce}} executes rules for each project in a multi-project build.
 
-  *{{{./display-info-mojo.html}enforcer:display-info}} display the current information as detected by the built-in rules.
-
 * Usage
 
   General instructions on how to use the Enforcer Plugin can be found on the {{{./usage.html}usage page}}.
diff --git a/maven-enforcer-plugin/src/site/apt/usage.apt.vm b/maven-enforcer-plugin/src/site/apt/usage.apt.vm
index f4a3790..5d05036 100644
--- a/maven-enforcer-plugin/src/site/apt/usage.apt.vm
+++ b/maven-enforcer-plugin/src/site/apt/usage.apt.vm
@@ -105,17 +105,4 @@ Usage
   [...]
 </project>
 +---+
-  
-* The <<<enforcer:display-info>>> mojo
 
-   This goal is used to determine the current information as detected by the standard rules:
-     
-+---+
-   mvn enforcer:display-info
-   ...
-   [enforcer:display-info]
-       Maven Version: 2.0.6
-       JDK Version: 1.5.0_11 normalized as: 1.5.0-11
-       OS Info: Arch: x86 Family: windows Name: windows xp Version: 5.1
-+---+
-