You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by er...@apache.org on 2018/03/08 12:56:36 UTC
[1/2] [lang] LANG-1384: Fix NPE when version >= 11
Repository: commons-lang
Updated Branches:
refs/heads/master 0820c4c89 -> 50ce8c44e
LANG-1384: Fix NPE when version >= 11
The fix is likely to be insufficient if the version naming scheme changes.
Project: http://git-wip-us.apache.org/repos/asf/commons-lang/repo
Commit: http://git-wip-us.apache.org/repos/asf/commons-lang/commit/cb686673
Tree: http://git-wip-us.apache.org/repos/asf/commons-lang/tree/cb686673
Diff: http://git-wip-us.apache.org/repos/asf/commons-lang/diff/cb686673
Branch: refs/heads/master
Commit: cb686673a70a6f14c35575550c48c37d19a1598b
Parents: 0820c4c
Author: Gilles Sadowski <gi...@harfang.homelinux.org>
Authored: Thu Mar 8 13:17:00 2018 +0100
Committer: Gilles Sadowski <gi...@harfang.homelinux.org>
Committed: Thu Mar 8 13:17:00 2018 +0100
----------------------------------------------------------------------
src/main/java/org/apache/commons/lang3/JavaVersion.java | 2 ++
src/test/java/org/apache/commons/lang3/JavaVersionTest.java | 1 +
2 files changed, 3 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/commons-lang/blob/cb686673/src/main/java/org/apache/commons/lang3/JavaVersion.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/commons/lang3/JavaVersion.java b/src/main/java/org/apache/commons/lang3/JavaVersion.java
index a074453..60258f6 100644
--- a/src/main/java/org/apache/commons/lang3/JavaVersion.java
+++ b/src/main/java/org/apache/commons/lang3/JavaVersion.java
@@ -191,6 +191,8 @@ public enum JavaVersion {
if (Float.parseFloat(nom.substring(firstComma + 1, end)) > .9f) {
return JAVA_RECENT;
}
+ } else if (v > 10) {
+ return JAVA_RECENT;
}
return null;
}
http://git-wip-us.apache.org/repos/asf/commons-lang/blob/cb686673/src/test/java/org/apache/commons/lang3/JavaVersionTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/commons/lang3/JavaVersionTest.java b/src/test/java/org/apache/commons/lang3/JavaVersionTest.java
index 4d4202c..ad28565 100644
--- a/src/test/java/org/apache/commons/lang3/JavaVersionTest.java
+++ b/src/test/java/org/apache/commons/lang3/JavaVersionTest.java
@@ -59,6 +59,7 @@ public class JavaVersionTest {
assertEquals("1.10 failed", JAVA_RECENT, get("1.10"));
// assertNull("2.10 unexpectedly worked", get("2.10"));
assertEquals("Wrapper method failed", get("1.5"), getJavaVersion("1.5"));
+ assertEquals("Unhandled", JAVA_RECENT, get("11")); // LANG-1384
}
@Test
[2/2] [lang] LANG-1384: Version "11" is available.
Posted by er...@apache.org.
LANG-1384: Version "11" is available.
Project: http://git-wip-us.apache.org/repos/asf/commons-lang/repo
Commit: http://git-wip-us.apache.org/repos/asf/commons-lang/commit/50ce8c44
Tree: http://git-wip-us.apache.org/repos/asf/commons-lang/tree/50ce8c44
Diff: http://git-wip-us.apache.org/repos/asf/commons-lang/diff/50ce8c44
Branch: refs/heads/master
Commit: 50ce8c44e1601acffa39f5568f0fc140aade0564
Parents: cb68667
Author: Gilles Sadowski <gi...@harfang.homelinux.org>
Authored: Thu Mar 8 13:54:31 2018 +0100
Committer: Gilles Sadowski <gi...@harfang.homelinux.org>
Committed: Thu Mar 8 13:54:31 2018 +0100
----------------------------------------------------------------------
.../java/org/apache/commons/lang3/JavaVersion.java | 9 +++++++++
.../java/org/apache/commons/lang3/SystemUtils.java | 12 ++++++++++++
.../org/apache/commons/lang3/JavaVersionTest.java | 3 ++-
.../org/apache/commons/lang3/SystemUtilsTest.java | 17 +++++++++++++++++
4 files changed, 40 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/commons-lang/blob/50ce8c44/src/main/java/org/apache/commons/lang3/JavaVersion.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/commons/lang3/JavaVersion.java b/src/main/java/org/apache/commons/lang3/JavaVersion.java
index 60258f6..148c99e 100644
--- a/src/main/java/org/apache/commons/lang3/JavaVersion.java
+++ b/src/main/java/org/apache/commons/lang3/JavaVersion.java
@@ -95,6 +95,13 @@ public enum JavaVersion {
JAVA_10(10.0f, "10"),
/**
+ * Java 11
+ *
+ * @since 3.8
+ */
+ JAVA_11(11.0f, "11"),
+
+ /**
* The most recent java version. Mainly introduced to avoid to break when a new version of Java is used.
*/
JAVA_RECENT(maxVersion(), Float.toString(maxVersion()));
@@ -180,6 +187,8 @@ public enum JavaVersion {
return JAVA_9;
} else if ("10".equals(nom)) {
return JAVA_10;
+ } else if ("11".equals(nom)) {
+ return JAVA_11;
}
if (nom == null) {
return null;
http://git-wip-us.apache.org/repos/asf/commons-lang/blob/50ce8c44/src/main/java/org/apache/commons/lang3/SystemUtils.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/commons/lang3/SystemUtils.java b/src/main/java/org/apache/commons/lang3/SystemUtils.java
index a6d9c2e..f91628a 100644
--- a/src/main/java/org/apache/commons/lang3/SystemUtils.java
+++ b/src/main/java/org/apache/commons/lang3/SystemUtils.java
@@ -985,6 +985,18 @@ public class SystemUtils {
*/
public static final boolean IS_JAVA_10 = getJavaVersionMatches("10");
+ /**
+ * <p>
+ * Is {@code true} if this is Java version 11 (also 11.x versions).
+ * </p>
+ * <p>
+ * The field will return {@code false} if {@link #JAVA_VERSION} is {@code null}.
+ * </p>
+ *
+ * @since 3.8
+ */
+ public static final boolean IS_JAVA_11 = getJavaVersionMatches("11");
+
// Operating system checks
// -----------------------------------------------------------------------
// These MUST be declared after those above as they depend on the
http://git-wip-us.apache.org/repos/asf/commons-lang/blob/50ce8c44/src/test/java/org/apache/commons/lang3/JavaVersionTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/commons/lang3/JavaVersionTest.java b/src/test/java/org/apache/commons/lang3/JavaVersionTest.java
index ad28565..7a6cbe2 100644
--- a/src/test/java/org/apache/commons/lang3/JavaVersionTest.java
+++ b/src/test/java/org/apache/commons/lang3/JavaVersionTest.java
@@ -56,10 +56,11 @@ public class JavaVersionTest {
assertEquals("1.8 failed", JAVA_1_8, get("1.8"));
assertEquals("9 failed", JAVA_9, get("9"));
assertEquals("10 failed", JAVA_10, get("10"));
+ assertEquals("11 failed", JavaVersion.JAVA_11, get("11"));
assertEquals("1.10 failed", JAVA_RECENT, get("1.10"));
// assertNull("2.10 unexpectedly worked", get("2.10"));
assertEquals("Wrapper method failed", get("1.5"), getJavaVersion("1.5"));
- assertEquals("Unhandled", JAVA_RECENT, get("11")); // LANG-1384
+ assertEquals("Unhandled", JAVA_RECENT, get("12")); // LANG-1384
}
@Test
http://git-wip-us.apache.org/repos/asf/commons-lang/blob/50ce8c44/src/test/java/org/apache/commons/lang3/SystemUtilsTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/commons/lang3/SystemUtilsTest.java b/src/test/java/org/apache/commons/lang3/SystemUtilsTest.java
index b97cb81..8e5610c 100644
--- a/src/test/java/org/apache/commons/lang3/SystemUtilsTest.java
+++ b/src/test/java/org/apache/commons/lang3/SystemUtilsTest.java
@@ -29,6 +29,7 @@ import static org.apache.commons.lang3.JavaVersion.JAVA_1_7;
import static org.apache.commons.lang3.JavaVersion.JAVA_1_8;
import static org.apache.commons.lang3.JavaVersion.JAVA_9;
import static org.apache.commons.lang3.JavaVersion.JAVA_10;
+import static org.apache.commons.lang3.JavaVersion.JAVA_11;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNotNull;
@@ -408,6 +409,7 @@ public class SystemUtilsTest {
assertFalse(SystemUtils.isJavaVersionAtLeast(JAVA_1_8));
assertFalse(SystemUtils.isJavaVersionAtLeast(JAVA_9));
assertFalse(SystemUtils.isJavaVersionAtLeast(JAVA_10));
+ assertFalse(SystemUtils.isJavaVersionAtLeast(JAVA_11));
} else if (SystemUtils.IS_JAVA_1_8) {
assertTrue(SystemUtils.isJavaVersionAtLeast(JAVA_1_1));
assertTrue(SystemUtils.isJavaVersionAtLeast(JAVA_1_2));
@@ -419,6 +421,7 @@ public class SystemUtilsTest {
assertTrue(SystemUtils.isJavaVersionAtLeast(JAVA_1_8));
assertFalse(SystemUtils.isJavaVersionAtLeast(JAVA_9));
assertFalse(SystemUtils.isJavaVersionAtLeast(JAVA_10));
+ assertFalse(SystemUtils.isJavaVersionAtLeast(JAVA_11));
} else if (SystemUtils.IS_JAVA_9) {
assertTrue(SystemUtils.isJavaVersionAtLeast(JAVA_1_1));
assertTrue(SystemUtils.isJavaVersionAtLeast(JAVA_1_2));
@@ -430,6 +433,7 @@ public class SystemUtilsTest {
assertTrue(SystemUtils.isJavaVersionAtLeast(JAVA_1_8));
assertTrue(SystemUtils.isJavaVersionAtLeast(JAVA_9));
assertFalse(SystemUtils.isJavaVersionAtLeast(JAVA_10));
+ assertFalse(SystemUtils.isJavaVersionAtLeast(JAVA_11));
} else if (SystemUtils.IS_JAVA_10) {
assertTrue(SystemUtils.isJavaVersionAtLeast(JAVA_1_1));
assertTrue(SystemUtils.isJavaVersionAtLeast(JAVA_1_2));
@@ -441,6 +445,19 @@ public class SystemUtilsTest {
assertTrue(SystemUtils.isJavaVersionAtLeast(JAVA_1_8));
assertTrue(SystemUtils.isJavaVersionAtLeast(JAVA_9));
assertTrue(SystemUtils.isJavaVersionAtLeast(JAVA_10));
+ assertFalse(SystemUtils.isJavaVersionAtLeast(JAVA_11));
+ } else if (SystemUtils.IS_JAVA_11) {
+ assertTrue(SystemUtils.isJavaVersionAtLeast(JAVA_1_1));
+ assertTrue(SystemUtils.isJavaVersionAtLeast(JAVA_1_2));
+ assertTrue(SystemUtils.isJavaVersionAtLeast(JAVA_1_3));
+ assertTrue(SystemUtils.isJavaVersionAtLeast(JAVA_1_4));
+ assertTrue(SystemUtils.isJavaVersionAtLeast(JAVA_1_5));
+ assertTrue(SystemUtils.isJavaVersionAtLeast(JAVA_1_6));
+ assertTrue(SystemUtils.isJavaVersionAtLeast(JAVA_1_7));
+ assertTrue(SystemUtils.isJavaVersionAtLeast(JAVA_1_8));
+ assertTrue(SystemUtils.isJavaVersionAtLeast(JAVA_9));
+ assertTrue(SystemUtils.isJavaVersionAtLeast(JAVA_10));
+ assertTrue(SystemUtils.isJavaVersionAtLeast(JAVA_11));
}
}