You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@@ -76,7 +76,7 @@ Alternatively, you can pull it from the central Maven repositories:
76
76
<dependency>
77
77
<groupId>org.apache.commons</groupId>
78
78
<artifactId>commons-lang3</artifactId>
79
-
<version>3.18.0</version>
79
+
<version>3.19.0</version>
80
80
</dependency>
81
81
```
82
82
@@ -97,7 +97,7 @@ There are some guidelines which will make applying PRs easier for us:
97
97
+ Respect the existing code style for each file.
98
98
+ Create minimal diffs - disable on save actions like reformat source code or organize imports. If you feel the source code should be reformatted create a separate PR for this change.
99
99
+ Provide JUnit tests for your changes and make sure your changes don't break any existing tests by running `mvn`.
100
-
+ Before you pushing a PR, run `mvn` (by itself), this runs the default goal, which contains all build checks.
100
+
+ Before you push a PR, run `mvn` (without arguments). This runs the default goal which contains all build checks.
101
101
+ To see the code coverage report, regardless of coverage failures, run `mvn clean site -Dcommons.jacoco.haltOnFailure=false -Pjacoco`
102
102
103
103
If you plan to contribute on a regular basis, please consider filing a [contributor license agreement](https://www.apache.org/licenses/#clas).
Copy file name to clipboardExpand all lines: RELEASE-NOTES.txt
+141Lines changed: 141 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -14,6 +14,147 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
14
See the License for the specific language governing permissions and
15
15
limitations under the License.
16
16
17
+
Apache Commons Lang 3.19.0 Release Notes
18
+
----------------------------------------
19
+
20
+
The Apache Commons Lang team is pleased to announce the release of Apache Commons Lang 3.19.0.
21
+
22
+
Commons Lang is a set of utility functions and reusable components that should be useful in any Java environment.
23
+
24
+
Starting with Commons Lang 3.9, we target Java 8, using those features.
25
+
26
+
For advice on upgrading from 2.x to 3.x, see:
27
+
28
+
https://commons.apache.org/lang/article3_0.html
29
+
30
+
Apache Commons Lang, a package of Java utility classes for the
31
+
classes that are in java.lang's hierarchy, or are considered to be so
32
+
standard as to justify existence in java.lang.
33
+
34
+
The code is tested using the latest revision of the JDK for supported
35
+
LTS releases: 8, 11, 17 and 21 currently.
36
+
See https://github.com/apache/commons-lang/blob/master/.github/workflows/maven.yml
37
+
38
+
Please ensure your build environment is up-to-date and kindly report any build issues.
39
+
40
+
This is a feature and maintenance release. Java 8 or later is required.
41
+
42
+
Changes in this version include:
43
+
44
+
New features:
45
+
o Add ArrayUtils.SOFT_MAX_ARRAY_LENGTH. Thanks to Gary Gregory.
46
+
o Add SystemUtils.IS_OS_NETWARE. Thanks to Gary Gregory.
47
+
o Add MethodUtils.getAccessibleMethod(Class, Method). Thanks to Gary Gregory.
48
+
o Add documentation to site for CVE-2025-48924 ClassUtils.getClass(...) can throw a StackOverflowError on very long inputs. Thanks to Gary Gregory.
49
+
o Add StringUtils.indexOfAny(CharSequence, int, char...). Thanks to Gary Gregory.
50
+
o Add ConcurrentException.ConcurrentException(String). Thanks to Gary Gregory.
51
+
o Add DateUtils.toLocalDateTime(Date[, TimeZone]) #1385. Thanks to Finger, Gary Gregory, Piotr P. Karwasz.
52
+
o Add DateUtils.toOffsetDateTime(Date[, TimeZone]). Thanks to Gary Gregory.
53
+
o Add DateUtils.toZonedDateTime(Date[, TimeZone]). Thanks to Gary Gregory.
54
+
o Add ByteConsumer. Thanks to Gary Gregory.
55
+
o Add ByteSupplier. Thanks to Gary Gregory.
56
+
o Add FailableByteConsumer. Thanks to Gary Gregory.
57
+
o Add FailableByteSupplier. Thanks to Gary Gregory.
58
+
o LANG-1784: Add Functions methods for null-safe mapping and chaining #1435. Thanks to Rich Dougherty, Gary Gregory.
59
+
o LANG-1784: Add Failable methods for null-safe mapping and chaining #1435. Thanks to Rich Dougherty, Gary Gregory.
60
+
o Add DoubleRange.fit(double). Thanks to Gary Gregory.
61
+
o Add IntegerRange.fit(int). Thanks to Gary Gregory.
62
+
o Add LongRange.fit(long). Thanks to Gary Gregory.
63
+
o Add DurationUtils.get(String, TemporalUnit, long). Thanks to Gary Gregory.
64
+
o Add DurationUtils.getMillis(String, long). Thanks to Gary Gregory.
65
+
o Add DurationUtils.getSeconds(String, long). Thanks to Gary Gregory.
66
+
o Add SystemProperties.getBoolean(Class, String, boolean). Thanks to Gary Gregory.
67
+
o Add SystemProperties.getInt(Class, String, int). Thanks to Gary Gregory.
68
+
o Add SystemProperties.getLong(Class, String, long). Thanks to Gary Gregory.
69
+
70
+
Fixed Bugs:
71
+
o LANG-1778: MethodUtils.getMatchingMethod() doesn't respect the hierarchy of methods #1414. Thanks to wuwu2000.
72
+
o MethodUtils.getMethodObject(Class<?>, String, Class<?>...) now returns null instead of throwing a NullPointerException, as it does for other exception types. Thanks to Gary Gregory.
73
+
o Reduce spurious failures in ArrayUtilsTest methods that test ArrayUtils.shuffle() methods. Thanks to Gary Gregory.
74
+
o MethodUtils cannot find or invoke a public method on a public class implemented in its package-private superclass. Thanks to Gary Gregory.
75
+
o AtomicSafeInitializer.get() can spin internally if the FailableSupplier given to AbstractConcurrentInitializer.AbstractBuilder.setInitializer(FailableSupplier) throws a RuntimeException. Thanks to Stanislav Fort, Gary Gregory.
76
+
o LANG-1783: WordUtils.containsAllWords?() may throw PatternSyntaxException. Thanks to Arnout Engelen, Stanislav Fort, Gary Gregory.
77
+
o LANG-1782: MethodUtils cannot find or invoke vararg methods without providing vararg types or values #1427. Thanks to Joe Ferner, Gary Gregory.
78
+
o MethodUtils cannot find or invoke vararg methods of interface types. Thanks to Joe Ferner, Gary Gregory.
79
+
o MethodUtils cannot find or invoke vararg methods when widening primitive types following the JLS 5.1.2. Widening Primitive Conversion. Thanks to Joe Ferner, Gary Gregory.
80
+
o LANG-1597: Invocation fails because matching varargs method found but then discarded. Thanks to Richard Eckart de Castilho, Gary Gregory.
81
+
o Don't check accessibility twice in MemberUtils.setAccessibleWorkaround(T). Thanks to Gary Gregory.
82
+
o LANG-1774: Improve handling of ClassUtils.getShortCanonicalName() for invalid input #1437. Thanks to Zhongxin Yan, Madhur Lathi, Yudan Liu, Gary Gregory.
83
+
o LANG-1720: Improve Javadocs for Conversion. Thanks to Sheung Chi Chan, Arthur Chan, Gary Gregory, Elliotte Rusty Harold.
84
+
o Fix CalendarUtils.toLocalDate() Javadoc return type description #1440. Thanks to mayuming.
85
+
o Fix the method name in Javadoc examples for CharUtils.isHex() #1444. Thanks to mayuming.
86
+
o Deprecate NumberUtils.compare(byte, byte) in favor of Byte.compare(byte, byte). Thanks to Gary Gregory.
87
+
o Deprecate NumberUtils.compare(int, int) in favor of Integer.compare(int, int). Thanks to Gary Gregory.
88
+
o Deprecate NumberUtils.compare(long, long) in favor of Long.compare(long, long). Thanks to Gary Gregory.
89
+
o Deprecate NumberUtils.compare(short, short) in favor of Short.compare(short, short). Thanks to Gary Gregory.
90
+
o Deprecate obsolete system property constant SystemProperties.AWT_TOOLKIT. Thanks to Gary Gregory.
91
+
o Deprecate obsolete system property constant SystemProperties.JAVA_AWT_FONTS. Thanks to Gary Gregory.
92
+
o Deprecate obsolete system property constant SystemProperties.JAVA_AWT_GRAPHICSENV. Thanks to Gary Gregory.
93
+
o Deprecate obsolete system property constant SystemProperties.JAVA_AWT_HEADLESS. Thanks to Gary Gregory.
94
+
o Deprecate obsolete system property constant SystemProperties.JAVA_AWT_PRINTERJOB. Thanks to Gary Gregory.
95
+
o Deprecate obsolete system property constant SystemProperties.JAVA_COMPILER. Thanks to Gary Gregory.
96
+
o Deprecate obsolete system property constant SystemProperties.JAVA_ENDORSED_DIRS. Thanks to Gary Gregory.
97
+
o Deprecate obsolete system property constant SystemProperties.JAVA_EXT_DIRS. Thanks to Gary Gregory.
98
+
o Deprecate method for obsolete system property constant SystemProperties.getAwtToolkit() Thanks to Gary Gregory.
99
+
o Deprecate method for obsolete system property constant SystemProperties.getJavaAwtFonts() Thanks to Gary Gregory.
100
+
o Deprecate method for obsolete system property constant SystemProperties.getJavaAwtGraphicsenv() Thanks to Gary Gregory.
101
+
o Deprecate method for obsolete system property constant SystemProperties.getJavaAwtHeadless() Thanks to Gary Gregory.
102
+
o Deprecate method for obsolete system property constant SystemProperties.getJavaAwtPrinterjob() Thanks to Gary Gregory.
103
+
o Deprecate method for obsolete system property constant SystemProperties.getJavaCompiler() Thanks to Gary Gregory.
104
+
o Deprecate method for obsolete system property constant SystemProperties.getJavaEndorsedDirs() Thanks to Gary Gregory.
105
+
o Deprecate method for obsolete system property constant SystemProperties.getJavaExtDirs() Thanks to Gary Gregory.
106
+
o Deprecate method for obsolete system property constant SystemUtils.isJavaAwtHeadless() Thanks to Gary Gregory.
107
+
o Deprecate constants for obsolete system property SystemUtils.JAVA_AWT_FONTS. Thanks to Gary Gregory.
108
+
o Deprecate constants for obsolete system property SystemUtils.JAVA_AWT_GRAPHICSENV. Thanks to Gary Gregory.
109
+
o Deprecate constants for obsolete system property SystemUtils.JAVA_AWT_HEADLESS. Thanks to Gary Gregory.
110
+
o Deprecate constants for obsolete system property SystemUtils.JAVA_AWT_PRINTERJOB. Thanks to Gary Gregory.
111
+
o Deprecate constants for obsolete system property SystemUtils.JAVA_COMPILER. Thanks to Gary Gregory.
112
+
o Deprecate constants for obsolete system property SystemUtils.JAVA_ENDORSED_DIRS. Thanks to Gary Gregory.
113
+
o Deprecate constants for obsolete system property SystemUtils.JAVA_EXT_DIRS. Thanks to Gary Gregory.
114
+
o [javadoc] General improvements. Thanks to Gary Gregory.
115
+
o [javadoc] Fix thrown exception documentation for MethodUtils.getMethodObject(Class<?>, String, Class<?>...). Thanks to Gary Gregory.
116
+
o [javadoc] Strings::equalsAny: CI doc string should show it's insensitive #1416. Thanks to Scott Parish.
117
+
o [javadoc] General Javadoc improvements. Thanks to Gary Gregory.
118
+
o LANG-1780: [javadoc] Fix Strings Javadoc #1419. Thanks to tza.
119
+
o [javadoc] Fix typo in Javadoc of Strings instances #1406. Thanks to Sebastian Steiner.
120
+
o [javadoc] Fix Javadocs in ClassUtils #1410. Thanks to Hassan A Hashim.
121
+
o [javadoc] Fix @deprecated link for StringUtils#startsWithAny #1424. Thanks to mfg92.
122
+
o Replace old feather logotype with new oak logotype. Thanks to Gary Gregory.
123
+
124
+
Changes:
125
+
o [test] Bump org.apache.commons:commons-text from 1.13.1 to 1.14.0. Thanks to Gary Gregory.
126
+
o Bump org.apache.commons:commons-parent from 85 to 88. Thanks to Gary Gregory.
127
+
128
+
129
+
Historical list of changes: https://commons.apache.org/proper/commons-lang/changes.html
130
+
131
+
For complete information on Apache Commons Lang, including instructions on how to submit bug reports,
132
+
patches, or suggestions for improvement, see the Apache Commons Lang website:
Copy file name to clipboardExpand all lines: src/changes/changes.xml
+1-1Lines changed: 1 addition & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -44,7 +44,7 @@ The <action> type attribute can be add,update,fix,remove.
44
44
<title>Apache Commons Lang Release Notes</title>
45
45
</properties>
46
46
<body>
47
-
<releaseversion="3.19.0"date="YYYY-MM-DD"description="This is a feature and maintenance release. Java 8 or later is required.">
47
+
<releaseversion="3.19.0"date="2025-09-19"description="This is a feature and maintenance release. Java 8 or later is required.">
48
48
<!-- FIX -->
49
49
<actionissue="LANG-1778"type="fix"dev="ggregory"due-to="wuwu2000">MethodUtils.getMatchingMethod() doesn't respect the hierarchy of methods #1414.</action>
50
50
<actiontype="fix"dev="ggregory"due-to="Gary Gregory">MethodUtils.getMethodObject(Class<?>, String, Class<?>...) now returns null instead of throwing a NullPointerException, as it does for other exception types.</action>
0 commit comments