You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by gg...@apache.org on 2022/05/31 20:27:07 UTC

[commons-beanutils] 03/03: Bump actions/cache from 3.0.2 to 3.0.3

This is an automated email from the ASF dual-hosted git repository.

ggregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-beanutils.git

commit 638695de6b4fdd72f1a4ee69b85e0725e84827d1
Author: Gary Gregory <ga...@gmail.com>
AuthorDate: Tue May 31 16:27:00 2022 -0400

    Bump actions/cache from 3.0.2 to 3.0.3
---
 .github/workflows/maven.yml |    2 +-
 src/changes/changes.xml     | 1470 +++++++++++++++++++++----------------------
 2 files changed, 736 insertions(+), 736 deletions(-)

diff --git a/.github/workflows/maven.yml b/.github/workflows/maven.yml
index 664ff7df..c3878d80 100644
--- a/.github/workflows/maven.yml
+++ b/.github/workflows/maven.yml
@@ -32,7 +32,7 @@ jobs:
         
     steps:
     - uses: actions/checkout@v3
-    - uses: actions/cache@v3.0.2
+    - uses: actions/cache@v3.0.3
       with:
         path: ~/.m2/repository
         key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index c5da59a1..03ce6630 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -1,735 +1,735 @@
-<?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.
--->
-
-<!-- This file is used by the maven-changes-plugin to generate the release notes. Useful ways of finding items to add to
-  this file are: 1. Add items when you fix a bug or add a feature (this makes the release process easy :-). 2. Do a Jira search
-  for tickets closed since the previous release. 3. Use the report generated by the maven-changelog-plugin to see all SVN commits.
-  Set the project.properties' maven.changelog.range property to the number of days since the last release. The <action> type
-  attribute can be add,update,fix,remove. -->
-<document xmlns="http://maven.apache.org/changes/1.0.0"
-            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-            xsi:schemaLocation="http://maven.apache.org/changes/1.0.0 http://maven.apache.org/xsd/changes-1.0.0.xsd">
-  <properties>
-    <title>Apache Commons BeanUtils Release Notes</title>
-  </properties>
-  <body>
-    <release version="2.0.0" date="2018-MM-DD" description="Update to Java 8.">
-      <action issue="BEANUTILS-346" dev="melloware" type="update" due-to="Melloware">
-        New converter for Enum.
-      </action>
-      <action issue="BEANUTILS-402" dev="melloware" type="update" due-to="Melloware">
-        Double-Checked Locking anti pattern in WeakFastHashMap.
-      </action>
-      <action issue="BEANUTILS-503" dev="ggregory" type="update" due-to="Gary Gregory">
-        Change packaging from org.apache.commons.beanutils to org.apache.commons.beanutils2.
-      </action>
-      <action issue="BEANUTILS-505" dev="ggregory" type="update" due-to="Gary Gregory">
-        Add missing serialVersionUID to Serializable classes.
-      </action>
-      <action issue="BEANUTILS-512" dev="ggregory" type="update" due-to="Gary Gregory">
-        Add Automatic-Module-Name entry to MANIFEST.MF.
-      </action>
-      <action issue="BEANUTILS-514" dev="ggregory" type="update" due-to="Gary Gregory">
-        Remove deprecated code for 2.0.0.
-      </action>
-      <action issue="BEANUTILS-509" dev="ggregory" type="update" due-to="sunil, Akshay Gehi">
-        WeakHashmap enters into infinite loop in WrapDynaClass.java.
-      </action>
-      <action issue="BEANUTILS-520" dev="ggregory" type="update" due-to="Melloware">
-        BeanUtils2 mitigate CVE-2014-0114.
-      </action>
-      <action issue="BEANUTILS-527" dev="ggregory" type="update" due-to="Melloware, Matt Sicker, Gary Gregory">
-        Convert Collections4 to java.util.function. #8.
-      </action>
-      <action issue="BEANUTILS-527" dev="ggregory" type="remove" due-to="Melloware, Matt Sicker, Gary Gregory">
-        Removed Commons Collections dependency. #8.
-      </action>
-      <action issue="BEANUTILS-528" dev="ggregory" type="update" due-to="Melloware, Matt Sicker, Gary Gregory">
-        New converters for UUID, URI, and Path #10.
-      </action>
-      <action issue="BEANUTILS-530" dev="ggregory" type="add" due-to="Melloware, Matt Sicker, Gary Gregory">
-        New converters for Java 8 Time classes #13.
-      </action>
-      <action issue="BEANUTILS-529" dev="ggregory" type="update" due-to="Gary Gregory">
-        Log at the debug level instead of info.
-      </action>
-      <action issue="BEANUTILS-537" dev="ggregory" type="update" due-to="XenoAmess, Gary Gregory">
-        Fix typos; fix error in Javadoc; performance fix; fix code smells #25.
-      </action>
-      <action dev="ggregory" type="fix" due-to="Andrei Korzhevskii, Gary Gregory">
-        Refactor logger usage #72.
-      </action>
-      <action dev="ggregory" type="fix" due-to="SethFalco">
-        Start migration to JUnit 5 #93.
-      </action>
-      <action dev="ggregory" type="fix" due-to="Gary Gregory">
-        Fix SpotBugs [ERROR] Medium: org.apache.commons.beanutils2.BasicDynaClass.constructorTypes should be both final and package protected [org.apache.commons.beanutils2.BasicDynaClass] At BasicDynaClass.java:[line 95] MS_FINAL_PKGPROTECT.
-      </action>
-      <action dev="ggregory" type="fix" due-to="Gary Gregory">
-        Fix SpotBugs [ERROR] Medium: Load of known null value in org.apache.commons.beanutils2.converters.AbstractConverter.convert(Class, Object) [org.apache.commons.beanutils2.converters.AbstractConverter] At AbstractConverter.java:[line 163] NP_LOAD_OF_KNOWN_NULL_VALUE.
-      </action>
-      <action dev="ggregory" type="fix" due-to="Gary Gregory">
-        Fix SpotBugs [ERROR] Medium: Unused public or protected field: org.apache.commons.beanutils2.WrapDynaClass.descriptors [org.apache.commons.beanutils2.WrapDynaClass] In WrapDynaClass.java UUF_UNUSED_PUBLIC_OR_PROTECTED_FIELD.
-      </action>
-      <action dev="ggregory" type="fix" due-to="Gary Gregory">
-        Fix SpotBugs [ERROR] Medium: org.apache.commons.beanutils2.converters.ArrayConverter.setAllowedChars(char[]) may expose internal representation by storing an externally mutable object into ArrayConverter.allowedChars [org.apache.commons.beanutils2.converters.ArrayConverter] At ArrayConverter.java:[line 202] EI_EXPOSE_REP2.
-      </action>
-      <action dev="ggregory" type="fix" due-to="Gary Gregory">
-        Fix SpotBugs [ERROR] Medium: org.apache.commons.beanutils2.converters.DateTimeConverter.setPatterns(String[]) may expose internal representation by storing an externally mutable object into DateTimeConverter.patterns [org.apache.commons.beanutils2.converters.DateTimeConverter] At DateTimeConverter.java:[line 204] EI_EXPOSE_REP2.
-      </action>
-      <action dev="ggregory" type="fix" due-to="Gary Gregory">
-        Fix SpotBugs [ERROR] Medium: org.apache.commons.beanutils2.ConversionException.getCause() may expose internal representation by returning ConversionException.cause [org.apache.commons.beanutils2.ConversionException] At ConversionException.java:[line 83] EI_EXPOSE_REP.
-      </action>
-      <action dev="ggregory" type="fix" due-to="Gary Gregory">
-        Fix SpotBugs [ERROR] Medium: new org.apache.commons.beanutils2.ConversionException(String, Throwable) may expose internal representation by storing an externally mutable object into ConversionException.cause [org.apache.commons.beanutils2.ConversionException] At ConversionException.java:[line 53] EI_EXPOSE_REP2.
-      </action>
-      <action dev="ggregory" type="fix" due-to="Gary Gregory">
-        Fix SpotBugs [ERROR] Medium: new org.apache.commons.beanutils2.ConversionException(Throwable) may expose internal representation by storing an externally mutable object into ConversionException.cause [org.apache.commons.beanutils2.ConversionException] At ConversionException.java:[line 65] EI_EXPOSE_REP2.
-      </action>
-      <action dev="ggregory" type="fix" due-to="Gary Gregory">
-        Fix SpotBugs [ERROR] Medium: org.apache.commons.beanutils2.converters.DateTimeConverter.getPatterns() may expose internal representation by returning DateTimeConverter.patterns [org.apache.commons.beanutils2.converters.DateTimeConverter] At DateTimeConverter.java:[line 189] EI_EXPOSE_REP.
-      </action>
-      <action dev="ggregory" type="fix" due-to="Gary Gregory">
-        Fix SpotBugs [ERROR] Medium: org.apache.commons.beanutils2.WrapDynaClass.getDynaProperties() may expose internal representation by returning WrapDynaClass.properties [org.apache.commons.beanutils2.WrapDynaClass] At WrapDynaClass.java:[line 172] EI_EXPOSE_REP.
-      </action>
-      <!-- ADD -->
-      <action dev="ggregory" type="update" due-to="Dependabot, Gary Gregory">
-        Add github/codeql-action #118.
-      </action>
-      <!--  UPDATES -->
-      <action dev="ggregory" type="update" due-to="Dependabot, Gary Gregory">
-        Bump actions/cache from 2 to 3.0.2 #77, #89, #103, #111.
-      </action>
-      <action dev="ggregory" type="update" due-to="Dependabot">
-        Update actions/checkout from 2.3.1 to 3 #33, #108.
-      </action>
-      <action dev="ggregory" type="update" due-to="Dependabot, Gary Gregory">
-        Update actions/setup-java from 1.4.0 to 3 #35, #114.
-      </action>
-      <action issue="BEANUTILS-522" dev="ggregory" type="update" due-to="Gary Gregory">
-        Update Apache Commons Collections from 4.3 to 4.4.
-      </action>
-      <action issue="BEANUTILS-504" dev="ggregory" type="update" due-to="Gary Gregory">
-        Update from Java 6 to 7.
-      </action>
-      <action issue="BEANUTILS-515" dev="ggregory" type="update" due-to="Gary Gregory">
-        Update from Java 7 to 8.
-      </action>
-      <action dev="ggregory" type="update" due-to="Gary Gregory, Dependabot">
-        Update JUnit from 4 to 5 vintage, #78, #112.
-      </action>
-      <action dev="ggregory" type="update" due-to="Gary Gregory">
-        Update Jacoco from 0.8.4 to 0.8.8.
-      </action>
-      <action dev="ggregory" type="update" due-to="Gary Gregory, Dependabot">
-        Update JApiCmp from 0.12.0 to 0.15.7, #46, #110.
-      </action>
-      <action dev="ggregory" type="update" due-to="Gary Gregory, Dependabot">
-        Update maven-surefire-plugin from 2.22.1 to 3.0.0-M6, #116.
-      </action>
-      <action dev="ggregory" type="update" due-to="Gary Gregory, Dependabot">
-        Update maven-checkstyle-plugin from 3.0.0 to 3.1.2, #76.
-      </action>
-      <action dev="ggregory" type="update" due-to="Gary Gregory">
-        Update maven-pmd-plugin from 3.12.0 to 3.13.0.
-      </action>
-      <action dev="ggregory" type="update" due-to="Gary Gregory">
-        Update BC version from 1.9.3 to 1.9.4.
-      </action>
-      <action dev="ggregory" type="update" due-to="Gary Gregory">
-        Update commons-parent from 50 to 53.
-      </action>
-      <action dev="ggregory" type="update" due-to="Dependabot">
-        Update biz.aQute.bndlib from 5.1.0 to 6.2.0 #29, #45, #79, #109.
-      </action>
-      <action dev="ggregory" type="update" due-to="melloware">
-        Jacoco 0.8.6 for JDK15 support #55.
-      </action>
-      <action dev="ggregory" type="update" due-to="SethFalco">
-        Updated URLConverterTestCase to run without Internet access #50.
-      </action>
-      <action dev="ggregory" type="update" due-to="Arturo Bernal">
-        Don't initialize variables to defaults #71.
-      </action>
-      <action dev="ggregory" type="update" due-to="Dependabot">
-        Bump junit-jupiter from 5.7.2 to 5.8.2 #113.
-      </action>
-      <action dev="ggregory" type="update" due-to="Dependabot">
-        Bump spotbugs-maven-plugin from 4.5.3.0 to 4.6.0.0.
-      </action>
-      <action dev="ggregory" type="update" due-to="Dependabot">
-        Bump spotbugs from 4.5.3 to 4.6.0.
-      </action>
-    </release>
-
-    <release version="1.9.4" date="2019-08-13" description="The primary reason for this release is a bugfix for
-CVE-2014-0114. More specifically, our goal with BEANUTILS-520
-is to set the default behavior of the BeanUtilsBean
-to not allow class level access. The goal in doing this now
-is to bring 1.9.X into alignment with the same behavior
-of the 2.X version line in regards to security.
-If one would like to opt out of the default behavior, one could follow the
-example set out in the test class available in
-src/test/java/org/apache/commons/beanutils/bugs/Jira520TestCase.java.">
-      <action issue="BEANUTILS-520" dev="chtompki" type="fix" due-to="Melloware">
-        BeanUtils mitigation of CVE-2014-0114. (CVE-2019-10086 for commons-beanutils).
-      </action>
-    </release>
-
-    <release version="1.9.3" date="2016-09-21" description="Bug fix release, now builds with Java 8">
-      <action issue="BEANUTILS-433" dev="ggregory" type="update" due-to="Benedikt Ritter, Gary Gregory">
-        Update dependency from JUnit 3.8.1 to 4.12.
-      </action>
-      <action issue="BEANUTILS-465" dev="oheger" type="fix" due-to="Daniel Atallah">
-        Indexed List Setters no longer work
-      </action>
-      <action issue="BEANUTILS-469" dev="ggregory" type="update" due-to="Gary Gregory">
-        Update commons-logging from 1.1.1 to 1.2.
-      </action>
-      <action issue="BEANUTILS-470" dev="oheger" type="fix" due-to="Tommy Tynj&#228;">
-        Precision lost when converting BigDecimal
-      </action>
-      <action issue="BEANUTILS-474" dev="ggregory" type="update" due-to="Michael Grove">
-        FluentPropertyBeanIntrospector does not use the same naming algorithm as DefaultBeanIntrospector.
-      </action>
-      <action issue="BEANUTILS-477" dev="oheger" type="fix">
-        Changed log level of warnings from FluentPropertyBeanIntrospector; exceptions are no longer logged with level WARN.
-      </action>
-      <action issue="BEANUTILS-482" dev="ggregory" type="update" due-to="Gary Gregory">
-        Update commons-collections from 3.2.1 to 3.2.2. (CVE-2015-4852)
-      </action>
-      <action issue="BEANUTILS-490" dev="ggregory" type="update" due-to="Gary Gregory">
-        Update Java requirement from Java 5 to 6.
-      </action>
-      <action issue="BEANUTILS-492" dev="stain" type="update" due-to="Stian Soiland-Reyes">
-        IndexedPropertyDescriptor not supported for List in Java 8
-      </action>
-      <action issue="BEANUTILS-493" dev="stain" type="fix" due-to="Bernhard Seebass">
-        Exception when setting indexed properties: "Default conversion to ArrayList failed"
-      </action>
-      <action issue="BEANUTILS-495" dev="stain" type="update" due-to="Stian Soiland-Reyes">
-        DateConverterTestBase fails on M/d/yy in Java 9
-      </action>
-      <action issue="BEANUTILS-496" dev="stain" type="update" due-to="Stian Soiland-Reyes">
-        testGetDescriptorInvalidBoolean fails on Java 9
-      </action>
-    </release>
-
-    <release version="1.9.2" date="2014-05-29"
-      description="Added a new BeanIntrospector for addressing a potential class loader vulnerability">
-      <action dev="oheger" type="add" issue="BEANUTILS-463">
-        Class loader vulnerability in DefaultResolver ()
-      </action>
-      <action dev="oheger" type="fix" issue="BEANUTILS-458" due-to="Manuel Dominguez Sarmiento ">
-        BaseLocaleConverter.checkConversionResult() fails with
-        ConversionException when result is null when it should not
-      </action>
-    </release>
-
-    <release version="1.9.1" date="2014-01-11" description="Bug fix for 1.9.0">
-      <action dev="oheger" type="fix" issue="BEANUTILS-456">
-        Write methods for PropertyDescriptors created during custom introspection are lost
-      </action>
-    </release>
-
-    <release version="1.9.0" date="2013-12-11" description="Upgrade to Java 5 including generics where possible">
-      <action dev="oheger" type="add" issue="BEANUTILS-455">
-        WrapDynaBeans always use the default PropertyUtilsBean instance
-      </action>
-      <action dev="oheger" type="update" issue="BEANUTILS-454">
-        BeanUtilsBean.copyProperties() throws conversion exception for null Date
-      </action>
-      <action dev="oheger" type="update" issue="BEANUTILS-452">
-        Add generics
-      </action>
-      <action dev="oheger" type="update" issue="BEANUTILS-449">
-        LocaleConverters do not take the target type into account
-      </action>
-      <action dev="oheger" type="update" issue="BEANUTILS-448">
-        LocaleConverters do not check their default value
-      </action>
-      <action dev="oheger" type="update" issue="BEANUTILS-447">
-        LazyDynaList.toArray() is not conform to the contract defined by the
-        Collection interface
-      </action>
-      <action dev="oheger" type="update" issue="BEANUTILS-446">
-        Some of the converters ignore the passed in target type
-      </action>
-      <action dev="oheger" type="update" issue="BEANUTILS-445">
-        Converters can return an invalid result object if a default value is set
-      </action>
-      <action dev="oheger" type="update" issue="BEANUTILS-441" due-to="Samir Kerroumi">
-        Replace UnmodifiableSet.decorate with Collections.unModifiableSet
-      </action>
-      <action dev="britter" type="update" issue="BEANUTILS-436">
-        Replace package.html with package-info.java
-      </action>
-      <action dev="britter" type="update" issue="BEANUTILS-438">
-        Add @Deprecated and @Override Annotations
-      </action>
-      <action dev="britter" type="update" issue="BEANUTILS-437">
-        Replace Date and Revision SVN keywords with Id
-      </action>
-      <action dev="britter" type="update" issue="BEANUTILS-431">
-        Remove @author tags and move missing authors to pom.xml
-      </action>
-      <action dev="britter" type="update" issue="BEANUTILS-432">
-        Switch to Java 1.5
-      </action>
-      <action dev="oheger" type="add" issue="BEANUTILS-428">
-        Provide a BeanIntrospector implementation which supports properties in a fluent API
-      </action>
-      <action dev="oheger" type="add" issue="BEANUTILS-425">
-        Support customization of introspection mechanism
-      </action>
-      <action dev="britter" type="fix" issue="BEANUTILS-411" due-to="Marcus Zander">
-        BeanUtilsBean.setProperty throws IllegalArgumentException if getter of nested property returns null
-      </action>
-      <action dev="britter" type="update" issue="BEANUTILS-429">
-        Delete trailing white spaces and white spaces on empty lines from all files
-      </action>
-      <action dev="britter" type="update" issue="BEANUTILS-427">
-        Configure Checkstyle to check for trailing white spaces and white spaces on empty lines
-      </action>
-      <action dev="britter" type="fix" issue="BEANUTILS-408">
-        MethodUtils.invokeMethod() throws NullPointerException when args==null
-      </action>
-      <action dev="britter" type="fix" issue="BEANUTILS-426">
-        ConstructorUtils.invokeConstructor(Class klass, Object arg) throws
-        NullPointerException when arg==null
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-380" due-to="Brendan Nolan">
-        BeanMap methods should initialize the root cause of exceptions that are thrown
-        when running on JDK 1.4+
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-379">
-        Remove copied Collection classes.
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-378" due-to="Christian Schneider">
-        BeanMap does not work in osgi (fixed by BEANUTILS-379)
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-381" due-to="Todd Nine">
-        MethodUtils getMatchingAccessibleMethod() does not correctly handle inheritance
-        and method overloading.
-      </action>
-    </release>
-
-    <release version="1.8.3" date="2010-03-28" description="Bug fix for 1.8.2">
-      <action dev="niallp" type="fix" issue="BEANUTILS-373" due-to="Andrew Sunde">
-        MethodUtils is not thread safe because WeakFastHashMap which uses WeakHashMap is not thread-safe
-        (duplicate of BEANUTILS-318 which was not fixed properly in BeanUtils 1.8.0).
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-371" due-to="David Tonhofer">
-        Add constructors which have useColumnLabel parameter to ResultSetDynaClass and RowSetDynaClass.
-      </action>
-    </release>
-
-    <release version="1.8.2" date="2009-11-13" description="Bug fix for 1.8.1">
-      <action dev="niallp" type="fix" issue="BEANUTILS-368" due-to="Peter Fassev">
-        NullPointerException in BeanUtilsBean .setProperty()
-      </action>
-    </release>
-
-    <release version="1.8.1" date="2009-10-20" description="Bug fixes for 1.8.0">
-      <action dev="niallp" type="fix" issue="BEANUTILS-300" due-to="Henri and Sebb">
-        NPE in LazyDynaList
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-327" due-to="Sascha Riemann">
-        JDBCDynaClass throws class not found exception under java6
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-336" due-to="Sebb">
-        MappedPropertyDescriptor#reLoadClass() possible NPE / odd code; also swallows Throwable
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-339" due-to="Alan Escreet">
-        BeanUtilsBean.setProperty throws IllegalArgumentException if value is null
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-345" due-to="Simone Riccucci">
-        BeanUtilsBean.setProperty does not handle some kind of nested properties
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-347" due-to="Eickvonder">
-        MappedPropertyDescriptor throws an exception after method reference has been garbage collected
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-349" due-to="Eivind Tagseth">
-        copyProperties throws NullPointerException if an IllegalArgumentException is thrown due to a null value parameter for a primitive
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-351" due-to="Lucian Chirita">
-        FloatLocaleConverter cannot parse 0
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-354" due-to="Anders Wallgren">
-        Type in BooleanConverter: "Cna't convert value"
-      </action>
-      <action dev="niallp" type="update" issue="BEANUTILS-333" due-to="Lukasz Lenart">
-        Avoid calling setAccessible() if not needed
-      </action>
-      <action dev="niallp" type="update" issue="BEANUTILS-344" due-to="Viral">
-        Method createDynaProperty of JDBCDynaClass should first look for column label instead of column name in ResultSetMetadata
-        object..
-      </action>
-      <action dev="niallp" type="update" issue="BEANUTILS-350" due-to="rodrigo hernandez">
-        change visibility of method "evaluateValue" belongs to the class BeanPropertyValueEqualsPredicate to "protected".
-      </action>
-    </release>
-
-    <release version="1.8.0" date="2008-09-01" description="Converter improvements, Plugable expression Resolver and bug fixes for 1.7.0">
-      <action dev="niallp" type="fix" issue="BEANUTILS-265" due-to="Tom Schindl and Romain Muller">
-        Allow access to non public class's public methods from a public sub-classes.
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-291" due-to="Clebert Suconic ">
-        Circular Reference on WeakHashMap.
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-294" due-to="Stephen Leung">
-        BeanUtilsBean.setProperty() does not support nested map.
-      </action>
-      <action dev="bayard" type="fix" issue="BEANUTILS-295" due-to="Stefan Wohlgemuth">
-        Unnecessary Garbage Objects in Class PropertyUtilsBean.
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-297" due-to="Alex Tkachev">
-        ConvertingWrapDynaBean hides cause exceptions.
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-298" due-to="Roman Mukhin">
-        MethodUtils.getAccessibleMethod(Method method) could not find right public method.
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-302" due-to="Martin Bartlett">
-        NPE in ArrayConverter when converting a non-quoted string with underscores to a string array.
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-306" due-to="Lucian Chirita">
-        LocaleConvertUtilsBean.convert throws NPE on null Locale when debug logging is enabled.
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-318" due-to="Sylvain Legault">
-        Fix WeakHashMap is not thread safe in MethodUtils using new FastWeakHashMap.
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-319" due-to="Erik Erskine">
-        PropertyUtils.getPropertyType fails for DynaBeans contained within a normal bean.
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-326" due-to="Vladimir Orlov">
-        Iterating by a Map' key/value pairs in BeanUtilsBean and PropertyUtilsBean.
-      </action>
-    </release>
-
-    <release version="1.8.0-BETA" date="2007-08-04" description="Trial Beta release">
-      <action dev="niallp" type="add" issue="BEANUTILS-259">
-        Add plugable property name expression Resolver.
-      </action>
-      <action dev="niallp" type="update" issue="BEANUTILS-258">
-        General Converter implementation improvements: New AbstractConverter which provides
-        a basic structure for Converter implementations and new NumberConverter implementation.
-      </action>
-      <action dev="niallp" type="add" issue="BEANUTILS-242">
-        Add new generic ArrayConverter implementation.
-      </action>
-      <action dev="niallp" type="add" issue="BEANUTILS-255">
-        Add new generic DateTimeConverter implementation.
-      </action>
-      <action dev="vgritsenko" type="update" issue="BEANUTILS-239" due-to="Rafael Afonso">
-        Better implementation of SqlDateConverter. Modified SqlDateConverter,
-        SqlTimeConverter and SqlTimestampConverter to accept java.util.Date
-        and Calendar object instances. Added tests.
-      </action>
-      <action dev="niallp" type="add" issue="BEANUTILS-286">
-        New Facade converter implementation - hide non-Converter public APIs.
-      </action>
-      <action dev="skitching" type="update" issue="BEANUTILS-229">
-        Add "t/f" to BooleanConverter.
-      </action>
-      <action dev="niallp" type="update" issue="BEANUTILS-43" due-to="Firepica and Thomas Jacob">
-        Support Mapped property inside a mapped property.
-      </action>
-      <action dev="niallp" type="update" issue="BEANUTILS-113" due-to="Firepica and Ludwig Wensauer">
-        Support Indexed property inside a mapped property.
-      </action>
-      <action dev="niallp" type="update" issue="BEANUTILS-247" due-to="Christian Poitras, Thomas Jacob and scott sadlo">
-        Support Arrays with multiple dimension.
-      </action>
-      <action dev="bayard" type="update" issue="BEANUTILS-207" due-to="Erik Meade">
-        Include bean class in the message of PropertyUtilsBean exceptions.
-      </action>
-      <action dev="bayard" type="update" issue="BEANUTILS-224" due-to="Ralf Hauser">
-        Provide better error message for "argument type mismatch".
-      </action>
-      <action dev="bayard" type="update" issue="BEANUTILS-30" due-to="Barry Kaplan">
-        Improved messages for unknown properties.
-      </action>
-      <action dev="bayard" type="update" issue="BEANUTILS-193" due-to="Nestor Boscan">
-        MethodUtils.invoke for static methods.
-      </action>
-      <action dev="niallp" type="update" issue="BEANUTILS-266" due-to="Brian Ewins and Commons HttpClient">
-        Log or throw exception in PropertyUtilsBean.
-        Added mechanism to initialize the "cause" on an Exception using reflection for JDK 1.4+
-        (copied from Commons HttpClient).
-      </action>
-      <action dev="niallp" type="add" due-to="Vic Cekvenich">
-        Add lazyDynaList.
-      </action>
-      <action dev="niallp" type="add" issue="BEANUTILS-185" due-to="Gabriel Belingueres">
-        Provide a Map decorator for a DynaBean (enables DynaBean to be used with other teechnologies such as JSTL).
-      </action>
-      <action dev="niallp" type="update" issue="BEANUTILS-233" due-to="Russell">
-        Implement equals() and hashCode() methods for DynaProperty.
-      </action>
-
-
-      <action dev="niallp" type="fix" issue="BEANUTILS-243" due-to="Henri Yandell">
-        BeanUtils's tests fail to compile under JDK 1.6
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-49" due-to="Jesper Richter-Reichhelm">
-        Lock in BeanUtilsBean.getInstance(
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-157" due-to="Thorbjorn Ravn Andersen">
-        Beanutils's describe() method cannot determine reader methods for anonymous class.
-      </action>
-      <action dev="rdonkin" type="fix" issue="BEANUTILS-158">
-        Added warning about describe behavior to the javadocs.
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-249" due-to="Brad">
-        BeanUtilsBean's setProperty() does not convert objects using custom converters properly.
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-17" due-to="Matthew Sgarlata and Corey Scott">
-        Fix javadoc - IllegalArgumentException in BeanUtils.copyProperties
-        when property types don't match.
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-68" due-to="Dmitry Platonoff">
-        Writing to a mapped property requires a setter for a map, but never uses it.
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-110" due-to="Etienne Bernard">
-        BeanUtilsBean.getArrayProperty() does not use ConvertUtils.
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-6" due-to="Sam Ruby">
-        MappedPropertyDescriptor - replace copied code.
-      </action>
-      <action dev="skitching" type="fix">
-        MappedPropertyDescriptor: Add comments re: * use of static variable safe in shared
-        classloader * memory leak possible on webapp undeploy.
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-69" due-to="Chris Audley">
-        MappedPropertyDescriptor doesn't recognize boolean property accessor.
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-163">
-        Add test for MappedPropertyDescriptor with different types on get/set methods.
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-140" due-to="Marco La Porta">
-        LocaleBeanUtils setProperty does not work on nested property.
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-87" due-to="YOKOTA Takehiko">
-        Package scope implementation of a public interface for mapped property fails
-        (fixed by changes to MappedPropertyDescriptor associated with BEANUTILS-6)
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-33" due-to="Eoin Curran">
-        PropertyUtils incosistency - can't use "dot" in mapped properties for setProperty
-        or getPropertyDescriptor (fixed by the changes for BEANUTILS-259
-        Plugable Property Name Expression Resolver).
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-273" due-to="Marcelo Liberato">
-        Public methods overridden in anonymous or private subclasses are not recognized by PropertyUtils.
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-88" due-to="Chuck Daniels">
-        PropertyUtilsBean's isReadable() / isWriteable() always return false for mapped properties.
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-61" due-to="Brian Ewins">
-        PropertyUtilsBean isReadable() and isWriteable() methods do not work correctly for WrapDynaBean.
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-18" due-to="Maarten Coene">
-        PropertyUtils.isReadable() and PropertyUtils.getProperty() not consistent.
-      </action>
-      <action dev="bayard" type="fix" issue="BEANUTILS-92" due-to="Will Pugh">
-        PropertyUtilsBean.copyProperties does not catch NoSuchMethodException
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-256" due-to="Torsten Feig">
-        PropertyUtilsBean.getIndexedProperty()'s javadoc should indicate
-        IndexOutOufBoundsException can be thrown rather than just
-        ArrayIndexOutOufBoundsException.
-      </action>
-      <action dev="skitching" type="fix" issue="BEANUTILS-162">
-        Create new methods getPropertyOfMapBean and setPropertyOfMapBean that the existing
-        setNestedProperty and getNestedProperty methods now call when they discover the bean
-        they are accessing implements Map. This makes it much easier for users to subclass
-        and customise this behavior of PropertyUtilsBean, eg in order to restore pre-1.5 behavior.
-        This patch also causes an exception to be thrown when the propertyName passed to
-        getPropertyOfMapBean or setPropertyOfMapBean has MAPPED_DELIM or INDEXED_DELIM chars in
-        it. This never worked as expected before (the whole string was treated literally as the
-        propertyName), so throwing an exception here should not break any existing code. It should
-        be of help to future developers who make this mistake though...
-      </action>
-      <action dev="skitching" type="fix">
-        Ignore simple properties on java.util.Map objects -
-        Map methods are always used on a Map object. Reverts BEANUTILS-144.
-        See BEANUTILS-162 for discussion.
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-262">
-        Correct getPropertyDescriptor() and setNestedProperty() methods to throw
-        a NestedNullException rather than just IllegalArgumentException (consistent
-        with the getNestedProperty() method).
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-97">
-        Problems on indexed property with JDK 1.4.
-      </action>
-      <action dev="skitching" type="update">
-        BooleanArrayConverter: Use new AbstractArrayConverter constructors and
-        Convert strings to booleans by invoking a BooleanConverter rather than
-        hard-wiring the conversion.
-      </action>
-      <action dev="skitching" type="update" due-to="Eric Rizzo">
-        BooleanConverter: Add facility for user to override the default set
-        of true and false string definitions and provide ability to pass special
-        NO_DEFAULT object as the "defaultValue" constructor parameter.
-      </action>
-      <action dev="skitching" type="update">
-        AbstractArrayConverter: provide ability to pass special NO_DEFAULT object as the
-        "defaultValue" constructor parameter.
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-78" due-to="Stefan Lotscher">
-        DecimalLocaleConverter and subClasses never throw a ConversionException.
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-44" due-to="Paul Jenkins">
-        FloatLocaleConverter cannot parse negative values.
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-263" due-to="Alex Albu">
-        Improve ClassConverter robustness.
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-271" due-to="Nico Hoogervorst">
-        DateLocaleConverter does not always throw an Exception for invalid dates.
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-288">
-        Don't try parsing values that are already Dates/Numbers in Date/Number locale Converters.
-      </action>
-      <action dev="skitching" type="fix">
-        WrapDynaClass: Added comment re potential memory leak, and safety when using
-        shared classloader
-      </action>
-      <action dev="niallp" type="fix">
-        Make WrapDynaBean Serializable.
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-36" due-to="Jack">
-        WrapDynaBeanTestCase failing with jikes/kaffe because of static List in TestBean.
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-23" due-to="Aslak Hellesoy">
-        Misleading error message in ConvertingWrapDynaBean.
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-24" due-to="Roi Ares">
-        LazyDynaBean: don't try and instantiate properties of type Object.class.
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-133" due-to="Masoud Omidvar">
-        LazyDynabean Javadoc corrections.
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-250">
-        LazyDynaClass can create a DynaProperty with a "null" type.
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-289">
-        JDBCDynaClass "lowerCase" option causes problems in RowSetDynaClass and ResultSetIterator.
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-142" due-to="Li Zhang">
-        RowSetDynaClass fails to copy ResultSet to DynaBean with Oracle 10g JDBC driver.
-      </action>
-      <action dev="bayard" type="fix" issue="BEANUTILS-241" due-to="Chris Hyzer">
-        Fix BeanComparator throws wrong exception and hides cause.
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-112" due-to="Simon Kitching">
-        Deprecate the public static defaultTransformers HashMap and make it unmodifiable.
-      </action>
-
-      <action dev="niallp" type="update" issue="BEANUTILS-290">
-        Merge Bean-Collections back into core BeanUtils and remove Bean-Collections sub-project.
-      </action>
-      <action dev="bayard" type="fix" issue="BEANUTILS-287">
-        Fixi the build to include all the tests and change the build.properties.sample so it's easier
-        to use for the default maven user (ie: it looks by default in the .maven repository)
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-217" due-to="Carlos Sanchez">
-        Improvements to maven build.
-      </action>
-      <action dev="niallp" type="fix" issue="BEANUTILS-54" due-to="Pascal Grange">
-        Add Implementation-Vendor-Id entry to jar's manifest.
-      </action>
-      <action dev="bayard" type="fix" issue="BEANUTILS-121" due-to="Chris Tilden">
-        Resolve compiler warnings: Unused imports, un-read local variables,
-        field hiding, empty block, improperly used statics, uncessary semi
-        colons, unnecessary casts.
-      </action>
-      <action dev="skitching" type="fix">
-        Replace use of static Log objects with instance or local variables. It isn't safe
-        to use static Log objects in code that might be deployed via a shared classloader
-        as they will bind to the Log object from the context classloader in use when the
-        first use happens.
-      </action>
-      <action dev="scolebourne" type="fix" due-to="Dimiter Dimitrov" issue="COLLECTIONS-22">
-        BeanMap: Fix internal variable to not include non-existant write methods.
-        - ported from Commons Collections.
-      </action>
-      <action dev="rdonkin" type="update" due-to="Steve Cohen">
-        Change MethodUtils to make getMatchingAccessibleMethod() method selection more
-        rational.
-      </action>
-    </release>
-
-    <release version="1.7.0" date="2004-08-02">
-      <action type="update">
-        See href="https://commons.apache.org/beanutils/commons-beanutils-1.7.0/RELEASE-NOTES.txt
-      </action>
-    </release>
-
-    <release version="1.6.1" date="2003-02-18">
-      <action type="update">
-        See https://commons.apache.org/beanutils/commons-beanutils-1.6.1/RELEASE-NOTES.txt
-      </action>
-    </release>
-
-    <release version="1.6" date="2003-01-21">
-      <action type="update">
-        See https://commons.apache.org/beanutils/commons-beanutils-1.6/RELEASE-NOTES.txt
-      </action>
-    </release>
-
-    <release version="1.5" date="2002-10-23">
-      <action type="update">
-        See https://commons.apache.org/beanutils/commons-beanutils-1.5/RELEASE-NOTES.txt
-      </action>
-    </release>
-
-    <release version="1.4.1" date="2002-08-28">
-      <action type="fix">
-        See https://commons.apache.org/beanutils/commons-beanutils-1.4.1/RELEASE-NOTES.txt
-      </action>
-    </release>
-
-    <release version="1.4" date="2002-08-13">
-      <action type="update">
-        See https://commons.apache.org/beanutils/commons-beanutils-1.4/RELEASE-NOTES.txt
-      </action>
-    </release>
-
-    <release version="1.3" date="2002-04-29">
-      <action type="update">
-        See https://commons.apache.org/beanutils/commons-beanutils-1.3/RELEASE-NOTES.txt
-      </action>
-    </release>
-
-    <release version="1.2" date="2001-12-24">
-      <action type="update">
-        See https://commons.apache.org/beanutils/commons-beanutils-1.2/RELEASE-NOTES.txt
-      </action>
-    </release>
-
-    <release version="1.1" date="2001-09-22">
-      <action type="update">Version 1.1</action>
-    </release>
-
-    <release version="1.0" date="2001-07-14" description="Initial Release">
-      <action type="add">Initial Release</action>
-    </release>
-
-  </body>
-</document>
+<?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.
+-->
+
+<!-- This file is used by the maven-changes-plugin to generate the release notes. Useful ways of finding items to add to
+  this file are: 1. Add items when you fix a bug or add a feature (this makes the release process easy :-). 2. Do a Jira search
+  for tickets closed since the previous release. 3. Use the report generated by the maven-changelog-plugin to see all SVN commits.
+  Set the project.properties' maven.changelog.range property to the number of days since the last release. The <action> type
+  attribute can be add,update,fix,remove. -->
+<document xmlns="http://maven.apache.org/changes/1.0.0"
+            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+            xsi:schemaLocation="http://maven.apache.org/changes/1.0.0 http://maven.apache.org/xsd/changes-1.0.0.xsd">
+  <properties>
+    <title>Apache Commons BeanUtils Release Notes</title>
+  </properties>
+  <body>
+    <release version="2.0.0" date="2018-MM-DD" description="Update to Java 8.">
+      <action issue="BEANUTILS-346" dev="melloware" type="update" due-to="Melloware">
+        New converter for Enum.
+      </action>
+      <action issue="BEANUTILS-402" dev="melloware" type="update" due-to="Melloware">
+        Double-Checked Locking anti pattern in WeakFastHashMap.
+      </action>
+      <action issue="BEANUTILS-503" dev="ggregory" type="update" due-to="Gary Gregory">
+        Change packaging from org.apache.commons.beanutils to org.apache.commons.beanutils2.
+      </action>
+      <action issue="BEANUTILS-505" dev="ggregory" type="update" due-to="Gary Gregory">
+        Add missing serialVersionUID to Serializable classes.
+      </action>
+      <action issue="BEANUTILS-512" dev="ggregory" type="update" due-to="Gary Gregory">
+        Add Automatic-Module-Name entry to MANIFEST.MF.
+      </action>
+      <action issue="BEANUTILS-514" dev="ggregory" type="update" due-to="Gary Gregory">
+        Remove deprecated code for 2.0.0.
+      </action>
+      <action issue="BEANUTILS-509" dev="ggregory" type="update" due-to="sunil, Akshay Gehi">
+        WeakHashmap enters into infinite loop in WrapDynaClass.java.
+      </action>
+      <action issue="BEANUTILS-520" dev="ggregory" type="update" due-to="Melloware">
+        BeanUtils2 mitigate CVE-2014-0114.
+      </action>
+      <action issue="BEANUTILS-527" dev="ggregory" type="update" due-to="Melloware, Matt Sicker, Gary Gregory">
+        Convert Collections4 to java.util.function. #8.
+      </action>
+      <action issue="BEANUTILS-527" dev="ggregory" type="remove" due-to="Melloware, Matt Sicker, Gary Gregory">
+        Removed Commons Collections dependency. #8.
+      </action>
+      <action issue="BEANUTILS-528" dev="ggregory" type="update" due-to="Melloware, Matt Sicker, Gary Gregory">
+        New converters for UUID, URI, and Path #10.
+      </action>
+      <action issue="BEANUTILS-530" dev="ggregory" type="add" due-to="Melloware, Matt Sicker, Gary Gregory">
+        New converters for Java 8 Time classes #13.
+      </action>
+      <action issue="BEANUTILS-529" dev="ggregory" type="update" due-to="Gary Gregory">
+        Log at the debug level instead of info.
+      </action>
+      <action issue="BEANUTILS-537" dev="ggregory" type="update" due-to="XenoAmess, Gary Gregory">
+        Fix typos; fix error in Javadoc; performance fix; fix code smells #25.
+      </action>
+      <action dev="ggregory" type="fix" due-to="Andrei Korzhevskii, Gary Gregory">
+        Refactor logger usage #72.
+      </action>
+      <action dev="ggregory" type="fix" due-to="SethFalco">
+        Start migration to JUnit 5 #93.
+      </action>
+      <action dev="ggregory" type="fix" due-to="Gary Gregory">
+        Fix SpotBugs [ERROR] Medium: org.apache.commons.beanutils2.BasicDynaClass.constructorTypes should be both final and package protected [org.apache.commons.beanutils2.BasicDynaClass] At BasicDynaClass.java:[line 95] MS_FINAL_PKGPROTECT.
+      </action>
+      <action dev="ggregory" type="fix" due-to="Gary Gregory">
+        Fix SpotBugs [ERROR] Medium: Load of known null value in org.apache.commons.beanutils2.converters.AbstractConverter.convert(Class, Object) [org.apache.commons.beanutils2.converters.AbstractConverter] At AbstractConverter.java:[line 163] NP_LOAD_OF_KNOWN_NULL_VALUE.
+      </action>
+      <action dev="ggregory" type="fix" due-to="Gary Gregory">
+        Fix SpotBugs [ERROR] Medium: Unused public or protected field: org.apache.commons.beanutils2.WrapDynaClass.descriptors [org.apache.commons.beanutils2.WrapDynaClass] In WrapDynaClass.java UUF_UNUSED_PUBLIC_OR_PROTECTED_FIELD.
+      </action>
+      <action dev="ggregory" type="fix" due-to="Gary Gregory">
+        Fix SpotBugs [ERROR] Medium: org.apache.commons.beanutils2.converters.ArrayConverter.setAllowedChars(char[]) may expose internal representation by storing an externally mutable object into ArrayConverter.allowedChars [org.apache.commons.beanutils2.converters.ArrayConverter] At ArrayConverter.java:[line 202] EI_EXPOSE_REP2.
+      </action>
+      <action dev="ggregory" type="fix" due-to="Gary Gregory">
+        Fix SpotBugs [ERROR] Medium: org.apache.commons.beanutils2.converters.DateTimeConverter.setPatterns(String[]) may expose internal representation by storing an externally mutable object into DateTimeConverter.patterns [org.apache.commons.beanutils2.converters.DateTimeConverter] At DateTimeConverter.java:[line 204] EI_EXPOSE_REP2.
+      </action>
+      <action dev="ggregory" type="fix" due-to="Gary Gregory">
+        Fix SpotBugs [ERROR] Medium: org.apache.commons.beanutils2.ConversionException.getCause() may expose internal representation by returning ConversionException.cause [org.apache.commons.beanutils2.ConversionException] At ConversionException.java:[line 83] EI_EXPOSE_REP.
+      </action>
+      <action dev="ggregory" type="fix" due-to="Gary Gregory">
+        Fix SpotBugs [ERROR] Medium: new org.apache.commons.beanutils2.ConversionException(String, Throwable) may expose internal representation by storing an externally mutable object into ConversionException.cause [org.apache.commons.beanutils2.ConversionException] At ConversionException.java:[line 53] EI_EXPOSE_REP2.
+      </action>
+      <action dev="ggregory" type="fix" due-to="Gary Gregory">
+        Fix SpotBugs [ERROR] Medium: new org.apache.commons.beanutils2.ConversionException(Throwable) may expose internal representation by storing an externally mutable object into ConversionException.cause [org.apache.commons.beanutils2.ConversionException] At ConversionException.java:[line 65] EI_EXPOSE_REP2.
+      </action>
+      <action dev="ggregory" type="fix" due-to="Gary Gregory">
+        Fix SpotBugs [ERROR] Medium: org.apache.commons.beanutils2.converters.DateTimeConverter.getPatterns() may expose internal representation by returning DateTimeConverter.patterns [org.apache.commons.beanutils2.converters.DateTimeConverter] At DateTimeConverter.java:[line 189] EI_EXPOSE_REP.
+      </action>
+      <action dev="ggregory" type="fix" due-to="Gary Gregory">
+        Fix SpotBugs [ERROR] Medium: org.apache.commons.beanutils2.WrapDynaClass.getDynaProperties() may expose internal representation by returning WrapDynaClass.properties [org.apache.commons.beanutils2.WrapDynaClass] At WrapDynaClass.java:[line 172] EI_EXPOSE_REP.
+      </action>
+      <!-- ADD -->
+      <action dev="ggregory" type="update" due-to="Dependabot, Gary Gregory">
+        Add github/codeql-action #118.
+      </action>
+      <!--  UPDATES -->
+      <action dev="ggregory" type="update" due-to="Dependabot, Gary Gregory">
+        Bump actions/cache from 2 to 3.0.3 #77, #89, #103, #111.
+      </action>
+      <action dev="ggregory" type="update" due-to="Dependabot">
+        Update actions/checkout from 2.3.1 to 3 #33, #108.
+      </action>
+      <action dev="ggregory" type="update" due-to="Dependabot, Gary Gregory">
+        Update actions/setup-java from 1.4.0 to 3 #35, #114.
+      </action>
+      <action issue="BEANUTILS-522" dev="ggregory" type="update" due-to="Gary Gregory">
+        Update Apache Commons Collections from 4.3 to 4.4.
+      </action>
+      <action issue="BEANUTILS-504" dev="ggregory" type="update" due-to="Gary Gregory">
+        Update from Java 6 to 7.
+      </action>
+      <action issue="BEANUTILS-515" dev="ggregory" type="update" due-to="Gary Gregory">
+        Update from Java 7 to 8.
+      </action>
+      <action dev="ggregory" type="update" due-to="Gary Gregory, Dependabot">
+        Update JUnit from 4 to 5 vintage, #78, #112.
+      </action>
+      <action dev="ggregory" type="update" due-to="Gary Gregory">
+        Update Jacoco from 0.8.4 to 0.8.8.
+      </action>
+      <action dev="ggregory" type="update" due-to="Gary Gregory, Dependabot">
+        Update JApiCmp from 0.12.0 to 0.15.7, #46, #110.
+      </action>
+      <action dev="ggregory" type="update" due-to="Gary Gregory, Dependabot">
+        Update maven-surefire-plugin from 2.22.1 to 3.0.0-M6, #116.
+      </action>
+      <action dev="ggregory" type="update" due-to="Gary Gregory, Dependabot">
+        Update maven-checkstyle-plugin from 3.0.0 to 3.1.2, #76.
+      </action>
+      <action dev="ggregory" type="update" due-to="Gary Gregory">
+        Update maven-pmd-plugin from 3.12.0 to 3.13.0.
+      </action>
+      <action dev="ggregory" type="update" due-to="Gary Gregory">
+        Update BC version from 1.9.3 to 1.9.4.
+      </action>
+      <action dev="ggregory" type="update" due-to="Gary Gregory">
+        Update commons-parent from 50 to 53.
+      </action>
+      <action dev="ggregory" type="update" due-to="Dependabot">
+        Update biz.aQute.bndlib from 5.1.0 to 6.2.0 #29, #45, #79, #109.
+      </action>
+      <action dev="ggregory" type="update" due-to="melloware">
+        Jacoco 0.8.6 for JDK15 support #55.
+      </action>
+      <action dev="ggregory" type="update" due-to="SethFalco">
+        Updated URLConverterTestCase to run without Internet access #50.
+      </action>
+      <action dev="ggregory" type="update" due-to="Arturo Bernal">
+        Don't initialize variables to defaults #71.
+      </action>
+      <action dev="ggregory" type="update" due-to="Dependabot">
+        Bump junit-jupiter from 5.7.2 to 5.8.2 #113.
+      </action>
+      <action dev="ggregory" type="update" due-to="Dependabot">
+        Bump spotbugs-maven-plugin from 4.5.3.0 to 4.6.0.0.
+      </action>
+      <action dev="ggregory" type="update" due-to="Dependabot">
+        Bump spotbugs from 4.5.3 to 4.6.0.
+      </action>
+    </release>
+
+    <release version="1.9.4" date="2019-08-13" description="The primary reason for this release is a bugfix for
+CVE-2014-0114. More specifically, our goal with BEANUTILS-520
+is to set the default behavior of the BeanUtilsBean
+to not allow class level access. The goal in doing this now
+is to bring 1.9.X into alignment with the same behavior
+of the 2.X version line in regards to security.
+If one would like to opt out of the default behavior, one could follow the
+example set out in the test class available in
+src/test/java/org/apache/commons/beanutils/bugs/Jira520TestCase.java.">
+      <action issue="BEANUTILS-520" dev="chtompki" type="fix" due-to="Melloware">
+        BeanUtils mitigation of CVE-2014-0114. (CVE-2019-10086 for commons-beanutils).
+      </action>
+    </release>
+
+    <release version="1.9.3" date="2016-09-21" description="Bug fix release, now builds with Java 8">
+      <action issue="BEANUTILS-433" dev="ggregory" type="update" due-to="Benedikt Ritter, Gary Gregory">
+        Update dependency from JUnit 3.8.1 to 4.12.
+      </action>
+      <action issue="BEANUTILS-465" dev="oheger" type="fix" due-to="Daniel Atallah">
+        Indexed List Setters no longer work
+      </action>
+      <action issue="BEANUTILS-469" dev="ggregory" type="update" due-to="Gary Gregory">
+        Update commons-logging from 1.1.1 to 1.2.
+      </action>
+      <action issue="BEANUTILS-470" dev="oheger" type="fix" due-to="Tommy Tynj&#228;">
+        Precision lost when converting BigDecimal
+      </action>
+      <action issue="BEANUTILS-474" dev="ggregory" type="update" due-to="Michael Grove">
+        FluentPropertyBeanIntrospector does not use the same naming algorithm as DefaultBeanIntrospector.
+      </action>
+      <action issue="BEANUTILS-477" dev="oheger" type="fix">
+        Changed log level of warnings from FluentPropertyBeanIntrospector; exceptions are no longer logged with level WARN.
+      </action>
+      <action issue="BEANUTILS-482" dev="ggregory" type="update" due-to="Gary Gregory">
+        Update commons-collections from 3.2.1 to 3.2.2. (CVE-2015-4852)
+      </action>
+      <action issue="BEANUTILS-490" dev="ggregory" type="update" due-to="Gary Gregory">
+        Update Java requirement from Java 5 to 6.
+      </action>
+      <action issue="BEANUTILS-492" dev="stain" type="update" due-to="Stian Soiland-Reyes">
+        IndexedPropertyDescriptor not supported for List in Java 8
+      </action>
+      <action issue="BEANUTILS-493" dev="stain" type="fix" due-to="Bernhard Seebass">
+        Exception when setting indexed properties: "Default conversion to ArrayList failed"
+      </action>
+      <action issue="BEANUTILS-495" dev="stain" type="update" due-to="Stian Soiland-Reyes">
+        DateConverterTestBase fails on M/d/yy in Java 9
+      </action>
+      <action issue="BEANUTILS-496" dev="stain" type="update" due-to="Stian Soiland-Reyes">
+        testGetDescriptorInvalidBoolean fails on Java 9
+      </action>
+    </release>
+
+    <release version="1.9.2" date="2014-05-29"
+      description="Added a new BeanIntrospector for addressing a potential class loader vulnerability">
+      <action dev="oheger" type="add" issue="BEANUTILS-463">
+        Class loader vulnerability in DefaultResolver ()
+      </action>
+      <action dev="oheger" type="fix" issue="BEANUTILS-458" due-to="Manuel Dominguez Sarmiento ">
+        BaseLocaleConverter.checkConversionResult() fails with
+        ConversionException when result is null when it should not
+      </action>
+    </release>
+
+    <release version="1.9.1" date="2014-01-11" description="Bug fix for 1.9.0">
+      <action dev="oheger" type="fix" issue="BEANUTILS-456">
+        Write methods for PropertyDescriptors created during custom introspection are lost
+      </action>
+    </release>
+
+    <release version="1.9.0" date="2013-12-11" description="Upgrade to Java 5 including generics where possible">
+      <action dev="oheger" type="add" issue="BEANUTILS-455">
+        WrapDynaBeans always use the default PropertyUtilsBean instance
+      </action>
+      <action dev="oheger" type="update" issue="BEANUTILS-454">
+        BeanUtilsBean.copyProperties() throws conversion exception for null Date
+      </action>
+      <action dev="oheger" type="update" issue="BEANUTILS-452">
+        Add generics
+      </action>
+      <action dev="oheger" type="update" issue="BEANUTILS-449">
+        LocaleConverters do not take the target type into account
+      </action>
+      <action dev="oheger" type="update" issue="BEANUTILS-448">
+        LocaleConverters do not check their default value
+      </action>
+      <action dev="oheger" type="update" issue="BEANUTILS-447">
+        LazyDynaList.toArray() is not conform to the contract defined by the
+        Collection interface
+      </action>
+      <action dev="oheger" type="update" issue="BEANUTILS-446">
+        Some of the converters ignore the passed in target type
+      </action>
+      <action dev="oheger" type="update" issue="BEANUTILS-445">
+        Converters can return an invalid result object if a default value is set
+      </action>
+      <action dev="oheger" type="update" issue="BEANUTILS-441" due-to="Samir Kerroumi">
+        Replace UnmodifiableSet.decorate with Collections.unModifiableSet
+      </action>
+      <action dev="britter" type="update" issue="BEANUTILS-436">
+        Replace package.html with package-info.java
+      </action>
+      <action dev="britter" type="update" issue="BEANUTILS-438">
+        Add @Deprecated and @Override Annotations
+      </action>
+      <action dev="britter" type="update" issue="BEANUTILS-437">
+        Replace Date and Revision SVN keywords with Id
+      </action>
+      <action dev="britter" type="update" issue="BEANUTILS-431">
+        Remove @author tags and move missing authors to pom.xml
+      </action>
+      <action dev="britter" type="update" issue="BEANUTILS-432">
+        Switch to Java 1.5
+      </action>
+      <action dev="oheger" type="add" issue="BEANUTILS-428">
+        Provide a BeanIntrospector implementation which supports properties in a fluent API
+      </action>
+      <action dev="oheger" type="add" issue="BEANUTILS-425">
+        Support customization of introspection mechanism
+      </action>
+      <action dev="britter" type="fix" issue="BEANUTILS-411" due-to="Marcus Zander">
+        BeanUtilsBean.setProperty throws IllegalArgumentException if getter of nested property returns null
+      </action>
+      <action dev="britter" type="update" issue="BEANUTILS-429">
+        Delete trailing white spaces and white spaces on empty lines from all files
+      </action>
+      <action dev="britter" type="update" issue="BEANUTILS-427">
+        Configure Checkstyle to check for trailing white spaces and white spaces on empty lines
+      </action>
+      <action dev="britter" type="fix" issue="BEANUTILS-408">
+        MethodUtils.invokeMethod() throws NullPointerException when args==null
+      </action>
+      <action dev="britter" type="fix" issue="BEANUTILS-426">
+        ConstructorUtils.invokeConstructor(Class klass, Object arg) throws
+        NullPointerException when arg==null
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-380" due-to="Brendan Nolan">
+        BeanMap methods should initialize the root cause of exceptions that are thrown
+        when running on JDK 1.4+
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-379">
+        Remove copied Collection classes.
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-378" due-to="Christian Schneider">
+        BeanMap does not work in osgi (fixed by BEANUTILS-379)
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-381" due-to="Todd Nine">
+        MethodUtils getMatchingAccessibleMethod() does not correctly handle inheritance
+        and method overloading.
+      </action>
+    </release>
+
+    <release version="1.8.3" date="2010-03-28" description="Bug fix for 1.8.2">
+      <action dev="niallp" type="fix" issue="BEANUTILS-373" due-to="Andrew Sunde">
+        MethodUtils is not thread safe because WeakFastHashMap which uses WeakHashMap is not thread-safe
+        (duplicate of BEANUTILS-318 which was not fixed properly in BeanUtils 1.8.0).
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-371" due-to="David Tonhofer">
+        Add constructors which have useColumnLabel parameter to ResultSetDynaClass and RowSetDynaClass.
+      </action>
+    </release>
+
+    <release version="1.8.2" date="2009-11-13" description="Bug fix for 1.8.1">
+      <action dev="niallp" type="fix" issue="BEANUTILS-368" due-to="Peter Fassev">
+        NullPointerException in BeanUtilsBean .setProperty()
+      </action>
+    </release>
+
+    <release version="1.8.1" date="2009-10-20" description="Bug fixes for 1.8.0">
+      <action dev="niallp" type="fix" issue="BEANUTILS-300" due-to="Henri and Sebb">
+        NPE in LazyDynaList
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-327" due-to="Sascha Riemann">
+        JDBCDynaClass throws class not found exception under java6
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-336" due-to="Sebb">
+        MappedPropertyDescriptor#reLoadClass() possible NPE / odd code; also swallows Throwable
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-339" due-to="Alan Escreet">
+        BeanUtilsBean.setProperty throws IllegalArgumentException if value is null
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-345" due-to="Simone Riccucci">
+        BeanUtilsBean.setProperty does not handle some kind of nested properties
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-347" due-to="Eickvonder">
+        MappedPropertyDescriptor throws an exception after method reference has been garbage collected
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-349" due-to="Eivind Tagseth">
+        copyProperties throws NullPointerException if an IllegalArgumentException is thrown due to a null value parameter for a primitive
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-351" due-to="Lucian Chirita">
+        FloatLocaleConverter cannot parse 0
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-354" due-to="Anders Wallgren">
+        Type in BooleanConverter: "Cna't convert value"
+      </action>
+      <action dev="niallp" type="update" issue="BEANUTILS-333" due-to="Lukasz Lenart">
+        Avoid calling setAccessible() if not needed
+      </action>
+      <action dev="niallp" type="update" issue="BEANUTILS-344" due-to="Viral">
+        Method createDynaProperty of JDBCDynaClass should first look for column label instead of column name in ResultSetMetadata
+        object..
+      </action>
+      <action dev="niallp" type="update" issue="BEANUTILS-350" due-to="rodrigo hernandez">
+        change visibility of method "evaluateValue" belongs to the class BeanPropertyValueEqualsPredicate to "protected".
+      </action>
+    </release>
+
+    <release version="1.8.0" date="2008-09-01" description="Converter improvements, Plugable expression Resolver and bug fixes for 1.7.0">
+      <action dev="niallp" type="fix" issue="BEANUTILS-265" due-to="Tom Schindl and Romain Muller">
+        Allow access to non public class's public methods from a public sub-classes.
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-291" due-to="Clebert Suconic ">
+        Circular Reference on WeakHashMap.
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-294" due-to="Stephen Leung">
+        BeanUtilsBean.setProperty() does not support nested map.
+      </action>
+      <action dev="bayard" type="fix" issue="BEANUTILS-295" due-to="Stefan Wohlgemuth">
+        Unnecessary Garbage Objects in Class PropertyUtilsBean.
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-297" due-to="Alex Tkachev">
+        ConvertingWrapDynaBean hides cause exceptions.
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-298" due-to="Roman Mukhin">
+        MethodUtils.getAccessibleMethod(Method method) could not find right public method.
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-302" due-to="Martin Bartlett">
+        NPE in ArrayConverter when converting a non-quoted string with underscores to a string array.
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-306" due-to="Lucian Chirita">
+        LocaleConvertUtilsBean.convert throws NPE on null Locale when debug logging is enabled.
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-318" due-to="Sylvain Legault">
+        Fix WeakHashMap is not thread safe in MethodUtils using new FastWeakHashMap.
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-319" due-to="Erik Erskine">
+        PropertyUtils.getPropertyType fails for DynaBeans contained within a normal bean.
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-326" due-to="Vladimir Orlov">
+        Iterating by a Map' key/value pairs in BeanUtilsBean and PropertyUtilsBean.
+      </action>
+    </release>
+
+    <release version="1.8.0-BETA" date="2007-08-04" description="Trial Beta release">
+      <action dev="niallp" type="add" issue="BEANUTILS-259">
+        Add plugable property name expression Resolver.
+      </action>
+      <action dev="niallp" type="update" issue="BEANUTILS-258">
+        General Converter implementation improvements: New AbstractConverter which provides
+        a basic structure for Converter implementations and new NumberConverter implementation.
+      </action>
+      <action dev="niallp" type="add" issue="BEANUTILS-242">
+        Add new generic ArrayConverter implementation.
+      </action>
+      <action dev="niallp" type="add" issue="BEANUTILS-255">
+        Add new generic DateTimeConverter implementation.
+      </action>
+      <action dev="vgritsenko" type="update" issue="BEANUTILS-239" due-to="Rafael Afonso">
+        Better implementation of SqlDateConverter. Modified SqlDateConverter,
+        SqlTimeConverter and SqlTimestampConverter to accept java.util.Date
+        and Calendar object instances. Added tests.
+      </action>
+      <action dev="niallp" type="add" issue="BEANUTILS-286">
+        New Facade converter implementation - hide non-Converter public APIs.
+      </action>
+      <action dev="skitching" type="update" issue="BEANUTILS-229">
+        Add "t/f" to BooleanConverter.
+      </action>
+      <action dev="niallp" type="update" issue="BEANUTILS-43" due-to="Firepica and Thomas Jacob">
+        Support Mapped property inside a mapped property.
+      </action>
+      <action dev="niallp" type="update" issue="BEANUTILS-113" due-to="Firepica and Ludwig Wensauer">
+        Support Indexed property inside a mapped property.
+      </action>
+      <action dev="niallp" type="update" issue="BEANUTILS-247" due-to="Christian Poitras, Thomas Jacob and scott sadlo">
+        Support Arrays with multiple dimension.
+      </action>
+      <action dev="bayard" type="update" issue="BEANUTILS-207" due-to="Erik Meade">
+        Include bean class in the message of PropertyUtilsBean exceptions.
+      </action>
+      <action dev="bayard" type="update" issue="BEANUTILS-224" due-to="Ralf Hauser">
+        Provide better error message for "argument type mismatch".
+      </action>
+      <action dev="bayard" type="update" issue="BEANUTILS-30" due-to="Barry Kaplan">
+        Improved messages for unknown properties.
+      </action>
+      <action dev="bayard" type="update" issue="BEANUTILS-193" due-to="Nestor Boscan">
+        MethodUtils.invoke for static methods.
+      </action>
+      <action dev="niallp" type="update" issue="BEANUTILS-266" due-to="Brian Ewins and Commons HttpClient">
+        Log or throw exception in PropertyUtilsBean.
+        Added mechanism to initialize the "cause" on an Exception using reflection for JDK 1.4+
+        (copied from Commons HttpClient).
+      </action>
+      <action dev="niallp" type="add" due-to="Vic Cekvenich">
+        Add lazyDynaList.
+      </action>
+      <action dev="niallp" type="add" issue="BEANUTILS-185" due-to="Gabriel Belingueres">
+        Provide a Map decorator for a DynaBean (enables DynaBean to be used with other teechnologies such as JSTL).
+      </action>
+      <action dev="niallp" type="update" issue="BEANUTILS-233" due-to="Russell">
+        Implement equals() and hashCode() methods for DynaProperty.
+      </action>
+
+
+      <action dev="niallp" type="fix" issue="BEANUTILS-243" due-to="Henri Yandell">
+        BeanUtils's tests fail to compile under JDK 1.6
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-49" due-to="Jesper Richter-Reichhelm">
+        Lock in BeanUtilsBean.getInstance(
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-157" due-to="Thorbjorn Ravn Andersen">
+        Beanutils's describe() method cannot determine reader methods for anonymous class.
+      </action>
+      <action dev="rdonkin" type="fix" issue="BEANUTILS-158">
+        Added warning about describe behavior to the javadocs.
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-249" due-to="Brad">
+        BeanUtilsBean's setProperty() does not convert objects using custom converters properly.
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-17" due-to="Matthew Sgarlata and Corey Scott">
+        Fix javadoc - IllegalArgumentException in BeanUtils.copyProperties
+        when property types don't match.
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-68" due-to="Dmitry Platonoff">
+        Writing to a mapped property requires a setter for a map, but never uses it.
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-110" due-to="Etienne Bernard">
+        BeanUtilsBean.getArrayProperty() does not use ConvertUtils.
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-6" due-to="Sam Ruby">
+        MappedPropertyDescriptor - replace copied code.
+      </action>
+      <action dev="skitching" type="fix">
+        MappedPropertyDescriptor: Add comments re: * use of static variable safe in shared
+        classloader * memory leak possible on webapp undeploy.
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-69" due-to="Chris Audley">
+        MappedPropertyDescriptor doesn't recognize boolean property accessor.
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-163">
+        Add test for MappedPropertyDescriptor with different types on get/set methods.
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-140" due-to="Marco La Porta">
+        LocaleBeanUtils setProperty does not work on nested property.
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-87" due-to="YOKOTA Takehiko">
+        Package scope implementation of a public interface for mapped property fails
+        (fixed by changes to MappedPropertyDescriptor associated with BEANUTILS-6)
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-33" due-to="Eoin Curran">
+        PropertyUtils incosistency - can't use "dot" in mapped properties for setProperty
+        or getPropertyDescriptor (fixed by the changes for BEANUTILS-259
+        Plugable Property Name Expression Resolver).
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-273" due-to="Marcelo Liberato">
+        Public methods overridden in anonymous or private subclasses are not recognized by PropertyUtils.
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-88" due-to="Chuck Daniels">
+        PropertyUtilsBean's isReadable() / isWriteable() always return false for mapped properties.
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-61" due-to="Brian Ewins">
+        PropertyUtilsBean isReadable() and isWriteable() methods do not work correctly for WrapDynaBean.
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-18" due-to="Maarten Coene">
+        PropertyUtils.isReadable() and PropertyUtils.getProperty() not consistent.
+      </action>
+      <action dev="bayard" type="fix" issue="BEANUTILS-92" due-to="Will Pugh">
+        PropertyUtilsBean.copyProperties does not catch NoSuchMethodException
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-256" due-to="Torsten Feig">
+        PropertyUtilsBean.getIndexedProperty()'s javadoc should indicate
+        IndexOutOufBoundsException can be thrown rather than just
+        ArrayIndexOutOufBoundsException.
+      </action>
+      <action dev="skitching" type="fix" issue="BEANUTILS-162">
+        Create new methods getPropertyOfMapBean and setPropertyOfMapBean that the existing
+        setNestedProperty and getNestedProperty methods now call when they discover the bean
+        they are accessing implements Map. This makes it much easier for users to subclass
+        and customise this behavior of PropertyUtilsBean, eg in order to restore pre-1.5 behavior.
+        This patch also causes an exception to be thrown when the propertyName passed to
+        getPropertyOfMapBean or setPropertyOfMapBean has MAPPED_DELIM or INDEXED_DELIM chars in
+        it. This never worked as expected before (the whole string was treated literally as the
+        propertyName), so throwing an exception here should not break any existing code. It should
+        be of help to future developers who make this mistake though...
+      </action>
+      <action dev="skitching" type="fix">
+        Ignore simple properties on java.util.Map objects -
+        Map methods are always used on a Map object. Reverts BEANUTILS-144.
+        See BEANUTILS-162 for discussion.
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-262">
+        Correct getPropertyDescriptor() and setNestedProperty() methods to throw
+        a NestedNullException rather than just IllegalArgumentException (consistent
+        with the getNestedProperty() method).
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-97">
+        Problems on indexed property with JDK 1.4.
+      </action>
+      <action dev="skitching" type="update">
+        BooleanArrayConverter: Use new AbstractArrayConverter constructors and
+        Convert strings to booleans by invoking a BooleanConverter rather than
+        hard-wiring the conversion.
+      </action>
+      <action dev="skitching" type="update" due-to="Eric Rizzo">
+        BooleanConverter: Add facility for user to override the default set
+        of true and false string definitions and provide ability to pass special
+        NO_DEFAULT object as the "defaultValue" constructor parameter.
+      </action>
+      <action dev="skitching" type="update">
+        AbstractArrayConverter: provide ability to pass special NO_DEFAULT object as the
+        "defaultValue" constructor parameter.
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-78" due-to="Stefan Lotscher">
+        DecimalLocaleConverter and subClasses never throw a ConversionException.
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-44" due-to="Paul Jenkins">
+        FloatLocaleConverter cannot parse negative values.
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-263" due-to="Alex Albu">
+        Improve ClassConverter robustness.
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-271" due-to="Nico Hoogervorst">
+        DateLocaleConverter does not always throw an Exception for invalid dates.
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-288">
+        Don't try parsing values that are already Dates/Numbers in Date/Number locale Converters.
+      </action>
+      <action dev="skitching" type="fix">
+        WrapDynaClass: Added comment re potential memory leak, and safety when using
+        shared classloader
+      </action>
+      <action dev="niallp" type="fix">
+        Make WrapDynaBean Serializable.
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-36" due-to="Jack">
+        WrapDynaBeanTestCase failing with jikes/kaffe because of static List in TestBean.
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-23" due-to="Aslak Hellesoy">
+        Misleading error message in ConvertingWrapDynaBean.
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-24" due-to="Roi Ares">
+        LazyDynaBean: don't try and instantiate properties of type Object.class.
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-133" due-to="Masoud Omidvar">
+        LazyDynabean Javadoc corrections.
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-250">
+        LazyDynaClass can create a DynaProperty with a "null" type.
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-289">
+        JDBCDynaClass "lowerCase" option causes problems in RowSetDynaClass and ResultSetIterator.
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-142" due-to="Li Zhang">
+        RowSetDynaClass fails to copy ResultSet to DynaBean with Oracle 10g JDBC driver.
+      </action>
+      <action dev="bayard" type="fix" issue="BEANUTILS-241" due-to="Chris Hyzer">
+        Fix BeanComparator throws wrong exception and hides cause.
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-112" due-to="Simon Kitching">
+        Deprecate the public static defaultTransformers HashMap and make it unmodifiable.
+      </action>
+
+      <action dev="niallp" type="update" issue="BEANUTILS-290">
+        Merge Bean-Collections back into core BeanUtils and remove Bean-Collections sub-project.
+      </action>
+      <action dev="bayard" type="fix" issue="BEANUTILS-287">
+        Fixi the build to include all the tests and change the build.properties.sample so it's easier
+        to use for the default maven user (ie: it looks by default in the .maven repository)
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-217" due-to="Carlos Sanchez">
+        Improvements to maven build.
+      </action>
+      <action dev="niallp" type="fix" issue="BEANUTILS-54" due-to="Pascal Grange">
+        Add Implementation-Vendor-Id entry to jar's manifest.
+      </action>
+      <action dev="bayard" type="fix" issue="BEANUTILS-121" due-to="Chris Tilden">
+        Resolve compiler warnings: Unused imports, un-read local variables,
+        field hiding, empty block, improperly used statics, uncessary semi
+        colons, unnecessary casts.
+      </action>
+      <action dev="skitching" type="fix">
+        Replace use of static Log objects with instance or local variables. It isn't safe
+        to use static Log objects in code that might be deployed via a shared classloader
+        as they will bind to the Log object from the context classloader in use when the
+        first use happens.
+      </action>
+      <action dev="scolebourne" type="fix" due-to="Dimiter Dimitrov" issue="COLLECTIONS-22">
+        BeanMap: Fix internal variable to not include non-existant write methods.
+        - ported from Commons Collections.
+      </action>
+      <action dev="rdonkin" type="update" due-to="Steve Cohen">
+        Change MethodUtils to make getMatchingAccessibleMethod() method selection more
+        rational.
+      </action>
+    </release>
+
+    <release version="1.7.0" date="2004-08-02">
+      <action type="update">
+        See href="https://commons.apache.org/beanutils/commons-beanutils-1.7.0/RELEASE-NOTES.txt
+      </action>
+    </release>
+
+    <release version="1.6.1" date="2003-02-18">
+      <action type="update">
+        See https://commons.apache.org/beanutils/commons-beanutils-1.6.1/RELEASE-NOTES.txt
+      </action>
+    </release>
+
+    <release version="1.6" date="2003-01-21">
+      <action type="update">
+        See https://commons.apache.org/beanutils/commons-beanutils-1.6/RELEASE-NOTES.txt
+      </action>
+    </release>
+
+    <release version="1.5" date="2002-10-23">
+      <action type="update">
+        See https://commons.apache.org/beanutils/commons-beanutils-1.5/RELEASE-NOTES.txt
+      </action>
+    </release>
+
+    <release version="1.4.1" date="2002-08-28">
+      <action type="fix">
+        See https://commons.apache.org/beanutils/commons-beanutils-1.4.1/RELEASE-NOTES.txt
+      </action>
+    </release>
+
+    <release version="1.4" date="2002-08-13">
+      <action type="update">
+        See https://commons.apache.org/beanutils/commons-beanutils-1.4/RELEASE-NOTES.txt
+      </action>
+    </release>
+
+    <release version="1.3" date="2002-04-29">
+      <action type="update">
+        See https://commons.apache.org/beanutils/commons-beanutils-1.3/RELEASE-NOTES.txt
+      </action>
+    </release>
+
+    <release version="1.2" date="2001-12-24">
+      <action type="update">
+        See https://commons.apache.org/beanutils/commons-beanutils-1.2/RELEASE-NOTES.txt
+      </action>
+    </release>
+
+    <release version="1.1" date="2001-09-22">
+      <action type="update">Version 1.1</action>
+    </release>
+
+    <release version="1.0" date="2001-07-14" description="Initial Release">
+      <action type="add">Initial Release</action>
+    </release>
+
+  </body>
+</document>