X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=catagits%2FCatalyst-Runtime.git;a=blobdiff_plain;f=Changes;h=04e9d800477c887857dc076ac66f7d5556ceea50;hp=416620d25aadee8faf0bece0baf9eb57a39979a3;hb=7fee060fe57305509098afada9d7957fe783c245;hpb=f382b264b4c2b378c90970e5039502fd60e49a7f diff --git a/Changes b/Changes index 416620d..04e9d80 100644 --- a/Changes +++ b/Changes @@ -1,6 +1,135 @@ # This file documents the revision history for Perl extension Catalyst. -5.90083 - 2014-02-16 +5.90099_001 - TBA + - + +5.90093 - 2015-05-29 + - Fixed a bug where if you used $res->write and then $res->body, the + contents of body would be double encoded (gshank++). + +5.90092 - 2015-05-19 + - Allows you to use a namespace suffix for request, response and stats + class traits. Docs and tests for this. + - Refactor the change introduced in 5.90091 to solve reported issues (for + example Catalyst::Controller::DBIC::API fails its tests) and to be a more + conservative refactor (new code more closely resembles the orginal code + that has proven to work for years.) + +5.90091 - 2015-05-08 + - Fixed a bug where if an injected component expanded sub components, those + sub components would not show up in the startup debug dev console ( + even though they were actually created). + +5.90090 - 2015-04-29 + - Updated some documention in Catalyst::Request::Upload to clarify behavior + that RT ticket reported as confusing or unexpected + - Merged all changes from 5.90089_XXX development cycle. + - removed a mistaken use of Test::Most, which is not a core Catalyst + dependency. Used Test::More instead. + +5.90089_004 - 2015-04-28 + - Added swanky github badges. + - Reverted a change to how the stats engine is setup that was incorrect. + - New application setup hook 'config_for' which allows one to get the + canonical application configuration for a controller, view or model, or + a plugin. Can also be used to override and adapt what configuration is + retrieved. + +5.90089_003 - 2015-04-27 + - Fixed an issue where a delayed controller that did ACCEPT_CONTEXT would + raise an error when registering its actions. + - Updated some documentation around route matching. + - refactored the setup of injected components to allow you to hook into + the injection and do custom injection types. + +5.90089_002 - 2015-04-17 + - Changed the way we check for presence of Type::Tiny in a test case to be + more explicit in the version requirement. Hopefully a fix for reported + test fail. + - When declaring type constraints in Args and CaptureArgs, if you want to + use a Moose builtin type (or a custom stringy type that you've already + defined and associated with the Moose::TypeRegistry) you must now quote + the type name. This is to clearly disambiguate between Moose stringy types + and imported types. + - Additional changes to type constraint detection to between determine when a + type constraint for reference types have a measured number of arguments or + not. clarify restriction on reference type constraints. + - Several bugs with type constraints and uri_for squashed. More test cases + around all the argument type constraints to tighten scope of action. + - NEW FEATURE: New method in Catalyst::Utils 'inject_component', which is a core + version of the previously external addon 'CatalystX::InjectComponent'. You should + start to convert your existing code which uses the stand alone version, since + going forward only the core version will be supported. Also the core version in + Catalyst::Utils has an additional feature to compose roles into the injected + component. + - NEW FEATURE: Concepts from 'CatalystX::RoleApplicator' have been moved to core + so we now have the follow application attributes 'request_class_traits', + 'response_class_traits' and 'stats_class_traits' which allow you to compose + traits for these core Catalyst classes without needing to create subclasses. So + in general any request or response trait on CPAN that used 'CatalystX::RoleApplicator' + should now just work with this core feature. Note that can also set thse roles + via new configuration keys, 'request_class_traits', 'response_class_traits' + and 'stats_class_traits'. If you use both configuration and application class methods, + they are combined. + - NEW FEATURE: Core concepts from 'CatalystX::ComponentsFromConfig'. You can now + setup components directly from configuration. This could save you some effort and + creating 'empty' base classes in your Model/View and Controller directories. This + feature is currently limited in that you can only configure components that are + 'true' Catalyst components (but you may use Catalyst::Model::Adaptor to proxy + stand alone classes...). + - Only create a stats object if you are using stats. This is a minor performance + optimization, but there's a small chance it is a breaking change, so please + report any stats related issues. + - Added a developer mode warning if you call a component with arguments that does not + expect arguments (for example calling $c->model('Foo', 1,2,3,4) where Myapp::Model::Foo + does not ACCEPT_CONTEXT. Only components that ACCEPT_CONTEXT do anything with + passed arguments in $c->controller/view/model. + - Change the way components are setup so that you can now rely on all components + when setting up a component. Previously application scoped components could not + reliably use an existing application scoped component as a dependecy for initialization. + +5.90089_001 - 2015-03-26 + - New development branch synched with 5.90085. + - NEW FEATURE: Type Constraints on Args/CaptureArgs. Allows you to declare + a Moose, MooseX::Types or Type::Tiny named constraint on your Arg or + CaptureArg. + - When using $c->uri_for (or the derived $c->uri_for_action) and the target + action has type constrainted args (or captures), verify that the proposed + URL matches the defined args. In general $c->uri_for will be a bit more + noisy if the supplied arguments are not correct. + - New top level document on Route matching. (Catalyst::RouteMatching). This + document is still in development, but is worth review and comments. + +5.90085 - 2015-03-25 + - Small change to Catalyst::Action to prevent autovivication of Args value (dim1++) + - Minor typo fixes (Abraxxa++) + - Make sure than when using chained actions and when more than one action + matches the same path specification AND has Args(0), that we follow the + "in a tie, the last action defined wins" rule. There is a small chance + this is a breaking change for you. See Catalyst::Upgrading for more. + You may use the application configuration setting "use_chained_args_0_special_case" + to disable this new behavior, if you must for back-compat reasons. + - Added PATCH HTTP Method action attribute shortcut. + - Several new configuration options aimed to give improved backwards compatibility + for when your URL query parameters or keywords have non UTF-8 encodings. + See Catalyst::Upgrading. + +5.90084 - 2015-02-23 + - Small change to the way body parameters are created in order to prevent + trying to create parameters twice. + - Use new HTTP::Body and code updates to fix issue when POSTed params have + non UTF-8 charset encodings or otherwise complex upload parts that are not + file uploads. In these cases when Catalyst can't determine what the value of + a form upload is, will return an instance of Catalyst::Request::PartData with + all the information need to figure it out. Documentation about this corner + case. For RT https://rt.cpan.org/Ticket/Display.html?id=101556 + - Two new application configuration parameters 'skip_body_param_unicode_decoding' + and 'skip_complex_post_part_handling' to assist you with any backward + compatibility issues with all the new UTF8 work in the most recent stable + Catalyst. You may use these settings to TEMPORARILY disable certain new + features while you are seeking a long term fix. + +5.90083 - 2015-02-16 - Fixed typo in support for OPTIONS method matching (andre++) - Stop using $env->{'plack.request.query'} as a query parsing optimization since 1) it doesn't belong to us and 2) there's subtle differences in the