3 * (Validate) Make match_2 work in the javascript layer (as shown in perldoc)
4 * (Validate) Add int, uint, and num types with range checking on int and uint
5 * (Validate) Allow for custom => sub { my ($k, $v) = @_; die "Always fail\n" } to pass the result of the failure via the value of die.
6 * (Validate) Allow for custom_js:function (args) { throw "Always fail ("+args.value+")" } which passes the error message of the test as the fail message
7 * (Validate) Allow for type, enum, and equals to short circuit (don't run match, compare, length, or custom checks if type fails)
8 * (App) Fix the test suite to not require installation of CGI
9 * (App) Add CGI::Ex::App::Constants module supporting constants as a source of documentation
10 * (App) Allow for access to constants via use CGI::Ex::App qw(:App); or use MyApp qw(:App);
14 * (Auth) Make delete_cookie always delete, even for session Apps.
18 * (Auth) More robust cookie reading and writing and deleting.
19 * Workaround CGI::Cookie->parse weird empty cookie implementation.
20 * (Auth) Allow cookie_domain to be modified more gracefully.
21 * (Auth) Consider case with multiple cookies for the same name.
25 * (Auth) Don't attempted to decode base64 armor unless use_base64
29 * (Auth) Allow for custom form user vs valid cookie check
33 * (Validate) Allow for default to be an arrayref
37 * (Auth) allow for secure flag via cookie_secure
38 * Allow validate.js to use change and blur on individual elements
39 * Allow validate.js to not strip trailing whitespace on change
40 * (Validate) Allow more items in local parts
41 * (Ex) Make sure make_form doesn't die on non-arrayref keys
45 * (App) Fix morph history during errors or other direct morph calls
46 * (App) Allow for step=foo/bar to look for file foo/bar.html
47 * (App) Allow for step=foo/bar to use internal name of foo__bar
48 * (App) Allow for step=foo/bar to morph to package App::Foo::Bar
49 * (Validate) Added the set_all_hook and clear_all_hook in validate.js
50 * (Validate) Streamline validate
51 * (Validate) Added generate_form to Validate
52 * (App) Added hooks in App to generate_form
53 * (Validate) Allow for "error" parameter in validation that is the general error message
54 * (Auth) Allow passing filename in Auth login_header, login_form, login_script and login_footer
55 * (Auth) Allow verify_token to be easily overridable
56 * (Auth) Allow passing cookie_domain, cookie_path, cookie_no_expires (force session cookie) in Auth for much more granular control
57 * (Auth) Allow for passing user without password to verify user matches a previously set cookie
58 * (App) Remove allow_nested_morph since allow_morph is more than capable of filling this role
59 * (App) Allow step name to be "jumped" to even if not in the path
60 * (App) Make jump unmorph if in the middle of lineage, deprecates some early morph cases.
61 * (Auth) Don't blank out form user field on failure (fixed bug in Auth login_hash_common)
62 * (App) Cleanup run_hook_as
63 * (App) Allow path_info_map to have second argument be a code ref that is passed form and matches
64 * (Validate) validate.js updates to make in sync more with Validate.pm (such as fields and order are synonymous)
65 * (Validate) Make validation names prettier by default
69 * (App) Error handling bug again (accept refs in $@ again)
73 * (Validate) Fix bugs in was_valid checking of Validate
74 * (JSONDump) Quote more keys in JSONDump
75 * (App) Allow for passing a coderef instead of the step name to run_hook
76 * (App) Handle fatal errors more gracefully
77 * (App) Make morph and unmorph calls be hooks
78 * (App) Allow allow_morph to return 2 (which requires a morph)
79 * (App) Add run_hook_as functionality
83 * Allow for smith.name
84 * Simplify some code in App.
85 * Allow for post_navigate to get called even in case of error.
86 * Added morph_base to App
87 * Added validate_when_data hook.
88 * Added samples/app/app1 which is a path based application
92 * Add the onevent load option - make sure validate_if figures into dependencies
93 * Add was_valid, had_error, and was_checked validation options
94 * Add vif_disable option.
95 * Pass more information to clear/set hooks using named args
99 * Allow for no errors with a username of "0"
100 * Run hash_form hook before others so dump_history shows it in order of use
101 * Fix Validate error with passing in the field name
102 * Simplify and modernize validate.js
103 * Add onevent: change, blur and submit types.
104 * Add hooks and better overriding to valiate.js
105 * Cleanup Validate.pm pod
106 * Be sure Conf json read requires JSON
110 * Add logout_hook to Auth
112 * Only accept payload from cram styles
113 * Added disable_simple_cram to enforce protecting server generated payloads
117 * Added success_hook and failure_hook to Auth (not documented)
118 * Fix precedence issue in conf reading in App (thanks to Krassimir Berov)
119 * Fix bug in validate.js with LOCAL_PART matching (thanks to Thomas den Braber)
120 * Add support for clear_on_error to validate.js (thanks to Thomas den Braber)
124 * Make verify_token more granualar in Auth
125 * Added parse_token method and/or property
126 * Added verify_password method and/or property
127 * Added verify_payload method and/or property
128 * Fix filename based conf reading in App
129 * Added check_valid_auth, handle_success, handle_failure
130 key_loggedout, bounce_on_logout to Auth.
134 * Merry Pioneer Day - http://en.wikipedia.org/wiki/Pioneer_Day_(Utah)
135 * Allow for check_valid_auth in App
136 * Allow for set_cookie, delete_cookie, location_bounce to be overridden in Auth
137 * Add get_valid_auth to the history
138 * Massive refactor of CGI::Ex::App
139 * Rename conf_ext to ext_conf to be similar to ext_print and ext_val
140 * Add undocumented conf_die_on_fail (which defaults to true)
141 * Fix bug in handle_error
142 * Allow empty hashrefs passed to Validate - (broken in 2.17)
143 * Add tests to help with Devel::Cover coverage.
147 * Add load_conf and conf* methods to App to allow for easier external configuration
148 * Add more documentation
149 * Allow print_content_type('text/html', 'utf-8')
150 * Allow App to pass mimetime and charset to print_out.
151 * Update path methods.
155 * Add default __error step which is called by default handle_error method.
156 * Default base_dir_abs to '.'
160 * Fix some warning issues with the Recipe sample in App
161 * Cleanup require_auth interface in App (you will want to
162 double check if you have overwritten require_auth in your
163 application to make sure your implementation is still compatible)
164 * Require latest Template::Alloy
168 * Moved CGI::Ex::Template to Template::Alloy
169 * Template::Alloy is now required as a dependency
170 * Update some portions of App POD.
174 * Added full support for HTML::Template and HTML::Template::Expr.
175 * Added missing HTML::Template::Expr vmethods.
176 * Added support for using Text vmethods as top level items.
177 * Added SYNTAX configuration item.
178 * Added V2EQUALS configuration item.
179 * Broke Extra and HTE out to its own area.
180 * Added many more tests.
181 * Allow QR_PRIVATE to be false.
187 * Add NEGATIVE_STAT_TTL
188 * Add WRAPPER configuation
189 * Add ERROR and ERRORS configuration
190 * Cleanup handling of PRE_PROCESS and POST_PROCESS
191 * Add more tests for the file operations
192 * Cleanup some potential argument issues on cached USE and THROW
195 * Add more samples to App synopsis.
196 * Add VIEW directive support to Template.
197 * Update data storage to more easily support TT2 parsers.
198 * Add regex support in Template.
199 * Add CONFIG directive in Template.
200 * Better error reporting.
201 * Allow parser to parse all TT2 tests in TT2 test suite.
202 * Add V2PIPE configuration to provide backward support for TT2 non-inline pipes.
204 * Cleanup argument parsing to be more compatible with TT2.
207 * Allow for fully regex grammar based engine.
208 * Move to generic operator parse tree. All constructs are now only arrayrefs.
209 This should allow for easy porting to other languages.
210 * Allow for nested tags [% "[% 2 %]" | eval %].
211 * Added back in references in Template - but fast and simple.
212 * Allow for regex based TAGS.
213 * Allow for "unquoted" in TAGS.
214 * Catch parsing bug in "1 - + 2" in Template.
215 * Fix minor bug in Template qw() construct.
216 * Re-added ANYCASE support.
217 * Added V1DOLLAR support.
218 * Remove GROUP support from CGI::Ex::Validate.
219 * Allow for crypted passwords to work in Auth.
222 * Add more documentation about file paths
223 * Allow for base_dir_abs to return a single value, or an arrayref of values, or
224 a coderef that returns a single value or arrayref.
225 * Allow CGI::Ex send_status to work on mod_perl2.
226 * Add tests to cover all virtual methods in CGI::Ex::Template.
227 * Bring all virtual methods into line with TT2.18
230 * Allow for digits passed to %*s patterns in format, and fmt or CGI::Ex::Template
231 * Fix bug in validate.js to allow for non-existant fields (with replace)
232 * Warn clean in Validate.pm for non-existant field (with replace)
233 * Fix bug in validate.js with trim_control_chars - was broken entirely
234 * Add no_tag_splitting flag to JSONDump
235 * Allow for more types of numbers to be quoted in JSONDump
236 * Add path_info_map_base method to CGI::Ex::App
237 * Add path_info_map hook to CGI::Ex::App
238 * Updated and added much documentation to CGI::Ex::App
241 * Add clear_app method which flushes items pertaining to navigation.
242 * Allow for CGI::Ex::Template PLUGIN_BASE to be a scalar OR an arrayref.
243 * Add sort keys to DUMP directive
244 * Add trim_control_chars as a validate directive
245 * Allow for . in the QR_PRIVATE of Template
246 * Add dump_parse_expr to CGI::Ex::Template
247 * Fix JSONDump to handle more number cases
248 * Fix JSONDump to output more IE friendly JS
249 * Allow fill to work only with form elements with attributes
252 * Allow for JSONDump to swap --> to --"+">
253 * Fix memory issue in App with closures
254 * Remove weak_copy routine from Template (memory issue)
257 * Allow for CGI::Ex to be compatible with Mandrake and Fedora mod_perl 2, as well as debian mod_perl2
259 * Allow for CGI::Ex::Dump to localize the Data::Dumper options to not stomp on anybody elses toes.
260 * Update various perldoc bugs
261 * Fix JSONDump of \t and \r
262 * Change .as to .fmt to coincide with Perl6 (.as is still there - just not documented)
265 * Allow for items not in group order to get added to validation correctly in CGI::Ex::Validate.
266 * Add samples/index.cgi
267 * Fix samples/app/cgi_ex_* to actually work.
268 * Added CGI::Ex::JSONDump
269 * Change Validate to use JSONDump instaed of JSON
270 * Various perldoc and other bug fixes.
271 * Removed CGI-Ex.spec - use cpan2rpm or cpan2deb instead.
274 * Fix the associativity of operators in Template to match perl
275 * Allow for multiple prefix operators.
276 * Change name of parse_variable to parse_expr
277 * Change name of get_variable to play_expr
281 * Add failed_sleep to Auth
283 * Allow for conf_read and write errors to die - we really do need to have those bubble up.
285 * Allow for validate.js to work with existing onsubmit handlers of forms
286 * Added "as" virtual methods to Template
287 * Added Virtual Objects to Template
288 * Added self modifiers (*= etc) to Template
289 * Added increment and decrement (++ --) to Template
290 * Allow for scientific notation and hexidecimal in Template
291 * Added int, rand and random virtual methods to Template
294 * Added App refine_path hook.
295 * Added App destroy method.
296 * Fix CGI::Ex::Template perldoc.
299 * Added CGI::Ex::Template and test suites
300 * Allow for CGI::Ex::Template to be fully TT2 syntax compliant
301 * Re-implementation of CGI::Ex::Auth
302 * Allow for step to be automatically untainted during loop in CGI::Ex::App
303 * Fix base_dir_rel to work with "" as the dir in CGI::Ex::App
304 * Bug fixes in CGI::Ex::Fill
305 * Better perldoc in CGI::Ex::Fill
306 * Add named parameter function called fill in CGI::Ex::Fill
307 * DProfd CGI::Ex::Conf for improvements
308 * DProfd CGI::Ex::Validate for improvements
309 * Added conf_read and conf_write methods for Conf
310 * Cleanup of all of the test
312 * Add Array Prototype fixes from Eamon Daly
313 * Add examples and cleanup to CGI::Ex::App
314 * Cleanup hooks in App (add fill_args and template_args)
315 * Change run_hook syntax in App
316 * Add dump_history with more history information
317 * Integrate CGI::Ex::Auth with App
320 * Bug fix in validate (OR's were not working)
321 * Allow for checking for package existence without require in App
324 * Add add_to_ methods for swap, fill, form, common, and errors
325 * Swap the run_hook order of step and hookname
326 * Allow for untaint in CGI::Ex::Validate
327 * Allow for !field in equals of CGI::Ex::Validate
328 * Allow for return of names in CGI::Ex::Validate
329 * Allow CGI::Ex to work better with CGI/mod_perl1/mod_perl2
330 * Fix required => 0 in javascript
333 * Show more App perldoc examples
334 * Fix some App path bugs
337 * Allow for Conf to write to each of the types
340 * Show more App perldoc examples
341 * Fix some App path bugs
342 * Change some App method names
343 * Allow for App js_validation
344 * Allow for App validation redirection
347 * Let file path dependent tests succeed
348 * Allow for next current and previous steps in App
349 * Couple of warn cleans in App
352 * Make CGI::Ex::App->print really work with Template
353 * Fix very large javascript variable swapping bug
354 * Numerous upgrades to App
355 * Fix module access in CGI::Ex
356 * Allow validate to populate what_was_validated array
357 * Allow for App to cleanup crossed references
360 * Added set_path method
362 * Fix validate.js for select-multiple
363 * Fix validate.js for max_values
364 * Add min_in_set and max_in_set types for validate
365 * Add default for validate (sets default value)
368 * Allow swap_template to be called with one argument
369 * Added extended examples in t/samples/cgi_ex_*
370 * Remove dependency on CGI::Util (doesn't exists on some perls)
376 * Multiple fixes in Fill module
377 * Updates on perldocs (thanks to Simon Bellwood for bug reports)
378 * Addition of Dump (debug) module
379 * Addition of Die module
380 * Addition of App module
383 * Allow for custom_js type
384 * Fix unshift, shift, and push in ie 5.0
385 * Fix type CC in validate.js
386 * Allow for duplicate field definitions
389 * Fix for pos not resetting in CGI::Ex::Fill
390 * Fix for general items set in self not being passed to generate_js
391 * Workaround for yaml_load.js |- not properly trimming whitespace
394 * Javascript functionality is in.
397 * Version 0.0 checked in