From 833e5bbd076bb84f5b93d52daad1ce0b7adb07b1 Mon Sep 17 00:00:00 2001 From: Henri Yandell Date: Fri, 16 Nov 2007 19:00:39 +0000 Subject: [PATCH] Current state of release notes git-svn-id: https://svn.apache.org/repos/asf/commons/proper/lang/trunk@595778 13f79535-47bb-0310-9956-ffa450edef68 --- RELEASE-NOTES.txt | 73 ++++++++++++++++++++++++++--------------------- 1 file changed, 41 insertions(+), 32 deletions(-) diff --git a/RELEASE-NOTES.txt b/RELEASE-NOTES.txt index a5487c4e1..24ac548c8 100644 --- a/RELEASE-NOTES.txt +++ b/RELEASE-NOTES.txt @@ -1,17 +1,20 @@ $Id$ Commons Lang Package - Version 2.3 + Version 2.4 Release Notes INTRODUCTION: -This document contains the release notes for the 2.3 version of +This document contains the release notes for the 2.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. +INCOMPATIBLE CHANGES WITH VERSION 2.3: + + INCOMPATIBLE CHANGES WITH VERSION 2.2: - Calling stop on a suspended StopWatch will no longer change the underlying time. @@ -35,6 +38,11 @@ If your code previously relied on unusual aspects, it may no longer work. 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.3 to 2.4: + +- ObjectUtils.appendIdentityToString(StringBuffer, Object) - has very odd semantics, use + ObjectUtils.identityToString(StringBuffer, Object) instead. + DEPRECATIONS FROM 2.2 to 2.3: - None @@ -55,36 +63,37 @@ This package will be removed in v3.0. as int not long. The replacements are MILLIS_PER_*. -BUG FIXES IN 2.3: +BUG FIXES IN 2.4: - * [LANG-69 ] - ToStringBuilder throws StackOverflowError when an Object cycle exists - * [LANG-102] - Refactor Entities methods - * [LANG-153] - Can't XMLDecode an Enum - * [LANG-262] - Use of enum prevents a classloader from being garbage collected resuling in out of memory exceptions. - * [LANG-279] - HashCodeBuilder throws java.lang.StackOverflowError when an object contains a cycle. - * [LANG-281] - DurationFormatUtils returns wrong result - * [LANG-286] - Serialization - not backwards compatible - * [LANG-292] - unescapeXml("&12345678;") should be "&12345678;" - * [LANG-294] - StrBuilder.replaceAll and StrBuilder.deleteAll can throw ArrayIndexOutOfBoundsException. - * [LANG-295] - StrBuilder contains usages of thisBuf.length when they should use size - * [LANG-299] - Bug in method appendFixedWidthPadRight of class StrBuilder causes an ArrayIndexOutOfBoundsException - * [LANG-300] - NumberUtils.createNumber throws NumberFormatException for one digit long - * [LANG-303] - FastDateFormat.mRules is not transient or serializable - * [LANG-304] - NullPointerException in isAvailableLocale(Locale) - * [LANG-313] - Wrong behavior of Entities.unescape - * [LANG-315] - StopWatch: suspend() acts as split(), if followed by stop() + * [LANG-76 ] - [lang] EnumUtils.getEnum() doesn't work well in 1.5 + * [LANG-328] - LocaleUtils.toLocale() rejects strings with only language+variant + * [LANG-334] - Enum is not thread-safe + * [LANG-346] - Dates.round() behaves incorrectly for minutes and seconds + * [LANG-349] - Deadlock using ReflectionToStringBuilder + * [LANG-353] - Javadoc Example for EqualsBuilder is questionable + * [LANG-360] - Why does appendIdentityToString return null? + * [LANG-361] - BooleanUtils toBooleanObject javadoc does not match implementation + * [LANG-363] - StringEscapeUtils..escapeJavaScript() method did not escape '/' into '\/', it will make IE render page uncorrectly + * [LANG-364] - Documentation bug for ignoreEmptyTokens accessors in StrTokenizer + * [LANG-365] - BooleanUtils.toBoolean() - invalid drop-thru in case statement causes StringIndexOutOfBoundsException + * [LANG-367] - FastDateFormat thread safety + * [LANG-368] - FastDateFormat getDateInstance() and getDateTimeInstance() assume Locale.getDefault() won't change + * [LANG-369] - ExceptionUtils not thread-safe + * [LANG-372] - ToStringBuilder: MULTI_LINE_STYLE does not print anything from appendToString methods. -IMPROVEMENTS IN 2.3: - - * [LANG-258] - Enum JavaDoc - * [LANG-266] - Wish for StringUtils.join(Collection, *) - * [LANG-268] - StringUtils.join should allow you to pass a range for it (so it only joins a part of the array) - * [LANG-275] - StringUtils substringsBetween - * [LANG-282] - Create more tests to test out the +=31 replacement code in DurationFormatUtils. - * [LANG-287] - Optimize StringEscapeUtils.unescapeXml(String) - * [LANG-289] - NumberUtils.max(byte[]) and NumberUtils.min(byte[]) are missing - * [LANG-291] - Null-safe comparison methods for finding most recent / least recent dates. - * [LANG-306] - StrBuilder appendln/appendAll/appendSeparator - * [LANG-310] - BooleanUtils isNotTrue/isNotFalse - * [LANG-314] - Tests fail to pass when building with Maven 2 +IMPROVEMENTS IN 2.4: + * [LANG-269] - Shouldn't Commons Lang's StringUtils have a "common" string method? + * [LANG-321] - [patch] Add toArray() method to IntRange and LongRange classes + * [LANG-322] - ClassUtils.getShortClassName(String) inefficient + * [LANG-326] - StringUtils: startsWith / endsWith / startsWithIgnoreCase / endsWithIgnoreCase / removeStartIgnoreCase / removeEndIgnoreCase methods + * [LANG-329] - Pointless synchronized in ThreadLocal.initialValue should be removed + * [LANG-333] - ArrayUtils.toClass + * [LANG-337] - Utility class constructor javadocs should acknowledge that they may sometimes be used, e.g. with Velocity. + * [LANG-338] - truncateNicely method which avoids truncating in the middle of a word + * [LANG-345] - Optimize HashCodeBuilder.append(Object) + * [LANG-351] - Extension to ClassUtils: Obtain the primitive class from a wrapper + * [LANG-356] - Add getStartTime to StopWatch + * [LANG-362] - Add ExtendedMessageFormat to org.apache.commons.lang.text + * [LANG-366] - add MultiFormat + * [LANG-371] - ToStringStyle javadoc should show examples of styles