+2.12 October 2006
+ Fixed some db_colinfo test bugs
+ Fixed typo in edit form template
+ Now uses Class::C3 in all Classes to simplify inheritence
+ Inheritence simpler and nicer and less hacked
+ add_model_superclass method moves @ISA munging into the model
+ new Class::DBI::DFV based model
+ new test to check everything compiles
+ Model inheritance re-organised
+ New config method : additional, for stashing additional info, especially from additional_data method
+ new warn method in maypole/request class/object, over-ridden by Apache::MVC, etc or own driver
+
+2.11 Mon 31 July 2006
+
+SVN revision 519
+
+Deprecated:
+ Directly accessing the attributes of the request object, or the parameters
+ in $r->params, or anything else, is DEPRECATED and likely to break in future
+ releases. Be good, and use proper method calls.
+
+ Maypole no longer uses Class::DBI::AsForm, instead Maypole::Model::CDBI::AsForm
+ has replaced it.
+
+ $config->{$table}{required_cols} is deprecated, please use $class->required_columns instead
+
+
+Incompatible API changes:
+ Maypole
+ - is_applicable() deprecated for is_model_applicable(). is_applicable is
+ an alias for is_model_applicable now.
+ Maypole::Constants
+ - ERROR constant now 500, previously -1 (bug #18901)
+ Maypole::Model
+ - delete and search actions are now deprecated - use do_search and do_delete
+ instead
+ Maypole::View
+ - table name rather than moniker is used to find templates
+
+API additions and enhancements:
+ Maypole::Application:
+ - -Init flag (wishlist 14123)
+ - recognises Maypole::HTTPD and installs Maypole::HTTPD::Frontend
+ as its frontend
+ Maypole::Headers:
+ add() alias to push() (wishlist 14142)
+ Maypole:
+ - get_session() method (no-op)
+ - get_user() method (no-op)
+ - get_session() is called during handler_guts() before authenticate()
+ - new preprocess_path() method added and called by parse_path(),
+ parse_path() will leave any properties set by preprocess_path() in
+ place
+ - start_request_hook() added
+ - status() attribute added (though only used by start_request_hook()
+ so far)
+ - setup() split into setup(), setup_model(), and load_model_subclass()
+ - added new path processing methods for ssl and default table/action
+ - added make_path()
+ - added make_uri()
+ - improved exception handling
+ - now uses File::MMagic::XS to guess mime type of output unless already set
+ - new component method provides Maypole::Component functionality
+ - new object method gets/sets first/only object in objects
+ Maypole::Model
+ - do_delete, do_search in place of delete/search actions
+ Maypole::View::TT:
+ - new report_error method
+ - new embedded error report page in __DATA__
+ Templates:
+ - Improved pager macro/include
+ - Improved factory templates
+ - added the status() attribute, although it's not used in many places
+ yet
+ - Changed factory edit/view to use object instead of objects
+ Maypole::Model::CDBI
+ - improved error messages in do_edit action
+ - new required_columns mutator method
+ - new column_required accessor method
+
+Bug fixes:
+ Fix to cgi_maypole.t (bug 11346)
+ Fix to TT error reporting (bug 13991)
+ Template xhtml validation (bug 13975)
+ Apache2 fixes in Apache::MVC (bug 13888)
+ Fixed inheritance issues in Mp::Application - Mp::App now manipulates the
+ caller's @ISA directly, and doesn't inject itself into the chain (bugs
+ 12923 & 14120)
+ Improved Template error reporting (14133)
+ Maypole::Session::generate_unique_id() now returns the id (bug 14124)
+ Moved ar accessor to Apache::MVC (bug 14014)
+ Refactored core to support further development in 2.11 and onwards
+ Fixed related_class() method (bug 14566)
+ Added a cgi() attribute in Maypole::CGI
+ Factory templates now less vulnerable to XSS (bug 16659)
+ Reduced risk of XSS in factory templates (bug 16659)
+ model search/delete methods in model and subclassing the cdbi mode (bug 16661)
+ fixed problems with stringify_self and untaint missing ignore columns (bug 15678)
+ fixed Maypole::Model::CDBI::Plain to JustWork(TM) with plain CDBI Classes (bug 16977)
+ some silent death scenarios resolved
+ Now initializes template_args, stash, parmas, objects and others to correct data type. (bug 15147)
+
+Documentation:
+ Fix to documentation for CGI::Maypole (bug 7263)
+ Simplified Net::Amazon example (bug 14073)
+ Numerous major and minor updates to docs.
+ Renamed Maypole::Manual::Request to Maypole::Manual::Cookbook
+ Added Maypole::Manual::Install, with material removed from
+ Maypole::Manual::About
+ Added Maypole::Manual::Inheritance
+ Added Maypole::Manual::Terminology
+ - updated Maypole::Manual::View
+ - updated Maypole::View:TT
+ Examples of fancy forms and templates using new features
+
+Requirements:
+ HTTP::Body now required
+ CGI::Untaint >= 1.26 now required rather than >= 0
+
+
+2.10 Tue 19 Jul 2005
+ Multiple Template Paths added ( http://rt.cpan.org/NoAuth/Bug.html?id=13447 )
+ Small fix to templates/factory/frontpage ( http://rt.cpan.org/NoAuth/Bug.html?id=11236 )
+ MasonX support in Maypole::Application ( https://rt.cpan.org/NoAuth/Bug.html?id=12383 )
+ Maypole::Model::CDBI::Plain / Maypole Config issue ( http://rt.cpan.org/NoAuth/Bug.html?id=11530 )
+ Repeat Submission detection support ( Bug #6500 )
+ Fix to setup_database in Maypole::Model::CDBI ( Bug #12384 )
+ Fix to plugin to allow Maypole::Plugin::Config::YAML to work
+ Fix to Maypole::Model::CDBI order sub from list
+ Improvement to primary display column using CDBI
+ Improved efficiency of finding stringified columns using new classmetadata field
+ Fixed BeerDB to untaint pub fields
+
+ Additional Requirements : Digest::MD5
+
+2.09 Mon Jan 25 22:00:00 2005
+ Fixes:
+ - Fixed plugin inheritance set up by Maypole::Application, added tests
+
+ Templates:
+ - factory/addnew will only prefill values when there's a row creation error
+
+
+2.08 Mon Jan 24 20:45:00 2005
+ - Added $r->config->template_extension() to set optional file extension
+ for templates (Dave Howorth)
+
+ Fixes:
+ - Maypole::Application adds plugin classes to caller's @ISA (Marcus Ramberg)
+ - FETCH_CODE_ATRIBUTES in M::M::Base should return an empty list if there
+ are no attributes
+ - M::M::CDBI will warn() about Class::DBI::FromCGI errors
+
+
+2.07 Sun Jan 16 18:45:00 2005
+ (This version was not uploaded to CPAN)
+
+ Internal changes:
+ - Removed Maypole::Model->description. It didn't work as expected and
+ clashed with 'description' columns in the database
+
+ Fixes:
+ - Model->process() shouldn't set $r->objects() to a list with a single,
+ undefined element
+ - Fixed overriding $r->template_args->{classmetadata} in M::V::Base
+ (Thanks to Dave Howorth for spotting the mistake)
+ - #9473: Maypole::Model::CDBI->related_class (Thanks David Baird)
+ - #9434: M::M::CDBI->search generated "uninitialized value" warnings
+
+ Templates:
+ - The addnew template will attempt to prefill form fields with request
+ parameters
+ - edit template includes 'addnew' if there is no object to edit
+
+2.06 Wed Dec 29 01:30:00 2004
+ Fixes:
+ - Minor restructuring of the manual so search.cpan.org indexes it better
+ - #9129: Skip t/apache_mvc.t if Apache::Request isn't installed
+
+
+2.05 Fri Dec 24 03:20:00 2004
+ - Revised and updated documentation. Many thanks to Dave Howorth for his
+ hard work and 120kb documentation patches.
+ - Added support for request and response HTTP headers with
+ $r->headers_in & $r->headers_out (Maypole::Headers)
+ - Support for compound primary keys for Maypole::Model::CDBI classes
+ - Template toolkit objects are configurable with M::Config->view_options
+ - Templating performance should be improved when running Maypole with
+ mod_perl since compiled templates remain in memory. CGI users can use
+ TT2's COMPILE_DIR or COMPILE_EXT options with
+ Maypole::Config->view_options to improve performance
+
+ Internal changes:
+ - Added a new override for the model: fetch_objects().
+ - 'classmetadata' template variables can now be overriden individually
+ - New unit tests for Maypole, CGI::Maypole, Maypole::Headers, and others.
+ More to come.
+
+ Fixes:
+ - Maypole::CLI is more tolerant of trailing slashes in the request/uri_base
+ - fixed a bug in CGI::Maypole::parse_location() (Dave Howorth)
+ - Also applied that fix to Apache::MVC (Marcus Ramberg)
+ - some fixes for Maypole::Config, Maypole::Model::Base and