since _context is a weak ref it can go out of scope before all the errors are finishe...
[catagits/Catalyst-Runtime.git] / Changes
diff --git a/Changes b/Changes
index d334b25..8fc0fbb 100644 (file)
--- a/Changes
+++ b/Changes
@@ -1,12 +1,78 @@
 # This file documents the revision history for Perl extension Catalyst.
 
+5.90089_002 - 2015-04-15
+  - 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.
+  - 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.
+
+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 will
+    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'