The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
0.618 (03.29.2013) - John Siracusa <siracusa@gmail.com>

    * Made compatible with perl 5.17.10 (RT 84279)

0.617 (12.30.2012) - John Siracusa <siracusa@gmail.com>

    * Added base 2.18 as a prerequisite to avoid a load-order bug that
      occurs with some older versions.
    * Preserve custom class attributes on label objects (RT 82333)
      (Patch by Tom Heady)

0.616 (05.09.2012) - John Siracusa <siracusa@gmail.com>

    * Added add_class(es) and delete_class(es) methods.
    * Added was_submitted() method to the submit button class.
    * Calling clear() on a hidden field now clears it.

0.615 (05.01.2012) - John Siracusa <siracusa@gmail.com>

    * Minor efficiency improvements in HTML generation.

0.614 (04.02.2012) - John Siracusa <siracusa@gmail.com>

    * Deprecated and undocumented the form_rank_counter() method.  It will
      be removed in a future release.
    * Fixed a bug that could cause a repeated form to get the wrong rank.

0.613 (04.02.2012) - John Siracusa <siracusa@gmail.com>

    * Added make_next_form() method to repeatable forms.
    * Documented the empty_is_ok() attribute of repeatable forms.

0.612 (03.26.2012) - John Siracusa <siracusa@gmail.com>

    * Worked around fatal error triggered by loading Rose::HTML::Form
      in the perl debugger in some older versions of perl. (e.g.,
      perl -I lib -d lib/Rose/HTML/Form.pm)

0.611 (11.16.2010) - John Siracusa <siracusa@gmail.com>

    * Added default HTML serialization for compound fields.
    * Removed documentation for nonexistent field_names() method.

0.610 (10.02.2010) - John Siracusa <siracusa@gmail.com>

    * Fixed a bad probe in form-nested.t that was causing spurious test
      failures.
    * Attempted to fix mro-c3.t test failures that I've thus far been
      unable to reproduce locally.

0.608 (10.01.2010) - John Siracusa <siracusa@gmail.com>

    * Silenced a warning in t/form-field.t
    * Clarified the precedence of object_from_form() initialization in cases
      where a parent form and sub-form have fields with the same local_name()
      (Reported by Christopher Masto)

0.607 (04.28.2010) - John Siracusa <siracusa@gmail.com>

    * Moved version number back to three places after the decimal in order
      to placate Unix package management systems.

0.6061 (11.19.2009) - John Siracusa <siracusa@gmail.com>

    * Altered tests to work around strange UTF-8 errors in some installations
      of perl.  (Thanks to Michael Lackhoff for help debugging.)

0.606 (11.16.2009) - John Siracusa <siracusa@gmail.com>

    * Overhauled inheritance to fix "Inconsistent hierarchy" mro c3 errors
      (RT 51168)
    * Added "use utf8" statements to ensure proper treatment of UTF-8 text
      stored in the __DATA__ sections of various modules (RT 29131)

0.605 (10.16.2009) - John Siracusa <siracusa@gmail.com>

    * Updated eval blocks to avoid stomping on $@ from an outer scope.

0.604 (09.14.2009) - John Siracusa <siracusa@gmail.com>

    * Fixed a bug that caused html() to fail when called on a form that
      contained a compound field.  (Reported by Will Hawes)
    * Make sure custom validator is called from DateTime fields.

0.603 (05.06.2009) - John Siracusa <siracusa@gmail.com>

    * Fixed a bug that cause the class attribite on label tags not to
      be cleared correctly.  (Reported by Denis Moskowitz)

0.602 (02.22.2009) - John Siracusa <siracusa@gmail.com>

    * Fixed an HTML escaping bug caused by overload's interaction with
      Rose::Object's Class::XSAccessor support.
    * Made Rose::HTML::Form's inherited html() and xhtml() methods do
      something vaguely sensible.  (Inspired by Christof Krüger)

0.601 (01.09.2009) - John Siracusa <siracusa@gmail.com>

    * Fixed an uninitialized value warning in Rose::HTML::Text.

0.600 (12.13.2008) - John Siracusa <siracusa@gmail.com>

    * Added localization support.
    * Added private library support.
    * Rose::HTML::Form::Field::PopUpMenu's internal_value() is now 
      unconditionally singular, and undef when no items are selected.
    * Fixed a bug in Rose::HTML::Image that made detection of image 
      sizes dependent on method call order.  (Reported by Sean Allen)
    * Added mod_perl 2.x support to Rose::HTML::Image.  (Reported by 
      Sean Allen)

