+2.37
+ 2012-02-09
+ * (Validate) Make match_2 work in the javascript layer (as shown in perldoc)
+ * (Validate) Add int, uint, and num types with range checking on int and uint
+ * (Validate) Allow for custom => sub { my ($k, $v) = @_; die "Always fail\n" } to pass the result of the failure via the value of die.
+ * (Validate) Allow for custom_js:function (args) { throw "Always fail ("+args.value+")" } which passes the error message of the test as the fail message
+ * (Validate) Allow for type, enum, and equals to short circuit (don't run match, compare, length, or custom checks if type fails)
+ * (App) Fix the test suite to not require installation of CGI
+ * (App) Add CGI::Ex::App::Constants module supporting constants as a source of documentation
+ * (App) Allow for access to constants via use CGI::Ex::App qw(:App); or use MyApp qw(:App);
+
+2.36
+ 2010-06-10
+ * (Auth) Make delete_cookie always delete, even for session Apps.
+
+2.35
+ 2010-05-24
+ * (Auth) More robust cookie reading and writing and deleting.
+ * Workaround CGI::Cookie->parse weird empty cookie implementation.
+ * (Auth) Allow cookie_domain to be modified more gracefully.
+ * (Auth) Consider case with multiple cookies for the same name.
+
+2.34
+ 2010-04-23
+ * (Auth) Don't attempted to decode base64 armor unless use_base64
+
+2.33
+ 2010-04-01
+ * (Auth) Allow for custom form user vs valid cookie check
+
+2.32
+ 2010-02-25
+ * (Validate) Allow for default to be an arrayref
+
+2.31
+ 2010-02-24
+ * (Auth) allow for secure flag via cookie_secure
+ * Allow validate.js to use change and blur on individual elements
+ * Allow validate.js to not strip trailing whitespace on change
+ * (Validate) Allow more items in local parts
+ * (Ex) Make sure make_form doesn't die on non-arrayref keys
+
+2.27
+ 2008-09-15
+ * (App) Fix morph history during errors or other direct morph calls
+ * (App) Allow for step=foo/bar to look for file foo/bar.html
+ * (App) Allow for step=foo/bar to use internal name of foo__bar
+ * (App) Allow for step=foo/bar to morph to package App::Foo::Bar
+ * (Validate) Added the set_all_hook and clear_all_hook in validate.js
+ * (Validate) Streamline validate
+ * (Validate) Added generate_form to Validate
+ * (App) Added hooks in App to generate_form
+ * (Validate) Allow for "error" parameter in validation that is the general error message
+ * (Auth) Allow passing filename in Auth login_header, login_form, login_script and login_footer
+ * (Auth) Allow verify_token to be easily overridable
+ * (Auth) Allow passing cookie_domain, cookie_path, cookie_no_expires (force session cookie) in Auth for much more granular control
+ * (Auth) Allow for passing user without password to verify user matches a previously set cookie
+ * (App) Remove allow_nested_morph since allow_morph is more than capable of filling this role
+ * (App) Allow step name to be "jumped" to even if not in the path
+ * (App) Make jump unmorph if in the middle of lineage, deprecates some early morph cases.
+ * (Auth) Don't blank out form user field on failure (fixed bug in Auth login_hash_common)
+ * (App) Cleanup run_hook_as
+ * (App) Allow path_info_map to have second argument be a code ref that is passed form and matches
+ * (Validate) validate.js updates to make in sync more with Validate.pm (such as fields and order are synonymous)
+ * (Validate) Make validation names prettier by default
+
+2.26
+ 2008-07-21
+ * (App) Error handling bug again (accept refs in $@ again)
+
+2.25
+ 2008-07-08
+ * (Validate) Fix bugs in was_valid checking of Validate
+ * (JSONDump) Quote more keys in JSONDump
+ * (App) Allow for passing a coderef instead of the step name to run_hook
+ * (App) Handle fatal errors more gracefully
+ * (App) Make morph and unmorph calls be hooks
+ * (App) Allow allow_morph to return 2 (which requires a morph)
+ * (App) Add run_hook_as functionality
+
+2.24
+ 2008-02-26
+ * Allow for smith.name
+ * Simplify some code in App.
+ * Allow for post_navigate to get called even in case of error.
+ * Added morph_base to App
+ * Added validate_when_data hook.
+ * Added samples/app/app1 which is a path based application
+
+2.23
+ 2007-12-20
+ * Add the onevent load option - make sure validate_if figures into dependencies
+ * Add was_valid, had_error, and was_checked validation options
+ * Add vif_disable option.
+ * Pass more information to clear/set hooks using named args
+
+2.22
+ 2007-12-14
+ * Allow for no errors with a username of "0"
+ * Run hash_form hook before others so dump_history shows it in order of use
+ * Fix Validate error with passing in the field name
+ * Simplify and modernize validate.js
+ * Add onevent: change, blur and submit types.
+ * Add hooks and better overriding to valiate.js
+ * Cleanup Validate.pm pod
+ * Be sure Conf json read requires JSON
+
+2.21
+ 2007-10-18
+ * Add logout_hook to Auth
+ * Remove key_payload
+ * Only accept payload from cram styles
+ * Added disable_simple_cram to enforce protecting server generated payloads
+
+2.20
+ 2007-10-08
+ * Added success_hook and failure_hook to Auth (not documented)
+ * Fix precedence issue in conf reading in App (thanks to Krassimir Berov)
+ * Fix bug in validate.js with LOCAL_PART matching (thanks to Thomas den Braber)
+ * Add support for clear_on_error to validate.js (thanks to Thomas den Braber)
+
+2.19
+ 2007-10-05
+ * Make verify_token more granualar in Auth
+ * Added parse_token method and/or property
+ * Added verify_password method and/or property
+ * Added verify_payload method and/or property
+ * Fix filename based conf reading in App
+ * Added check_valid_auth, handle_success, handle_failure
+ key_loggedout, bounce_on_logout to Auth.
+
+2.18
+ 2007-07-24
+ * Merry Pioneer Day - http://en.wikipedia.org/wiki/Pioneer_Day_(Utah)
+ * Allow for check_valid_auth in App
+ * Allow for set_cookie, delete_cookie, location_bounce to be overridden in Auth
+ * Add get_valid_auth to the history
+ * Massive refactor of CGI::Ex::App
+ * Rename conf_ext to ext_conf to be similar to ext_print and ext_val
+ * Add undocumented conf_die_on_fail (which defaults to true)
+ * Fix bug in handle_error
+ * Allow empty hashrefs passed to Validate - (broken in 2.17)
+ * Add tests to help with Devel::Cover coverage.
+
+2.17
+ 2007-06-26
+ * Add load_conf and conf* methods to App to allow for easier external configuration
+ * Add more documentation
+ * Allow print_content_type('text/html', 'utf-8')
+ * Allow App to pass mimetime and charset to print_out.
+ * Update path methods.
+
+2.16
+ 2007-06-21
+ * Add default __error step which is called by default handle_error method.
+ * Default base_dir_abs to '.'
+
+2.15
+ 2007-06-20
+ * Fix some warning issues with the Recipe sample in App
+ * Cleanup require_auth interface in App (you will want to
+ double check if you have overwritten require_auth in your
+ application to make sure your implementation is still compatible)
+ * Require latest Template::Alloy
+
2.14
2007-06-12
* Moved CGI::Ex::Template to Template::Alloy