Commons Lang Changes ClassUtils.getShortClassName(String) inefficient Shouldn't Commons Lang's StringUtils have a "common" string method? FastDateFormat getDateInstance() and getDateTimeInstance() assume Locale.getDefault() won't change OSGi-ify Lang StrBuilder appendFixedWidth does not handle nulls infinite loop in Fraction.reduce when numerator == 0 FastDateFormat thread safety ClassUtils.getShortClassName and ClassUtils.getPackageName and class of array LocaleUtils.toLocale() rejects strings with only language+variant Enum is not thread-safe BooleanUtils.toBoolean() - invalid drop-thru in case statement causes StringIndexOutOfBoundsException ArrayUtils.toClass Why does appendIdentityToString return null? NumberUtils.min(floatArray) returns wrong value if floatArray[0] happens to be Float.NaN Dates.round() behaves incorrectly for minutes and seconds StringUtils.length(String) returns null-safe length adding a StringUtils.replace method that takes an array or List of replacement strings Adding functionality to DateUtils to allow direct setting of various fields. Add escaping for CSV columns to StringEscapeUtils StringUtils: startsWith / endsWith / startsWithIgnoreCase / endsWithIgnoreCase / removeStartIgnoreCase / removeEndIgnoreCase methods Extension to ClassUtils: Obtain the primitive class from a wrapper Javadoc bugs - cannot find object Optimize HashCodeBuilder.append(Object) http://commons.apache.org/lang/developerguide.html "Building" section is incorrect and incomplete Ambiguous / confusing names in StringUtils replace* methods Add new splitByWholeSeparatorPreserveAllTokens() methods to StringUtils Add getStartTime to StopWatch Perhaps add containsAny() methods? Javadoc Example for EqualsBuilder is questionable EqualsBuilder don't compare BigDecimals correctly Split camel case strings Add Calendar flavour format methods to DateFormatUtils Calculating A date fragment in any time-unit Memory usage improvement for StringUtils#getLevenshteinDistance() Add ExtendedMessageFormat to org.apache.commons.lang.text StringEscapeUtils.escapeJavaScript() method did not escape '/' into '\/', it will make IE render page uncorrectly Add toArray() method to IntRange and LongRange classes add SystemUtils.IS_OS_WINDOWS_VISTA field Pointless synchronized in ThreadLocal.initialValue should be removed ToStringStyle javadoc should show examples of styles Documentation bug for ignoreEmptyTokens accessors in StrTokenizer BooleanUtils toBooleanObject javadoc does not match implementation truncateNicely method which avoids truncating in the middle of a word Use of enum prevents a classloader from being garbage collected resuling in out of memory exceptions. NumberUtils.max(byte[]) and NumberUtils.min(byte[]) are missing Null-safe comparison methods for finding most recent / least recent dates. StopWatch: suspend() acts as split(), if followed by stop() StrBuilder.replaceAll and StrBuilder.deleteAll can throw ArrayIndexOutOfBoundsException. Bug in method appendFixedWidthPadRight of class StrBuilder causes an ArrayIndexOutOfBoundsException ToStringBuilder throws StackOverflowError when an Object cycle exists Create more tests to test out the +=31 replacement code in DurationFormatUtils. StrBuilder contains usages of thisBuf.length when they should use size Enum JavaDoc: 1) outline 5.0 native Enum migration 2) warn not to use the switch() , 3) point out approaches for persistence and gui Wrong behavior of Entities.unescape NumberUtils.createNumber throws NumberFormatException for one digit long NullPointerException in isAvailableLocale(Locale) FastDateFormat.mRules is not transient or serializable StringUtils.join should allow you to pass a range for it (so it only joins a part of the array) Refactor Entities methods Tests fail to pass when building with Maven 2 DurationFormatUtils returns wrong result unescapeXml("&12345678;") should be "&12345678;" Optimize StringEscapeUtils.unescapeXml(String) BooleanUtils isNotTrue/isNotFalse Extra StrBuilder methods Add a pair of StringUtils.substringsBetween;String[] methods HashCodeBuilder throws java.lang.StackOverflowError when an object contains a cycle. Wish for StringUtils.join(Collection, *) StrBuilderTest#testReplaceStringString fails. EqualsBuilder.append(Object[], Object[]) crashes with a NullPointerException if an element of the first array is null Serialization - not backwards compatible Replace Clover with Cobertura ValuedEnum.compareTo(Object other) not typesafe - it easily could be... LocaleUtils test fails under Mustang javadoc example for StringUtils.splitByWholeSeparator incorrect PADDING array in StringUtils overflows on '\uffff' ClassUtils.primitiveToWrapper and Void unit test for org.apache.commons.lang.text.StrBuilder DateUtils.truncate method is buggy when dealing with DST switching hours RandomStringUtils.random() family of methods create invalid unicode sequences StringUtils#getLevenshteinDistance() performance is sub-optimal Wrong length check in StrTokenizer.StringMatcher ExceptionUtils goes into infinite loop in getThrowables is throwable.getCause() == throwable FastDateFormat: wrong format for date "01.01.1000" Unclear javadoc for DateUtils.iterator() Memory "leak" in StringUtils StringEscapeUtils should expose escape*() methods taking Writer argument Fraction.toProperString() returns -1/1 for -1 DurationFormatUtils.formatDurationWords "11 <unit>s" gets converted to "11 <unit>" Performance modifications on StringUtils.replace StringEscapeUtils.unescapeHtml skips first entity after standalone ampersand DurationFormatUtils.formatPeriod() returns the wrong result Request for MutableBoolean implementation New method for EqualsBuilder New ExceptionUtils method setCause() Add Mutable<Type> to<Type>() methods. Provides a Class.getPublicMethod which returns public invocable Method Using ReflectionToStringBuilder and excluding secure fields add generic add method to DateUtils Tokenizer Enhancements: reset input string, static CSV/TSV factories Trivial cleanup of javadoc in various files CompositeFormat Performance boost for RandomStringUtils Enhanced Class.forName version Add StringUtils.containsIgnoreCase(...) Support char array converters on ArrayUtils DurationFormatUtils.formatDurationISO() javadoc is missing T in duration string between date and time part Minor build and checkstyle changes Javadoc errors on StringUtils.splitPreserveAllTokens(String, char) EscapeUtil.escapeHtml() should clarify that it does not escape ' chars to &apos; Add methods and tests to StrBuilder replace() length calculation improvement New interpolation features Implementation of escape/unescapeHtml methods with Writer CompareToBuilder excludeFields for reflection method Add WordUtils.getInitials(String) Error in an example in the javadoc of the StringUtils.splitPreserveAllTokens() method ToStringBuilder/HashCodeBuilder javadoc code examples Cannot build tests from latest SVN minor javadoc improvements for StringUtils.stripXxx() methods javadoc for StringUtils.removeEnd is incorrect Minor tweak to fix of bug # 26616 make optional parameters in FastDateFormat really optional Nestable.indexOfThrowable(Class) uses Class.equals() to match buffer under/overrun on Strings.strip, stripStart & stripEnd ToStringStyle.setArrayEnd(String) doesn't replace null with empty string. New class proposal: CharacterEncoding SystemUtils fails init on HP-UX javadoc - 'four basic XML entities' should be 5 (apos is missing) o.a.c.lang.enum.ValuedEnum: 'enum'is a keyword in JDK1.5.0 StringEscapeUtils.unescapeHtml() doesn't handle an empty entity EqualsBuilder.append(Object[], Object[]) incorrectly checks that rhs[i] is instance of lhs[i]'s class Method enums.Enum.equals(Object o) doesn't work correctly. ExceptionUtils.addCauseMethodName(String) does not check for duplicates. Make StopWatch validate state transitions enum package is not compatible with 1.5 jdk WordUtils capitalizeFully() throws a null pointer exception ValuedEnum parseDate class from HttpClient's DateParser class ArrayUtils.isEquals() throws ClassCastException when array1 and array2 are different dimension ClassCastException in Enum.equals(Object) FastDateFormat year bug unbalanced ReflectionToStringBuilder FastDateFormat.getDateInstance(int, Locale) always uses the pattern from the first invocation ReflectionToStringBuilder.toString(null) throws exception by design Make ClassUtils methods null-safe and not throw an IAE. StringUtils.split ignores empty items EqualsBuilder.append(Object[], Object[]) throws NPE ArrayUtils.addAll doesn't always return new array Enum.equals does not handle different class loaders. Add SystemUtils.AWT_TOOLKIT and others. Throwable cause for NotImplementedException ClassUtils.primitivesToWrappers method public static boolean DateUtils.equals(Date dt1, Date dt2) ? Documentation error in StringUtils.replace DateUtils constants should be long DateUtils.truncate() is off by one hour when using a date in DST switch 'zone' StringEscapeUtils.unescapeHtml() doesn't handle hex entities new StringUtils.replaceChars behaves differently from old CharSetUtils.translate last substring returned by StringUtils.split( String, String, int ) is too long Can't subclass EqualsBuilder because isEquals is private new StringUtils.split methods that split on the whole separator string New method for converting a primitive Class to its corresponding wrapper Class Add convenience format(long) methods to FastDateFormat Enum's outer class may not be loaded for EnumUtils WordUtils.capitalizeFully(String str) should take a delimiter Make javadoc crosslinking configurable Minor javadoc fixes for StringUtils.contains(String, String) Error in JavaDoc for StringUtils.chomp(String, String) StringUtils.defaultString: Documentation error Add hashCode-support to class ObjectUtils add another "known method" to ExceptionUtils Enhancement of ExceptionUtils.CAUSE_METHOD_NAMES DateUtils.truncate oddity at the far end of the Date spectrum add getLength() method to ArrayUtils Validate.java: fixes comment skew, removes unused loop counter StringUtils.isAsciiPrintable() ExceptionUtils: new getCause() methodname (for tomcat-exception) fixes 75 typos mutable numbers Javadoc fixes for ClassUtils Add StringUtils.nIndexOf? Javadoc fixes for CharSetUtils Remove redundant check for null separator in StringUtils#join Class and Package Comparators for ClassUtils add remove methods to ArrayUtils WordUtils capitalize improvement add isEmpty method to ArrayUtils lang.math.Fraction class deficiencies Add methods to ArrayUtils: add at end and insert-like ops Add SystemUtils methods for directory properties. Add method that validates Collection elements are a certain type elapsed time formatting utility method Infinite loop in ToStringBuilder.reflectionToString for inner classes NumberUtils.createBigDecimal("") NPE in Sun 1.3.1_08 Rationalize StringUtils slice functions SystemUtils.IS_OS_OS2 Javadoc is wrong A small, but important javadoc fix for Fraction proper whole and numerator Adding tolerance to double[] search methods in ArrayUtils lang.builder classes javadoc edits (mostly typo fixes) StringUtils javadoc and test enhancements SystemUtils.IS_OS_*, IS_JAVA_* are always false. Improve util.Validate tests maven-beta10 checkstyle problem StringUtils.chopNewLine - StringIndexOutOfBoundsException ToStringBuilder doesn't work well in subclasses static option for reversing the stacktrace NullPointerException in CompareToBuilder RandomStringUtils.randomAlpha methods omit 'z' test.time fails in Japanese (non-us) locale. NumberUtils.isNumber allows illegal trailing characters Improve javadoc and overflow behavior of Fraction RandomStringUtils infloops with length > 1 test.lang fails if compiled with non iso-8859-1 locales SystemUtils does not play nice in an Applet time unit tests fail on Sundays java.lang.ExceptionInInitializerError thrown by JVMRandom constructor StringUtils.chomp does not match Perl patch and test case fixing problem with RandomStringUtils.random() General case: infinite loop: ToStringBuilder.reflectionToString Should ToStringBuilder.reflectionToString handle arrays? EnumUtils nit: The import java.io.Serializable is never used Example in Javadoc for ToStringBuilder wrong for append. Added class hierachy support to HashCodeBuilder.reflectionHashCode() ExceptionUtils new methods. Infinite loop in StringUtils.replace(text, repl, with) + FIX StackOverflow due to ToStringBuilder No Javadoc for NestableDelegate Specify initial size for Enum's HashMap. Enum does not support inner sub-classes Removed compile warning in ObjectUtils SystemUtils.IS_JAVA_1_5 Javadoc is wrong NumberRange inaccurate for Long, etc. Hierarchy support in ToStringBuilder.reflectionToString() StringUtils.countMatches loops forever if substring empty javadoc fixes (remove @links to non-public identifiers) Add javadoc examples and tests for StringUtils Make NumberUtils null handling consistent Unused field 'startFinal' in DateIterator reduce object creation in ToStringBuilder Improved tests, javadoc for CharSetUtils, StringEscapeUtils NumberUtils min/max, BooleanUtils.xor, and ArrayUtils toPrimitive and toObject Javadoc, tests improvements for CharSet, CharSetUtils StringUtil enhancement Javadoc nit Additional Lang Method Suggestions Make NestableDelegate methods public instead of package private Missing @since tags Refactored reflection feature of ToStringBuilder into new ReflectionToStringBuilder Typo in documentation Patch for javadocs Add join(..., char c) to StringUtils (and some performance fixes). Even contains tests! Resurrect the WordWrapUtils from commons-sandbox/utils EnumTest fails on Linux Sun JDK 1.3.0 What to do with FastDateFormat unused private constructors Added class hierachy support to CompareToBuilder.reflectionCompare() Removed compile warning in FastDateFormat typo in the javadoc example code MethodUtils: Removed unused code/unused local vars. Hierarchy support in EqualsBuilder.reflectionEquals() JavaDoc Errata ArrayUtils.contains() More flexibility for getRootCause in ExceptionUtils NumberRange.getMaximum returns minimum Enum constructor validations NestableException/Delegate is not serializable split using null and max less than actual token count adds "null" ExceptionUtils cannot handle J2EE-Exception in a default way