Commit 3ca982dd authored by Emmanuel Bourg's avatar Emmanuel Bourg

Merge tag 'upstream/3.4'

Upstream version 3.4
parents 3e69c5b0 54225845
<!---
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.
-->
<!---
+======================================================================+
|**** ****|
|**** THIS FILE IS GENERATED BY THE COMMONS BUILD PLUGIN ****|
|**** DO NOT EDIT DIRECTLY ****|
|**** ****|
+======================================================================+
| TEMPLATE FILE: contributing-md-template.md |
| commons-build-plugin/trunk/src/main/resources/commons-xdoc-templates |
+======================================================================+
| |
| 1) Re-generate using: mvn commons:contributing-md |
| |
| 2) Set the following properties in the component's pom: |
| - commons.jira.id (required, alphabetic, upper case) |
| |
| 3) Example Properties |
| |
| <properties> |
| <commons.jira.id>MATH</commons.jira.id> |
| </properties> |
| |
+======================================================================+
--->
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.
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).
+ If you're planning to implement a new feature it makes sense to discuss you're 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 ticket 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.
+ Fork the repository on GitHub.
Making Changes
--------------
+ Create a topic branch from where you want to base your work (this is usually the master/trunk branch).
+ Make commits of logical units.
+ Respect the original code style:
+ Only use spaces for indentation.
+ 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.
+ Check for unnecessary whitespace with git diff --check before committing.
+ Make sure your commit messages are in the proper format. Your commit message should contain the key of the JIRA issue.
+ Make sure you have added the necessary tests for your changes.
+ Run all the tests with `mvn clean verify` to assure nothing else was accidentally broken.
Making Trivial Changes
----------------------
For changes of a trivial nature to comments and documentation, it is not always necessary to create a new ticket in JIRA.
In this case, it is appropriate to start the first line of a commit with '(doc)' instead of a ticket number.
Submitting Changes
------------------
+ Sign the [Contributor License Agreement][cla] if you haven't already.
+ Push your changes to a topic branch in your fork of the repository.
+ Submit a pull request to the repository in the apache organization.
+ Update your JIRA ticket and include a link to the pull request in the ticket.
Additional Resources
--------------------
+ [Contributing patches](https://commons.apache.org/patches.html)
+ [Apache Commons Lang JIRA project page](https://issues.apache.org/jira/browse/LANG)
+ [Contributor License Agreement][cla]
+ [General GitHub documentation](https://help.github.com/)
+ [GitHub pull request documentation](https://help.github.com/send-pull-requests/)
+ [Apache Commons Twitter Account](https://twitter.com/ApacheCommons)
+ #apachecommons IRC channel on freenode.org
[cla]:https://www.apache.org/licenses/#clas
Apache Commons Lang
Copyright 2001-2014 The Apache Software Foundation
Copyright 2001-2015 The Apache Software Foundation
This product includes software developed at
The Apache Software Foundation (http://www.apache.org/).
......
......@@ -14,37 +14,87 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
<!---
+======================================================================+
|**** ****|
|**** THIS FILE IS GENERATED BY THE COMMONS BUILD PLUGIN ****|
|**** DO NOT EDIT DIRECTLY ****|
|**** ****|
+======================================================================+
| TEMPLATE FILE: readme-md-template.md |
| commons-build-plugin/trunk/src/main/resources/commons-xdoc-templates |
+======================================================================+
| |
| 1) Re-generate using: mvn commons:readme-md |
| |
| 2) Set the following properties in the component's pom: |
| - commons.componentid (required, alphabetic, lower case) |
| - commons.release.version (required) |
| |
| 3) Example Properties |
| |
| <properties> |
| <commons.componentid>math</commons.componentid> |
| <commons.release.version>1.2</commons.release.version> |
| </properties> |
| |
+======================================================================+
--->
Apache Commons Lang
===================
Lang provides a host of helper utilities for the java.lang API, notably String manipulation methods, basic numerical methods, object reflection, concurrency, creation and serialization and System properties. Additionally it contains basic enhancements to java.util.Date and a series of utilities dedicated to help with building methods, such as hashCode, toString and equals.
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.
More information can be found on the [homepage][home].
Documentation
-------------
The [commons developer mailing list][ml] is the main channel of communication for contributors.
More information can be found on the [homepage](https://commons.apache.org/proper/commons-lang3).
The [JavaDoc](https://commons.apache.org/proper/commons-lang3/javadocs/api-release) 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][download].
You can download source and binaries from our [download page](https://commons.apache.org/proper/commons-lang3/download_lang3.cgi).
Alternatively you can pull it from the central Maven repositories:
```xml
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.3.1</version>
<version>3.3.2</version>
</dependency>
```
Contributing
------------
We accept PRs via github. The [developer mailing list][ml] is the main channel of communication for contributors.
There are some guidelines which will make applying PRs easier for us:
+ No tabs! Please use spaces for indentation.
+ Respect the code style.
+ 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 clean test```.
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).
License
-------
Code is under the [Apache Licence v2][license].
Code is under the [Apache Licence v2](https://www.apache.org/licenses/LICENSE-2.0.txt).
Donations
---------
You like Apache Commons Lang? Then [donate back to the ASF][donate] to support the development.
You like Apache Commons Lang? Then [donate back to the ASF](https://www.apache.org/foundation/contributing.html) to support the development.
Additional Resources
--------------------
+ [Apache Commons Homepage](https://commons.apache.org/)
+ [Apache Bugtracker (JIRA)](https://issues.apache.org/jira/)
+ [Apache Commons Twitter Account](https://twitter.com/ApacheCommons)
+ #apachecommons IRC channel on freenode.org
[home]:http://commons.apache.org/lang
[ml]:http://commons.apache.org/lang/mail-lists.html
[download]:http://commons.apache.org/lang/download_lang.cgi
[license]:http://www.apache.org/licenses/LICENSE-2.0.txt
[donate]:http://www.apache.org/foundation/contributing.html
[ml]:https://commons.apache.org/mail-lists.html
Apache Commons Lang
Version 3.3.2
Version 3.4
Release Notes
INTRODUCTION:
This document contains the release notes for the 3.3.2 version of
This document contains the release notes for the 3.4 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. Commons Lang 3.3.2
components that should be of use in any Java environment. Commons Lang 3.4
at least requires Java 6.0.
For the advice on upgrading from 2.x to 3.x, see the following page:
For the advice on upgrading from 2.x to 3.x, see the following page:
http://commons.apache.org/lang/article3_0.html
COMPATIBILITY
=============
Commons Lang 3.4 is fully binary compatible to the last release and can
therefore be used as a drop in replacement for 3.3.2. Note that the value of
org.apache.commons.lang3.time.DurationFormatUtils.ISO_EXTENDED_FORMAT_PATTERN
has changed, which may affect clients using the constant. Furthermore the
constant is used internally in
o DurationFormatUtils.formatDurationISO(long)
o DurationFormatUtils.formatPeriodISO(long, long)
For more information see https://issues.apache.org/jira/browse/LANG-1000.
NEW FEATURES
==============
o LANG-821: Support OS X versions in SystemUtils. Thanks to Timo Kockert.
o LANG-1103: Add SystemUtils.IS_JAVA_1_9
o LANG-1093: Add ClassUtils.getAbbreviatedName(). Thanks to Fabian Lange.
o LANG-1082: Add option to disable the "objectsTriviallyEqual" test in
DiffBuilder. Thanks to Jonathan Baker.
o LANG-1015: Add JsonToStringStyle implementation to ToStringStyle. Thanks to
Thiago Andrade.
o LANG-1080: Add NoClassNameToStringStyle implementation of ToStringStyle.
Thanks to Innokenty Shuvalov.
o LANG-883: Add StringUtils.containsAny(CharSequence, CharSequence...) method.
Thanks to Daniel Stewart.
o LANG-1052: Multiline recursive to string style. Thanks to Jan Matèrne.
o LANG-536: Add isSorted() to ArrayUtils. Thanks to James Sawle.
o LANG-1033: Add StringUtils.countMatches(CharSequence, char)
o LANG-1021: Provide methods to retrieve all fields/methods annotated with a
specific type. Thanks to Alexander Müller.
o LANG-1016: NumberUtils#isParsable method(s). Thanks to
Juan Pablo Santos Rodríguez.
o LANG-999: Add fuzzy String matching logic to StringUtils. Thanks to
Ben Ripkens.
o LANG-994: Add zero copy read method to StrBuilder. Thanks to
Mikhail Mazursky.
o LANG-993: Add zero copy write method to StrBuilder. Thanks to
Mikhail Mazursky.
o LANG-1044: Add method MethodUtils.invokeExactMethod(Object, String)
o LANG-1045: Add method MethodUtils.invokeMethod(Object, String)
FIXED BUGS
============
o LANG-794: SystemUtils.IS_OS_WINDOWS_2008, VISTA are incorrect. Thanks to
Timo Kockert.
o LANG-1104: Parse test fails for TimeZone America/Sao_Paulo
o LANG-948: Exception while using ExtendedMessageFormat and escaping braces.
Thanks to Andrey Khobnya.
o LANG-1092: Wrong formating of time zones with daylight saving time in
FastDatePrinter
o LANG-1090: FastDateParser does not set error indication in ParsePosition
o LANG-1089: FastDateParser does not handle excess hours as per
SimpleDateFormat
o LANG-1061: FastDateParser error - timezones not handled correctly. Thanks to
dmeneses.
o LANG-1087: NumberUtils#createNumber() returns positive BigDecimal when
negative Float is expected. Thanks to Renat Zhilkibaev.
o LANG-1081: DiffBuilder.append(String, Object left, Object right) does not do
a left.equals(right) check. Thanks to Jonathan Baker.
o LANG-1055: StrSubstitutor.replaceSystemProperties does not work consistently.
Thanks to Jonathan Baker.
o LANG-1083: Add (T) casts to get unit tests to pass in old JDK. Thanks to
Jonathan Baker.
o LANG-1073: Read wrong component type of array in add in ArrayUtils.
Thanks to haiyang li.
o LANG-1077: StringUtils.ordinalIndexOf("aaaaaa", "aa", 2) != 3 in StringUtils.
Thanks to haiyang li.
o LANG-1072: Duplicated "0x" check in createBigInteger in NumberUtils. Thanks
to haiyang li.
o LANG-1064: StringUtils.abbreviate description doesn't agree with the
examples. Thanks to B.J. Herbison.
o LANG-1041: Fix MethodUtilsTest so it does not depend on JDK method ordering.
Thanks to Alexandre Bartel.
o LANG-1000: ParseException when trying to parse UTC dates with Z as zone
designator using DateFormatUtils.ISO_DATETIME_TIME_ZONE_FORMAT
o LANG-1035: Javadoc for EqualsBuilder.reflectionEquals() is unclear
o LANG-1001: ISO 8601 misspelled throughout the Javadocs. Thanks to
Michael Osipov.
o LANG-1088: FastDateParser should be case insensitive
o LANG-995: Fix bug with stripping spaces on last line in WordUtils.wrap().
Thanks to Andrey Khobnya.
CHANGES
=========
o LANG-1102: Make logic for comparing OS versions in SystemUtils smarter
o LANG-1091: Shutdown thread pools in test cases. Thanks to Fabian Lange.
o LANG-1101: FastDateParser and FastDatePrinter support 'X' format
o LANG-1100: Avoid memory allocation when using date formating to StringBuffer.
Thanks to mbracher.
o LANG-935: Possible performance improvement on string escape functions.
Thanks to Fabian Lange, Thomas Neidhart.
o LANG-1098: Avoid String allocation in StrBuilder.append(CharSequence). Thanks
to Mikhail Mazurskiy, Fabian Lange.
o LANG-1098: Update maven-checkstyle-plugin to 2.14. Thanks to Micha? Kordas.
o LANG-1097: Update org.easymock:easymock to 3.3.1. Thanks to Micha? Kordas.
o LANG-1096: Update maven-pmd-plugin to 3.4. Thanks to Micha? Kordas.
o LANG-1095: Update maven-antrun-plugin to 1.8. Thanks to Micha? Kordas.
o LANG-877: Performance improvements for StringEscapeUtils. Thanks to
Fabian Lange.
o LANG-1071: Fix wrong examples in JavaDoc of
StringUtils.replaceEachRepeatedly(...),
StringUtils.replaceEach(...) Thanks to Arno Noordover.
o LANG-827: CompareToBuilder's doc doesn't specify precedence of fields it
uses in performing comparisons
o LANG-1020: Improve performance of normalize space. Thanks to Libor Ondrusek.
o LANG-1027: org.apache.commons.lang3.SystemUtils#isJavaVersionAtLeast should
return true by default
o LANG-1026: Bring static method references in StringUtils to consistent style.
Thanks to Alex Yursha.
o LANG-1017: Use non-ASCII digits in Javadoc examples for
StringUtils.isNumeric. Thanks to Christoph Schneegans.
o LANG-1008: Change min/max methods in NumberUtils/IEEE754rUtils from array
input parameters to varargs. Thanks to Thiago Andrade.
o LANG-1006: Add wrap (with String or char) to StringUtils. Thanks to
Thiago Andrade.
o LANG-1005: Extend DurationFormatUtils#formatDurationISO default pattern to
match #formatDurationHMS. Thanks to Michael Osipov.
o LANG-1007: Fixing NumberUtils JAVADoc comments for max methods. Thanks to
Thiago Andrade.
o LANG-731: Better Javadoc for BitField class
o LANG-1004: DurationFormatUtils#formatDurationHMS implementation does not
correspond to Javadoc and vice versa. Thanks to Michael Osipov.
o LANG-1003: DurationFormatUtils are not able to handle negative
durations/periods
o LANG-998: Javadoc is not clear on preferred pattern to instantiate
FastDateParser / FastDatePrinter
Release Notes for version 3.3.2
NEW FEATURES
==============
......
......@@ -22,7 +22,7 @@
# Repository base path - unnecessary if full jar paths are provided below
repository=${user.home}/.m2/repository
junit.home=${repository}/junit/junit/4.11/
easymock.home=${repository}/org/easymock/easymock/3.2/
junit.home=${repository}/junit/junit/4.12/
hamcrest.home=${repository}/org/hamcrest/hamcrest-all/1.3/
commons-io.home=${repository}/commons-io/commons-io/2.4/
hamcrest.home=${repository}/org/hamcrest/hamcrest-core/1.3/
easymock.home=${repository}/org/easymock/easymock/3.3.1/
......@@ -15,19 +15,19 @@
# limitations under the License.
#
# $Id: default.properties 1585295 2014-04-06 12:05:31Z britter $
# $Id: default.properties 1671054 2015-04-03 12:28:16Z britter $
# The location of the "junit.jar" JAR file
junit.jar = ${junit.home}/junit-4.11.jar
junit.jar = ${junit.home}/junit-4.12.jar
# The location of the Easymock jar
easymock.jar = ${easymock.home}/easymock-3.2.jar
easymock.jar = ${easymock.home}/easymock-3.3.1.jar
# The location of the Commons-IO jar
commons-io.jar = ${commons-io.home}/commons-io-2.4.jar
# The location of Hamcrest jar
hamcrest.jar = ${hamcrest.home}/hamcrest-core-1.3.jar
hamcrest.jar = ${hamcrest.home}/hamcrest-all-1.3.jar
# Whether or not to fork tests
junit.fork = true
......@@ -42,7 +42,7 @@ component.package = org.apache.commons.lang3
component.title = Core Language Utilities
# The current version number of this component
component.version = 3.3.2
component.version = 3.4
# The name that is used to create the jar file
final.name = ${component.name}-${component.version}
......
......@@ -38,6 +38,11 @@
</SVNRepository>
</repository>
<release>
<Version>
<name>commons-lang</name>
<created>2014-04-09</created>
<revision>3.3.2</revision>
</Version>
<Version>
<name>commons-lang</name>
<created>2014-03-18</created>
......
......@@ -22,12 +22,12 @@
<parent>
<groupId>org.apache.commons</groupId>
<artifactId>commons-parent</artifactId>
<version>33</version>
<version>37</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.3.2</version>
<version>3.4</version>
<name>Apache Commons Lang</name>
<inceptionYear>2001</inceptionYear>
......@@ -35,7 +35,7 @@
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.
</description>
</description>
<url>http://commons.apache.org/proper/commons-lang/</url>
......@@ -45,9 +45,9 @@
</issueManagement>
<scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/commons/proper/lang/trunk</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/commons/proper/lang/trunk</developerConnection>
<url>http://svn.apache.org/viewvc/commons/proper/lang/trunk</url>
<connection>scm:svn:http://svn.apache.org/repos/asf/commons/proper/lang/tags/LANG_3_4</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/commons/proper/lang/tags/LANG_3_4</developerConnection>
<url>http://svn.apache.org/viewvc/commons/proper/lang/tags/LANG_3_4</url>
</scm>
<developers>
......@@ -373,6 +373,9 @@
<contributor>
<name>Scott Sanders</name>
</contributor>
<contributor>
<name>James Sawle</name>
</contributor>
<contributor>
<name>Ralph Schaer</name>
</contributor>
......@@ -457,6 +460,24 @@
<contributor>
<name>Chris Karcher</name>
</contributor>
<contributor>
<name>Michael Osipov</name>
</contributor>
<contributor>
<name>Thiago Andrade</name>
</contributor>
<contributor>
<name>Jonathan Baker</name>
</contributor>
<contributor>
<name>Mikhail Mazursky</name>
</contributor>
<contributor>
<name>Fabian Lange</name>
</contributor>
<contributor>
<name>Michał Kordas</name>
</contributor>
</contributors>
<!-- Lang should depend on very little -->
......@@ -464,7 +485,13 @@
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<version>4.12</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-all</artifactId>
<version>1.3</version>
<scope>test</scope>
</dependency>
......@@ -478,7 +505,7 @@
<dependency>
<groupId>org.easymock</groupId>
<artifactId>easymock</artifactId>
<version>3.2</version>
<version>3.3.1</version>
<scope>test</scope>
</dependency>
</dependencies>
......@@ -507,7 +534,7 @@
-->
<commons.componentid>lang3</commons.componentid>
<!-- Current 3.x release series -->
<commons.release.version>3.3.2</commons.release.version>
<commons.release.version>3.4</commons.release.version>
<commons.release.desc>(Java 6.0+)</commons.release.desc>
<!-- Previous 2.x release series -->
<commons.release.2.version>2.6</commons.release.2.version>
......@@ -581,7 +608,7 @@
<plugins>
<plugin>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>2.9.1</version>
<version>2.15</version>
<configuration>
<configLocation>${basedir}/checkstyle.xml</configLocation>
<enableRulesSummary>false</enableRulesSummary>
......@@ -594,35 +621,29 @@
</reportSet>
</reportSets>
</plugin>
<!-- Requires setting 'export MAVEN_OPTS="-Xmx512m" ' -->
<!-- Requires setting 'export MAVEN_OPTS="-Xmx512m -XX:MaxPermSize=128m" ' -->
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>findbugs-maven-plugin</artifactId>
<version>2.5.2</version>
<!-- Use version from parent pom as that is adjusted according to the Java version used to run Maven -->
<version>${commons.findbugs.version}</version>
<configuration>
<threshold>Normal</threshold>
<effort>Default</effort>
<excludeFilterFile>${basedir}/findbugs-exclude-filter.xml</excludeFilterFile>
</configuration>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>cobertura-maven-plugin</artifactId>
<version>2.5.1</version>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>clirr-maven-plugin</artifactId>
<version>2.4</version>
<version>2.6.1</version>
<configuration>
<minSeverity>info</minSeverity>
</configuration>
</plugin>
<plugin>
<artifactId>maven-pmd-plugin</artifactId>
<version>3.0.1</version>
<version>3.4</version>
<configuration>
<targetJdk>${maven.compile.target}</targetJdk>
<targetJdk>${maven.compiler.target}</targetJdk>
</configuration>
<reportSets>
<reportSet>
......@@ -638,17 +659,50 @@
<artifactId>taglist-maven-plugin</artifactId>
<version>2.4</version>
<configuration>
<tags>
<tag>TODO</tag>
<tag>NOPMD</tag>
<tag>NOTE</tag>
</tags>
<tagListOptions>
<tagClasses>
<tagClass>
<displayName>Needs Work</displayName>
<tags>
<tag>
<matchString>TODO</matchString>
<matchType>exact</matchType>
</tag>
<tag>
<matchString>FIXME</matchString>
<matchType>exact</matchType>
</tag>
<tag>
<matchString>XXX</matchString>
<matchType>exact</matchType>
</tag>
</tags>
</tagClass>
<tagClass>
<displayName>Noteable Markers</displayName>
<tags>
<tag>
<matchString>NOTE</matchString>
<matchType>exact</matchType>
</tag>
<tag>
<matchString>NOPMD</matchString>
<matchType>exact</matchType>
</tag>
<tag>
<matchString>NOSONAR</matchString>
<matchType>exact</matchType>
</tag>
</tags>
</tagClass>
</tagClasses>
</tagListOptions>
</configuration>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>javancss-maven-plugin</artifactId>
<version>2.0</version>
<version>2.1</version>
</plugin>
<plugin>
<groupId>org.apache.rat</groupId>
......@@ -678,7 +732,7 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.7</version>
<version>1.8</version>
<executions>
<execution>
<id>prepare-checkout</id>
......
......@@ -27,6 +27,8 @@
<include>LICENSE.txt</include>
<include>NOTICE.txt</include>
<include>RELEASE-NOTES.txt</include>
<include>README.md</include>
<include>CONTRIBUTING.md</include>
</includes>
</fileSet>
<fileSet>
......
......@@ -34,6 +34,8 @@
<include>build.xml</include>
<include>default.properties</include>
<include>build.properties.sample</include>
<include>README.md</include>
<include>CONTRIBUTING.md</include>
</includes>
</fileSet>
<fileSet>
......
......@@ -21,6 +21,72 @@
</properties>
<body>
<release version="3.4" date="tba" description="tba">
<action issue="LANG-821" type="add" dev="britter" due-to="Timo Kockert">Support OS X versions in SystemUtils</action>
<action issue="LANG-794" type="fix" dev="britter" due-to="Timo Kockert">SystemUtils.IS_OS_WINDOWS_2008, VISTA are incorrect</action>
<action issue="LANG-1104" type="fix" dev="chas">Parse test fails for TimeZone America/Sao_Paulo</action>
<action issue="LANG-1103" type="add" dev="britter">Add SystemUtils.IS_JAVA_1_9</action>
<action issue="LANG-1102" type="update" dev="britter">Make logic for comparing OS versions in SystemUtils smarter</action>
<action issue="LANG-1091" type="update" dev="britter" due-to="Fabian Lange">Shutdown thread pools in test cases</action>
<action issue="LANG-1101" type="update" dev="chas">FastDateParser and FastDatePrinter support 'X' format</action>
<action issue="LANG-1100" type="update" dev="chas" due-to="mbracher">Avoid memory allocation when using date formating to StringBuffer</action>
<action issue="LANG-935" type="update" dev="britter" due-to="Fabian Lange, Thomas Neidhart">Possible performance improvement on string escape functions</action>
<action issue="LANG-948" type="fix" dev="britter" due-to="Andrey Khobnya">Exception while using ExtendedMessageFormat and escaping braces</action>
<action issue="LANG-1098" type="update" dev="britter" due-to="Mikhail Mazurskiy, Fabian Lange">Avoid String allocation in StrBuilder.append(CharSequence)</action>
<action issue="LANG-1098" type="update" dev="britter" due-to="Michał Kordas">Update maven-checkstyle-plugin to 2.14</action>
<action issue="LANG-1097" type="update" dev="britter" due-to="Michał Kordas">Update org.easymock:easymock to 3.3.1</action>
<action issue="LANG-1096" type="update" dev="britter" due-to="Michał Kordas">Update maven-pmd-plugin to 3.4</action>
<action issue="LANG-1095" type="update" dev="britter" due-to="Michał Kordas">Update maven-antrun-plugin to 1.8</action>
<action issue="LANG-1092" type="fix" dev="britter">Wrong formating of time zones with daylight saving time in FastDatePrinter</action>
<action issue="LANG-877" type="update" dev="britter" due-to="Fabian Lange">Performance improvements for StringEscapeUtils</action>
<action issue="LANG-1093" type="add" dev="britter" due-to="Fabian Lange">Add ClassUtils.getAbbreviatedName()</action>
<action issue="LANG-1090" type="fix" dev="sebb">FastDateParser does not set error indication in ParsePosition</action>
<action issue="LANG-1089" type="fix" dev="sebb">FastDateParser does not handle excess hours as per SimpleDateFormat</action>
<action issue="LANG-1061" type="fix" dev="sebb" due-to="dmeneses">FastDateParser error - timezones not handled correctly</action>
<action issue="LANG-1087" type="fix" dev="britter" due-to="Renat Zhilkibaev">NumberUtils#createNumber() returns positive BigDecimal when negative Float is expected</action>
<action issue="LANG-1081" type="fix" dev="britter" due-to="Jonathan Baker">DiffBuilder.append(String, Object left, Object right) does not do a left.equals(right) check</action>
<action issue="LANG-1055" type="fix" dev="britter" due-to="Jonathan Baker">StrSubstitutor.replaceSystemProperties does not work consistently</action>
<action issue="LANG-1082" type="add" dev="britter" due-to="Jonathan Baker">Add option to disable the "objectsTriviallyEqual" test in DiffBuilder</action>
<action issue="LANG-1083" type="fix" dev="britter" due-to="Jonathan Baker">Add (T) casts to get unit tests to pass in old JDK</action>
<action issue="LANG-1015" type="add" dev="britter" due-to="Thiago Andrade">Add JsonToStringStyle implementation to ToStringStyle</action>
<action issue="LANG-1080" type="add" dev="britter" due-to="Innokenty Shuvalov">Add NoClassNameToStringStyle implementation of ToStringStyle</action>
<action issue="LANG-1071" type="update" dev="britter" due-to="Arno Noordover">Fix wrong examples in JavaDoc of StringUtils.replaceEachRepeatedly(...), StringUtils.replaceEach(...)</action>
<action issue="LANG-883" type="add" dev="britter" due-to="Daniel Stewart">Add StringUtils.containsAny(CharSequence, CharSequence...) method</action>
<action issue="LANG-1073" type="fix" dev="kinow" due-to="haiyang li">Read wrong component type of array in add in ArrayUtils</action>
<action issue="LANG-1077" type="fix" dev="kinow" due-to="haiyang li">StringUtils.ordinalIndexOf("aaaaaa", "aa", 2) != 3 in StringUtils</action>