This Action handles doing automatic method dispatching for REST
requests. It takes a normal Catalyst action, and changes the dispatch
to append an underscore and method name.
For example, in the synopsis above, calling GET on "/foo" would
result in the foo_GET method being dispatched.
If a method is requested that is not implemented, this action will
return a status 405 (Method Not Found). It will populate the "Allow"
header with the list of implemented request methods. You can override
this behavior by implementing a custom 405 handler like so:
sub foo_not_implemented {
... handle not implemented methods ...
}
If you do not provide an _OPTIONS subroutine, we will automatically
respond with a 200 OK. The "Allow" header will be populated with
the list of implemented request methods.
It is likely that you really want to look at Catalyst::Controller::REST,
which brings this class together with automatic Serialization of
requests and responses.
This module provides a simple one-subroutine "named parameters"
style interface for creating URIs. Underneath the hood it uses
URI.pm, though because of the simplified interface it may not
support all possible options for all types of URIs.
It was created for the common case where you simply want to have
a simple interface for creating syntactically correct URIs from
known components (like a path and query string). Doing this using
the native URI.pm interface is rather tedious, requiring a number
of method calls, which is particularly ugly when done inside a
templating system such as Mason or TT2.
Since 1.5.1
-----------
- bugfix: Tags permissions rollbacked. It caused errors in some mysql settings.
- bugfix: Document editor toolbar not shown correctly.
- bugfix: Invited users to an event weren't being shown when editing the event.
- bugfix: When subscribing users to an object through the object's view, the
users were not being notified.
- bugfix: When editing an object, selected subscribers were reset after
changing the object's workspace.
- bugfix: When instantiating a milestone template it's subtasks were not added
to the same workspace.
- bugfix: Fixed performance issues when changing a workspace's parent on the
GUI.
- bugfix: Notes listing showed creator as last updater.
- bugfix: Cron events view wasn't converting times to user's timezone.
- bugfix: When filtering email by tag some extra email was shown.
- bugfix: Creating a template in IE wouldn't let you edit it's properties.
- bugfix: Dragging a task in the calendar would throw an error.
- bugfix: "Can't open file" error when classifying email.
- bugfix: Linked objects listing was missing the drag handle.
- bugfix: Workspaces for classfied Emails were not being shown on dashboard
viewed as list.
- bugfix: Error when deleting trashed emails from cron.
- bugfix: Error when instantiating templates with parameters assigned to a
project.
- bugfix: Instantiated template objects were not assigned to the current
workspace.
- langs: Added missing langs for tasks report fields.
- langs: Updated langs.
pkgsrc changes:
- Adding license
Upstream changes since 4.21:
4.31 Wed Jul 29, 2009
[FEATURES]
- html_tmpl_class() now allows setting an an alternate HTML::Template class
at a run time. This makes it easy to set the class to be
'HTML::Template::Dumper' for debugging. You can then see and precisely
test the Perl data structure that would be sent your template, taking
into account the template tokens that are actually set there. (Mark Stosberg)
[DOCUMENTATION]
- More typo fixes (Lyle)
to 0.13
pkgsrc changes:
- Adjusting dependencies
Upstream changes:
0.13 2009-08-19
- Remove Test::MockObject from the test suite as prone to failing on
some platforms and perl versions due to its UNIVERSAL:: package
dependencies.
- Remove Class::Accessor::Fast and replace with Moose. This allows
us to not have a ->new method, This is more correct for Plugins
and also means that Catalyst is not forced to invoke the scary
replace_constructor at scope end handling.
pkgsrc changes:
- Adjusting dependencies according to META.yml
Upstream changes:
0.26 2009-08-19
- Remove Test::MockObject from the test suite as prone to failing on
some platforms and perl versions due to it's UNIVERSAL:: package
dependencies.
pkgsrc changes:
- Adding license
- Removing dependency to CORE module Digest::MD5
Upstream changes:
2.05 - Thu May 14 18:37:07 PDT 2009
- Fixed bug in _get_cipher_type() where it was not memoizing the
Crypt::CBC objects.
- Fixed https://rt.cpan.org/Ticket/Display.html?id=45207
Hash keys for configuration values were wrong in several places.
- Improved test coverage a little.
pkgsrc changes:
- Adjusting dependencies (remove core module from extra dependencies)
- Adding license
Upstream changes:
1.07: 2009-08-05
- Skip the whole test when it can't bind to the specified private IP
(Tatsuhiko Miyagawa)
- Fix the way to get LWP error when it's set to X-Died instead of $@
(Zbigniew Lukasiak)
1.06: 2009-07-17
- explicitly load deprecated module LWP::Debug, now that it's not
loaded by default. (Tatsuhiko Miyagawa <miyagawa@gmail.com>)
1.05: 2009-06-21
- patch from Alessio Signorini <alessio.signorini@spryte.it> to
quiet a warning that could be triggered
1.04: 2008-10-30
- fix tests to no longer rely on my DNS servers, which had since migrated
to EasyDNS which doesn't allow the types of malicious records I was
testing for. instead, switch to a mock object resolver.
(Brad Fitzpatrick, brad@danga.com)
pkgsrc changes:
- Adding license (perl license)
Upstream changes:
0.40 Mon Aug 17 22:01:07 EDT 2009
* After a fork, we need to reset the random seed lest we have
duplicated random numbers in both forks.
0.39 Mon Aug 17 09:41:05 EDT 2009
* Added signature tests
0.38_04 Wed Aug 12 20:15:14 EDT 2009
Another pass at the Win32 fixes from KMX
0.38_03 Sat Apr 11 18:47:29 EDT 2009
* Subject: [rt.cpan.org #44961] [PATCH] xdg reports select() is problematic on win32
0.38_02 Fri Apr 10 20:57:19 EDT 2009
* Specify an HTTP version for our GETs should get escaping to wokr
0.38_01 Mon Mar 2 18:11:46 EST 2009
* http://rt.cpan.org/Ticket/Attachment/568795/286902/ from confound++ for
http://rt.cpan.org/Public/Bug/Display.html?id=28122
Upstream changes:
0.24 Tue Jul 21 21:28:02 CEST 2009
[ENHANCEMENTS]
- When a short-circuit response was send, the next response
would not be filtered at all. This has been fixed.
[FIXES]
- yet another fix for t/23connect, proposed by Marek Rouchal
(closed RT ticket #38995) [test skipped for now]
- HTTP::Headers::Util's split_header_words() returns lower case
tokens/keys since October 6, 2008. Fix by Maurice Aubrey.
(closed RT tickets #43249, #43622)
Upstream changes:
1.60 Mon Aug 17 00:41:39 CDT 2009
========================================
No new features. Exists only to skip tests that always fail on
Windows.
Fixed up some minor documentation problems.
pkgsrc changes:
- Adjusting license (now we have ${PERL5_LICENSE}
Upstream changes:
0.25 2009-0708
- Add the a change_session_id method which can be called after
authentication to change the user's session cookie whilst preserving
their session data. This can be used to provide protection from
Session Fixation attacks. (kmx)
pkgsrc changes:
- Require Catalyst 5.8 in general
Upstream changes:
0.27 Thu Aug 13 2009
- Require Catalyst 5.8 for tests that use ctx_request() (RT #48651)
0.26 Mon Aug 10 2009
- Fix test to not need "parent" (RT #48547)
- Do not localize %ENV, rather, remove potentially conflicting
k-v pairs (RT #48557)
0.25 Fri Aug 07 2009
- Fix get_config_local_suffix and get_config_path when finding values
from ENV vars (RT #47937)
pkgsrc changes:
- Updating MASTER_SITES
- Adding license (perl license)
- Adjusting dependencies
Upstream changes:
0.05 7 August 2009
- Fix a minor documentation problem. Reported by Eric Prestemon.
(Closes RT#48487)
- Switch from Class::C3 to MRO::Compat.
0.04 16 July 2009
- If no arguments are supplied, then construct new objects with {}
by default, rather than undef, as Moose classes fail if given undef.
pkgsrc changes:
- Adjust dependencies according to META.yml
Upstream changes:
0.08 2009-07-29 23:39:30
- Require Module::Pluggable 3.9 to avoid test failures.
- More verbose error when traits cannot be found, including full search path.
0.07 2009-07-26 15:11:55
- fix incompatibility with perl 5.8
0.06 2009-07-20 21:44:13
- configurable trait merging support
0.05 2009-07-17 23:46:43
- Correctly pass the application class into component constructors
0.04 2009-07-16 13:01:02
- updated algorithm to handle CatalystX:: namespaced things
Changes:
* implemented KrbServiceName Any to deal with multiple keytab entries for
various browsers
* implemented KrbLocalUserMapping i.e. to strip @REALM from username for
further use
* implemented already_succeeded function to avoid hammering the KDC with
same auth requests in single connection
* fixed threading issues
* improved configure and Makefile scripts (mainly for BSD users)
* fixed minor issues
Upstream changes:
2009-08-14 Release 1.40 - Gisle Aas <gisle@ActiveState.com>
Even stricter test for working DNS, 2nd try.
2009-08-13 Release 1.39 - Gisle Aas <gisle@ActiveState.com>
Even stricter test for working DNS, hopefully this gets rid of the rest of
the heuristics.t failures.
Upstream changes:
2009-08-13 Release 3.62
Ville Skytt"a (4):
HTTP::Header doc typo fix.
Do not bother tracking style or script, they're ignored.
Bring HTML 5 head elements up to date with WD-html5-20090423.
Improve HeadParser performance.
Gisle Aas (1):
Doc patch: Make it clearer what the return value from ->parse is
Upstream changes:
Version 3.45
[BUG FIXES]
1. Prevent warnings about "uninitialized values" for REQUEST_URI, HTTP_USER_AGENT and other environment variables.
Patches by Callum Gibson, heiko and Mark Stosberg. (RT#24684, RT#29065)
2. Avoid death in some cases when running under Taint mode on Windows.
Patch by Peter Hancock (RT#43796)
3. Allow 0 to be used as a default value in popup_menu(). This was broken starting in 3.37.
Thanks to Haze, who was the first to report this and supply a patch, and pfschill, who pinpointed
when the bug was introduced. A regression test for this was also added. (RT#37908)
4. Allow "+" as a valid character in file names, which fixes temp file creation on OS X Leopard.
Thanks to Andy Armstrong, and alech for patches. (RT#30504)
5. Set binmode() on the Netware platform, thanks to Guenter Knauf (RT#27455)
6. Don't allow a CGI::Carp error handler to die recursively. Print a warning and exit instead.
Thanks to Marc Chantreux. (RT#45956)
7. The Dump() method now is fixed to escape HTML properly. Thanks to Mark Stosberg (RT#21341)
8. Support for <optgroup> with scrolling_list() now works the same way as it does for popup_menu().
Thanks to Stuart Johnston (RT#30097)
9. CGI::Pretty now works properly when $" is set to ''. Thanks to Jim Keenan (RT#12401)
10. Fix crash when used in combination with PerlEx::DBI. Thanks to Burak G"ursoy (RT#19902)
[DOCUMENTATION]
1. Several typos were fixed, Thanks to ambs. (RT#41105)
2. A typo related to the nosticky pragma was fixed, thanks to Britton Kerin. (RT#43220)
3. examples/nph-clock.cgi is now more portable, by calling localtime() rather than `/bin/date`,
thanks to Guenter Knauf. (RT#27456).
4. In CGI::Carp, the SEE ALSO section was cleaned up, thanks to Slaven Rezic. (RT#32769)
5. The docs for redirect() were updated to reflect that most headers are
ignored during redirection. Thanks to Mark Stosberg (RT#44911)
[INTERNALS]
1. New t/unescapeHTML.t test script has been added. It includes a TODO test for a pre-existing
bug which could use a patch. Thanks to Pete Gamache and Mark Stosberg (RT#39122)
2. New test scripts have been added for user_agent(), popup_menu() and query_string(), scrolling_list() and Dump()
Thanks to Mark Stosberg and Stuart Johnston. (RT#37908, RT#43006, RT#21341, RT#30097)
3. CGI::Carp and CGI::Util have been updated to have non-developer version numbers.
Thanks to Slaven Rezic. (RT#48425)
4. CGI::Switch and CGI::Apache now properly set their VERSION in their own name space.
Thanks to Alexey Tourbin (RT#11941,RT#11942)