113 lines
5.2 KiB
Plaintext
113 lines
5.2 KiB
Plaintext
$Id$
|
|
|
|
Commons Lang Package
|
|
Version 2.2
|
|
Release Notes
|
|
|
|
|
|
INTRODUCTION:
|
|
|
|
This document contains the release notes for the 2.2 version of Apache Jakarta Commons Lang.
|
|
Commons Lang is a set of utility functions and reusable components that
|
|
should be of use in any Java environment.
|
|
|
|
INCOMPATIBLE CHANGES WITH VERSION 2.1:
|
|
|
|
- None
|
|
|
|
ADDITIONAL INCOMPATIBLE CHANGES WITH VERSION 2.0:
|
|
|
|
- The Nestable interface defines the method indexOfThrowable(Class).
|
|
Previously the implementations checked only for a specific Class.
|
|
Now they check for subclasses of that Class as well.
|
|
For most situations this will be the expected behaviour (ie. its a bug fix).
|
|
If it causes problems, please use the ExceptionUtils.indexOfThrowable(Class) method instead.
|
|
Note that the ExceptionUtils method is available in v1.0 and v2.0 of commons-lang and has not been changed.
|
|
(An alternative to this is to change the public static matchSubclasses flag on NestableDelegate.
|
|
However, we don't recommend that as a long-term solution.)
|
|
|
|
- The StopWatch class has had much extra validation added.
|
|
If your code previously relied on unusual aspects, it may no longer work.
|
|
|
|
- Starting with version 2.1, Ant version 1.6.x is required to build. Copy
|
|
junit.jar to ANT_HOME/lib. You can get JUnit from http://www.junit.org. See the developer's guide
|
|
for more details.
|
|
|
|
DEPRECATIONS FROM 2.1 to 2.2:
|
|
|
|
- None
|
|
|
|
DEPRECATIONS FROM 2.0 to 2.1:
|
|
|
|
- The enum package has been renamed to enums for JDK1.5 compilance.
|
|
All functionality is identical, just the package has changed.
|
|
This package will be removed in v3.0.
|
|
|
|
- NumberUtils.stringToInt - renamed to toInt
|
|
|
|
- DateUtils - four constants, MILLIS_IN_* have been deprecated as they were defined
|
|
as int not long. The replacements are MILLIS_PER_*.
|
|
|
|
|
|
BUG FIXES IN 2.2:
|
|
|
|
LANG-2 javadoc example for StringUtils.splitByWholeSeparator incorrect
|
|
LANG-3 PADDING array in StringUtils overflows on '\uffff'
|
|
LANG-10 [patch] ClassUtils.primitiveToWrapper and Void
|
|
LANG-21 escapeXML() -> Not escaping low characters
|
|
LANG-25 DurationFormatUtils.formatDurationISO() javadoc is missing T in duration string between date and time part
|
|
LANG-37 unit test for org.apache.commons.lang.text.StrBuilder
|
|
LANG-42 EqualsBuilder.append(Object[], Object[]) crashes with a NullPointerException if an element of the first array is null
|
|
LANG-45 StrBuilderTest#testReplaceStringString fails.
|
|
LANG-50 Replace Clover with Cobertura
|
|
LANG-59 DateUtils.truncate method is buggy when dealing with DST switching hours
|
|
LANG-100 RandomStringUtils.random() family of methods create invalid unicode sequences
|
|
LANG-105 ExceptionUtils goes into infinite loop in getThrowables is throwable.getCause() == throwable
|
|
LANG-106 StringUtils#getLevenshteinDistance() performance is sub-optimal
|
|
LANG-112 Wrong length check in StrTokenizer.StringMatcher
|
|
LANG-117 FastDateFormat: wrong format for date "01.01.1000"
|
|
LANG-122 EscapeUtil.escapeHtml() should clarify that it does not escape ' chars to '
|
|
LANG-123 Unclear javadoc for DateUtils.iterator()
|
|
LANG-127 Minor tweak to fix of bug # 26616
|
|
LANG-130 Memory "leak" in StringUtils
|
|
LANG-140 DurationFormatUtils.formatPeriod() returns the wrong result
|
|
LANG-141 Fraction.toProperString() returns -1/1 for -1
|
|
LANG-148 Performance modifications on StringUtils.replace
|
|
LANG-150 StringEscapeUtils.unescapeHtml skips first entity after standalone ampersand
|
|
LANG-152 DurationFormatUtils.formatDurationWords "11 <unit>s" gets converted to "11 <unit>"
|
|
LANG-259 ValuedEnum.compareTo(Object other) not typesafe - it easily could be...
|
|
LANG-261 Error in an example in the javadoc of the StringUtils.splitPreserveAllTokens() method
|
|
LANG-264 ToStringBuilder/HashCodeBuilder javadoc code examples
|
|
LANG-271 LocaleUtils test fails under Mustang
|
|
LANG-272 Minor build and checkstyle changes
|
|
LANG-277 Javadoc errors on StringUtils.splitPreserveAllTokens(String, char)
|
|
LANG-278 javadoc for StringUtils.removeEnd is incorrect
|
|
|
|
IMPROVEMENTS IN 2.2:
|
|
|
|
LANG-159 Add WordUtils.getInitials(String)
|
|
LANG-161 Add methods and tests to StrBuilder
|
|
LANG-162 replace() length calculation improvement
|
|
LANG-165 parseDate with TimeZone
|
|
LANG-166 New interpolation features
|
|
LANG-169 Implementation of escape/unescapeHtml methods with Writer
|
|
LANG-176 CompareToBuilder excludeFields for reflection method
|
|
LANG-186 Request for MutableBoolean implementation
|
|
LANG-194 add generic add method to DateUtils
|
|
LANG-198 New method for EqualsBuilder
|
|
LANG-212 New ExceptionUtils method setCause()
|
|
LANG-216 Provides a Class.getPublicMethod which returns public invocable Method
|
|
LANG-217 Add Mutable<Type> to<Type>() methods.
|
|
LANG-220 Tokenizer Enhancements: reset input string, static CSV/TSV factories
|
|
LANG-226 Using ReflectionToStringBuilder and excluding secure fields
|
|
LANG-242 Trivial cleanup of javadoc in various files
|
|
LANG-246 CompositeFormat
|
|
LANG-250 Performance boost for RandomStringUtils
|
|
LANG-254 Enhanced Class.forName version
|
|
LANG-260 StringEscapeUtils should expose escape*() methods taking Writer argument
|
|
LANG-263 Add StringUtils.containsIgnoreCase(...)
|
|
LANG-267 Support char array converters on ArrayUtils
|
|
LANG-270 minor javadoc improvements for StringUtils.stripXxx() methods
|
|
New ExceptionUtils methods getMessage/getRootCauseMessage
|
|
|