You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by gg...@apache.org on 2024/07/13 14:06:56 UTC
(commons-lang) branch master updated: Prepare for the next release candidate
This is an automated email from the ASF dual-hosted git repository.
ggregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-lang.git
The following commit(s) were added to refs/heads/master by this push:
new e30167b3b Prepare for the next release candidate
e30167b3b is described below
commit e30167b3b3afe1228378ae09307c1d6fd4850afa
Author: Gary Gregory <ga...@gmail.com>
AuthorDate: Sat Jul 13 14:06:52 2024 +0000
Prepare for the next release candidate
---
CONTRIBUTING.md | 14 ++--
README.md | 20 +++---
RELEASE-NOTES.txt | 154 ++++++++++++++++++++++++++++++++++++++++
src/site/xdoc/download_lang.xml | 26 +++----
4 files changed, 183 insertions(+), 31 deletions(-)
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 9a12c2764..a6b5fa287 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -41,28 +41,27 @@
Contributing to Apache Commons Lang
======================
-You have found a bug or you have an idea for a cool new feature? Contributing code is a great way to give something back to
-the open source community. Before you dig right into the code there are a few guidelines that we need contributors to
-follow so that we can have a chance of keeping on top of things.
+Have you found a bug or have an idea for a cool new feature? Contributing code is a great way to give something back to the open-source community.
+Before you dig right into the code, we need contributors to follow a few guidelines to have a chance of keeping on top of things.
Getting Started
---------------
+ Make sure you have a [JIRA account](https://issues.apache.org/jira/).
-+ Make sure you have a [GitHub account](https://github.com/signup/free).
++ Make sure you have a [GitHub account](https://github.com/signup/free). This is not essential, but makes providing patches much easier.
+ If you're planning to implement a new feature it makes sense to discuss your changes on the [dev list](https://commons.apache.org/mail-lists.html) first. This way you can make sure you're not wasting your time on something that isn't considered to be in Apache Commons Lang's scope.
+ Submit a [Jira Ticket][jira] for your issue, assuming one does not already exist.
+ Clearly describe the issue including steps to reproduce when it is a bug.
+ Make sure you fill in the earliest version that you know has the issue.
+ Find the corresponding [repository on GitHub](https://github.com/apache/?query=commons-),
-[fork](https://help.github.com/articles/fork-a-repo/) and check out your forked repository.
+[fork](https://help.github.com/articles/fork-a-repo/) and check out your forked repository. If you don't have a GitHub account, you can still clone the Commons repository.
Making Changes
--------------
+ Create a _topic branch_ for your isolated work.
* Usually you should base your branch on the `master` branch.
- * A good topic branch name can be the JIRA bug id plus a keyword, e.g. `LANG-123-InputStream`.
+ * A good topic branch name can be the JIRA bug ID plus a keyword, e.g. `LANG-123-InputStream`.
* If you have submitted multiple JIRA issues, try to maintain separate branches and pull requests.
+ Make commits of logical units.
* Make sure your commit messages are meaningful and in the proper format. Your commit message should contain the key of the JIRA issue.
@@ -72,7 +71,7 @@ Making Changes
+ 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 first.
+ Check for unnecessary whitespace with `git diff` -- check before committing.
+ Make sure you have added the necessary tests for your changes, typically in `src/test/java`.
-+ Run all the tests with `mvn clean verify` to assure nothing else was accidentally broken.
++ Run all the tests with `mvn clean verify` to ensure nothing else was accidentally broken.
Making Trivial Changes
----------------------
@@ -109,7 +108,6 @@ Additional Resources
+ [General GitHub documentation](https://help.github.com/)
+ [GitHub pull request documentation](https://help.github.com/articles/creating-a-pull-request/)
+ [Apache Commons Twitter Account](https://twitter.com/ApacheCommons)
-+ `#apache-commons` IRC channel on `irc.freenode.net`
[cla]:https://www.apache.org/licenses/#clas
[jira]:https://issues.apache.org/jira/browse/LANG
diff --git a/README.md b/README.md
index 5be16e397..87a099bb6 100644
--- a/README.md
+++ b/README.md
@@ -45,7 +45,7 @@ Apache Commons Lang
[](https://github.com/apache/commons-lang/actions/workflows/maven.yml)
[](https://maven-badges.herokuapp.com/maven-central/org.apache.commons/commons-lang3/?gav=true)
-[](https://javadoc.io/doc/org.apache.commons/commons-lang3/3.14.0)
+[](https://javadoc.io/doc/org.apache.commons/commons-lang3/3.15.0)
[](https://github.com/apache/commons-lang/actions/workflows/codeql-analysis.yml)
[](https://api.securityscorecards.dev/projects/github.com/apache/commons-lang)
@@ -53,12 +53,11 @@ Apache Commons Lang, a package of Java utility classes for the
classes that are in java.lang's hierarchy, or are considered to be so
standard as to justify existence in java.lang.
-The code is tested using the latest revision of the JDK for supported
-LTS releases.
-These are 8, 11, 17 and 21 currently, see:
-https://github.com/apache/commons-lang/blob/master/.github/workflows/maven.yml
-
-Please ensure your build environment is up-to-date and kindly report any build issues.
+ The code is tested using the latest revision of the JDK for supported
+ LTS releases: 8, 11, 17 and 21 currently.
+ See https://github.com/apache/commons-lang/blob/master/.github/workflows/maven.yml
+
+ Please ensure your build environment is up-to-date and kindly report any build issues.
Documentation
-------------
@@ -77,7 +76,7 @@ Alternatively, you can pull it from the central Maven repositories:
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
- <version>3.14.0</version>
+ <version>3.15.0</version>
</dependency>
```
@@ -97,7 +96,9 @@ There are some guidelines which will make applying PRs easier for us:
+ No tabs! Please use spaces for indentation.
+ Respect the existing code style for each file.
+ 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.
-+ Provide JUnit tests for your changes and make sure your changes don't break any existing tests by running ```mvn```.
++ Provide JUnit tests for your changes and make sure your changes don't break any existing tests by running `mvn`.
++ Before you pushing a PR, run `mvn` (by itself), this runs the default goal, which contains all build checks.
++ To see the code coverage report, regardless of coverage failures, run `mvn clean site -Dcommons.jacoco.haltOnFailure=false`
If you plan to contribute on a regular basis, please consider filing a [contributor license agreement](https://www.apache.org/licenses/#clas).
You can learn more about contributing via GitHub in our [contribution guidelines](CONTRIBUTING.md).
@@ -119,7 +120,6 @@ Additional Resources
+ [Apache Issue Tracker (JIRA)](https://issues.apache.org/jira/browse/LANG)
+ [Apache Commons Slack Channel](https://the-asf.slack.com/archives/C60NVB8AD)
+ [Apache Commons Twitter Account](https://twitter.com/ApacheCommons)
-+ `#apache-commons` IRC channel on `irc.freenode.org`
Apache Commons Components
-------------------------
diff --git a/RELEASE-NOTES.txt b/RELEASE-NOTES.txt
index 6553b0ecf..33badc780 100644
--- a/RELEASE-NOTES.txt
+++ b/RELEASE-NOTES.txt
@@ -15,6 +15,160 @@ See the License for the specific language governing permissions and
limitations under the License.
+ Apache Commons Lang
+ Version 3.15.0
+ Release Notes
+
+
+The Apache Commons team is pleased to announce Apache Commons Lang Version 3.15.0.
+
+Commons Lang is a set of utility functions and reusable components that should be of use in any Java environment.
+
+Starting with Commons Lang 3.9, we target Java 8, making use of those features.
+
+For advice on upgrading from 2.x to 3.x, see:
+
+ https://commons.apache.org/lang/article3_0.html
+
+Apache Commons Lang, a package of Java utility classes for the
+classes that are in java.lang's hierarchy, or are considered to be so
+standard as to justify existence in java.lang.
+
+The code is tested using the latest revision of the JDK for supported
+LTS releases: 8, 11, 17 and 21 currently.
+See https://github.com/apache/commons-lang/blob/master/.github/workflows/maven.yml
+
+Please ensure your build environment is up-to-date and kindly report any build issues.
+
+New features and bug fixes (Java 8 or above).
+
+Changes in this version include:
+
+New features:
+o LANG-1724: Customize text pattern in DiffResult#toString(). Thanks to Gary Gregory, Dennis Baerten.
+o Add DiffBuilder.Builder. Thanks to Gary Gregory.
+o Add DiffBuilder.builder(). Thanks to Gary Gregory.
+o Add ReflectionDiffBuilder.Builder. Thanks to Gary Gregory.
+o Add ReflectionDiffBuilder.builder(). Thanks to Gary Gregory.
+o Add test in TypeUtilsTest #1151. Thanks to Elliotte Rusty Harold.
+o Add Streams.failableStream(T), non-varargs variant. Thanks to Gary Gregory.
+o Add Streams.nonNull(T), non-varargs variant. Thanks to Gary Gregory.
+o Add ArrayUtils.nullTo(T[], T[]). Thanks to Gary Gregory.
+o Add T ArrayUtils.arraycopy(T, int, T, int, int) fluent style. Thanks to Gary Gregory.
+o Add T ArrayUtils.arraycopy(T, int, int, int, Function) fluent style. Thanks to Gary Gregory.
+o Add SystemUtils.IS_JAVA_22. Thanks to Gary Gregory.
+o Add JavaVersion.JAVA_22. Thanks to Gary Gregory.
+o Add SystemProperties.getUserName(Supplier<String>). Thanks to Gary Gregory.
+o Add SystemProperties.getLineSeparator(Supplier<String>). Thanks to Gary Gregory.
+o Add SystemProperties.getJavaSpecificationVersion(Supplier<String>). Thanks to Gary Gregory.
+o Add SystemProperties constants and methods for system properties as of Java 22. Thanks to Gary Gregory.
+o Add MethodUtils.getMethodObject(Class, String, Class...). Thanks to Gary Gregory.
+o LANG-1733: Add null-safe Consumers.accept() and Functions.apply() #1215. Thanks to Jongjin Bae, Gary Gregory.
+o Add SystemUtils.IS_OS_ANDROID. Thanks to Gary Gregory.
+o Add SystemUtils.IS_OS_MAC_OSX_SONOMA. Thanks to Gary Gregory.
+o Add RuntimeEnvironment.inContainer() #1241. Thanks to Gary Gregory.
+o Add AppendableJoiner and refactor string joining #1244. Thanks to Gary Gregory.
+
+Fixed Bugs:
+o Improve Javadoc in ExceptionUtils #1136. Thanks to Mikl�s Karak�, Gary Gregory.
+o Fixed two non-deterministic tests in EnumUtilsTest.java #1131. Thanks to Saiharshith Karuneegar Ramesh, Gary Gregory.
+o LANG-1721: Fix wrong number check that cause StringIndexOutOfBoundsException #1140. Thanks to Arthur Chan, Gary Gregory.
+o LANG-1722: Rethrow NegativeArraySizeException as SerializationException in SerializationUtils.deserialize(InputStream) #1141. Thanks to Arthur Chan.
+o LANG-1723: Throw NumberFormatException instead of IndexOutOfBoundsException in NumberUtils.getMantissa(String, int) #1145. Thanks to Arthur Chan, Gary Gregory.
+o Minor grammar fixes #1143. Thanks to Parano�d User.
+o LANG-1713: ArrayUtils will return null when adding two null arrays, but undocumented. Thanks to John Hendrikx, Gary Gregory.
+o Let parent POM figure out commons.spdx.version. Thanks to Gary Gregory.
+o LANG-1726: Undeprecate ExceptionUtils.rethrow(Throwable). Thanks to V�clav Haisman, Gary Gregory.
+o LANG-1702: Test the Conversion class #1155. Thanks to Elliotte Rusty Harold.
+o Address minor redundancies after code inspection #1148. Thanks to ParanoidUser, Elliotte Rusty Harold, Gary Gregory.
+o Allow EventListenerSupport to handle (and ignore) exception from listeners allowing invocation of all listeners #1167. Thanks to Gary Gregory.
+o Deprecate AnnotationUtils 0-argument constructor. Thanks to Gary Gregory.
+o Deprecate ArchUtils 0-argument constructor. Thanks to Gary Gregory.
+o Deprecate ArrayUtils 0-argument constructor. Thanks to Gary Gregory.
+o Deprecate BooleanUtils 0-argument constructor. Thanks to Gary Gregory.
+o Deprecate CharSequenceUtils 0-argument constructor. Thanks to Gary Gregory.
+o Deprecate CharSetUtils 0-argument constructor. Thanks to Gary Gregory.
+o Deprecate CharUtils 0-argument constructor. Thanks to Gary Gregory.
+o Deprecate ClassLoaderUtils 0-argument constructor. Thanks to Gary Gregory.
+o Deprecate ClassPathUtils 0-argument constructor. Thanks to Gary Gregory.
+o Deprecate ClassUtils 0-argument constructor. Thanks to Gary Gregory.
+o Deprecate ConstructorUtils 0-argument constructor. Thanks to Gary Gregory.
+o Deprecate DateFormatUtils 0-argument constructor. Thanks to Gary Gregory.
+o Deprecate DateUtils 0-argument constructor. Thanks to Gary Gregory.
+o Deprecate Diff.getType(). Thanks to Gary Gregory.
+o Deprecate DiffBuilder.DiffBuilder(T, T, ToStringStyle). Thanks to Gary Gregory.
+o Deprecate DiffBuilder.DiffBuilder(T, T, ToStringStyle, boolean). Thanks to Gary Gregory.
+o Deprecate DurationFormatUtils 0-argument constructor. Thanks to Gary Gregory.
+o Deprecate DurationUtils 0-argument constructor. Thanks to Gary Gregory.
+o Deprecate EnumUtils 0-argument constructor. Thanks to Gary Gregory.
+o Deprecate EventUtils 0-argument constructor. Thanks to Gary Gregory.
+o Deprecate FieldUtils 0-argument constructor. Thanks to Gary Gregory.
+o Deprecate IEEE754rUtils 0-argument constructor. Thanks to Gary Gregory.
+o Deprecate InheritanceUtils 0-argument constructor. Thanks to Gary Gregory.
+o Deprecate IntStreams 0-argument constructor. Thanks to Gary Gregory.
+o Deprecate LocaleUtils 0-argument constructor. Thanks to Gary Gregory.
+o Deprecate LockingVisitors 0-argument constructor. Thanks to Gary Gregory.
+o Deprecate MemberUtils 0-argument constructor. Thanks to Gary Gregory.
+o Deprecate MethodUtils 0-argument constructor. Thanks to Gary Gregory.
+o Deprecate NumberUtils 0-argument constructor. Thanks to Gary Gregory.
+o Deprecate ObjectUtils 0-argument constructor. Thanks to Gary Gregory.
+o Deprecate RandomStringUtils 0-argument constructor. Thanks to Gary Gregory.
+o Deprecate RandomUtils 0-argument constructor. Thanks to Gary Gregory.
+o Deprecate ReflectionDiffBuilder.ReflectionDiffBuilder(T, T, ToStringStyle). Thanks to Gary Gregory.
+o Deprecate RegExUtils 0-argument constructor. Thanks to Gary Gregory.
+o Deprecate SerializationUtils 0-argument constructor. Thanks to Gary Gregory.
+o Deprecate Streams 0-argument constructor. Thanks to Gary Gregory.
+o Deprecate StringEscapeUtils 0-argument constructor. Thanks to Gary Gregory.
+o Deprecate StringUtils 0-argument constructor. Thanks to Gary Gregory.
+o Deprecate Suppliers 0-argument constructor. Thanks to Gary Gregory.
+o Deprecate SystemProperties 0-argument constructor. Thanks to Gary Gregory.
+o Deprecate ThreadUtils 0-argument constructor. Thanks to Gary Gregory.
+o Deprecate TypeUtils 0-argument constructor. Thanks to Gary Gregory.
+o Make ArrayFill null-safe. Thanks to Gary Gregory.
+o Make ArraySorter null-safe. Thanks to Gary Gregory.
+o Make ArrayUtils.removeAll() null-safe. Thanks to Gary Gregory.
+o Fix Java version in README.md #1170. Thanks to Philipp Trulson, Gary Gregory.
+o StringUtils.stripAccents() should handle ligatures, UTF32 math blocks, etc. #1201. Thanks to Stephan Peters, Gary Gregory, Bernd.
+o LANG-1524: TypeUtils.toString(Type) StackOverflowError for an inner class in the inner class parameterized enclosing class #657. Thanks to kijong.youn, Aakash Gupta, Gary Gregory.
+o Deprecate SystemUtils.getUserName(String) in favor of SystemProperties.getUserName(Supplier). Thanks to Gary Gregory.
+o Make LockVisitor.acceptReadLocked(FailableConsumer) null-safe. Thanks to Gary Gregory.
+o Make LockVisitor.applyWriteLocked(FailableConsumer) null-safe. Thanks to Gary Gregory.
+o Make ObjectUtils.getFirstNonNull(Supplier...) null-safe. Thanks to Gary Gregory.
+o Make SystemProperties.getLineSeparator(Supplier). Thanks to Gary Gregory.
+o StringUtils.stripAccents(String) doesn't handle "\u0111" and "\u0110" (Vietnamese) #1216. Thanks to hunghhdev.
+o StringUtils.stripAccents(String) doesn't handle I with bar. Thanks to Gary Gregory.
+o StringUtils.stripAccents(String) doesn't handle U with bar. Thanks to Gary Gregory.
+o StringUtils.stripAccents(String) doesn't handle T with stroke. Thanks to Gary Gregory.
+o LANG-1735: Fix Javadoc for FluentBitSet.setInclusive(int, int) #1222. Thanks to Tobias Kiecker.
+o Same Javadoc changes as [TEXT-234] #1223. Thanks to Tobias Kiecker.
+o Remove duplicate static data in SerializationUtils.ClassLoaderAwareObjectInputStream. Thanks to Gary Gregory.
+o Reimplement RandomStringUtils on top of SecureRandom#getInstanceStrong() #1235. Thanks to Gary Gregory, Henri Yandell, Fabrice Benhamouda.
+o LANG-1657: DiffBuilder: Type constraint for method append(..., DiffResult) too strict #786. Thanks to Matthias Welz, Andrew Thomas, Gary Gregory.
+
+Changes:
+o Bump commons-parent from 64 to 71 #1194, #1233. Thanks to Dependabot, Gary Gregory.
+o Bump org.codehaus.mojo:exec-maven-plugin from 3.1.1 to 3.3.0 #1175, #1224. Thanks to Dependabot.
+o Bump org.apache.commons:commons-text from 1.11.0 to 1.12.0 #1200. Thanks to Dependabot.
+o Bump org.easymock:easymock from 5.2.0 to 5.3.0 #1232. Thanks to Dependabot.
+o Bump org.codehaus.mojo:taglist-maven-plugin from 3.0.0 to 3.1.0 #1242. Thanks to Dependabot.
+
+Removed:
+o Drop obsolete JDK 13 Maven profile #1142. Thanks to Parano�d User.
+
+Historical list of changes: https://commons.apache.org/proper/commons-lang/changes-report.html
+
+For complete information on Apache Commons Lang, including instructions on how to submit bug reports,
+patches, or suggestions for improvement, see the Apache Commons Lang website:
+
+https://commons.apache.org/proper/commons-lang/
+
+Download page: https://commons.apache.org/proper/commons-lang/download_lang.cgi
+
+Have fun!
+-Apache Commons Team
+
+-----------------------------------------------------------------------------
+
Apache Commons Lang
Version 3.14.0
Release Notes
diff --git a/src/site/xdoc/download_lang.xml b/src/site/xdoc/download_lang.xml
index 0891e1838..eee47cdc9 100644
--- a/src/site/xdoc/download_lang.xml
+++ b/src/site/xdoc/download_lang.xml
@@ -113,32 +113,32 @@ limitations under the License.
</p>
</subsection>
</section>
- <section name="Apache Commons Lang 3.14.0 (Java 8+)">
+ <section name="Apache Commons Lang 3.15.0 (Java 8+)">
<subsection name="Binaries">
<table>
<tr>
- <td><a href="[preferred]/commons/lang/binaries/commons-lang3-3.14.0-bin.tar.gz">commons-lang3-3.14.0-bin.tar.gz</a></td>
- <td><a href="https://downloads.apache.org/commons/lang/binaries/commons-lang3-3.14.0-bin.tar.gz.sha512">sha512</a></td>
- <td><a href="https://downloads.apache.org/commons/lang/binaries/commons-lang3-3.14.0-bin.tar.gz.asc">pgp</a></td>
+ <td><a href="[preferred]/commons/lang/binaries/commons-lang3-3.15.0-bin.tar.gz">commons-lang3-3.15.0-bin.tar.gz</a></td>
+ <td><a href="https://downloads.apache.org/commons/lang/binaries/commons-lang3-3.15.0-bin.tar.gz.sha512">sha512</a></td>
+ <td><a href="https://downloads.apache.org/commons/lang/binaries/commons-lang3-3.15.0-bin.tar.gz.asc">pgp</a></td>
</tr>
<tr>
- <td><a href="[preferred]/commons/lang/binaries/commons-lang3-3.14.0-bin.zip">commons-lang3-3.14.0-bin.zip</a></td>
- <td><a href="https://downloads.apache.org/commons/lang/binaries/commons-lang3-3.14.0-bin.zip.sha512">sha512</a></td>
- <td><a href="https://downloads.apache.org/commons/lang/binaries/commons-lang3-3.14.0-bin.zip.asc">pgp</a></td>
+ <td><a href="[preferred]/commons/lang/binaries/commons-lang3-3.15.0-bin.zip">commons-lang3-3.15.0-bin.zip</a></td>
+ <td><a href="https://downloads.apache.org/commons/lang/binaries/commons-lang3-3.15.0-bin.zip.sha512">sha512</a></td>
+ <td><a href="https://downloads.apache.org/commons/lang/binaries/commons-lang3-3.15.0-bin.zip.asc">pgp</a></td>
</tr>
</table>
</subsection>
<subsection name="Source">
<table>
<tr>
- <td><a href="[preferred]/commons/lang/source/commons-lang3-3.14.0-src.tar.gz">commons-lang3-3.14.0-src.tar.gz</a></td>
- <td><a href="https://downloads.apache.org/commons/lang/source/commons-lang3-3.14.0-src.tar.gz.sha512">sha512</a></td>
- <td><a href="https://downloads.apache.org/commons/lang/source/commons-lang3-3.14.0-src.tar.gz.asc">pgp</a></td>
+ <td><a href="[preferred]/commons/lang/source/commons-lang3-3.15.0-src.tar.gz">commons-lang3-3.15.0-src.tar.gz</a></td>
+ <td><a href="https://downloads.apache.org/commons/lang/source/commons-lang3-3.15.0-src.tar.gz.sha512">sha512</a></td>
+ <td><a href="https://downloads.apache.org/commons/lang/source/commons-lang3-3.15.0-src.tar.gz.asc">pgp</a></td>
</tr>
<tr>
- <td><a href="[preferred]/commons/lang/source/commons-lang3-3.14.0-src.zip">commons-lang3-3.14.0-src.zip</a></td>
- <td><a href="https://downloads.apache.org/commons/lang/source/commons-lang3-3.14.0-src.zip.sha512">sha512</a></td>
- <td><a href="https://downloads.apache.org/commons/lang/source/commons-lang3-3.14.0-src.zip.asc">pgp</a></td>
+ <td><a href="[preferred]/commons/lang/source/commons-lang3-3.15.0-src.zip">commons-lang3-3.15.0-src.zip</a></td>
+ <td><a href="https://downloads.apache.org/commons/lang/source/commons-lang3-3.15.0-src.zip.sha512">sha512</a></td>
+ <td><a href="https://downloads.apache.org/commons/lang/source/commons-lang3-3.15.0-src.zip.asc">pgp</a></td>
</tr>
</table>
</subsection>