0.555 (10.22.2008) - John Siracusa <siracusa@gmail.com>

    * Fixed a memory leak in group fields (RT 38837)
    * Corrected documentation and implementation of init_with_objects().

0.554 (05.28.2008) - John Siracusa <siracusa@gmail.com>

    * Added automation for repeatable sub-forms.
    * Made Rose::HTML::Object suitable for generic HTML building by adding
      parent/child/descendant and related methods.
    * Extended and documented child-related methods to form and field classes.
    * Added the local_fields() method.  (Suggested by Zbigniew Lukasiak)
    * Adding items to grouped fields (e.g., checkbox groups) inside named
      forms no longer causes an error.  (Patch by Kevin McGrath)
    * Fixed a bug that prevented full field detection in compound fields
      with checkable sub-fields (e.g., radio buttons and checkboxes)
    * Added empty_is_ok attribute to ease the handling of optional sub-forms.
    * Added the items_html_attr() family of methods for setting HTML 
      attributes on items in radio button, checkbox, and select box 
      group fields.  (Suggested by Jason Gottshall)
    * Made (x)html_error_formatter a get_set_init attribute.

0.553 (02.25.2008) - John Siracusa <siracusa@gmail.com>

    * Changed mailing list URLs.

0.5521 (01.30.2007) - John Siracusa <siracusa@gmail.com>

    * Fixed typos in Form POD.

0.552 (12.13.2007) - John Siracusa <siracusa@gmail.com>

    * Fixed handling of empty string values in the Numeric field class.
    * Corrected some typos in the documentation.

0.551 (12.10.2007) - John Siracusa <siracusa@gmail.com>

    * Added the ability to hide, show, and delete grouped items (options, 
      checkboxes, radio buttons, etc.)
    * Form prepare() now calls subform prepare() methods.
    * Fixed a bug that caused group fields in nested forms to have incorrect
      HTML "name" attributes.  (Reported by Daniel Koch)
    * Removed dependency on Scalar::Defer due to an incompatibility with
      Scalar::Defer 0.11 See: http://rt.cpan.org/Ticket/Display.html?id=31039

0.550 (10.16.2007) - John Siracusa <siracusa@gmail.com>

    * Added id and class attributes to hidden fields generated from
      non-hidden fields.
    * Deferred evaluation of parents for grouped items.
    * Corrected substring-based value coalescing in some date/time fields.
      (Reported by Tobias Kremer)
    * Added fix for perl 5.10 (Patch by RJBS)

0.549 (07.21.2007) - John Siracusa <siracusa@gmail.com>

    * Added Bulgarian localization, translated by Svilen Ivanov.
    * Added a numeric field class.  (Patch by Denis Moskowitz)
    * Corrected html_field() class HTML attribute value.
    * Added the set_error() and unset_error() methods.
    * Corrected error messages for Integer fields.
    * Connected Form's prepare() method with the correct implementation.
    * Made DateTime fields more flexible about handling infinity.
    * Fixed a bug that caused valid HTML attributes to be rejected by
      form objects.  (Reported by Uwe Voelker)
    * Improved built-in maxlength validation.

0.548 (05.04.2007) - John Siracusa <siracusa@gmail.com>

    * Added prepare() methods to Field and Form.
    * Added a was_submitted() method to Form.
    * Expanded the powers of the field_value() method in the Form class.
    * Added more flexible syntax for specifying choices in group fields
      (radio button groups, select boxes, etc.)
    * Added maxlength limit to TextArea.
    * Added a disabled() method to the Compound field base class.
    * Changed the behavior of internal_value() on RadioButtonGroup objects
      to return the selected value in scalar context, rather than a reference 
      to an array.
    * Changed the behavior of internal_value() on SelectBox objects to
      return an array ref in scalar context only when multiple() is true.
    * Fixed a TextArea bug that prevented errors from showing up in
      the html() and xhtml() output.  (Reported by Drew Taylor)
    * Silenced an uninitialized value warning in Rose::HTML::Form.
      (Reported by Peter Karman)

