merged after conflict resolution
John Napiorkowski [Wed, 12 Jun 2013 14:27:20 +0000 (10:27 -0400)]
1  2 
Makefile.PL
lib/Catalyst.pm
t/lib/TestApp.pm

diff --cc Makefile.PL
@@@ -97,7 -94,7 +97,8 @@@ else 
  
  push(@author_requires, 'CatalystX::LeakChecker', '0.05');
  push(@author_requires, 'Catalyst::Devel', '1.0'); # For http server test
 +push(@author_requires, 'Test::WWW::Mechanize::Catalyst', '0.51');
+ push(@author_requires, 'Test::TCP', '1.27'); # ditto, ships Net::EmptyPort
  
  author_tests('t/author');
  author_requires(
diff --cc lib/Catalyst.pm
@@@ -3191,12 -3183,19 +3199,23 @@@ C<< $c->request->base >> will be incorr
  
  C<using_frontend_proxy> - See L</PROXY SUPPORT>.
  
 +=item *
 +
 +C<encoding> - See L</ENCODING>
 +
  =back
  
+ =item abort_chain_on_error_fix => 1
+ When there is an error in an action chain, the default behavior is to continue
+ processing the remaining actions and then catch the error upon chain end.  This
+ can lead to running actions when the application is in an unexpected state.  If
+ you have this issue, setting this config value to true will promptly exit a
+ chain when there is an error raised in any action (thus terminating the chain 
+ early.)
+ In the future this might become the default behavior.
  =head1 INTERNAL ACTIONS
  
  Catalyst uses internal actions like C<_DISPATCH>, C<_BEGIN>, C<_AUTO>,
@@@ -50,7 -50,7 +50,8 @@@ TestApp->config
              action_action_nine => { another_extra_arg => 13 }
          }
      },
 +    encoding => 'UTF-8',
+     abort_chain_on_error_fix => 1,
  );
  
  # Test bug found when re-adjusting the metaclass compat code in Moose