First cut at release notes for 2.1

git-svn-id: https://svn.apache.org/repos/asf/jakarta/commons/proper/lang/trunk@137981 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Stephen Colebourne 2004-10-16 16:45:59 +00:00
parent cf9f073b26
commit 4ef9502e78
1 changed files with 92 additions and 30 deletions

View File

@ -1,55 +1,117 @@
$Id: RELEASE-NOTES.txt,v 1.27 2004/02/23 04:36:06 ggregory Exp $ $Id: RELEASE-NOTES.txt,v 1.28 2004/10/16 16:45:59 scolebourne Exp $
Commons Lang Package Commons Lang Package
Version 2.1-dev Version 2.1
Release Notes Release Notes
INTRODUCTION: INTRODUCTION:
This document contains the release notes for this version of the Commons This document contains the release notes for the 2.1 version of Apache Jakarta Commons Lang.
Lang package. Commons Lang is a set of utility functions and reusable Commons Lang is a set of utility functions and reusable components that
components that should be a help in any Java environment. should be of use in any Java environment.
INCOMPATIBLE CHANGES: INCOMPATIBLE CHANGES:
<TODO> - 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.
DEPRECTAIONS:
- 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_*.
NEW FEATURES: NEW FEATURES:
<TODO> New:
- Mutable package - contains basic classes that hold an Object or primitive
and provide both get and set methods.
- DurationFormatUtils - provides various methods for formatting durations
- CharEncoding - definitions of constants for character encoding work
- CharUtils - utilities for working with characters
Since the release of the 2.0 package the following classes have been added: Updated:
- ArrayUtils - many more methods, especially List-like methods
- BooleanUtils - isTrue and isFalse methods that handle null
- ClassUtils - primitive to wrapper class conversion methods
- ClassUtils - class name comparator
- IllegalClassException - extra constructor for common instanceof case
- NotImplementedException - supports nested exceptions
- ObjectUtils - hashcode method handling null
- StringUtils - isAsciiPrintable to check the contents of a string
-- ordinalIndexOf to find the nth index of a string
-- various remove methods to remove parts of a string
-- various split methods to provide more control over splitting a string
- SystemUtils - methods to get system properties as File objects
-- extra constants representing system properties
- Validate - new methods to check whether all elements in a collection are of a specific type
- WordUtils - new methods to capitalize based on a set of specified delimiters
<TODO> - EqualsBuilder - now provides setter to internal state
- ToStringStyle - new style, short prefix style
- ReflectionToStringBuilder - more flags to control the output with regards to statics
- ExceptionUtils - added indexOfType methods that check subclasses, thus leaving the existing
indexOfThrowable method untouched (see incompatible changes section)
Since the release of the 2.0 package the following classes have been changed: - NumberUtils - various string to number parsing methods added
<TODO> - DateUtils - isSameDay method added to compare day ignoring time
- FastDateFormat - extra formatting methods that take in a millisecond long value
-- additional static factory methods
- StopWatch - new methods for split behaviour
BUG FIXES: BUG FIXES:
ID Sev Pri Plt Owner State Result Summary 19331 General case: infinite loop: ToStringBuilder.reflectionToString
23174 EqualsBuilder.append(Object[], Object[]) throws NPE
<TODO> 23356 Make DurationFormatUtils public!
23557 WordUtils.capitalizeFully(String str) should take a delimiters
23683 New method for converting a primitive Class to its corresponding wrapper
23430 Minor javadoc fixes for StringUtils.contains(String, String)
DEPRECATIONS: 23590 make optional parameters in FastDateFormat really optional
24056 Documentation error in StringUtils.replace
lang.enum.*: 25227 StringEscapeUtils.unescapeHtml() doesn't handle hex entities
Deprecated and replaced by org.apache.commons.lang.enums.* and will be 25454 new StringUtils.replaceChars behaves differently from old Ch
removed in version 3.0. All classes in this package are deprecated and 25560 DateUtils.truncate() is off by one hour when using a date in DST switch 'zone'
repackaged to org.apache.commons.lang.enums since enum is a Java 1.5 25627 DateUtils constants should be long
keyword. 25683 Add method that validates Collection elements are a correct
25849 Add SystemUtils methods for directory properties.
26616 ClassCastException in Enum.equals(Object)
CHANGES: [In 'diff' format] 26699 Tokenizer Enhancements: reset input string, static CSV
26734 NullPointerException in EqualsBuilder.append(Object[], Object[])
<TODO> 26877 Add SystemUtils.AWT_TOOLKIT and others.
27592 WordUtils capitalize improvement
27876 ReflectionToStringBuilder.toString(null) throws exception by design
27877 Make ClassUtils methods null-safe and not throw an IAE.
28468 StringUtils.defaultString: Documentation error
28554 Add hashCode-support to class ObjectUtils
29082 Enhancement of ExceptionUtils.CAUSE_METHOD_NAMES
29294 lang.math.Fraction class deficiencies
29673 ExceptionUtils: new getCause() methodname (for tomcat)
29794 Add convenience format(long) methods to FastDateForma
30328 HashCodeBuilder does not use the same values as Boolean (fixed as documentation)
30334 New class proposal: CharacterEncoding
30815 ArrayUtils.isEquals() throws ClassCastException when array1
31478 Compile error with JDK 5 "enum" is a keyword
31572 o.a.c.lang.enum.ValuedEnum: 'enum'is a keyword in JDK1.5.0