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-configuration.git


The following commit(s) were added to refs/heads/master by this push:
     new 94a6b61d Prepare release candidate 2.9.0 RC1
94a6b61d is described below

commit 94a6b61d13b29b004a35221607cd11ba011976f2
Author: Gary Gregory <garydgreg...@gmail.com>
AuthorDate: Sat Mar 25 20:02:49 2023 -0400

    Prepare release candidate 2.9.0 RC1
---
 RELEASE-NOTES.txt | 1069 ++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 1065 insertions(+), 4 deletions(-)

diff --git a/RELEASE-NOTES.txt b/RELEASE-NOTES.txt
index 8974bfc0..a97d5061 100644
--- a/RELEASE-NOTES.txt
+++ b/RELEASE-NOTES.txt
@@ -1,6 +1,6 @@
-                        Apache Commons Configuration
-                        Version 2.9.0-SNAPSHOT
-                        Release Notes
+Apache Commons Configuration
+Version 2.9.0
+Release Notes
 
 
 INTRODUCTION:
@@ -13,7 +13,7 @@ interface which enables an application to read configuration 
data from a variety
 of sources.
 
 Tools to assist in the reading of configuration/preferences files in
-various formats
+various formats.
 
 Minor release with new features and updated dependencies.
 
@@ -63,3 +63,1064 @@ https://commons.apache.org/proper/commons-configuration/
 
 Download it from 
https://commons.apache.org/proper/commons-configuration//download_text.cgi
 
