Prepare for 3.10 RC1.

This commit is contained in:
Gary Gregory 2020-03-23 09:10:49 -04:00
parent 055c20ab98
commit e3a7399a7d
10 changed files with 344 additions and 116 deletions

View File

@ -25,7 +25,7 @@
| commons-build-plugin/trunk/src/main/resources/commons-xdoc-templates |
+======================================================================+
| |
| 1) Re-generate using: mvn commons:contributing-md |
| 1) Re-generate using: mvn commons-build:contributing-md |
| |
| 2) Set the following properties in the component's pom: |
| - commons.jira.id (required, alphabetic, upper case) |

View File

@ -2,4 +2,4 @@ Apache Commons Lang
Copyright 2001-2020 The Apache Software Foundation
This product includes software developed at
The Apache Software Foundation (http://www.apache.org/).
The Apache Software Foundation (https://www.apache.org/).

View File

@ -25,7 +25,7 @@
| commons-build-plugin/trunk/src/main/resources/commons-xdoc-templates |
+======================================================================+
| |
| 1) Re-generate using: mvn commons:readme-md |
| 1) Re-generate using: mvn commons-build:readme-md |
| |
| 2) Set the following properties in the component's pom: |
| - commons.componentid (required, alphabetic, lower case) |
@ -46,7 +46,7 @@ Apache Commons Lang
[![Build Status](https://travis-ci.org/apache/commons-lang.svg)](https://travis-ci.org/apache/commons-lang)
[![Coverage Status](https://coveralls.io/repos/apache/commons-lang/badge.svg)](https://coveralls.io/r/apache/commons-lang)
[![Maven Central](https://maven-badges.herokuapp.com/maven-central/org.apache.commons/commons-lang3/badge.svg)](https://maven-badges.herokuapp.com/maven-central/org.apache.commons/commons-lang3/)
[![Javadocs](https://javadoc.io/badge/org.apache.commons/commons-lang3/3.9.svg)](https://javadoc.io/doc/org.apache.commons/commons-lang3/3.9)
[![Javadocs](https://javadoc.io/badge/org.apache.commons/commons-lang3/3.10.svg)](https://javadoc.io/doc/org.apache.commons/commons-lang3/3.10)
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
@ -55,13 +55,13 @@ Apache Commons Lang, a package of Java utility classes for the
Documentation
-------------
More information can be found on the [Apache Commons Lang homepage](https://commons.apache.org/proper/commons-lang/).
The [Javadoc](https://commons.apache.org/proper/commons-lang/javadocs/api-release/) can be browsed.
More information can be found on the [Apache Commons Lang homepage](https://commons.apache.org/proper/commons-lang).
The [Javadoc](https://commons.apache.org/proper/commons-lang/apidocs) can be browsed.
Questions related to the usage of Apache Commons Lang should be posted to the [user mailing list][ml].
Where can I get the latest release?
-----------------------------------
You can download source and binaries from our [download page](https://commons.apache.org/proper/commons-lang3/download_lang3.cgi).
You can download source and binaries from our [download page](https://commons.apache.org/proper/commons-lang/download_lang.cgi).
Alternatively you can pull it from the central Maven repositories:
@ -69,7 +69,7 @@ Alternatively you can pull it from the central Maven repositories:
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.9</version>
<version>3.10</version>
</dependency>
```

View File

@ -1,3 +1,108 @@
Apache Commons Lang
Version 3.10
Release Notes
INTRODUCTION:
This document contains the release notes for the 3.10 version of Apache Commons Lang.
Commons Lang is a set of utility functions and reusable components that should be of use in any
Java environment.
Lang 3.9 and onwards now targets Java 8, making use of features that arrived with Java 8.
For the advice on upgrading from 2.x to 3.x, see the following page:
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.
New features and bug fixes. Requires Java 8, supports Java 9, 10, 11.
Changes in this version include:
New features:
o LANG-1457: Add ExceptionUtils.throwableOfType(Throwable, Class) and friends.
o LANG-1458: Add EMPTY_ARRAY constants to classes in org.apache.commons.lang3.tuple.
o LANG-1461: Add null-safe StringUtils APIs to wrap String#getBytes([Charset|String]).
o LANG-1467: Add zero arg constructor for org.apache.commons.lang3.NotImplementedException.
o LANG-1470: Add ArrayUtils.addFirst() methods.
o LANG-1479: Add Range.fit(T) to fit a value into a range.
o LANG-1477: Added Functions.as*, and tests thereof, as suggested by Peter Verhas
o LANG-1485: Add getters for lhs and rhs objects in DiffResult #451. Thanks to nicolasbd.
o LANG-1486: Generify builder classes Diffable, DiffBuilder, and DiffResult #452. Thanks to Gary Gregory.
o LANG-1487: Add ClassLoaderUtils with toString() implementations #453. Thanks to Gary Gregory.
o LANG-1489: Add null-safe APIs as StringUtils.toRootLowerCase(String) and StringUtils.toRootUpperCase(String) #456. Thanks to Gary Gregory.
o LANG-1494: Add org.apache.commons.lang3.time.Calendars. Thanks to Gary Gregory.
o LANG-1495: Add EnumUtils getEnum() methods with default values #475. Thanks to Cheong Voon Leong.
o LANG-1177: Added indexesOf methods and simplified removeAllOccurences #471. Thanks to Liel Fridman.
o LANG-1498: Add support of lambda value evaluation for defaulting methods #416. Thanks to Lysergid, Gary Gregory.
o LANG-1503: Add factory methods to Pair classes with Map.Entry input. #454. Thanks to XenoAmess, Gary Gregory.
o LANG-1505: Add StopWatch convenience APIs to format times and create a simple instance. Thanks to Gary Gregory.
o LANG-1506: Allow a StopWatch to carry an optional message. Thanks to Gary Gregory.
o LANG-1507: Add ComparableUtils #398. Thanks to Sam Kruglov, Mark Dacek, Marc Magon, Pascal Schumacher, Rob Tompkins, Bruno P. Kinoshita, Amey Jadiye, Gary Gregory.
o LANG-1508: Add org.apache.commons.lang3.SystemUtils.getUserName(). Thanks to Gary Gregory.
o LANG-1509: Add ObjectToStringComparator. #483. Thanks to Gary Gregory.
o LANG-1510: Add org.apache.commons.lang3.arch.Processor.Arch.getLabel(). Thanks to Gary Gregory.
o LANG-1512: Add IS_JAVA_14 and IS_JAVA_15 to org.apache.commons.lang3.SystemUtils. Thanks to Gary Gregory.
o LANG-1513: ObjectUtils: Get first non-null supplier value. Thanks to Bernhard Bonigl, Gary Gregory.
o Added the Streams class, and Functions.stream() as an accessor thereof.
Fixed Bugs:
o LANG-1514: Make test more stable by wrapping assertions in hashset. Thanks to contextshuffling.
o LANG-1450: Generate Javadoc jar on build.
o LANG-1460: Trivial: year of release for 3.9 says 2018, should be 2019 Thanks to Larry West.
o LANG-1476: Use synchronize on a set created with Collections.synchronizedSet before iterating Thanks to emopers.
o LANG-1475: StringUtils.unwrap incorrect throw StringIndexOutOfBoundsException. Thanks to stzx.
o LANG-1406: StringIndexOutOfBoundsException in StringUtils.replaceIgnoreCase #423. Thanks to geratorres.
o LANG-1453: StringUtils.removeIgnoreCase("?a", "a") throws IndexOutOfBoundsException #423. Thanks to geratorres.
o LANG-1426: Corrected usage examples in Javadocs #458. Thanks to Brower, Mikko Maunu, Suraj Gautam.
o LANG-1463: StringUtils abbreviate returns String of length greater than maxWidth #477. Thanks to bbeckercscc, Gary Gregory.
o LANG-1500: Test may fail due to a different order of fields returned by reflection api #480. Thanks to contextshuffling.
o LANG-1501: Sort fields in ReflectionToStringBuilder for deterministic order #481. Thanks to contextshuffling.
o LANG-1433: MethodUtils will throw a NPE if invokeMethod() is called for a var-args method #407. Thanks to Christian Franzen.
o LANG-1518: MethodUtils.getAnnotation() with searchSupers = true does not work if super is generic #494. Thanks to Michele Preti, Bruno P. Kinoshita, Gary Gregory.
Changes:
o LANG-1437: Remove redundant if statements in join methods #411. Thanks to Andrei Troie.
o commons.japicmp.version 0.13.1 -> 0.14.1.
o junit-jupiter 5.5.0 -> 5.5.1.
o junit-jupiter 5.5.1 -> 5.5.2.
o Improve Javadoc based on the discussion of the GitHub PR #459. Thanks to Jonathan Leitschuh, Bruno P. Kinoshita, Rob Tompkins, Gary Gregory.
o maven-checkstyle-plugin 3.0.0 -> 3.1.0.
o LANG-696: Update documentation related to the issue LANG-696 #449. Thanks to Peter Verhas.
o AnnotationUtils little cleanup #467. Thanks to Peter Verhas.
o Update test dependency: org.easymock:easymock 4.0.2 -> 4.1. Thanks to Gary Gregory.
o Update test dependency: org.hamcrest:hamcrest 2.1 -> 2.2. Thanks to Gary Gregory.
o Update test dependency: org.junit-pioneer:junit-pioneer 0.3.0 -> 0.4.2. Thanks to Gary Gregory.
o Update build dependency: com.puppycrawl.tools:checkstyle 8.18 -> 8.27. Thanks to Gary Gregory.
o Update POM parent: org.apache.commons:commons-parent 48 -> 50. Thanks to Gary Gregory.
o BooleanUtils Javadoc #469. Thanks to Peter Verhas.
o Functions Javadoc #466. Thanks to Peter Verhas.
o org.easymock:easymock 4.1 -> 4.2. Thanks to Gary Gregory.
o org.junit-pioneer:junit-pioneer 0.4.2 -> 0.5.4. Thanks to Gary Gregory.
o org.junit.jupiter:junit-jupiter 5.5.2 -> 5.6.0. Thanks to Gary Gregory.
o Use Javadoc {@code} instead of pre tags. #490. Thanks to Peter Verhas.
o ExceptionUtilsTest to 100% #486. Thanks to Peter Verhas.
o Reuse own code in Functions.java #493. Thanks to Peter Verhas.
o LANG-1523: Avoid unnecessary allocation in StringUtils.wrapIfMissing. #496. Thanks to Edgar Asatryan, Bruno P. Kinoshita, Gary Gregory.
o LANG-1525: Internally use Validate.notNull(foo, ...) instead of Validate.isTrue(foo != null, ...). Thanks to Edgar Asatryan, Bruno P. Kinoshita, Gary Gregory.
o LANG-1526: Add 1 and 0 in toBooleanObject(final String str) #502. Thanks to Dominik Schramm.
o LANG-1527: Remove an redundant argument check in NumberUtils #504. Thanks to Pengyu Nie.
o LANG-1529: Deprecate org.apache.commons.lang3.ArrayUtils.removeAllOccurences(*) for org.apache.commons.lang3.ArrayUtils.removeAllOccurrences(*). Thanks to Gary Gregory, BillCindy, Bruno P. Kinoshita.
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 Apache Commons Lang website:
https://commons.apache.org/proper/commons-lang/
=============================================================================
Apache Commons Lang
Version 3.9
Release Notes

View File

@ -45,7 +45,7 @@ The <action> type attribute can be add,update,fix,remove.
</properties>
<body>
<release version="3.10" date="YYYY-MM-DD" description="New features and bug fixes. Requires Java 8, supports Java 9, 10, 11.">
<release version="3.10" date="2020-03-22" description="New features and bug fixes. Requires Java 8, supports Java 9, 10, 11.">
<action issue="LANG-1514" type="fix" dev="kinow" due-to="contextshuffling">Make test more stable by wrapping assertions in hashset.</action>
<action issue="LANG-1450" type="fix" dev="chtompki">Generate Javadoc jar on build.</action>
<action issue="LANG-1457" type="add" dev="ggregory">Add ExceptionUtils.throwableOfType(Throwable, Class) and friends.</action>

View File

@ -0,0 +1,119 @@
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Apache Commons Lang
Version 3.10-SNAPSHOT
Release Notes
INTRODUCTION:
This document contains the release notes for the 3.10-SNAPSHOT version of Apache Commons Lang.
Commons Lang is a set of utility functions and reusable components that should be of use in any
Java environment.
Lang 3.9 and onwards now targets Java 8, making use of features that arrived with Java 8.
For the advice on upgrading from 2.x to 3.x, see the following page:
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.
New features and bug fixes. Requires Java 8, supports Java 9, 10, 11.
Changes in this version include:
New features:
o LANG-1457: Add ExceptionUtils.throwableOfType(Throwable, Class) and friends.
o LANG-1458: Add EMPTY_ARRAY constants to classes in org.apache.commons.lang3.tuple.
o LANG-1461: Add null-safe StringUtils APIs to wrap String#getBytes([Charset|String]).
o LANG-1467: Add zero arg constructor for org.apache.commons.lang3.NotImplementedException.
o LANG-1470: Add ArrayUtils.addFirst() methods.
o LANG-1479: Add Range.fit(T) to fit a value into a range.
o LANG-1477: Added Functions.as*, and tests thereof, as suggested by Peter Verhas
o LANG-1485: Add getters for lhs and rhs objects in DiffResult #451. Thanks to nicolasbd.
o LANG-1486: Generify builder classes Diffable, DiffBuilder, and DiffResult #452. Thanks to Gary Gregory.
o LANG-1487: Add ClassLoaderUtils with toString() implementations #453. Thanks to Gary Gregory.
o LANG-1489: Add null-safe APIs as StringUtils.toRootLowerCase(String) and StringUtils.toRootUpperCase(String) #456. Thanks to Gary Gregory.
o LANG-1494: Add org.apache.commons.lang3.time.Calendars. Thanks to Gary Gregory.
o LANG-1495: Add EnumUtils getEnum() methods with default values #475. Thanks to Cheong Voon Leong.
o LANG-1177: Added indexesOf methods and simplified removeAllOccurences #471. Thanks to Liel Fridman.
o LANG-1498: Add support of lambda value evaluation for defaulting methods #416. Thanks to Lysergid, Gary Gregory.
o LANG-1503: Add factory methods to Pair classes with Map.Entry input. #454. Thanks to XenoAmess, Gary Gregory.
o LANG-1505: Add StopWatch convenience APIs to format times and create a simple instance. Thanks to Gary Gregory.
o LANG-1506: Allow a StopWatch to carry an optional message. Thanks to Gary Gregory.
o LANG-1507: Add ComparableUtils #398. Thanks to Sam Kruglov, Mark Dacek, Marc Magon, Pascal Schumacher, Rob Tompkins, Bruno P. Kinoshita, Amey Jadiye, Gary Gregory.
o LANG-1508: Add org.apache.commons.lang3.SystemUtils.getUserName(). Thanks to Gary Gregory.
o LANG-1509: Add ObjectToStringComparator. #483. Thanks to Gary Gregory.
o LANG-1510: Add org.apache.commons.lang3.arch.Processor.Arch.getLabel(). Thanks to Gary Gregory.
o LANG-1512: Add IS_JAVA_14 and IS_JAVA_15 to org.apache.commons.lang3.SystemUtils. Thanks to Gary Gregory.
o LANG-1513: ObjectUtils: Get first non-null supplier value. Thanks to Bernhard Bonigl, Gary Gregory.
o Added the Streams class, and Functions.stream() as an accessor thereof.
Fixed Bugs:
o LANG-1514: Make test more stable by wrapping assertions in hashset. Thanks to contextshuffling.
o LANG-1450: Generate Javadoc jar on build.
o LANG-1460: Trivial: year of release for 3.9 says 2018, should be 2019 Thanks to Larry West.
o LANG-1476: Use synchronize on a set created with Collections.synchronizedSet before iterating Thanks to emopers.
o LANG-1475: StringUtils.unwrap incorrect throw StringIndexOutOfBoundsException. Thanks to stzx.
o LANG-1406: StringIndexOutOfBoundsException in StringUtils.replaceIgnoreCase #423. Thanks to geratorres.
o LANG-1453: StringUtils.removeIgnoreCase("?a", "a") throws IndexOutOfBoundsException #423. Thanks to geratorres.
o LANG-1426: Corrected usage examples in Javadocs #458. Thanks to Brower, Mikko Maunu, Suraj Gautam.
o LANG-1463: StringUtils abbreviate returns String of length greater than maxWidth #477. Thanks to bbeckercscc, Gary Gregory.
o LANG-1500: Test may fail due to a different order of fields returned by reflection api #480. Thanks to contextshuffling.
o LANG-1501: Sort fields in ReflectionToStringBuilder for deterministic order #481. Thanks to contextshuffling.
o LANG-1433: MethodUtils will throw a NPE if invokeMethod() is called for a var-args method #407. Thanks to Christian Franzen.
o LANG-1518: MethodUtils.getAnnotation() with searchSupers = true does not work if super is generic #494. Thanks to Michele Preti, Bruno P. Kinoshita, Gary Gregory.
Changes:
o LANG-1437: Remove redundant if statements in join methods #411. Thanks to Andrei Troie.
o commons.japicmp.version 0.13.1 -> 0.14.1.
o junit-jupiter 5.5.0 -> 5.5.1.
o junit-jupiter 5.5.1 -> 5.5.2.
o Improve Javadoc based on the discussion of the GitHub PR #459. Thanks to Jonathan Leitschuh, Bruno P. Kinoshita, Rob Tompkins, Gary Gregory.
o maven-checkstyle-plugin 3.0.0 -> 3.1.0.
o LANG-696: Update documentation related to the issue LANG-696 #449. Thanks to Peter Verhas.
o AnnotationUtils little cleanup #467. Thanks to Peter Verhas.
o Update test dependency: org.easymock:easymock 4.0.2 -> 4.1. Thanks to Gary Gregory.
o Update test dependency: org.hamcrest:hamcrest 2.1 -> 2.2. Thanks to Gary Gregory.
o Update test dependency: org.junit-pioneer:junit-pioneer 0.3.0 -> 0.4.2. Thanks to Gary Gregory.
o Update build dependency: com.puppycrawl.tools:checkstyle 8.18 -> 8.27. Thanks to Gary Gregory.
o Update POM parent: org.apache.commons:commons-parent 48 -> 50. Thanks to Gary Gregory.
o BooleanUtils Javadoc #469. Thanks to Peter Verhas.
o Functions Javadoc #466. Thanks to Peter Verhas.
o org.easymock:easymock 4.1 -> 4.2. Thanks to Gary Gregory.
o org.junit-pioneer:junit-pioneer 0.4.2 -> 0.5.4. Thanks to Gary Gregory.
o org.junit.jupiter:junit-jupiter 5.5.2 -> 5.6.0. Thanks to Gary Gregory.
o Use Javadoc {@code} instead of pre tags. #490. Thanks to Peter Verhas.
o ExceptionUtilsTest to 100% #486. Thanks to Peter Verhas.
o Reuse own code in Functions.java #493. Thanks to Peter Verhas.
o LANG-1523: Avoid unnecessary allocation in StringUtils.wrapIfMissing. #496. Thanks to Edgar Asatryan, Bruno P. Kinoshita, Gary Gregory.
o LANG-1525: Internally use Validate.notNull(foo, ...) instead of Validate.isTrue(foo != null, ...). Thanks to Edgar Asatryan, Bruno P. Kinoshita, Gary Gregory.
o LANG-1526: Add 1 and 0 in toBooleanObject(final String str) #502. Thanks to Dominik Schramm.
o LANG-1527: Remove an redundant argument check in NumberUtils #504. Thanks to Pengyu Nie.
o LANG-1529: Deprecate org.apache.commons.lang3.ArrayUtils.removeAllOccurences(*) for org.apache.commons.lang3.ArrayUtils.removeAllOccurrences(*). Thanks to Gary Gregory, BillCindy, Bruno P. Kinoshita.
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 Apache Commons Lang website:
https://commons.apache.org/proper/commons-lang/

View File

@ -26,22 +26,24 @@ limitations under the License.
| commons-build-plugin/trunk/src/main/resources/commons-xdoc-templates |
+======================================================================+
| |
| 1) Re-generate using: mvn commons:download-page |
| 1) Re-generate using: mvn commons-build:download-page |
| |
| 2) Set the following properties in the component's pom: |
| - commons.componentid (required, alphabetic, lower case) |
| - commons.componentid (required, alphabetic, lower case) |
| - commons.release.version (required) |
| - commons.release.name (required) |
| - commons.binary.suffix (optional) |
| (defaults to "-bin", set to "" for pre-maven2 releases) |
| - commons.release.desc (optional) |
| - commons.release.subdir (optional) |
| - commons.release.hash (optional, lowercase, default sha512) |
| |
| - commons.release.2/3.version (conditional) |
| - commons.release.2/3.name (conditional) |
| - commons.release.2/3.binary.suffix (optional) |
| - commons.release.2/3.desc (optional) |
| - commons.release.2/3.subdir (optional) |
| - commons.release.[234].version (conditional) |
| - commons.release.[234].name (conditional) |
| - commons.release.[234].binary.suffix (optional) |
| - commons.release.[234].desc (optional) |
| - commons.release.[234].subdir (optional) |
| - commons.release.[234].hash (optional, lowercase, [sha512])|
| |
| 3) Example Properties |
| (commons.release.name inherited by parent: |
@ -61,83 +63,82 @@ limitations under the License.
</properties>
<body>
<section name="Download Apache Commons Lang">
<subsection name="Using a Mirror">
<p>
We recommend you use a mirror to download our release
builds, but you <strong>must</strong> <a href="http://www.apache.org/info/verification.html">verify the integrity</a> of
the downloaded files using signatures downloaded from our main
distribution directories. Recent releases (48 hours) may not yet
be available from all the mirrors.
</p>
<subsection name="Using a Mirror">
<p>
We recommend you use a mirror to download our release
builds, but you <strong>must</strong> <a href="https://www.apache.org/info/verification.html">verify the integrity</a> of
the downloaded files using signatures downloaded from our main
distribution directories. Recent releases (48 hours) may not yet
be available from all the mirrors.
</p>
<p>
You are currently using <b>[preferred]</b>. If you
encounter a problem with this mirror, please select another
mirror. If all mirrors are failing, there are <i>backup</i>
mirrors (at the end of the mirrors list) that should be
available.
<br></br>
[if-any logo]<a href="[link]"><img align="right" src="[logo]" border="0"></img></a>[end]
</p>
<p>
You are currently using <b>[preferred]</b>. If you
encounter a problem with this mirror, please select another
mirror. If all mirrors are failing, there are <i>backup</i>
mirrors (at the end of the mirrors list) that should be
available.
<br></br>
[if-any logo]<a href="[link]"><img align="right" src="[logo]" border="0"></img></a>[end]
</p>
<form action="[location]" method="get" id="SelectMirror">
<p>
Other mirrors:
<select name="Preferred">
[if-any http]
[for http]<option value="[http]">[http]</option>[end]
[end]
[if-any ftp]
[for ftp]<option value="[ftp]">[ftp]</option>[end]
[end]
[if-any backup]
[for backup]<option value="[backup]">[backup] (backup)</option>[end]
[end]
</select>
<input type="submit" value="Change"></input>
</p>
</form>
<form action="[location]" method="get" id="SelectMirror">
<p>
Other mirrors:
<select name="Preferred">
[if-any http]
[for http]<option value="[http]">[http]</option>[end]
[end]
[if-any ftp]
[for ftp]<option value="[ftp]">[ftp]</option>[end]
[end]
[if-any backup]
[for backup]<option value="[backup]">[backup] (backup)</option>[end]
[end]
</select>
<input type="submit" value="Change"></input>
</p>
</form>
<p>
It is essential that you
<a href="https://www.apache.org/info/verification.html">verify the integrity</a>
of downloaded files, preferably using the <code>PGP</code> signature (<code>*.asc</code> files);
failing that using the <code>SHA512</code> hash (<code>*.sha512</code> checksum files) or
<code>SHA1</code> hash (<code>*.sha1</code> checksum files).
</p>
<p>
The <a href="https://www.apache.org/dist/commons/KEYS">KEYS</a>
file contains the public PGP keys used by Apache Commons developers
to sign releases.
</p>
</subsection>
<p>
It is essential that you
<a href="https://www.apache.org/info/verification.html">verify the integrity</a>
of downloaded files, preferably using the <code>PGP</code> signature (<code>*.asc</code> files);
failing that using the <code>SHA512</code> hash (<code>*.sha512</code> checksum files).
</p>
<p>
The <a href="https://www.apache.org/dist/commons/KEYS">KEYS</a>
file contains the public PGP keys used by Apache Commons developers
to sign releases.
</p>
</subsection>
</section>
<section name="Apache Commons Lang 3.9 (Java 8+)">
<section name="Apache Commons Lang 3.10 (Java 8+)">
<subsection name="Binaries">
<table>
<tr>
<td><a href="[preferred]/commons/lang/binaries/commons-lang3-3.9-bin.tar.gz">commons-lang3-3.9-bin.tar.gz</a></td>
<td><a href="https://www.apache.org/dist/commons/lang/binaries/commons-lang3-3.9-bin.tar.gz.sha512">sha512</a></td>
<td><a href="https://www.apache.org/dist/commons/lang/binaries/commons-lang3-3.9-bin.tar.gz.asc">pgp</a></td>
<td><a href="[preferred]/commons/lang/binaries/commons-lang3-3.10-bin.tar.gz">commons-lang3-3.10-bin.tar.gz</a></td>
<td><a href="https://www.apache.org/dist/commons/lang/binaries/commons-lang3-3.10-bin.tar.gz.sha512">sha512</a></td>
<td><a href="https://www.apache.org/dist/commons/lang/binaries/commons-lang3-3.10-bin.tar.gz.asc">pgp</a></td>
</tr>
<tr>
<td><a href="[preferred]/commons/lang/binaries/commons-lang3-3.9-bin.zip">commons-lang3-3.9-bin.zip</a></td>
<td><a href="https://www.apache.org/dist/commons/lang/binaries/commons-lang3-3.9-bin.zip.sha512">sha512</a></td>
<td><a href="https://www.apache.org/dist/commons/lang/binaries/commons-lang3-3.9-bin.zip.asc">pgp</a></td>
<td><a href="[preferred]/commons/lang/binaries/commons-lang3-3.10-bin.zip">commons-lang3-3.10-bin.zip</a></td>
<td><a href="https://www.apache.org/dist/commons/lang/binaries/commons-lang3-3.10-bin.zip.sha512">sha512</a></td>
<td><a href="https://www.apache.org/dist/commons/lang/binaries/commons-lang3-3.10-bin.zip.asc">pgp</a></td>
</tr>
</table>
</subsection>
<subsection name="Source">
<table>
<tr>
<td><a href="[preferred]/commons/lang/source/commons-lang3-3.9-src.tar.gz">commons-lang3-3.9-src.tar.gz</a></td>
<td><a href="https://www.apache.org/dist/commons/lang/source/commons-lang3-3.9-src.tar.gz.sha512">sha512</a></td>
<td><a href="https://www.apache.org/dist/commons/lang/source/commons-lang3-3.9-src.tar.gz.asc">pgp</a></td>
<td><a href="[preferred]/commons/lang/source/commons-lang3-3.10-src.tar.gz">commons-lang3-3.10-src.tar.gz</a></td>
<td><a href="https://www.apache.org/dist/commons/lang/source/commons-lang3-3.10-src.tar.gz.sha512">sha512</a></td>
<td><a href="https://www.apache.org/dist/commons/lang/source/commons-lang3-3.10-src.tar.gz.asc">pgp</a></td>
</tr>
<tr>
<td><a href="[preferred]/commons/lang/source/commons-lang3-3.9-src.zip">commons-lang3-3.9-src.zip</a></td>
<td><a href="https://www.apache.org/dist/commons/lang/source/commons-lang3-3.9-src.zip.sha512">sha512</a></td>
<td><a href="https://www.apache.org/dist/commons/lang/source/commons-lang3-3.9-src.zip.asc">pgp</a></td>
<td><a href="[preferred]/commons/lang/source/commons-lang3-3.10-src.zip">commons-lang3-3.10-src.zip</a></td>
<td><a href="https://www.apache.org/dist/commons/lang/source/commons-lang3-3.10-src.zip.sha512">sha512</a></td>
<td><a href="https://www.apache.org/dist/commons/lang/source/commons-lang3-3.10-src.zip.asc">pgp</a></td>
</tr>
</table>
</subsection>
@ -146,40 +147,40 @@ limitations under the License.
<subsection name="Binaries">
<table>
<tr>
<td><a href="[preferred]/commons/lang/binaries/commons-lang-2.6-bin.tar.gz">commons-lang-2.6-bin.tar.gz</a></td>
<td><a href="https://www.apache.org/dist/commons/lang/binaries/commons-lang-2.6-bin.tar.gz.sha512">sha512</a></td>
<td><a href="https://www.apache.org/dist/commons/lang/binaries/commons-lang-2.6-bin.tar.gz.asc">pgp</a></td>
<td><a href="[preferred]/commons/lang/binaries/commons-lang-2.6-bin.tar.gz">commons-lang-2.6-bin.tar.gz</a></td>
<td><a href="https://www.apache.org/dist/commons/lang/binaries/commons-lang-2.6-bin.tar.gz.sha512">sha512</a></td>
<td><a href="https://www.apache.org/dist/commons/lang/binaries/commons-lang-2.6-bin.tar.gz.asc">pgp</a></td>
</tr>
<tr>
<td><a href="[preferred]/commons/lang/binaries/commons-lang-2.6-bin.zip">commons-lang-2.6-bin.zip</a></td>
<td><a href="https://www.apache.org/dist/commons/lang/binaries/commons-lang-2.6-bin.zip.sha512">sha512</a></td>
<td><a href="https://www.apache.org/dist/commons/lang/binaries/commons-lang-2.6-bin.zip.asc">pgp</a></td>
<td><a href="[preferred]/commons/lang/binaries/commons-lang-2.6-bin.zip">commons-lang-2.6-bin.zip</a></td>
<td><a href="https://www.apache.org/dist/commons/lang/binaries/commons-lang-2.6-bin.zip.sha512">sha512</a></td>
<td><a href="https://www.apache.org/dist/commons/lang/binaries/commons-lang-2.6-bin.zip.asc">pgp</a></td>
</tr>
</table>
</subsection>
<subsection name="Source">
<table>
<tr>
<td><a href="[preferred]/commons/lang/source/commons-lang-2.6-src.tar.gz">commons-lang-2.6-src.tar.gz</a></td>
<td><a href="https://www.apache.org/dist/commons/lang/source/commons-lang-2.6-src.tar.gz.sha512">sha512</a></td>
<td><a href="https://www.apache.org/dist/commons/lang/source/commons-lang-2.6-src.tar.gz.asc">pgp</a></td>
<td><a href="[preferred]/commons/lang/source/commons-lang-2.6-src.tar.gz">commons-lang-2.6-src.tar.gz</a></td>
<td><a href="https://www.apache.org/dist/commons/lang/source/commons-lang-2.6-src.tar.gz.sha512">sha512</a></td>
<td><a href="https://www.apache.org/dist/commons/lang/source/commons-lang-2.6-src.tar.gz.asc">pgp</a></td>
</tr>
<tr>
<td><a href="[preferred]/commons/lang/source/commons-lang-2.6-src.zip">commons-lang-2.6-src.zip</a></td>
<td><a href="https://www.apache.org/dist/commons/lang/source/commons-lang-2.6-src.zip.sha512">sha512</a></td>
<td><a href="https://www.apache.org/dist/commons/lang/source/commons-lang-2.6-src.zip.asc">pgp</a></td>
<td><a href="[preferred]/commons/lang/source/commons-lang-2.6-src.zip">commons-lang-2.6-src.zip</a></td>
<td><a href="https://www.apache.org/dist/commons/lang/source/commons-lang-2.6-src.zip.sha512">sha512</a></td>
<td><a href="https://www.apache.org/dist/commons/lang/source/commons-lang-2.6-src.zip.asc">pgp</a></td>
</tr>
</table>
</subsection>
</section>
<section name="Archives">
<p>
Older releases can be obtained from the archives.
</p>
<ul>
<li class="download"><a href="[preferred]/commons/lang/">browse download area</a></li>
<li><a href="https://archive.apache.org/dist/commons/lang/">archives...</a></li>
</ul>
<p>
Older releases can be obtained from the archives.
</p>
<ul>
<li class="download"><a href="[preferred]/commons/lang/">browse download area</a></li>
<li><a href="https://archive.apache.org/dist/commons/lang/">archives...</a></li>
</ul>
</section>
</body>
</document>

View File

@ -26,7 +26,7 @@ limitations under the License.
| commons-build-plugin/trunk/src/main/resources/commons-xdoc-templates |
+======================================================================+
| |
| 1) Re-generate using: mvn commons:jira-page |
| 1) Re-generate using: mvn commons-build:jira-page |
| |
| 2) Set the following properties in the component's pom: |
| - commons.jira.id (required, alphabetic, upper case) |
@ -86,7 +86,7 @@ limitations under the License.
<p>
For more information on subversion and creating patches see the
<a href="http://www.apache.org/dev/contributors.html">Apache Contributors Guide</a>.
<a href="https://www.apache.org/dev/contributors.html">Apache Contributors Guide</a>.
</p>
<p>

View File

@ -26,7 +26,7 @@ limitations under the License.
| commons-build-plugin/trunk/src/main/resources/commons-xdoc-templates |
+======================================================================+
| |
| 1) Re-generate using: mvn commons:mail-page |
| 1) Re-generate using: mvn commons-build:mail-page |
| |
| 2) Set the following properties in the component's pom: |
| - commons.componentid (required, alphabetic, lower case) |
@ -54,7 +54,7 @@ limitations under the License.
the convention in Commons is to prefix the subject line of messages with the component's name,
for example:
<ul>
<li>[lang3] Problem with the ...</li>
<li>[lang] Problem with the ...</li>
</ul>
</p>
<p>
@ -79,7 +79,7 @@ limitations under the License.
<section name="Apache Commons Lang Mailing Lists">
<p>
<strong>Please prefix the subject line of any messages for <a href="index.html">Apache Commons Lang</a>
with <i>[lang3]</i></strong> - <i>thanks!</i>
with <i>[lang]</i></strong> - <i>thanks!</i>
<br />
<br />
</p>
@ -104,11 +104,11 @@ limitations under the License.
</td>
<td><a href="mailto:user-subscribe@commons.apache.org">Subscribe</a></td>
<td><a href="mailto:user-unsubscribe@commons.apache.org">Unsubscribe</a></td>
<td><a href="mailto:user@commons.apache.org?subject=[lang3]">Post</a></td>
<td><a href="mailto:user@commons.apache.org?subject=[lang]">Post</a></td>
<td><a href="https://mail-archives.apache.org/mod_mbox/commons-user/">mail-archives.apache.org</a></td>
<td><a href="http://markmail.org/list/org.apache.commons.users/">markmail.org</a><br />
<a href="http://www.mail-archive.com/user@commons.apache.org/">www.mail-archive.com</a><br />
<a href="http://news.gmane.org/gmane.comp.jakarta.commons.devel">news.gmane.org</a>
<td><a href="https://markmail.org/list/org.apache.commons.users/">markmail.org</a><br />
<a href="https://www.mail-archive.com/user@commons.apache.org/">www.mail-archive.com</a><br />
<a href="https://news.gmane.org/gmane.comp.jakarta.commons.devel">news.gmane.org</a>
</td>
</tr>
@ -122,11 +122,11 @@ limitations under the License.
</td>
<td><a href="mailto:dev-subscribe@commons.apache.org">Subscribe</a></td>
<td><a href="mailto:dev-unsubscribe@commons.apache.org">Unsubscribe</a></td>
<td><a href="mailto:dev@commons.apache.org?subject=[lang3]">Post</a></td>
<td><a href="mailto:dev@commons.apache.org?subject=[lang]">Post</a></td>
<td><a href="https://mail-archives.apache.org/mod_mbox/commons-dev/">mail-archives.apache.org</a></td>
<td><a href="http://markmail.org/list/org.apache.commons.dev/">markmail.org</a><br />
<a href="http://www.mail-archive.com/dev@commons.apache.org/">www.mail-archive.com</a><br />
<a href="http://news.gmane.org/gmane.comp.jakarta.commons.devel">news.gmane.org</a>
<td><a href="https://markmail.org/list/org.apache.commons.dev/">markmail.org</a><br />
<a href="https://www.mail-archive.com/dev@commons.apache.org/">www.mail-archive.com</a><br />
<a href="https://news.gmane.org/gmane.comp.jakarta.commons.devel">news.gmane.org</a>
</td>
</tr>
@ -142,8 +142,8 @@ limitations under the License.
<td><a href="mailto:issues-unsubscribe@commons.apache.org">Unsubscribe</a></td>
<td><i>read only</i></td>
<td><a href="https://mail-archives.apache.org/mod_mbox/commons-issues/">mail-archives.apache.org</a></td>
<td><a href="http://markmail.org/list/org.apache.commons.issues/">markmail.org</a><br />
<a href="http://www.mail-archive.com/issues@commons.apache.org/">www.mail-archive.com</a>
<td><a href="https://markmail.org/list/org.apache.commons.issues/">markmail.org</a><br />
<a href="https://www.mail-archive.com/issues@commons.apache.org/">www.mail-archive.com</a>
</td>
</tr>
@ -159,8 +159,8 @@ limitations under the License.
<td><a href="mailto:commits-unsubscribe@commons.apache.org">Unsubscribe</a></td>
<td><i>read only</i></td>
<td><a href="https://mail-archives.apache.org/mod_mbox/commons-commits/">mail-archives.apache.org</a></td>
<td><a href="http://markmail.org/list/org.apache.commons.commits/">markmail.org</a><br />
<a href="http://www.mail-archive.com/commits@commons.apache.org/">www.mail-archive.com</a>
<td><a href="https://markmail.org/list/org.apache.commons.commits/">markmail.org</a><br />
<a href="https://www.mail-archive.com/commits@commons.apache.org/">www.mail-archive.com</a>
</td>
</tr>
@ -192,10 +192,10 @@ limitations under the License.
<td><a class="externalLink" href="mailto:announce-unsubscribe@apache.org">Unsubscribe</a></td>
<td><i>read only</i></td>
<td><a class="externalLink" href="https://mail-archives.apache.org/mod_mbox/www-announce/">mail-archives.apache.org</a></td>
<td><a class="externalLink" href="http://markmail.org/list/org.apache.announce/">markmail.org</a><br />
<a class="externalLink" href="http://old.nabble.com/Apache-News-and-Announce-f109.html">old.nabble.com</a><br />
<a class="externalLink" href="http://www.mail-archive.com/announce@apache.org/">www.mail-archive.com</a><br />
<a class="externalLink" href="http://news.gmane.org/gmane.comp.apache.announce">news.gmane.org</a>
<td><a class="externalLink" href="https://markmail.org/list/org.apache.announce/">markmail.org</a><br />
<a class="externalLink" href="https://old.nabble.com/Apache-News-and-Announce-f109.html">old.nabble.com</a><br />
<a class="externalLink" href="https://www.mail-archive.com/announce@apache.org/">www.mail-archive.com</a><br />
<a class="externalLink" href="https://news.gmane.org/gmane.comp.apache.announce">news.gmane.org</a>
</td>
</tr>
</table>

View File

@ -31,6 +31,9 @@ limitations under the License.
<tr>
<th>Version</th><th>Release date</th><th>Required Java Version</th><th>Javadoc</th><th>Release notes</th>
</tr>
<tr>
<td>3.10</td><td>2020-03-22</td><td>8</td><td><a href="javadocs/api-3.10/">api-3.10</a></td><td><a href="release-notes/RELEASE-NOTES-3.10.txt">release notes for 3.10</a></td>
</tr>
<tr>
<td>3.9</td><td>2019-04-09</td><td>8</td><td><a href="javadocs/api-3.9/">api-3.9</a></td><td><a href="release-notes/RELEASE-NOTES-3.9.txt">release notes for 3.9</a></td>
</tr>