0.03006 2008-12-03 - New DateTime element. - New MinRange, MaxRange, File::MinSize, File::MaxSize constraints to provide more specific error messages. - New File::Size constraint methods: min_kilobyte(), max_kilobyte(), min_megabyte(), max_megabyte(). - New config_file_path() method, used by load_config_file() and load_config_filestem(). - New field_order() method for Date elements. - New I18N translations for Romanian, Russian, Ukranian. - New MultiForm system for multi-page forms (not yet documented, file upload tests skipped due to test problems on MS Win32). - Length, Range and File::Size constraints now pass min() and max() values as I18N args, for use in strings. - DependOn and Equal constraints now pass the root field label as I18N arg, for use in strings. - Checkbox + Radio elements now default to value(1). - Constraint when() method now works with nested_names(). - Using test aggregate to speed-up tests. 0.03005 2008-09-08 - New ComboBox element. - Don't use Pod::Help - some people were getting test failures. 0.03004 2008-09-03 - New reCAPTCHA element. - New pt_br (Brazilian Portuguese) translation from Daniel Nicoletti. - New load_config_filestem() method for loading config files without having to specify the file extension. - New html_formfu_dumpconf.pl script, for viewing config files structure. - Assorted optimizations, providing over 20% runtime speedup. - Radio element now inherits from Checkbox, to remove duplicated code. - Radiogroup element now inherits from Checkboxgroup, to remove duplicated code. - checkboxgroup_tag template file has been removed - Checkboxgroup now just uses radiogroup_tag file. - All non-english I18N packages now correctly "use utf8;" - load_config_file() now switches on Config-General's UTF8, so that files are correctly decoded. - Regex filter now has an eval() method, which if true, eval's the contents of replace(), to allow the use of $1 variables or any other perl expression. - Allow languages() to be a single value, rather than just an arrayref. - CompoundJoin filter now ignores empty values. - examples/unicode updated. - Manual-Unicode cat. config examples changed to use MyApp->config(). - Stop warnings for undefined attributes - reported by Rod Taylor. - Documentation improvements by Ansgar Burchardt. 0.03003 2008-08-21 - Form and elements inside template files now have access to original object via self.object - Having a named Multi block within a Block with nested_name set, now works. - New Element method is_block() which is true for Block elements. - Multi no longers sets is_field(0) - it's now true for both is_field() and is_block(). - prereqs - set minimum version of Exporter.pm that exports import() 0.03002 2008-08-11 - Deprecate element_defaults() method. - New default_args() method. - New CompoundSprintf filter. - New DateTime constraint. - New field method default_empty_value(). - New I18N translations for Danish, French and Italian. - Added time_zone support to Inflator::DateTime - Documented that process() must be called before render() - this has been the case since 0.03000. 0.03001 2008-06-20 - Require version 0.38 of DateTime, for string overloading support. 0.03000 2008-06-19 - Field container_tag() now defaults to 'div' rather than 'span' to provide better layout without CSS. - Multi block no longer sets container_tag() to 'span' - defaults to 'div'. - HTML::FormFu::Model::DBIC moved out into a separate distribution. - Models now accessed through new form method: model(), with accompanying methods: default_model() and model_config. - Deprecated form methods: model_class(), defaults_from_model(), save_to_model(). - Model methods renamed to: default_model(), default_values() and update(). - New model method: create(). - Deprecated element method: db(). - Bugfixes for perl 5.10.0 (missing imports). - Bugfix: insert_before() and insert_after() now check if the object is already a child, and if so, removes it first. Reported by Ferruccio Zamuner. - Bugfix: update() many_to_many multi-value fields where 'default_column' included the table name (or 'me.') failed. - Bugfix: make inflators work with multiple submitted values. - Bugfix for Bool constraint: use '?' quantifier, not '*'. - Bugfix in Email constraint: ensure Email::Valid->address() is called in scalar context. - New Split and CompoundJoin filters. - New CompoundDateTime inflator. - New CompoundSplit and CompoundDateTime deflators. - New Plugin system (see tests, not yet documented) and StashValid plugin. - New form methods: stash_valid(), params_ignore_underscore() and tmp_upload_dir(). - New method for _Group fields: empty_first_label(). - Multi->render_data() now builds itself before it's children, so that deflators on the Multi work. - insert_before() and insert_after() now first removes the object if it's already a child of the target. - Callback filter and transformers now receive $params as a 2nd argument. - _Group field options() now supports value_xml, value_loc, label_xml and label_loc args. - get_* methods (fields, elements, constraints, etc) now accept any valid method-name as a search parameter. - add default_natural() method to Date element, allowing the use of DateTime::Format::Natural to parse dates such as "today" or "yesterday". - when() method for Constraints can now accept a callback - Transformer callbacks now get $params as second argument (as Constraints aready were getting) - Form method add_valid() now expects a full nested-name. - auto_id() now translates "%n" into the full nested-name. - Add a END block to DBICTestLib that cleans up the t/test.db 0.02004 2008-02-22 - Incompatible Change: $upload->headers no longer returns a hashref, it now returns a HTTP::Headers object. Tests for $upload->headers->{'Content-Type'} changed to $upload->headers->content_type. Tests for $upload->headers->{'Content-Length'} changed to $upload->headers->content_length. - Catalyst upload object now provides basename(), copy_to(), link_to(), size(), tempname() and type() methods which delegate to the Catalyst::Request::Upload object. - The original Catalyst::Request::Upload objects can be retrived with the catalyst_upload() method. - CGI and CGI::Simple upload objects provide size() and type() methods. - New Constraints: File::Size, File::MIME and File. - 'Required' and other constraints now work with file uploads. - Spanish I18N added. - Support for DBIx::Class schema methods which don't correspond to a database column or relationship. - Fixed test failures due to hardcoded date element output expecting the year 2007. - Fixed circular references in upload objects. 0.02003 2007-12-20 - Bugfix for has-many rels in defaults_from_model() - Added Template.pm back into prereqs - Repeatable element, increment_field_names() is now true by default - Fixed javascript rendering in _Field 0.02002 2007-12-12 - Fixes required for perl 5.10.0 0.02001 2007-12-12 - Bugfix for save_to_model() in HTML::FormFu::Model::DBIC 0.02000 2007-12-12 - New HTML::FormFu::Model::DBIC module to replace DBIx::Class::HTML::FormFu - New Repeatable block element - New "nested" params support. Form and Block elements have a new nested_name() method. Field elements have new nested(), nested_name() and nested_names() methods. Doesn't require CGI::Expand or Catalyst::Plugin::NestedParams - Uses new "string" renderer by default - doesn't use template files, Generated markup still exactly the same, Set render_method("tt") to use the template files (old behaviour), render_class_args() renamed to tt_args(), Template files now installed into @INC path by File::ShareDir, INCLUDE_PATH no longer set by default - New Checkboxgroup element. Works much like Radiogroup, but with checkboxes - Support multiple yaml documents in a single file - calls populate() once for each document - Date element now uses names of the form "date_day" instead of "date.day", so as to not conflict with the new nested-params. This should only affect you if your client-side code (CSS, JS) references the field names - Group elements (Select, Radiogroup, Checkboxgroup) now support a 'label_loc' argument, to provide the item labels via localize() - *_loc() methods now accept an arrayref argument, to allowing setting in YAML config files - render() now returns a string, not an object. $form->render->start_form() must be changed to $form->start(), $form->render->end_form() must be changed to $form->end, $form->render->field('foo') must be changed to $form->get_field('foo'), $form->render->hidden_fields() must be changed to $form->hidden_fields() - Bugfix: OutputProcessor::Indent was indenting closing tag, when it's value was empty (RT 30239) - Bugfix: Objects were getting wrong parents during clone() and auto_fieldset() 0.01006 2007-10-23 - render_class_args->{INCLUDE_PATH} now defaults to 'root' if it's not set - previously was only set if the entire render_class_args hashref was empty - New StripWhitespace OutputProcessor - New CopyValue Filter - New Cookbook and Unicode manual pages - New unicode example Catalyst application - New portuguese I18N translation - Callback Filters, Constraints and Validators now accept a fully qualified subroutine name instead of a code-ref - Date element month names from DateTime::Locale are run through ucfirst - Documentation improvements - Bugfix: forced errors are now displayed 0.01005 2007-09-21 - New Indent "output processor" to pretty-print output - New force_default() method on fields - New when() method for all Constraints - Behaviour change for MinMaxFields Constraint 0.01004 2007-09-12 - New html_formfu_deploy.pl helper program - AutoSet Constraint now works with Select optgroups - Added vertically-aligned CSS example - Fix circular reference / memory leak - Documentations fixes / additions - require v0.7901 of DateTime::Format::Builder to fix memory leak 0.01003 2007-08-22 - Add missing prereq to Makefile.PL 0.01002 2007-08-22 - Fixed missing imports causing errors with perl 5.9.x 0.01001 2007-08-22 - First non-dev release - All Element names now follow CamelCase convention - Key format of I18N files changed - New Date element - Use Class::C3 instead of SUPER - Automatically set UTF-8 encoding on TT - Support for Template::Alloy instead of TT 0.01000_02 2007-07-02 - Updated templates in tt_files.pm - 0.01000_02 was out of date 0.01000_02 2007-07-02 - Added YAML::Syck to dependencies - Pod fix 0.01000_01 2007-06-29 - First CPAN dev release