commons-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Eric Pugh" <>
Subject [configuration] 1.0-RC1 Released!
Date Sat, 14 Aug 2004 12:37:37 GMT
Finally, 7 months and 3 weeks after configuration was first promoted from
the Sandbox, we finally have a 1.0 Release Candidate 1.  Please bear with me
if I made any significant mistakes during this process as it was my first
time attempting to release anything.  I want to thank all the people who've
contributed to Configuration since it's move out of the Sandbox, and to all
the other developers who contributed to Configuration when it was part of
JServ and Turbine.

A couple of notes:
1) The jar is available online through ibiblio:
2) The source was tagged as CONFIGURATION_1_0_RC1.  This tag had been
applied at somepoint to some older chunks of Configuration, probably in an
earlier abortive attempt.  I moved the tag.
3) I'm headed out of town on vacation and won't be back till Sept 4th.  If
no major issues have been discovered, and no one has released it, I'll
attempt to do it them.  However, if someone wants to step up to the plate to
do a vote and release after giving rc1 a week to simmer, I'd be eternally
4) The site docs are updated.  However, after doing the update, I realized
that the JavaDocs aren't being generated, so the docs are older.  There
haven't been any API changes to Configuration, so it shouldn't be the end of
the world, but if someone wants to look at why the JavaDocs won't generate,
that would be great.
5) Documentation is somewhat lacking..   It would be nice to do another turn
of the crank.  Or, maybe get an article written!  I'd be glad to
help/coauthor with anyone.

Eric Pugh

The change log is rather long, so reading it online might be better, but
here goes:

  New Features:

o HierarchicalConfigurationXMLReader stores comments as text nodes Issue:
  30597. Thanks to Oliver Heger.
o project.xml contains bad dependencies Issue: 30648. Thanks to Ricardo
o clearXmlProperty doesn't remove list properties completely Issue: 30234 .
  Thanks to Brent Worden.
o new ConfigurationDynaBean Issue: 30545. Thanks to Ricardo Gladwell.
o new ConfigurationMap and ConfigurationSet Issue: 29611. Thanks to Ricardo
o Added save methods in XMLConfiguration similar to PropertiesConfiguration
  to save the configuration to another file (bug 29721).
o Added a save() method to PropertiesConfiguration and save(Writer out),
  save(OutputStream out), save(OutputStream out, String encoding) to
o Direct support of XML via DOM. New classes DOMConfiguration and
o Changed CompositeConfiguration to extend from AbstractConfiuration. This
  means that the behavior of CompositeConfiguration is much similar to
  like PropertiesConfiguration in handling of missing keys, interpolation,
  etc.. Previously CompositeConfiguration had quite a few differences.
o The Configuration interface now supports BigDecimal and BigInteger
o ConfigurationException is now thrown by public methods instead of
  or IOException or whatnot.
o For configuration based on properties files, allow characters like \n etc
  to be escaped and unescaped.
o New DatabaseConfiguration that uses a database to store the properties. It
  supports 2 table structures : one table per configuration (2 colums
  key/value) one table for multiple configurations (2 columns key/value + 1
  column for the name of the configuration)
o ConfigurationFactory now supports the hierarchicalDom4j element in
  configuration definition file
o ConfigurationFactory now supports two types of properties files,
  and override. Additional properties add each other together. Override
  override each other. This allows you to have a single property that is
  either aggregated from a number of sources, or have a property that is
  overridden according to a specific order of sources.
o Added AbstractConfiguration to make it easier to create subclasses by only
  having to implement the methods required.

  Fixed bugs:

o Problem adding property XMLConfiguration Issue: 30598. Thanks to Ricardo
o DatabaseConfiguration doesn't support List properties. Issue: 29734.
o Fixed several bugs related to XMLConfiguration: 30074 - Can't add a new
  property as an attribute in XMLConfiguration 30205 - XMLConfiguration
  doesn't support attribute names with a dot 30209 - XMLConfiguration
  ignore comments 30212 - doesn't escape reserved
o List values are now properly stored as comma separated values in the
  Properties object returned by ConfigurationConverter.getProperties() (Bug
o Tokens like ${ref} in a PropertyConfiguration are now properly saved (Bug
o The getList() method of a CompositeConfiguration now returns the list
  composed of the elements in the first matching configuration and the
  additional elements found in the in memory configuration (Bug 28660).
o SubsetConfiguration returns a List on getList(). AbstractConfiguration
  wouldn't properly deal with a List, only with a Container for getList()!
  Thanks to jschaible for the unit test.
o Reapply the ConfigurationXMLDocument that went missing during migration
  of sandbox.
o ClassPropertiesConfiguration Additions Use the classloader of class that
  provided by the constructor. Add a constructor that indicates whether to
  use relative or absolute. Change getPropertyStream to utilize the relative
  or absolute flag. Add a test case that checks that absolute paths work.
o JNDIConfiguration.getKeys() Addition The JNDIConfiguration.getKeys()
  was returning an unsupported operation error. However, this is an
  method to have supported.
o CompositeConfiguration.getKeys() Fix The CompositeConfiguration.getKeys()
  method was returning an unordered list of configuration values. However,
  many apps expect the order that keys are returned to be the order they are
  added into the properties file.


o Removed the DOM4J implementations in favor of the DOM ones.
  DOMConfiguration has been renamed to XMLConfiguration, and
  HierarchicalDOMConfiguration to HierarchicalXMLConfiguration. The elements
  parsed by the ConfigurationFactory have been changed accordingly.
o Introduced a ConversionException thrown when the value of a property is
  compatible the type requested. It replaces the ClassCastException and the
  NumberFormatException thrown previously.
o Update build to not include test configuration files in resulting jar.
o Refactored JNDIConfiguration to use AbstractConfiguration.
o Fixed bug 27427 by refactoring out the subset logic into a
o Apply ASL 2.0 license. Thanks to Jeff Painter for scripting the
o Removed "defaults" from BaseConfiguration. Defaults are now done via using
  a CompositeConfiguration, either directly or via a ConfigurationFactory.
  you want to save changes made to a Configuration, then you use a
  CompositeConfiguration and get back the inMemoryConfiguration that has the
  delta of changes. Added a bit of documentation on this.
o Bugzilla 16504 Enhancement: Configuration Comparator
o Bugzilla 26694 (BaseConfiguration: containsKey ignores default
  I have changed it so that now the defaults are paid attention to.
o Change all Vector objects to List objects.
o AbstractConfiguration addProperty now delegates to an abstract
  addPropertyDirect implemented by BaseConfiguration.
o Changed getString() method to throw a NoSuchElementException instead of ""
  if the configuration property doesn't exist.

  Removed features:

o ConfigurationXMLDocument removed until post 1.0.

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message