<commit_before>$Id$


                          Commons Digester Package
                                Version 1.7
                               Release Notes


INTRODUCTION
============

This is a minor bugfix and maintenance release. A few small features have been added.
New projects are encouraged to use this release of digester, but there is no urgency
for existing projects to upgrade; Digester 1.6 has proven to be a stable release.

This release is 100% binary and source compatible with the previous release.

IMPORTANT NOTES
===============
* The jakarta commons project has migrated to the Subversion version control system
  (previously, CVS was used). There should be no effect on users of the Digester
  library, but obviously the process of examining the latest source code, and of
  creating patches for Digester has now changed. Please see the jakarta commons
  website for details (http://jakarta.apache.org/commons).

Dependencies
=============
Release 1.7 has the same dependencies as release 1.6.

Compatible Dependency Sets:
   Digester 1.7 + Logging 1.0.x + BeanUtils 1.x + Collections 2.x
   Digester 1.7 + Logging 1.0.x + BeanUtils 1.x + Collections 3.x
   Digester 1.7 + Logging 1.0.x + BeanUtils 1.7

NEW FEATURES
=============

Improved Documentation
----------------------
As usual, documentation has improved in this release. 

Minor Javadoc improvements occur in the following classes:
   Rule, RulesBase, ExtendedBaseRules,
   NodeCreateRule, CallMethodRule, CallParamRule, SetNextRule

The javadoc package documentation (package.html) has also had minor
updates to the following topics:
  * How Digester can be used as a SAX content handler.
  * How wildcard rules are ignored if non-wildcard matches
    are available.

Digester
--------
Named stacks are now cleared by the clear() method. Note that it is recommended
that a new Digester instance be created for each document parsed, hence this
should not be necessary.

Method resetRoot has been added. Again, this should only be relevant for programs
that attempt to reuse a single Digester instance to process multiple documents
(which is not recommended).

Method peek(String stackname, int n) has been added for consistency, to allow
access to arbitrary objects on named stacks. Thanks to <NAME> for the
suggestion (bugzilla #33873).

Method setCustomContentHandler/getCustomContentHandler have been added so
rule classes can redirect SAX events without setting the parser's
contentHandler method during a parse. This new feature was then used to
resolve bug#34819.
     
SetNestedPropertiesRule
------------------------
The toString method has been improved, for better logging diagnostics.
Patch provided by Wendy Smoak.

The addressbook sample now demonstrates use of SetNestedPropertiesRule.

SetPropertiesRule
-----------------
A new ignoreMissingProperty flag can be set false to cause
an exception to be generated when the xml contains an
attribute not available on the target bean. Patch contributed
by <NAME>.

Xmlrules Enhancements
----------------------
The xmlrules module has had a number of minor updates to provide access
to functionality that was previously accessable only via the digester
API:
     -- add set-nested-properties-rule tag. Much of this
        patch provided by Wendy Smoak.

     -- add targetoffset attribute to call-method-rule tag,
        to allow the target object whose method is invoked
        to be any object on the digester stack. Patch by
        Wendy Smoak (bugzilla #33550).

     -- add stack-index attribute to call-param-rule tag,
        to allow passing any object on the digester stack
        as a parameter to a target method. Patch by
        <NAME>, inspired by Blake Meike.

The digester-rules.dtd file has also been slightly cleaned up to
remove unnecessary duplication.

Plugins Enhancements
--------------------
PluginCreateRule can now have an associated "factory" object for the Rules
object created at each "plugin point". This allows Rules implementations
other than RulesBase to be used with plugins. It also gives user code the
chance to set up default Rule objects within the Rules object which will
apply to all plugins. This change affects classes PluginRules,
PluginCreateRule and (new class) RulesFactory.

BUGS FROM PREVIOUS RELEASE
==========================

Reports Addressed
------------------
#31393 SetNestedPropertiesRule causes StackOverflowError
       -- thanks to <NAME>

#28739 Problem with parse(File) on windows machines
       -- thanks to <NAME>

#34819 NodeCreateRule fails with Aelfred xml parser

Fixes without Bugzilla entries
------------------------------
* SetNestedPropertiesRule
     new SetNestedPropertiesRule("foo", null)
  was not ignoring element "foo".


DEPRECATIONS
============
None
<commit_msg>Update to current HEAD state (ie to 2005-09-10)<commit_after>$Id$


                          Commons Digester Package
                                Version 1.7.1-dev
                               Release Notes


*** Release notes current as of 2005-09-10

INTRODUCTION
============

This is a minor bugfix and maintenance release. A few small features have been added.
New projects are encouraged to use this release of digester, but there is no urgency
for existing projects to upgrade; Digester 1.7 has proven to be a stable release.

This release is 100% binary and source compatible with the previous release.

IMPORTANT NOTES
===============

none

Dependencies
=============
Release 1.7.1 has the same dependencies as release 1.7.

Compatible Dependency Sets:
   Digester 1.7 + Logging 1.0.x + BeanUtils 1.x + Collections 2.x
   Digester 1.7 + Logging 1.0.x + BeanUtils 1.x + Collections 3.x
   Digester 1.7 + Logging 1.0.x + BeanUtils 1.7

NEW FEATURES
=============

Xmlrules Enhancements
----------------------
The xmlrules module has had the following updates to provide access
to functionality that was previously accessable only via the digester
API:
     -- node-create-rule tag added to provide access to NodeCreateRule.
        Patch provided by <NAME>; bugzilla 36482

BUGS FROM PREVIOUS RELEASE
==========================

Reports Addressed
------------------

Fixes without Bugzilla entries
------------------------------
* digester-rules.dtd file defined xml attribute "param" for xml element
  object-param-rule. This has been removed as it wasn't being used.

DEPRECATIONS
============
None

{'fraction_non_alphanumeric': 0.10260408545142678, 'fraction_numerical': 0.0173085919226571, 'mean_word_length': 3.0543615676359037, 'pattern_counts': {'":': 0, '<': 9, '<?xml version=': 0, '>': 9, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 6}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1408699', 'n_tokens_mistral': 1692, 'n_tokens_neox': 1544, 'n_words': 796}