+=============================================================================
+
+Apache Commons Configuration
+Version 2.8.0
+Release Notes
+
+
+INTRODUCTION:
+=============
+
+This document contains the release notes for this version of the Commons
+Configuration component. It describes the changes since the previous version.
+The Commons Configuration software library provides a generic configuration
+interface which enables an application to read configuration data from a 
variety
+of sources.
+
+Tools to assist in the reading of configuration/preferences files in
+various formats
+
+Minor release with new features and updated dependencies.
+
+Changes in this version include:
+
+New features:
+o                     Implement Iterable in ImmutableNode #74. Thanks to 
SethiPandi.
+o                     Add PropertiesConfigurationLayout.getBlankLinesBefore() 
and deprecate getBlancLinesBefore(). Thanks to Gary Gregory.
+o                     Add PropertiesConfigurationLayout.setBlankLinesBefore() 
and deprecate setBlancLinesBefore(). Thanks to Gary Gregory.
+o                     Add 
PropertiesConfigurationLayout.PropertyLayoutData.getBlankLines() and deprecate 
getBlancLines(). Thanks to Gary Gregory.
+o                     Add 
PropertiesConfigurationLayout.PropertyLayoutData.setBlankLines() and deprecate 
setBlancLines(). Thanks to Gary Gregory.
+o CONFIGURATION-789:  Add ImmutableConfiguration.getEnum() methods. Thanks to 
Gary Gregory.
+o CONFIGURATION-789:  Add ImmutableConfiguration.getDuration() methods. Thanks 
to Gary Gregory.
+
+Fixed Bugs:
+o CONFIGURATION-753:  Make interpolation of collections and arrays in 
ConfigurationInterpolator consistent with
+                      behavior of DefaultConversionHandler. Add 
ConfigurationInterpolator.setStringConverter to
+                      allow customized string conversion behavior.
+o CONFIGURATION-795:  Computation of blank lines after header comment #82. 
Thanks to dpeger.
+o CONFIGURATION-801:  Remove redundant initializer #110. Thanks to Arturo 
Bernal.
+o CONFIGURATION-802:  Use final #111. Thanks to Arturo Bernal.
+o CONFIGURATION-803:  Java 8 lambda improvements and more #112. Thanks to 
Arturo Bernal.
+o CONFIGURATION-804:  Redundant local variable #113. Thanks to Arturo Bernal.
+o CONFIGURATION-805:  Use try with resource #114. Thanks to Arturo Bernal.
+o CONFIGURATION-805:  [Javadoc] Specify that typed getList returns null for 
missing key #100. Thanks to Roman Zaynetdinov.
+o                     Mention EnvironmentConfiguration in the list of 
configuration sources #45. Thanks to Oliver B. Fischer.
+o CONFIGURATION-808:  DefaultListDelimiterHandler.escapeList working only for 
List>String< #137. Thanks to cigaly.
+o                     Use final #141. Thanks to Arturo Bernal.
+o                     Replace test asserts by simpler but equivalent calls. 
#139 Thanks to Arturo Bernal.
+o CONFIGURATION-764:  Single Variable Interpolation #182. Thanks to Ning 
Zhang, Matt Juntunen, Bruno P. Kinoshita, Gary Gregory.
+o                     Implement proper concurrency in ConstantLookup. Thanks 
to Gary Gregory.
+o CONFIGURATION-813:  Support new namespace jakarta.mail.* used by javamail 
2.0+ (first release October 2020) #186. Thanks to Dependabot.
+
+Changes:
+o                     Unclosed file handle when reading config from JAR file 
URL.
+                      Add and use FileBasedBuilderProperties.setURL(URL, 
URLConnectionOptions). Thanks to Robin Jansohn, Gary Gregory, Rob Spoor.
+o                     Make default interpolation prefix lookups configurable 
via system property. Remove dns, url, and script 
+                      lookups from defaults. If these lookups are required for 
use in AbstractConfiguration subclasses, they must 
+                      be enabled via system property. See 
ConfigurationInterpolator.getDefaultPrefixLookups() for details.
+o                     Bump actions/cache from 2 to 3.0.4 #99, #151, #169. 
Thanks to Dependabot, Gary Gregory.
+o                     Bump actions/checkout from 1 to 3 #47, #62, #70, #85, 
#150, #163. Thanks to Dependabot.
+o                     Bump actions/setup-java from 1.4.0 to 3 #63, #65, #73, 
#174. Thanks to Dependabot, Gary Gregory.
+o                     Bump codeql-action from v1 to v2. Thanks to Dependabot, 
Matt Juntunen.
+o                     Bump Spring dependency versions:
+                      org.springframework:spring-beans 4.3.26.RELEASE -> 5.3.21
+                      org.springframework:spring-context 4.3.26.RELEASE -> 
5.3.21
+                      org.springframework:spring-core 4.3.26.RELEASE -> 5.3.21
+                      org.springframework:spring-test 4.3.26.RELEASE -> 5.3.21
+                      #165, #172 Thanks to Dependabot, Matt Juntunen, kinow, 
Gary Gregory.
+o                     Bump commons-parent from 52 to 53. Thanks to Dependabot, 
Matt Juntunen.
+o CONFIGURATION-787:  Bump Apache Commons Lang from 3.9 to 3.12.0. Thanks to 
Gary Gregory.
+o CONFIGURATION-790:  Bump com.fasterxml.jackson.core:jackson-databind from 
2.10.3 to 2.13.3, #60. Thanks to Gary Gregory, Dependabot.
+o                     Bump Slf4j test dependencies:
+                      org.slf4j:slf4j-api 1.7.26 -> 1.7.33,
+                      org.slf4j:slf4j-ext 1.7.26 -> 1.7.33,
+                      org.slf4j:slf4j-log4j12 1.7.26 -> 1.7.33,
+                      org.slf4j:slf4j-nop 1.7.26 -> 1.7.33. Thanks to Gary 
Gregory.
+o                     Bump commons-parent from 50 to 52. Thanks to Dependabot.
+o                     Bump mailapi from 1.6.4 to 1.6.7 #48. Thanks to 
Dependabot, Gary Gregory.
+o                     Bump spotbugs-maven-plugin from 3.1.12.2 to 4.7.0.0, 
#55, #75, #79, #93, #116, #183. Thanks to Dependabot, Gary Gregory.
+o                     Bump hsqldb from 2.5.0 to 2.5.2 #54, #128. Thanks to 
Dependabot.
+o                     Bump commons-text from 1.8 to 1.9. Thanks to Gary 
Gregory.
+o                     Bump servlet-api from 2.4 to 2.5 #58. Thanks to Gary 
Gregory.
+o                     Bump maven-checkstyle-plugin from 3.1.0 to 3.1.2, #57, 
#97. Thanks to Gary Gregory.
+o                     Bump commons-pool2 from 2.8.0 to 2.10.0, #61, #124. 
Thanks to Dependabot, Gary Gregory.
+o                     Bump optional commons-codec from 1.14 to 1.15. Thanks to 
Gary Gregory.
+o                     Bump checkstyle from 8.26 to 9.3, #66, #71, #90, #101, 
#118, #121, #132, #155. Thanks to Dependabot, Gary Gregory.
+o                     Bump commons.jacoco.version 0.8.5 to 0.8.8 (Fixes Java 
15 builds). Thanks to Gary Gregory.
+o                     Bump tests from commons-pool2 2.10.0 to 2.11.1. Thanks 
to Gary Gregory.
+o                     Bump tests from commons-dbcp2 2.7.0 to 2.9.0. Thanks to 
Gary Gregory.
+o                     Bump snakeyaml from 1.26 to 1.30 #68, #126, #137. Thanks 
to Dependabot, Gary Gregory.
+o                     Bump commons.japicmp.version from 0.14.1 to 0.15.7. 
Thanks to Gary Gregory.
+o                     Bump junit from 4.13 to 4.13.2 #78. Thanks to 
Dependabot, Gary Gregory.
+o                     Bump Apache Commons VFS 2.6.0 -> 2.9.0. Thanks to Gary 
Gregory.
+o                     Bump jackson-databind from 2.11.3 to 2.13.2.2 ,#88, #94, 
#127, #159, #168, #173. Thanks to Dependabot.
+o                     Bump commons.animal-sniffer.version 1.19 -> 1.20. Thanks 
to Gary Gregory.
+o                     Bump commons.javadoc.version from 3.1.1 to 3.4.0. Thanks 
to Gary Gregory.
+o                     Bump org.dbunit:dbunit from 2.7.0 to 2.7.3, #167. Thanks 
to Gary Gregory, Dependabot.
+o                     Bump tests to hamcrest v2.2 #143. Thanks to John Patrick.
+o                     Bump slf4j.version from 1.7.33 to 1.7.36 #166. Thanks to 
Dependabot.
+o                     Bump mailapi from 1.6.6 to 2.0.1 #186. Thanks to 
Dependabot.
+o                     Use GitHub Actions setup-java Maven cache property #190. 
Thanks to sullis.
+
+
+Historical list of changes: 
https://commons.apache.org/proper/commons-configuration/changes-report.html
+
+For complete information on Apache Commons Configuration, including 
instructions on how to submit bug reports,
+patches, or suggestions for improvement, see the Apache Apache Commons 
Configuration website:
+
+https://commons.apache.org/proper/commons-configuration/
+
+Download it from 
https://commons.apache.org/proper/commons-configuration//download_text.cgi
+
+=============================================================================
+
+Apache Commons Configuration
+Version 2.7
+Release Notes
+
+
+INTRODUCTION:
+=============
+
+This document contains the release notes for this version of the Commons
+Configuration component. It describes the changes since the previous version.
+The Commons Configuration software library provides a generic configuration
+interface which enables an application to read configuration data from a 
variety
+of sources.
+
+Tools to assist in the reading of configuration/preferences files in
+various formats
+
+Minor release with new features and updated dependencies.
+
+Changes in this version include:
+
+New features:
+o CONFIGURATION-765:  Refactor XMLConfiguration.write(Writer) to add 
XMLConfiguration.write(Writer, Transformer). Thanks to Gary Gregory.
+
+Fixed Bugs:
+o CONFIGURATION-761:  Single argument DataConfiguration APIs always create 
empty arrays. Thanks to Gary Gregory.
+o CONFIGURATION-767:  NullPointerException in 
XMLConfiguration#createTransformer() when no FileLocator is set. Thanks to Gary 
Gregory.
+o CONFIGURATION-768:  XMLConfiguration#write does not indent XML elements. 
Thanks to Gary Gregory.
+o CONFIGURATION-771:  Update com.fasterxml.jackson.core:jackson-databind 
2.10.0 -> 2.10.1. Thanks to Gary Gregory.
+o CONFIGURATION-773:  User's Guide > Properties files > Saving - small 
documentation bugs #41. Thanks to Dan Dragut.
+
+Changes:
+o CONFIGURATION-762:  Use variable arguments. Thanks to Gary Gregory.
+o                     Update ]com.puppycrawl.tools:checkstyle from 8.24 to  
8.25. Thanks to Gary Gregory.
+o CONFIGURATION-763:  Update com.fasterxml.jackson.core:jackson-databind from 
2.9.9 to 2.10.0. Thanks to Gary Gregory.
+o                     [test] org.easymock:easymock 4.0.2 -> 4.1. Thanks to 
Gary Gregory.
+o CONFIGURATION-775:  Update Apache Commons VFS from 2.4.1 to 2.5.0. Thanks to 
Gary Gregory.
+o CONFIGURATION-777:  Update Apache Commons VFS from 2.5.0 to 2.6.0. Thanks to 
Gary Gregory.
+o CONFIGURATION-778:  Update optional Apache Commons Codec from 1.13 to 1.14. 
Thanks to Gary Gregory.
+o                     Update tests from JUnit 4.12 to 4.13. Thanks to Gary 
Gregory.
+o CONFIGURATION-779:  Update optional jackson-databind from 2.10.1 to 2.10.2. 
Thanks to Gary Gregory.
+o CONFIGURATION-783:  Update com.fasterxml.jackson.core:jackson-databind from 
2.10.2 to 2.10.3. Thanks to Gary Gregory.
+o CONFIGURATION-784:  Update org.yaml:snakeyaml from 1.25 to 1.26 and tweak 
parser configuration. Thanks to Gary Gregory.
+o CONFIGURATION-785:  Update org.springframework:spring-* from 4.3.25.RELEASE 
to 4.3.26.RELEASE. Thanks to Gary Gregory.
+o                     Update org.apache.commons:commons-parent from 48 to 50 
Thanks to Rob Tompkins.
+
+
+Historical list of changes: 
https://commons.apache.org/proper/commons-configuration/changes-report.html
+
+For complete information on Apache Commons Configuration, including 
instructions on how to submit bug reports,
+patches, or suggestions for improvement, see the Apache Apache Commons 
Configuration website:
+
+https://commons.apache.org/proper/commons-configuration/
+
+Download it from 
https://commons.apache.org/proper/commons-configuration//download_text.cgi
+
+=============================================================================
+
+Apache Commons Configuration
+Version 2.6
+Release Notes
+                        2019-09-13
+
+
+INTRODUCTION:
+=============
+
+This document contains the release notes for this version of the Commons
+Configuration component. It describes the changes since the previous version.
+The Commons Configuration software library provides a generic configuration
+interface which enables an application to read configuration data from a 
variety
+of sources.
+
+Tools to assist in the reading of configuration/preferences files in
+various formats
+
+Minor release with new features and updated dependencies.
+
+Changes in this version include:
+
+New features:
+o                     Document "includeOptional" on the site. Thanks to Gary 
Gregory.
+o CONFIGURATION-756:  Allow for custom behavior to handle errors loading 
included properties files. Thanks to Gary Gregory.
+
+Fixed Bugs:
+o CONFIGURATION-750:  XMLPropertyListConfiguration cannot set arrays in the 
correct plist form. Thanks to Jason Pickens, Gary Gregory, Emmanuel Bourg.
+o                     Fix Javadoc for 
org.apache.commons.configuration2.PropertiesConfiguration.getIncludeOptional(). 
Thanks to Gary Gregory.
+o CONFIGURATION-760:  Properties file using cyclical includes cause a 
StackOverflowError instead of detecting the misconfiguration. Thanks to Gary 
Gregory.
+
+Changes:
+o CONFIGURATION-751:  Update Apache Commons Text from 1.6 to 1.7. Thanks to 
Gary Gregory.
+o CONFIGURATION-752:  Update Apache Commons VFS from 2.3 to 2.4.1. Thanks to 
Gary Gregory.
+o CONFIGURATION-754:  Update Apache Commons Text from 1.7 to 1.8. Thanks to 
Gary Gregory.
+o CONFIGURATION-755:  [CVE-2014-0114] Update Apache Commons BeanUtils from 
1.9.3 to 1.9.4. Thanks to Gary Gregory.
+o                     Fix syntax in user guide documentation #33. Thanks to 
Kevin Wang.
+o CONFIGURATION-757:  Update org.yaml:snakeyaml from 1.24 to 1.25. Thanks to 
Gary Gregory.
+o                     Update tests from org.apache.commons:commons-dbcp2 2.6.0 
to 2.7.0. Thanks to Gary Gregory.
+o                     Update tests from org.apache.commons:commons-pool2 2.6.2 
to 2.7.0. Thanks to Gary Gregory.
+o CONFIGURATION-758:  Update commons-codec:commons-codec from 1.12 to 1.13. 
Thanks to Gary Gregory.
+o                     Update tests from org.hsqldb:hsqldb 2.4.1 to 2.5.0. 
Thanks to Gary Gregory.
+o                     Update tests from com.sun.mail:mailapi 1.6.3 to 1.6.4. 
Thanks to Gary Gregory.
+o CONFIGURATION-759:  Update Spring from 4.3.24.RELEASE to 4.3.25.RELEASE. 
Thanks to Gary Gregory.
+o                     Update maven-checkstyle-plugin from 3.0.0 to 3.1.0. 
Thanks to Gary Gregory.
+o                     Use current version of Checkstyle: 6.18 to 8.24. Thanks 
to Gary Gregory.
+
+
+Historical list of changes: 
https://commons.apache.org/proper/commons-configuration/changes-report.html
+
+For complete information on Apache Commons Configuration, including 
instructions on how to submit bug reports,
+patches, or suggestions for improvement, see the Apache Apache Commons 
Configuration website:
+
+https://commons.apache.org/proper/commons-configuration/
+
+Download it from 
https://commons.apache.org/proper/commons-configuration/download_configuration.cgi
+
+=============================================================================
+
+Apache Commons Configuration
+Version 2.5
+Release Notes
+
+
+INTRODUCTION:
+=============
+
+This document contains the release notes for this version of the Commons
+Configuration component. It describes the changes since the previous version.
+The Commons Configuration software library provides a generic configuration
+interface which enables an application to read configuration data from a 
variety
+of sources.
+
+Minor release with new features and updated dependencies.
+
+Changes in this version include:
+
+
+Fixed Bugs:
+o CONFIGURATION-731:  Allow user to specify the comments and separator chars. 
Thanks to Shuai Zhang, Gary Gregory.
+
+Changes:
+o CONFIGURATION-738:  Update Jackson from 2.9.7 to 2.9.8. Thanks to Gary 
Gregory.
+o CONFIGURATION-739:  Update Apache Commons Codec from 1.11 to 1.12. Thanks to 
Gary Gregory.
+o CONFIGURATION-740:  Update Apache Commons VFS from 2.2 to 2.3. Thanks to 
Gary Gregory.
+o CONFIGURATION-741:  Update Spring from 4.3.19 to 4.3.22. Thanks to Gary 
Gregory.
+o CONFIGURATION-743:  Update optional library snakeyaml from 1.23 to 1.24. 
Thanks to Gary Gregory.
+o CONFIGURATION-747:  Update Apache Commons Lang from 3.8.1 to 3.9. Thanks to 
Gary Gregory.
+o CONFIGURATION-746:  Update Jackson from 2.9.8 to 2.9.9. Thanks to Gary 
Gregory.
+o CONFIGURATION-747:  Update Spring from 4.3.22 to 4.3.24. Thanks to Gary 
Gregory.
+o CONFIGURATION-745:  Add the special key "includeoptional" for properties 
files. Thanks to Gary Gregory.
+
+
+Historical list of changes: 
https://commons.apache.org/proper/commons-configuration/changes-report.html
+
+For complete information on Apache Commons Configuration, including 
instructions on how to submit bug reports,
+patches, or suggestions for improvement, see the Apache Apache Commons 
Configuration website:
+
+https://commons.apache.org/proper/commons-configuration/
+
+=============================================================================
+
+Apache Commons Configuration
+Version 2.4
+Release Notes
+
+
+INTRODUCTION:
+=============
+
+This document contains the release notes for this version of the Commons
+Configuration component. It describes the changes since the previous version.
+The Commons Configuration software library provides a generic configuration
+interface which enables an application to read configuration data from a 
variety
+of sources.
+
+Minor release with new features and updated dependencies.
+
+Changes in this version include:
+
+NEW FEATURES
+============
+
+o CONFIGURATION-712:  FileHandlerReloadingDetector now has a new refresh() 
method to
+                      initialize the reloading state from the underlying file. 
This new
+                      method is called by DefaultReloadingDetectorFactory when 
a new detector
+                      instance is created. This makes sure that a changed 
configuration file
+                      is directly detected on the first invocation of the
+                      isReloadingRequired() method. Thanks to Rolland Hobbie.
+o CONFIGURATION-713:  Configuration properties can now be converted to regular 
expressions. Thanks to Lars W.
+o CONFIGURATION-715:  With JupIOFactory a new IOFactory implementation is now 
available that
+                      implements handling of whitespace in a way closer to 
java.util.Properties.
+                      This class can be used when stricter compatibility with 
Java standard
+                      methods for reading and writing properties files is 
needed. Thanks to Patrick Schmidt.
+o CONFIGURATION-716:  JupIOFactory (introduced for CONFIGURATION-715) also 
implements
+                      handling of escape sequences in a way closer to 
java.util.Properties. Thanks to Patrick Schmidt.
+o CONFIGURATION-724:  Add support for Commons Text 1.4 localhost string lookup 
as a default lookup.
+o CONFIGURATION-726:  Add support for Commons Text 1.5 new string lookups as 
default lookups.
+
+FIXED BUGS
+==========
+
+o CONFIGURATION-710:  Fixed numerous typos in user guides. Thanks to thc202.
+o CONFIGURATION-711:  Update Apache Commons Lang from 3.7 to 3.8.1.
+o CONFIGURATION-727:  org.apache.commons.configuration2.DatabaseConfiguration 
never closes result sets and statements.
+
+CHANGES
+=======
+
+o CONFIGURATION-720:  Replace use of deprecated Commons Lang string 
substitution code for Commons Text.
+o CONFIGURATION-694:  Update Java requirement from version 7 to 8.
+o CONFIGURATION-721:  Update Jackson from 2.9.6 to 2.9.7.
+o CONFIGURATION-722:  Update optional dependency snakeyaml from 1.21 to 1.23.
+o CONFIGURATION-723:  Update optional Spring dependencies from 4.3.18.RELEASE 
to 4.3.19.RELEASE.
+o CONFIGURATION-725:  Update Apache Commons Text from 1.4 to 1.5.
+o CONFIGURATION-728:  Update Apache Commons Text from 1.5 to 1.6.
+
+
+Historical list of changes: 
https://commons.apache.org/proper/commons-configuration/changes-report.html
+
+For complete information on Apache Commons Configuration, including 
instructions on how to submit bug reports,
+patches, or suggestions for improvement, see the Apache Apache Commons 
Configuration website:
+
+https://commons.apache.org/proper/commons-configuration/
+
+
+=============================================================================
+
+Apache Commons Configuration
+Version 2.3
+Release Notes
+
+
+INTRODUCTION:
+=============
+
+This document contains the release notes for this version of the Commons
+Configuration component. It describes the changes since the previous version.
+The Commons Configuration software library provides a generic configuration
+interface which enables an application to read configuration data from a
+variety of sources.
+
+Version 2.3 is another maintenance release for the Configuration 2.x series. It
+contains bug fixes and also a few new features like support for File and Path
+as data types. The release is fully source and binary compatible with version
+2.2.
+
+Commons Configuration 2.3 requires Java 1.7 or higher.
+
+New features
+============
+o CONFIGURATION-692
+  ConversionExceptions thrown when accessing the properties of a configuration
+  now contain the original cause of the exception.
+
+o CONFIGURATION-693
+  Configuration properties can now be converted to the data types File and
+  Path.
+
+o CONFIGURATION-698
+  Add org.apache.commons.configuration2.MapConfiguration.toString().
+
+o CONFIGURATION-698
+  Add toString() methods here and there to help debugging.
+
+o CONFIGURATION-701
+  CompositeConfiguration now supports an addConfigurationFirst() method to add
+  child configurations with a higher priority.
+
+Fixed Bugs
+==========
+o CONFIGURATION-652
+  Root node attributes are now updated correctly when loading XML configuration
+  files.
+
+o CONFIGURATION-686
+  JSONConfiguration can now handle list structures with complex objects as
+  elements.
+
+o CONFIGURATION-687
+  Fixed a memory leak in CombinedConfigurationBuilder. Builder for the child
+  sources were created each time a new result configuration was requested; thus
+  the list with child builders got longer and longer. This also had an impact
+  on reloading because unnecessary reloading operations could be triggered. Now
+  it is guaranteed that child builders are created only once.
+
+o CONFIGURATION-688
+  Fixed a bug related to the handling of multiple include files in
+  PropertiesConfiguration.
+
+o CONFIGURATION-690
+  ExprLookup.getVariables() no longer returns null, but a copy of the current
+  variables of this lookup object.
+
+o CONFIGURATION-691
+  ExprLookup now handles expressions that do not return a string result by
+  converting them to string.
+
+o CONFIGURATION-703
+  XMLConfiguration now handles elements correctly whose value consists only of
+  whitespace if the xml:space attribute is set to preserve.
+
+Other changes
+=============
+o CONFIGURATION-675
+  Added a .gitignore file to the project.
+
+o Some dependencies have been updated to their most recent versions. However,
+  as no new features of these dependencies are used, the older versions should
+  still work. The following dependencies are affected:
+  o Update Apache Commons Lang dependency from 3.6 to 3.7.
+  o Update Apache Commons VFS from 2.1 to 2.2.
+  o Update Apache Commons Codec from 1.10 to 1.11.
+  o Update Spring from 4.3.9.RELEASE to 4.3.18.RELEASE
+  o Update optional dependency snakeyaml from 1.18 to 1.21.
+  o Update optional dependency Jackson from 2.8.9 to 2.9.6.
+
+
+Historical list of changes: 
https://commons.apache.org/proper/commons-configuration/changes-report.html
+
+For complete information on Apache Commons Configuration, including 
instructions on how to submit bug reports,
+patches, or suggestions for improvement, see the Apache Apache Commons 
Configuration website:
+
+https://commons.apache.org/proper/commons-configuration/
+
+=============================================================================
+
+Apache Commons Configuration
+Version 2.2
+Release Notes
+
+
+INTRODUCTION:
+=============
+
+This document contains the release notes for this version of the Commons
+Configuration component. It describes the changes since the previous version.
+The Commons Configuration software library provides a generic configuration
+interface which enables an application to read configuration data from a
+variety of sources.
+
+Version 2.2 is another maintenance release for the Configuration 2.x series. It
+contains a number of bug fixes and also some new features. Among the highlights
+is the new support for JSON and YAML configurations. The release is fully
+source and binary compatible with version 2.1.1.
+
+Commons Configuration 2.2 requires Java 1.7 or higher.
+
+New features
+============
+o CONFIGURATION-666
+  Add convenience ctor ConfigurationRuntimeException(String, Object...).
+
+o CONFIGURATION-665
+  Add 
org.apache.commons.configuration2.AbstractHierarchicalConfiguration.toString().
+
+o CONFIGURATION-664
+  Add API 
org.apache.commons.configuration2.tree.ImmutableNode.getChildren(String).
+
+o CONFIGURATION-660
+  Add toString() methods here and there to help debugging.
+
+o CONFIGURATION-658
+  Add API org.apache.commons.configuration2.DataConfiguration.getURI(String)
+  methods.
+
+o CONFIGURATION-656
+  Added new YAMLConfiguration class to support configuration files in YAML
+  format.
+
+o CONFIGURATION-653
+  ConfigurationUtils and ConfigurationConverter now offer better support for
+  immutable configurations.
+
+o CONFIGURATION-647
+  INIConfiguration can now be configured to use a custom separator between
+  properties and values when writing an ini file.
+
+o CONFIGURATION-258
+  Added new JSONConfiguration class to support configuration files in JSON
+  format.
+
+Fixed Bugs
+==========
+o CONFIGURATION-671
+  Fixed a NPE in INIConfiguration when saving a configuration with an empty
+  section.
+
+o CONFIGURATION-669
+  The node model returned by SubnodeConfiguration.getNodeModel() has now the
+  correct root node set.
+
+Other changes
+=============
+o CONFIGURATION-673
+  Added an Automatic-Module-Name header to the manifest for compatibility with
+  the Java 9 module system.
+
+o CONFIGURATION-669
+  Update optional Spring dependency from 4.2.5.RELEASE to 4.3.9.RELEASE.
+
+o CONFIGURATION-667
+  Update Apache Commons Lang dependency from 3.3.2 to 3.6.
+
+o CONFIGURATION-663
+  Fixed a typo in the upgrade to 2.0 guide.
+
+o CONFIGURATION-661
+  Update platform requirement from Java 6 to 7.
+
+
+Historical list of changes: 
https://commons.apache.org/proper/commons-configuration/changes-report.html
+
+For complete information on Apache Commons Configuration, including 
instructions on how to submit bug reports,
+patches, or suggestions for improvement, see the Apache Apache Commons 
Configuration website:
+
+https://commons.apache.org/proper/commons-configuration/
+
+=============================================================================
+
+Apache Commons Configuration
+Version 2.1.1
+Release Notes
+
+
+INTRODUCTION:
+=============
+
+This document contains the release notes for this version of the Commons
+Configuration component. It describes the changes since the previous version.
+The Commons Configuration software library provides a generic configuration
+interface which enables an application to read configuration data from a
+variety of sources.
+
+The release is fully source and binary compatible with version 2.1.
+
+Commons Configuration 2.1 requires Java 1.6 or higher.
+
+Fixed Bugs
+==========
+o CONFIGURATION-649
+  Improved the handling of lists defined by a string with delimiter characters
+  in XMLConfiguration. Such lists now retain their original format when the
+  configuration is saved.
+
+o CONFIGURATION-648
+  Made the IOFactory property of PropertiesBuilderParameter compatible with the
+  most recent version of Commons BeanUtils. This version changed the handling
+  of properties starting with multiple uppercase letters.
+
+o CONFIGURATION-646
+  PropertiesConfiguration now works correctly with the auto-save mode.
+
+o CONFIGURATION-644
+  PropertiesConfigurationLayout no longer duplicates a header comment if a file
+  with another comment is loaded. Thanks to Andrew DeMaria.
+
+o CONFIGURATION-643
+  Documentation improvements for the user's guide.
+
+o CONFIGURATION-641
+  Improved documentation of FileBased interface. The Javadocs now state
+  explicitly that the methods should not be called by client code. Exception
+  handling in configuration classes implementing FileLocatorAware has been
+  improved.
+
+o CONFIGURATION-640
+  PropertiesConfiguration now correctly unescapes some special characters that
+  are always escaped in Java properties files.
+
+Other changes
+=============
+o CONFIGURATION-639
+  In the OSGi bundle manifest of the Commons Configuration bundle the package
+  imports for Spring packages are now marked as optional.
+  Thanks to Rico Neubauer.
+
+o CONFIGURATION-638
+  Improved handling of temporary files and folders in unit tests.
+  Thanks to Ahmet Celik.
+
+o CONFIGURATION-627
+  Updated dependency to Commons BeanUtils to version 1.9.3. This fixes an issue
+  with an exception stacktrace that was logged when a ConfigurationBuilder was
+  used.
+
+
+Historical list of changes: 
https://commons.apache.org/proper/commons-configuration/changes-report.html
+
+For complete information on Apache Commons Configuration, including 
instructions on how to submit bug reports,
+patches, or suggestions for improvement, see the Apache Apache Commons 
Configuration website:
+
+https://commons.apache.org/proper/commons-configuration/
+
+=============================================================================
+
+                        Commons Configuration Package
+Version 2.1
+Release Notes
+
+INTRODUCTION
+============
+
+This document contains the release notes for this version of the Commons
+Configuration component. It describes the changes since the previous version.
+The Commons Configuration software library provides a generic configuration
+interface which enables an application to read configuration data from a 
variety
+of sources.
+
+Version 2.1 is a first bug-fix release for the Configuration 2.x series and
+also adds a new feature related to the integration with the Spring framework.
+A list of all changes can be found below.
+
+The release is fully source and binary compatible with version 2.0.
+
+Commons Configuration 2.1 requires Java 1.6 or higher.
+
+New Features
+============
+o CONFIGURATION-636
+  PropertiesConfigurationLayout now allows manipulating the order of keys when
+  the properties file is written.
+
+o CONFIGURATION-624
+  Support Commons Configuration as PropertySource in Spring.
+
+Fixed Bugs
+==========
+o CONFIGURATION-634
+  HomeDirectoryLocationStrategy now works correctly in the mode that evaluates
+  the FileLocator's base path.
+
+o CONFIGURATION-633
+  Interpolation was improved to better support properties with multiple values.
+
+o CONFIGURATION-632
+  The methods getStringArray() and getList() of CompositeConfiguration now
+  support the interpolation of variables that reference properties with
+  multiple values.
+
+o CONFIGURATION-622
+  Fixed a problem in INIConfiguration.write() with keys containing a separator
+  character. This separator had been duplicated. Such keys are now handled
+  correctly when the configuration is saved.
+
+Other changes
+=============
+o CONFIGURATION-628
+  Support for the ant build was dropped.
+
+o CONFIGURATION-626
+  ImmutableConfiguration.getArray() has been deprecated. Arrays can now be
+  queried using the generic get() method in a type-safe way.
+
+o CONFIGURATION-631
+  Updated optional dependency to Apache Commons VFS from 2.0 to 2.1. (The older
+  version still works.)
+
+o CONFIGURATION-635
+  Updated optional dependency to Apache Commons Codec from 1.9 to 1.10. (The
+  older version still works.)
+
+
+Historical list of changes: 
https://commons.apache.org/proper/commons-configuration/changes-report.html
+
+For complete information on Apache Commons Configuration, including 
instructions
+on how to submit bug reports, patches, or suggestions for improvement, see the
+Apache Commons Configuration website:
+https://commons.apache.org/proper/commons-configuration/
+
+=============================================================================
+
+Apache Commons Configuration
+Version 2.0
+Release Notes
+
+INTRODUCTION
+============
+
+After a series of alpha and beta releases (please consult the corresponding
+release notes below), this is the first final release for Apache Commons
+Configuration 2.0.
+
+Version 2.0 is a complete redesign of the Configuration 1.x API with the aim to
+fix some limitations in the original design and make the library more flexible
+and powerful. Therefore, this release is not a drop-in replacement for Commons
+Configuration 1.x; there have been incompatible changes in many areas that
+require adaptations on client code. A migration guide is available at
+
+https://commons.apache.org/configuration/userguide/upgradeto2_0.html
+
+that describes all breaking changes and helps when upgrading to the new
+version. One obvious breaking change is the renaming of the main package
+(all classes are now located under org.apache.commons.configuration2) and the
+Maven coordinates (groupId: org.apache.commons, artifactId:
+commons-configuration2). This was necessary to allow both versions to coexist
+on the classpath without conflicts.
+
+The user's guide has been completely reworked to describe all features of the
+new version. It can be found at
+
+https://commons.apache.org/configuration/userguide/user_guide.html
+
+Changes:
+========
+o CONFIGURATION-621:
+  Moved ConfigurationLogger class to io package to avoid cyclic dependencies
+  between packages.
+o CONFIGURATION-619:
+  CombinedConfigurationBuilder now supports inheritance of its parameters to
+  child configuration sources. This is enabled by default.
+o CONFIGURATION-615:
+  Changed generic types in the signatures of a MapConfiguration constructor
+  and AbstractConfiguration.getList(String, List). These changes were made in
+  version 1.10 as fixes for CONFIGURATION-557 and CONFIGURATION-558. But it
+  had been missed to merge them to trunk.
+
+Fixed Bugs:
+===========
+o CONFIGURATION-620:
+  Fixed two invalid examples in the user's guide for file-based configurations.
+o CONFIGURATION-618:
+  When using immutable configurations exceptions thrown by the wrapped
+  configuration came out as UndeclaredThrowableException. This has been fixed;
+  now the correct original exception is thrown.
+
+Commons Configuration 2.0 requires Java 1.6 or higher.
+
+=============================================================================
+
+Apache Commons Configuration
+Version 2.0-beta2
+Release Notes
+
+After the first beta release in June 2015 there has been some feedback from the
+community resulting in (minor) adaptations of the API. In most cases, the
+return values of methods have been changed to be more generic. There has also
+been a change in the support for logging. Therefore, this second beta release
+is provided to make these changes more "official".
+
+This release also includes some bug fixes. The bugs addressed here have partly
+existed already in the Configuration 1.0 code base; so these fixes are not all
+related to changes introduced in the 2.0 version.
+
+Below is a list of all changes in this version. Please refer to the clirr
+report at 
https://commons.apache.org/proper/commons-configuration/clirr-report.html
+for information about changes which break binary compatibility.
+
+Changes:
+========
+o CONFIGURATION-614:
+  References to Commons Logging have been removed from the Configuration API.
+  It is still possible to influence logging by making use of the new
+  ConfigurationLogger abstraction.
+o CONFIGURATION-612:
+  The return type of ConfigurationBuilder.getConfiguration() was changed from
+  Configuration to ImmutableConfiguration because this is the base interface
+  for all configuration objects. Thanks to Jon Weygand.
+o CONFIGURATION-608:
+  Adapted the return type of 
ReloadingFileBasedConfigurationBuilder.configure().
+
+Fixed Bugs:
+===========
+o CONFIGURATION-609:
+  Fixed a bug in PropertiesConfiguration related to the loading of include
+  files. The FileHandler used for this purpose was not fully initialized.
+o CONFIGURATION-605:
+  XMLConfiguration no longer drops keys when list delimiter characters occur
+  in element values.
+o CONFIGURATION-604:
+  Fixed a problem in the conversion of a flat configuration to a hierarchical
+  one that could cause the loss of properties in a combined configuration
+  constructed by an override combiner.
+
+Commons Configuration 2.0-beta2 requires Java 1.6 or higher.
+
+Historical list of changes: 
https://commons.apache.org/proper/commons-configuration/changes-report.html
+
+For complete information on Apache Commons Configuration, including 
instructions
+on how to submit bug reports, patches, or suggestions for improvement, see the
+Apache Commons Configuration website:
+https://commons.apache.org/proper/commons-configuration/
+
+=============================================================================
+
+Apache Commons Configuration
+Version 2.0-beta1
+Release Notes
+
+This is the first beta release of Commons Configuration 2.0 after two alpha
+versions. There has not been much feedback so far and no requests for API
+changes. Therefore, we move forwards to a beta release indicating that the API
+can be considered more stable. However, at this stage, changes of the API can
+still not be fully excluded.
+
+Below is a list of all changes in this version. Compared to version 2.0-alpha2,
+there has only be a single change: an obsolete interface (which had been
+overlooked during a major refactoring) was removed. So applications that are
+using 2.0-alpha2 should be able to migrate to 2.0-beta1 without problems.
+
+Changes:
+========
+o CONFIGURATION-598: Removed obsolete ConfigurationBuilder interface in the
+                     base package.
+
+=============================================================================
+
+Apache Commons Configuration
+Version 2.0-alpha2
+Release Notes
+
+
+After version 2.0-alpha1 has been out for a while (the corresponding release
+notes can be found below), this second alpha release contains a few number of
+improvements and new features whose implementation required some changes on
+existing interfaces. In most cases, new methods were added offering enhanced
+functionality. Because these are typically interfaces implemented by the
+library itself client code using the previous alpha version should hardly be
+affected.
+
+Below is a list of all changes in this version:
+
+New features:
+=============
+o CONFIGURATION-574:  DefaultExpressionEngine can now be customized to match
+                      configuration keys in a case-insensitive manner. This is 
useful
+                      for instance for dealing with Windows INI files.
+o CONFIGURATION-565:  Added support for querying encoded properties.
+o CONFIGURATION-200:  A size() method was added to the ImmutableConfiguration 
interface.
+
+Fixed Bugs:
+===========
+o CONFIGURATION-564:  PropertiesConfiguration now supports again properties 
without a
+                      value and a separator character. The keys of such 
properties
+                      are added to the configuration with an empty String as 
value.
+o CONFIGURATION-427:  XMLPropertyListConfiguration can now save arrays in the 
correct form.
+
+Historical list of changes: 
https://commons.apache.org/proper/commons-configuration/changes-report.html
+
+For complete information on Apache Commons Configuration, including 
instructions on how to submit bug reports,
+patches, or suggestions for improvement, see the Apache Commons Configuration 
website:
+
+https://commons.apache.org/proper/commons-configuration/
+
+=============================================================================
+
+Apache Commons Configuration
+Version 2.0-alpha1
+Release Notes
+
+This is the first alpha release for version 2.0 of Commons Configuration.
+Version 2 is a major redesign of the Configuration API. It breaks compatibility
+in many areas and, therefore, is not a drop-in replacement for Commons
+Configuration 1.x. To allow collaboration with an older version of the library
+(and to prevent jar and dependency hell), the top-level package and the Maven
+coordinates have been changed. There is an upgrade guide available at
+
+https://commons.apache.org/configuration/userguide/upgradeto2_0.html
+
+describing the most important breaking changes. Be sure to read this
+document if you want to switch from a 1.x version to this new version. The
+user's guide which can be found at
+
+https://commons.apache.org/configuration/userguide/user_guide.html
+
+has been reworked to cover all the new and changed features.
+
+The main purpose of this alpha release is to gather feedback from the
+community about the reworked API. IT IS NOT YET PRODUCTION READY. It is
+expected that there will still be some changes on the public API.
+
+Below is a list of all changes in this version:
+
+New features:
+=============
+o CONFIGURATION-579:  A migration guide has been created which supports when 
upgrading from
+                      version 1.x to 2.0.
+o CONFIGURATION-559:  It is now possible to define default values for 
initialization
+                      properties of configurations.
+o CONFIGURATION-551:  The data type conversion mechanism has been made 
extensible. There is a
+                      new interface ConversionHandler which controls the data 
type conversions
+                      available for a configuration object. By setting a 
custom implementation,
+                      conversions can be adapted or extended.
+o CONFIGURATION-550:  Conversion to Character is now supported.
+o CONFIGURATION-541:  Multi-file configurations are no longer restricted to 
XML configuration
+                      files. Arbitrary file-based configurations are now 
supported.
+o CONFIGURATION-535:  DatabaseConfiguration now provides get methods for 
querying its
+                      properties defining the underlying database structures.
+o CONFIGURATION-533:  DatabaseConfiguration now automatically converts CLOBs 
to strings if
+                      they appear in property values.
+o CONFIGURATION-525:  PropertiesConfiguration now keeps a comment at the 
bottom of a
+                      properties file. A new footer property was added for 
reading and
+                      writing this footer comment.
+o CONFIGURATION-519:  Configuration objects are now created via configuration 
builders. A new
+                      API for configuration builders has been added.
+o CONFIGURATION-517:  Hierarchical configurations now provide methods to 
obtain sub
+                      configurations for all child elements of a given key.
+o CONFIGURATION-514:  Bean declarations now support constructor invocations.
+o CONFIGURATION-512:  It is now possible to obtain an immutable view on a 
Configuration or
+                      HierarchicalConfiguration object. New interfaces,
+                      ImmutableConfiguration, and 
ImmutableHierarchicalConfiguration have
+                      been introduced.
+o CONFIGURATION-508:  Generic get() methods have been added to the 
Configuration interface.
+                      These methods expect a target class and try to convert 
the value of
+                      the specified property to this target class.
+o CONFIGURATION-204:  With the new reloading mechanism automatic and periodic 
reloading checks
+                      can be performed.
+o CONFIGURATION-202:  Reloading checks can now be performed in a background 
thread.
+
+Fixed Bugs:
+===========
+o CONFIGURATION-582:  Fixed a StringIndexOutOfBoundsException in 
PropertiesConfigurationLayout
+                      which was caused by lines containing only whitespace.
+o CONFIGURATION-572:  When a CombinedConfiguration is cleared it removes 
itself as change
+                      listener from all child configurations. This fixes a 
possible memory
+                      leak.
+o CONFIGURATION-570:  Fixed a possible ConcurrentModificationException when a 
SystemConfiguration
+                      instance is passed to the append() or copy() methods.
+o CONFIGURATION-567:  XMLBeanDeclaration now escapes node names before they 
are used to
+                      determine nested properties. Thanks to Shen liang.
+
+Changes:
+o CONFIGURATION-591:  Removed methods from ConfigurationConverter related to 
ExtendedProperties.
+                      This class is no longer supported by recent versions of 
Commons
+                      Collections.
+o CONFIGURATION-590:  Removed Serializable interface from all configuration 
implementations.
+                      Some configuration classes declared this interface 
without being
+                      actually serializable.
+o CONFIGURATION-588:  The name of the top-level package and the maven 
coordinates have been
+                      changed to allow a coexistence of Commons Configuration 
1.x with 2.0.
+o CONFIGURATION-584:  The event mechanism has been reworked. There is now a 
generic event
+                      listener interface which can be used to receive 
notifications from
+                      multiple types of event sources.
+o CONFIGURATION-578:  The user's guide has been fully reworked to cover all 
new and enhanced
+                      features of version 2.0.
+o CONFIGURATION-577:  The dependency to Commons Collections is no longer 
needed.
+o CONFIGURATION-576:  A new abstract base class for hierarchical 
configurations was introduced
+                      which supports arbitrary hierarchical data structures. 
The type of the
+                      nodes used by the configuration can now be specified as 
a generic type
+                      argument. This makes the integration of other 
hierarchical structures
+                      easier.
+o CONFIGURATION-575:  Hierarchical configurations now operate on immutable 
structures.
+                      Data is no longer represented by ConfigurationNode 
objects. The
+                      ImmutableNode class now serves as data container.
+o CONFIGURATION-573:  XPathExpressionEngine can now deal with namespace 
prefixes in node and
+                      attribute names.
+o CONFIGURATION-563:  The DefaultExpressionEngine class is now immutable. An 
instance can be
+                      shared between multiple configuration objects.
+o CONFIGURATION-562:  Improved the API of ExprLookup.
+o CONFIGURATION-555:  Fixed a bug in the handling of the xml:space attribute in
+                      XMLConfiguration. The attribute is now also applied to 
the current
+                      element, not only to sub elements.
+o CONFIGURATION-554:  BeanHelper is no longer a static utility class. 
Instances can be
+                      created with a specific configuration of bean factories. 
There is still
+                      a default instance which can be obtained via the 
BeanHelper.INSTANCE
+                      field.
+o CONFIGURATION-553:  The code for accessing configuration files has been 
reworked. Methods
+                      related to locating configuration files have been moved 
from
+                      ConfigurationUtils to a new FileLocatorUtils class. 
Customizable
+                      strategy classes (implementing the new 
FileLocationStrategy) can be
+                      used for searching for configuration files.
+o CONFIGURATION-546:  BeanHelper can now process BeanDefinitions initializing 
properties of
+                      collection types of their target beans. Thanks to Justin 
Couch.
+o CONFIGURATION-544:  Added missing dependencies to build.xml. Thanks to 
Oliver Kopp.
+o CONFIGURATION-542:  The mechanism for synchronizing configurations has been 
completely
+                      redesigned. It is now based on Synchronizer objects 
which can be
+                      configured by client code. A new chapter was added to 
the user's guide
+                      regarding thread-safety of configurations.
+o CONFIGURATION-540:  MapConfiguration now directly uses a Properties object 
passed to its
+                      constructor as data store rather than copying it. This 
allows
+                      SystemConfiguration to be connected to system 
properties; i.e.
+                      changing a property through SystemConfiguration 
immediately affects
+                      the corresponding system property.
+o CONFIGURATION-539:  The deprecated INIConfiguration class was removed.
+                      HierarchicalINIConfiguration was renamed to 
INIConfiguration.
+o CONFIGURATION-537:  The deprecated ConfigurationFactory class was removed.
+o CONFIGURATION-536:  File-based configurations are now implemented in a 
different way.
+                      The interfaces FileConfiguration and ReloadingStrategy 
have been
+                      removed, also the base classes AbstractFileConfiguration 
and
+                      AbstractHierarchicalFileConfiguration. They are replaced 
by the
+                      FileBased interface and the FileHandler class which 
implements
+                      central I/O functionality. Reloading is now in the 
responsibility of
+                      configuration builders.
+o CONFIGURATION-534:  The includesAllowed property of PropertyConfiguration is 
now independent
+                      from the existence of a base path.
+o CONFIGURATION-530:  Concurrent access to configurations and reloading have 
been completely
+                      redesigned. Because reloading is now handled by 
configuration builders
+                      there is no need to acquire a lock in order to protected 
against a
+                      reload operations.
+o CONFIGURATION-527:  AbstractConfiguration.clearPropertyDirect() is now 
abstract. Thanks to Matthias Richter.
+o CONFIGURATION-526:  XMLPropertiesConfiguration now supports loading from and 
saving to DOM
+                      nodes. Thanks to Oliver Kopp.
+o CONFIGURATION-524:  Interpolation now works correctly after a configuration 
was cloned.
+                      The ConfigurationInterpolator instance is now cloned, 
too.
+o CONFIGURATION-521:  ConfigurationUtils.fileFromUrl() now correctly handles 
URL containing
+                      encoded percent characters. Thanks to Oliver Kopp.
+o CONFIGURATION-520:  Support for reloading of configuration data has been 
reworked.
+o CONFIGURATION-518:  Classes and interfaces related to interpolation have 
been slightly
+                      reworked. ConfigurationInterpolator is now thread-safe. 
There are
+                      multiple ways to define the ConfigurationInterpolator 
object to be
+                      used by an AbstractConfiguration instance.
+o CONFIGURATION-516:  PropertiesConfiguration no longer escapes double quotes 
on saving.
+o CONFIGURATION-515:  The visibility of some internal methods of 
PropertiesConfiguration.PropertiesWriter
+                      has been increased to protected. This simplifies the 
implementation of
+                      a custom escaping strategy.
+o CONFIGURATION-513:  HierarchicalConfiguration is now an interface. The base 
implementation
+                      class is named BaseHierarchicalConfiguration.
+o CONFIGURATION-506:  Removed obsolete nested classes Node and NodeVisitor of
+                      HierarchicalConfiguration. The related deprecated class
+                      ConfigurationKey was removed, too.
+o CONFIGURATION-505:  XMLConfiguration no longer supports attributes with 
multiple values or
+                      list delimiter parsing in attributes. This feature was 
complex and
+                      error prone and brought little value to the user.
+o CONFIGURATION-504:  SubnodeConfiguration now provides a new method for 
clearing it and
+                      removing its root node from the parent configuration. 
The method
+                      HierarchicalConfiguration.configurationsAt() now returns 
a list
+                      of SubnodeConfiguration so that it is easier to make 
direct use of
+                      this feature.
+o CONFIGURATION-500:  XMLConfiguration now adds attributes of elements 
defining a list to
+                      all list nodes.
+o CONFIGURATION-496:  Concurrent access to configurations and reloading have 
been completely
+                      redesigned. This should reduce the amount of 
synchronization.
+o CONFIGURATION-486:  Removed some static fields for specifying global default 
values.
+                      Using static fields in this way is thread-hostile. There 
are now
+                      alternatives for setting default values.
+o CONFIGURATION-462:  Updated dependency to Commons Lang from version 2.6 to 
3.1.
+o CONFIGURATION-419:  EventSource is now an interface. With BaseEventSource 
there is a
+                      default implementation.
+o CONFIGURATION-418:  The handling of list delimiters and their escape 
characters has been
+                      reworked. A new ListDelimiterHandler interface was 
introduced allowing
+                      applications to customize the treatment of list 
delimiters.
+o CONFIGURATION-330:  Concurrent access to configurations has been reworked.
+o CONFIGURATION-153:  It is now possible to define the strategy used for 
locating
+                      configuration files.
+o CONFIGURATION-136:  Reloading can no longer corrupt a configuration 
instance. This is now
+                      handled by a configuration builder; the original 
configuration instance
+                      is not modified.
+o CONFIGURATION-26:   It is now possible to influence the conversion from a 
container object
+                      (a collection or an array) to a single value (e.g. what 
is returned by
+                      getString() if the current property has multiple 
values). Per default,
+                      the first value is returned. By overriding methods of the
+                      configuration's ConversionHandler, this behavior can be 
changed.
+
+
+Historical list of changes: 
https://commons.apache.org/proper/commons-configuration/changes-report.html
+
+For complete information on Apache Commons Configuration, including 
instructions on how to submit bug reports,
+patches, or suggestions for improvement, see the Apache Commons Configuration 
website:
+
+https://commons.apache.org/proper/commons-configuration/

Reply via email to