Author: oheger Date: Sun Jul 30 10:31:32 2006 New Revision: 426907 URL: http://svn.apache.org/viewvc?rev=426907&view=rev Log: Minor site update and new release notes for 1.3 release
Modified: jakarta/commons/proper/configuration/trunk/RELEASE-NOTES.txt jakarta/commons/proper/configuration/trunk/xdocs/building.xml jakarta/commons/proper/configuration/trunk/xdocs/dependencies.xml jakarta/commons/proper/configuration/trunk/xdocs/tasks.xml Modified: jakarta/commons/proper/configuration/trunk/RELEASE-NOTES.txt URL: http://svn.apache.org/viewvc/jakarta/commons/proper/configuration/trunk/RELEASE-NOTES.txt?rev=426907&r1=426906&r2=426907&view=diff ============================================================================== --- jakarta/commons/proper/configuration/trunk/RELEASE-NOTES.txt (original) +++ jakarta/commons/proper/configuration/trunk/RELEASE-NOTES.txt Sun Jul 30 10:31:32 2006 @@ -1,8 +1,8 @@ $Id$ Commons Configuration Package - Version 1.2 - Release Notes + Version 1.3 + Release Notes INTRODUCTION @@ -11,12 +11,106 @@ This document contains the release notes for this version of the Commons Configuration component, and highlights changes since the previous version. -Release 1.2 in the first line contains bug fixes, many of them related to file -based configurations and reloading strategies. There are some new features as -well, e.g. the new plist package that provides support for configuration files -in the NeXT / OpenStep format or support for validating XML configuration files. +Release 1.3 adds many new features. Some highlights are -A complete list of changes can be obtained from the changelog report that -is created when building with maven or can be viewed at - - http://jakarta.apache.org/commons/configuration/changes-report.html +- Support for XPATH expressions when querying properties from hierarchical + configurations. +- The new DefaultConfigurationBuilder class as a hierarchical alternative to + ConfigurationFactory that allows for more configuration options. +- Support for configuration listeners that are notified about modifications + on a configuration object. + +A complete list of changes can be found below. + +CHANGES +======= + +- The dependency to servletapi was updated from version 2.3 to version 2.4, but + version 2.3 will still work. Fixes CONFIGURATION-217. +- A new class PropertiesConfigurationLayout was introduced whose task is to + preserve the structure (e.g. comments, blanc lines) of a file loaded by + PropertiesConfiguration. Each PropertiesConfiguration object is now associated + with such a layout object. A saved properties file will look very similar to + its original. Fixes CONFIGURATION-104. +- clone() methods have been added to BaseConfiguration, + AbstractFileConfiguration, MapConfiguration, CompositeConfiguration, and + CombinedConfiguration. So the most important Configuration implementations now + support cloning. To ConfigurationUtils an utility method cloneConfiguration() + was added that allows to conveniently clone a configuration. + Fixes CONFIGURATION-145. +- If a configuration file was to be loaded from classpath, the constructor of + AbstractFileConfiguration dropped the file's path. The path is now taken into + account. Fixes CONFIGURATION-216. +- The getter methods for numeric data types in AbstractConfiguration now support + conversions between different Number types, e.g. you can now call getLong(key) + when key points to an Integer value. Fixes CONFIGURATION-214. +- The new class DefaultConfigurationBuilder was added as an alternative to + ConfigurationFactory. It provides some more features and creates a + CombinedConfiguration object. +- The new class CombinedConfiguration was added as a hierarchical alternative to + CompositeConfiguration. +- Support for low-level configuration events was added to all classes derived + from AbstractConfiguration. The major part of this is handled by the new super + class EventSource of AbstractConfiguration. Related to CONFIGURATION-143. +- A new method convertToHierarchical() was added to ConfigurationUtils, which is + able to convert an arbitrary configuration object into a hierarchical + configuration. +- Loading of file-based configurations no longer throws a NullPointerException + in setups where the thread context class loader is not set. + Fixes CONFIGURATION-63. +- The dependency to dom4j was removed; it was only used by two test classes, + which have been re-written. +- XMLConfiguration used to drop the DOCTYPE declaration when saving the + configuration. It is now able to extract the DTD's public and system ID and + write them back (more complex DOCTYPE declarations are still not supported). + With the new methods setSystemID() and setPublicID(), the DOCTYPE declaration + can be configured. Fixes CONFIGURATION-100. +- Added two new constructors in CompositeConfiguration accepting a collection of + configurations as a parameter. Fixes CONFIGURATION-178. +- (Basic) Support for declaring beans in configuration files was added. Some new + classes in the beanutils package allow to create instances from these + declarations. Fixes CONFIGURATION-186. +- The implementation of the interpolation features have been extracted out off + AbstractConfiguration and moved to PropertyConverter. The interpolateHelper() + method of AbstractConfiguration is now deprectated and will not be called any + more during interpolation. +- A new method configurationsAt() was added to HierarchicalConfiguration that + provides a convenient way of iterating over complex list-like structures + without the need of manually constructing configuration keys with indices. + Fixes CONFIGURATION-182. +- A new class SubnodeConfiguration was introduced that wraps a configuration + node of a HierarchicalConfiguration. All operations performed on this + configuration use this wrapped node as root. The new configurationAt() method + of HierarchicalConfiguration returns such a SubnodeConfiguration for a + specified sub node. +- With XPathExpressionEngine an expression engine for hierarchical + configurations is now available that can evaluate XPATH expressions in + property keys. This expression engine implementation is based on Commons + JXPath, which is now declared as a new dependency (but at runtime it is only + needed if the XPathExpressionEngine class is used). Fixes CONFIGURATION-173. +- The code for interpreting property keys was refactored out off + HierarchicalConfiguration. Instead this class now supports pluggable + expression engines (using the setExpressionEngine() method). So it is possible + to plug in different expression languages. A default expression engine is + provided that understands the native expression language used by hierarchical + configurations in older versions. During the process of this refactoring some + methods of HierarchicalConfiguration have been deprecated; they will not be + called any more when searching or adding properties. These are the following: + createAddPath(), fetchAddNode(), findLastPathNode(), findPropertyNodes(). +- A larger refactoring was performed on the inner Node class of + HierarchicalConfiguration: A ConfigurationNode interface was extracted for + which a default implementation (DefaultConfigurationNode) is provided. + HierarchicalConfiguration.Node now extends this default implementation. The + new ConfigurationNode interface defines some more methods than the Node class + did originally for conveniently dealing with sub nodes and attributes. + HierarchicalConfiguration now uses the new type ConfigurationNode whereever + possible. Some methods dealing with Node objects have been deprecated and + replaced by versions operating on ConfigurationNode objects instead. +- All configuration classes derived from AbstractConfiguration now allow to set + an instance specific list delimiter. This can be done through the new method + setListDelimiter(). As before it is possible to define a default list + delimiter, which will be used if no instance specific delimiter is set. This + can be done using the new setDefaultListDelimiter() method (the methods + get/setDelimiter() have been deprecated). With the new + setDelimiterParsingDisabled() method parsing of lists can be disabled at all. + Fixes CONFIGURATION-155. Thanks to Jorge Ferrer. Modified: jakarta/commons/proper/configuration/trunk/xdocs/building.xml URL: http://svn.apache.org/viewvc/jakarta/commons/proper/configuration/trunk/xdocs/building.xml?rev=426907&r1=426906&r2=426907&view=diff ============================================================================== --- jakarta/commons/proper/configuration/trunk/xdocs/building.xml (original) +++ jakarta/commons/proper/configuration/trunk/xdocs/building.xml Sun Jul 30 10:31:32 2006 @@ -1,6 +1,6 @@ <?xml version="1.0"?> <!-- - Copyright 2004-2005 The Apache Software Foundation + Copyright 2004-2006 The Apache Software Foundation Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -48,11 +48,7 @@ The result will be in "target/docs/apidocs". </p> <p> - To build the full website, run "maven site". <em>Note:</em> For this - to work you will also have to checkout the - <a href="http://svn.apache.org/repos/asf/jakarta/commons/proper/commons-build/trunk/"> - <code>commons-build</code></a> module as a sibling directory to your - Configuration root directory. + To build the full website, run "maven site". The result will be in "target/docs". </p> </section> Modified: jakarta/commons/proper/configuration/trunk/xdocs/dependencies.xml URL: http://svn.apache.org/viewvc/jakarta/commons/proper/configuration/trunk/xdocs/dependencies.xml?rev=426907&r1=426906&r2=426907&view=diff ============================================================================== --- jakarta/commons/proper/configuration/trunk/xdocs/dependencies.xml (original) +++ jakarta/commons/proper/configuration/trunk/xdocs/dependencies.xml Sun Jul 30 10:31:32 2006 @@ -1,6 +1,6 @@ <?xml version="1.0"?> <!-- - Copyright 2004-2005 The Apache Software Foundation + Copyright 2004-2006 The Apache Software Foundation Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -49,6 +49,13 @@ <td>ConfigurationFactory</td> <td> commons-digester<br/> + commons-beanutils<br/> + JDK 1.4 or xml-apis + </td> + </tr> + <tr> + <td>DefaultConfigurationBuilder</td> + <td> commons-beanutils<br/> JDK 1.4 or xml-apis </td> Modified: jakarta/commons/proper/configuration/trunk/xdocs/tasks.xml URL: http://svn.apache.org/viewvc/jakarta/commons/proper/configuration/trunk/xdocs/tasks.xml?rev=426907&r1=426906&r2=426907&view=diff ============================================================================== --- jakarta/commons/proper/configuration/trunk/xdocs/tasks.xml (original) +++ jakarta/commons/proper/configuration/trunk/xdocs/tasks.xml Sun Jul 30 10:31:32 2006 @@ -45,37 +45,37 @@ </category> <category name="Version 1.3" description=""> - <task status=""> + <task status="done"> support for XPATH queries </task> - <task status=""> + <task status="done"> delimiter for comma separated values revamp </task> - <task status=""> - INI file support - </task> - <task status=""> - enhanced interpolation support - </task> - <task status=""> + <task status="done"> ConfigurationFactory refactoring for pluggable extensions </task> - <task status=""> - Windows configuration (Registry wrapper) - </task> - <task status=""> + <task status="partly done"> comments and layout preservation in .properties files </task> </category> <category name="Version 1.4" description=""> <task status=""> + INI file support + </task> + <task status=""> + enhanced interpolation support + </task> + <task status=""> JMX integration ? </task> <task status=""> Preference API integration ? </task> <task status=""> + Windows configuration (Registry wrapper) + </task> + <task status="partly done"> observable configurations ? </task> </category> --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]