0.547 (02.23.2007) - John Siracusa <siracusa@gmail.com>

    * Eliminated redundant validation of fields in nested forms.
    * Made is_empty() smarter about honoring the trim_spaces() setting.
    * Pop-up menus and other group-type fields now correctly clear errors
      on reset() and clear().
    * Fixed a bug that caused option containers to fail to display hidden
      fields when a selected option had a false, but defined value.
      (Reported by Andrei Kozovski)
    * Fixed a bug that caused a fatal error when requesting a subfield of a
      compound field from a form that does not contain the parent field.
    * Fixed a bug that caused input_value() in on/off groups to treat any
      reference as an array reference.  (Reported by Derek Watson)

0.546 (01.15.2007) - John Siracusa <siracusa@gmail.com>

    * Fixed a bug that prevented params() from correctly cascading to
      nested forms.
    * Added a field_value() method to the Compound field class.
      (Suggested by Guillermo Roditi)
    * Added a cascade parameter to validate(), which defaults to true.
      (Suggested by Guillermo Roditi)

0.545 (12.08.2006) - John Siracusa <siracusa@gmail.com>

    * Added param_exists_for_field() method to Rose::HTML::Form.
    * Added positive() and negative() methods to integer fields.
    * Fixed a bug that caused validation to fail for certain compound 
      fields with labels.  (Reported by Guillermo Roditi)
    * Improved error messages for empty, split datetime fields.
    * Added class mapping for the "int" and "integer" field types.
    * Corrected the construction of the string overflow error message.
    * Improved importing of message constants.
    * Fixed a bug that caused a field in a nested form with the same
      name as a field in its parent form to become invisible.
    * Made nested form/field name conflicts fatal.

0.544 (11.29.2006) - John Siracusa <siracusa@gmail.com>

    * Added a field_value() method to Rose::HTML::Form.  (Suggested by
      Guillermo Roditi)
    * Added validation and an error message for text field input that
      exceeds maxlength.  (Patch by Cees Hek)
    * Added the "disabled" boolean attribute to SelectBox and PopUpMenu.
      (Reported by Andrei Kozovski)

0.543 (11.22.2006) - John Siracusa <siracusa@gmail.com>

    * Removed a stray reference to Scalar::Defer, which is not
      a prerequesite.  (Reported by Sebastian Riedel)

0.542 (11.07.2006) - John Siracusa <siracusa@gmail.com>

    * Fixed localization inheritence for checkboxes, options, and
      other nested, labeled elements.

0.541 (10.20.2006) - John Siracusa <siracusa@gmail.com>

    * Added German localization, translated by Uwe Voelker.
    * Added French localization, translated by Jacques Supcik.
    * Corrected some of the English error messages.

0.54 (10.06.2006) - John Siracusa <siracusa@gmail.com>

    * Added the has_error() method.
    * Added special handling to object_from_form() for checkboxes that
      set boolean columns in Rose::DB::Object-derived objects.
    * The xhtml_table() method for checkbox and radio button groups now
      correctly returns XHTML markup.  (Reported by Jacques Supcik)
    * Restored the field_names() method, making it call the newly documented
      field_monikers() method.  (Reported by Andrei Kozovski)
    * Nesting a field or form within itself now results in a fatal error
      instead of an infinite loop.
    * Preliminary localization infrastructure created.  (No public APIs
      are available yet.)

0.53 (06.14.2006) - John Siracusa <siracusa@gmail.com>

    * Added Script, Link, and Anchor tag classes.
    * Added missing documentation for xhtml_error().
    * Fixed a bug that caused some compound date/time fields to consider
      empty strings as "non-empty" values.  (Reported by Guillermo Roditi)

0.52 (03.08.2006) - John Siracusa <siracusa@gmail.com>

    * Added a children() method to Rose::HTML::Object and all derived 
      classes to provide uniform access to sub-objects.
    * Added Rose::HTML::Form::Field::Integer.

0.51 (03.02.2006) - John Siracusa <siracusa@gmail.com>

    * Added CGI and Apache integration methods to Rose::HTML::Form: 
      params_from_cgi(), params_from_apache(), init_fields_with_cgi(), 
      and init_fields_with_apache().
    * Tweaked the copy/reference semantics of the params() method in
      Rose::HTML::Form.
    * Made some small fixes and additions to the documentation.

0.50 (02.22.2006) - John Siracusa <siracusa@gmail.com>

    * Added the ability to nest forms.
    * Added a more concise syntax for adding fields to forms.
    * Revised sub-field addressing to accommodate sub-form addressing.
    * Added choices() aliases for the various divergently-named 
      radio_buttons(), checkboxes(), and options() methods.
    * Big version number bump to signify substantial progress towards 1.0.

