Revision history for CatalystX-CRUD
0.58 25 Aug 2023
- https://github.com/karpet/catalystx-crud/pull/1
0.57 07 Dec 2015
- failure to load object now returns 404 rather than throwing a 500.
0.56 28 Feb 2014
- remove : character from rxOp param in internal Search::QueryParser::SQL
constructor. This allows for finding url values like http://foo/bar
which previously would be parsed as http=//foo/bar
- add 'use_lower' feature to Module::Utils to support Search::QueryParser::SQL
version 0.010.
0.55 28 Jan 2013
- add Iterator->serialize() method.
0.54 5 Nov 2012
- add Results->serialize() method
- refactor some Controller methods into a Role class
- Model::File->fetch() now returns undef if file does not exist. Add
Model::File->prep_new_object().
- add new required method to Object class: is_new()
- add Model->put_related method
0.53 31 Oct 2012
- add list_related and view_related primarily for REST support
0.52 13 July 2011
- doc fix in Tutorial via RT#68499
- tests fixed for RT#68779
0.51 19 May 2010
- added use_request_uri_for_path to test MyApp to fix test failures with
Catalyst::Runtime 5.80024
0.50 13 May 2010
- fix make_primary_key_string() to get rid of bad sprintf() call
0.49 11 April 2010
- uri_for_view_on_single_result() will return uri for 'view' action,
regardless of value of can_write().
0.48 29 Jan 2009
- fix bug with create() introduced in 0.47.
- remove explicit dep on Class::C3 per RT54097
0.47 15 Jan 2009
- fix tutorial per RT#53396
- fix bug in base Controller->fetch() where multiple PKs where one value
is null were slipping through. Reported by Adam Mackler.
0.46 20 Nov 2009
- tweek Model::File _find to avoid multiple loops over the same list of
root dirs.
- tweek Model::File->search to read() each object like fetch() does.
- add dep on Sort::SQL 0.07 to avoid sql injection (RT#51777)
0.45 13 June 2009
- fix multi-column sort via cxc-order param (requires Sort::SQL 0.04)
0.44 23 May 2009
- check for symlink() support in Model::File at compile time and return
from rm_related() if not supported. Fixes spurious test breakage on
Win32. See https://rt.cpan.org/Ticket/Display.html?id=46314
0.43 29 April 2009
- rid of ourselves of Class::Data::Inheritable because it clashes with
Catalyst::Runtime 5.8. Notably, it caused a strange bug in
Rose::DBx::Garden::Catalyst where the MyApp->config class hashref would
get nuked after a call to Class::C3::initialize(). Yes. That fsked up.
0.42 27 April 2009
- revert ACCEPT_CONTEXT changes; fixes pushed to new C::C::A_C on CPAN,
and added no warnings using Class::C3::Adopt::NEXT (thanks to t0m)
- change from 'use Class::C3' to 'use mro "c3"' with new dep on
MRO::Compat
- added some debugging in tests
0.41 21 April 2009
- remove Catalyst::Component::ACCEPT_CONTEXT as a dependency since it has
not been updated for Catalyst 5.8.
0.40 16 April 2009
- change base Controller to call can_read() rather than can_write() in
edit(). This is because the call to edit() does not actually write
anything; it's just a GET for a form.
0.39 14 Jan 2009
- add missing file to MANIFEST that causes tests to fail in 0.38
0.38 12 Jan 2009
- use maybe::next::method
- fix view_on_single_result bug in Test::Controller
0.37 8 Dec 2008
- support x-tunneled-method for DELETE in save() calls
0.36 4 Dec 2008
- add cxc-fuzzy2 feature and document both it and cxc-fuzzy.
0.35 24 Nov 2008
- call edit() after initializing object and form with passed in params, so
that the init_form() method can have all data already set.
0.34 24 Nov 2008
- fix make_primary_key_string to return undef if multi-col PK has no
values
0.33 22 Nov 2008
- fix Tutorial wrt RT#40846
0.32 21 Oct 2008
- use Class::Data::Inheritable to define delegate_class() class accessor
in base Model
0.31 16 Sept 2008
- add missing req to Makefile.PL
- force field_names to be an ARRAY ref in Utils make_sql_query()
0.30 11 Sept 2008
- fix uninit value warning in Controller
- change REST create() : Local to _rest_create() : Path('create') to make
it easier for create_form() to call create() in superclass.
- clean up old style $self->config->{value} to instead use $self->value in
Controller
- add app_class() and model_meta() accessors to ModelAdapter
- in base Controller, rename view_on_single_result() method to
uri_for_view_on_single_result and make accessor for the config value
'view_on_single_result'
- change all reserved param names in Model::Utils to use 'cxc-' prefix
instead of '_'. Backwards compat is preserved where possible.
- Model::Utils make_query() will uc() sort direction
- change behaviour of get_primary_key() in base Controller to not look in
req->params for pk values. This allows for changing the PK as part of an
update.
- add new() in REST to call next::method. Works around (some) multiple
inheritance issues.
- check for $c->res->location before redirecting in postcommit()
- Model::Utils was refactored to use Search::QueryParser::SQL. The
following methods were affected: * sql_query_as_string() -- removed *
params_to_sql_query() -- now returns hashref with 3 items: - query isa
Search::QueryParser::SQL::Query object - query_hash (formerly query) is
a simple param-name => [values] hashref - sql is the output of
S::QP::S::Query->rdbo * make_sql_query() -- returned hash ref now has
query_hash as plain_query value and the stringify'd Query object as
plain_query_str
0.29 23 Aug 2008
- fix typos in the Tutorial
- add relationship methods to Controller, ModelAdapter and Model core API.
- added sugary alias methods for read(), update() and delete() to match
CRUD.
- refactored REST controller to support related methods and provide better
HTTP status checks and responses.
0.28 11 Aug 2008
- API for ModelAdapter changed to pass controller instance in do_model()
- add get_primary_key() and make_primary_key_string() methods to base
Controller. This allows for PKs composed of multiple columns.
0.27 12 June 2008
- fix Controller->rm() to check for model_adapter() and call its delete()
method as advertised.
- check for length($oid) instead of defined($oid) in REST->default
- added CatalystX::CRUD::Results class
- added naked_results() config option to base Controller
- refactored base Controller to make all config options into accessors.
added t/02-controller
- change Model::Utils to use req->params rather than param()
0.26 06 May 2008
- fix bug in Iterator to test for !next() rather than !defined(next())
- re-set action in ::REST->default so that RPC-style template naming works
- use :Path instead of :Private on ::REST->default
- fix several bugs with action() set in ::REST
- ::Controller->form now calls NEXT::form. This is for REST compat and
@INC oddness.
- added new ::ModelAdapter class and refactored base Controller to use it.
- moved make_pager() from base ::Model to ::Model::Utils
- added new ::Test classes to ease writing controller-agnostic tests.
- new, optional 'make_query' method in Controller.
- move AUTOLOAD() and can() hackery out of base Model into base Object
where it belongs. Now there is only 2 sins instead of the 3 in previous
releases (where we no longer monkey-patch the subs at run time).
- refactor tests to actually perform some CRUD.
- add ::ModelAdapter::File example.
- add envvar CXCRUD_TEST in base CX::CRUD to cluck() stack traces on
exceptions. Mostly useful during testing since the ::Test::Controller
now returns only the error.
- renamed 'buffer' to 'content' in ::Object::File.
- ::Model::File->fetch() will now always return an object even if it does
not yet exist on the filesystem.
- change default create() method in Controller to call methods directly
instead of forward()ing.
- add create() method to REST that just redirects to create_form().
- change from 'use NEXT' to 'use Class::C3'
- added support for "x-tunneled-method" param to REST controller in
addition to "_http_method". This is for compat with
Catalyst::Request::REST::ForBrowsers.
0.25 1 Feb 2008
- fix bug to clarify what happens when form_to_object() returns false.
0.24 22 Jan 2008
- always fetch() in REST->default, to fix bug with no object being set for
create()
- always uc() the req method for comparison purposes
- fix bug when checking the _http_method param to use params() instead of
param() and use the first if multiple.
- refactor REST to provide backwards compat with Controller for easy @ISA
swap (as advertised)
0.23 20 Jan 2008
- added REST API
- added allow_GET_writes Controller config option, to prevent casual GET
/save or /delete requests.
0.22 04 Jan 2008
- add treat_like_int() support to Model::Utils
0.21 04 Jan 2008
- fix black magic can() in Model.pm
0.20 31 Dec 2007
- fix view_on_single_result() to check can_write()
0.19 21 Dec 2007
- added Sort::SQL to Makefile.PL reqs.
0.18 20 Dec 2007
- added _no_page parameter support to the Model API.
- added ::Model::Utils to help with DRY
0.17 19 Dec 2007
- add field_names() method to base Controller class. This is to aid
development
- of CatalystX::CRUD::View implementations.
0.16 04 Dec 2007
- fix typo in Tutorial so it shows up in search.cpan.org
- fix Controller->do_search() to always include query for view's use,
- even when there are no results.
0.15 24 Nov 2007
- oops. actually include the tutorial pod in this release.
0.14 23 Nov 2007
- add Tutorial
- fix bug (again) in Controller when there is only one result in
do_search().
0.13 19 Nov 2007
- fix bug in Controller when there is only one result in do_search().
0.12 17 Nov 2007
- fix bug in Controller when determining whether do_search() should
search.
0.11 14 Nov 2007
- fix AUTOLOAD method to report correct object class on error
0.10 12 Nov 2007
- simplify Iterator base class to hardcode 'delegate' method name
0.09 10 November 2007
- fix missing precommit() default sub in Controller.pm
- fix AUTOLOAD hackery in Model.pm
0.08 9 November 2007
- fix documentation for save() method.
0.07 9 November 2007
- added count() method to base Controller
0.06 6 November 2007
- clean up temp files from make test [rt# 30425]
0.05 1 November 2007
- stash query in Controller results for View
- do_search() returns if no input
- Model reserved params now start with _
- some can/AUTOLOAD black magic to make Object/delegate stuff DWIM.
0.04 25 October 2007
- rework view_on_single_result API in base Controller and tests for same
0.03 22 October 2007
- add test for File implementation (and fix the bugs it revealed)
- fix AUTOLOAD to ignore DESTROY
0.02 22 October 2007
- Fixed Makefile.PL dependencies (added
Catalyst::Component::ACCEPT_CONTEXT)
- Refactored Controller and Model to abstract a little more, notably added
the form_to_object() method in Controller.
- New File example implementation of the whole Model/Object/Iterator API.
0.01 3 October 2007
- First version, released on an unsuspecting world.