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

https://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.

=============================================================================

                        Commons Lang Package
                            Version 3.0.1
                           Release Notes


INTRODUCTION:

This document contains the release notes for the 3.0.1 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.

Lang 3.0 and onwards now targets Java 5.0, making use of features that arrived with Java 5.0 such as generics, 
variable arguments, autoboxing, concurrency and formatted output.

For the advice on upgrading from 2.x to 3.x, see the following page: 

    https://commons.apache.org/lang/article3_0.html

CHANGES IN 3.0.1
================

    [LANG-686] Improve exception message when StringUtils.replaceEachRepeatedly detects recursion
    [LANG-717] Specify source encoding for Ant build
    [LANG-721] Complement ArrayUtils.addAll() variants with by-index and by-value removal methods
    [LANG-726] Add Range<T> Range<T>.intersectionWith(Range<T>)
    [LANG-723] Add mode and median Comparable... methods to ObjectUtils
    [LANG-722] Add BooleanUtils.and + or varargs methods
    [LANG-730] EnumSet -> bit vector
    [LANG-735] Deprecate CharUtils.toCharacterObject(char) in favor of java.lang.Character.valueOf(char)
    [LANG-737] Missing method getRawMessage for ContextedException and ContextedRuntimeException

BUG FIXES IN 3.0.1
==================

    [LANG-626] SerializationUtils.clone: Fallback to context classloader if class not found in current classloader
    [LANG-727] ToStringBuilderTest.testReflectionHierarchyArrayList fails with IBM JDK 6
    [LANG-720] StringEscapeUtils.escapeXml(input) wrong when input contains characters in Supplementary Planes
    [LANG-708] StringEscapeUtils.escapeEcmaScript from lang3 cuts off long unicode string
    [LANG-734] The CHAR_ARRAY cache in CharUtils duplicates the cache in java.lang.Character
    [LANG-738] Use internal Java's Number caches instead creating new objects