0.34 (01.17.2006) - John Siracusa <siracusa@gmail.com>

    * Added a size() attribute to the text area field.
    * Corrected the POD for the start/end date fields.

0.33 (01.13.2006) - John Siracusa <siracusa@gmail.com>

    * Fixed a bug in input_value() on hidden fields that caused incorrect
      html() and xhtml() results.  (Reported by Sean Davis)
    * Compound datetime fields now correctly indicate invalid data when
      partially filled out.  (Reported by Sean Davis)

0.32 (12.30.2005) - John Siracusa <siracusa@gmail.com>

    * Added a rank() attribute to field objects, and a rank_counter()
      to forms.  Fields are ranked in the order that they are added to
      the form.  Subclasses can override compare_fields() to sort based
      on this rank.

0.31 (12.27.2005) - John Siracusa <siracusa@gmail.com>

    * Field order can now be customized in Rose::HTML::Form subclasses
      by overriding the new compare_fields() method or the revised 
      field_names() method.

0.30 (11.08.2005) - John Siracusa <siracusa@gmail.com>

    * Adjusted tests to pass despite a backward-incompatible change
      in HTML::Entities as part of the HTML::Parser 3.46 release.
    * Big version number bump.

0.027 (10.23.2005) - John Siracusa <siracusa@gmail.com>

    * Fixed a bug that caused the incorrect initialization of compound
      fields nested 3 or more levels deep.

0.026 (10.22.2005) - John Siracusa <siracusa@gmail.com>

    * Documented value/label pair argument format for select boxes,
      pop-up menus, and checkbox and radio button groups.

0.025 (10.21.2005) - John Siracusa <siracusa@gmail.com>

    * Fixed a bug that caused a fatal error when passing name/value
      pairs to the options() method of option containers.

0.024 (10.10.2005) - John Siracusa <siracusa@gmail.com>

    * Fixed POD links and altered POD formatting.
    * Added support information and links to selected modules.

0.023 (10.09.2005) - John Siracusa <siracusa@gmail.com>

    * Fixed compound field renaming bug.

0.022 (08.20.2005) - John Siracusa <siracusa@gmail.com>

    * POD fixes.

0.021 (06.28.2005) - John Siracusa <siracusa@gmail.com>

    * Added set field.

0.02 (06.27.2005) - John Siracusa <siracusa@gmail.com>

    * Added support for multi-valued internal values.
    * Added support for fields with partial values (e.g., a compound time 
      field with just an hour and an AM/PM specifier filled out.)
    * Shored up support for deeply-nested compound fields.
    * Added hour, minute, second, start date, end date, and date range fields.

0.0143 (05.02.2005) - John Siracusa <siracusa@gmail.com>

    * Added scalar context to the input_value() call in init_with_object(),
      and to the deflate_value() call in output_value().
    * Fixed mistakes in TextArea documentation.

0.0142 (04.27.2005) - John Siracusa <siracusa@gmail.com>

    * Added build_on_init() method to form objects.

0.0141 (04.22.2005) - John Siracusa <siracusa@gmail.com>

    * Added class="required" to the label tag of required fields.

0.014 (04.22.2005) - John Siracusa <siracusa@gmail.com>

    * Added functionality to the value_label() method of on/off field 
      groups and restored the original meaning of the label() method 
      for those fields.

0.0132 (04.21.2005) - John Siracusa <siracusa@gmail.com>

    * Fixed a bug that caused a misleading error message when trying to
      select multiple items in a pop-up menu.

0.0131 (12.30.2004) - John Siracusa <siracusa@gmail.com>

    * Added code to tests to drop back to UTC time zone if the local time
      zone cannot be determined (e.g., on Win32)
    * Added warnings for ancient versions of DateTime.

0.013 (12.07.2004) - John Siracusa <siracusa@gmail.com>

    * Fixed some tests that relied on keys()/values() order.

0.012 (11.14.2004) - John Siracusa <siracusa@gmail.com>

    * Added copyright info.  Versions 0.01 and 0.011 removed.

0.011 (11.14.2004) - John Siracusa <siracusa@gmail.com>

    * Added missing prerequisite (Rose::URI)

0.01 (11.13.2004) - John Siracusa <siracusa@gmail.com>

    * Initial release.