blob: da8575b8c5470645dba00704cf34d303ab5a63ff [file] [log] [blame]
<?xml version="1.0"?>
<!--
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.
-->
<document>
<properties>
<title>Upgrade from 2.1 to 2.2</title>
<author email="commons-dev@jakarta.apache.org">Commons Documentation Team</author>
</properties>
<body>
<section name="Upgrade">
<p>
These are the release notes and advice for upgrading Commons-Lang from
version 2.1 to version 2.2.
<source>
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
DEPRECATIONS FROM 2.1 to 2.2:
- None
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() -&gt; 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 &apos;
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 &lt;units&gt;" gets converted to "11 &lt;unit&gt;"
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&lt;Type&gt; to&lt;Type&gt;() 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
</source>
</p>
</section>
</body>
</document>