if we change encoding on $c after asking for a write_fh we want to make sure catalyst...
[catagits/Catalyst-Runtime.git] / lib / Catalyst / Upgrading.pod
index 63861b4..fe9da9c 100644 (file)
@@ -2,6 +2,42 @@
 
 Catalyst::Upgrading - Instructions for upgrading to the latest Catalyst
 
+=head1 Upgrading to Catalyst 5.90080
+
+UTF8 encoding is now default.  For temporary backwards compatibility, if this
+change is causing you trouble, you can disable it by setting the application
+configuration option to undef:
+
+    MyApp->config(encoding => undef);
+
+But please consider this a temporary measure since it is the intention that
+UTF8 is enabled going forwards and the expectation is that other ecosystem
+projects will assume this as well.  At some point you application will not
+correctly function without this setting.
+
+A number of projects in the wider ecosystem required minor updates to be able
+to work correctly.  Here's the known list:
+
+L<Catalyst::View::TT>, L<Catalyst::View::Mason>, L<Catalyst::View::HTML::Mason>,
+L<Catalyst::View::Xslate>, L<Test::WWW::Mechanize::Catalyst>
+
+You will need to update to modern versions in most cases, although quite a few
+of these only needed minor test case and documentation changes so you will need
+to review the changelog of each one that is relevant to you to determine your
+true upgrade needs.
+
+=head1 Upgrading to Catalyst 5.90060
+
+Starting in the v5.90059_001 development release, the regexp dispatch type is
+no longer automatically included as a dependency.  If you are still using this
+dispatch type, you need to add L<Catalyst::DispatchType::Regex> into your build
+system.
+
+The standalone distribution of Regexp will be supported for the time being, but
+should we find that supporting it prevents us from moving L<Catalyst> forward
+in necessary ways, we reserve the right to drop that support.  It is highly
+recommended that you use this last stage of deprecation to change your code.
+
 =head1 Upgrading to Catalyst 5.90040
 
 =head2 Catalyst::Plugin::Unicode::Encoding is now core
@@ -32,12 +68,6 @@ UTF-8.  We'll add it for you if you continue to use the stand alone plugin and
 we detect this, but this backwards compatibility shim will likely be removed in
 a few releases (trying to clean up the codebase after all).
 
-B<NOTE>: One other difference between the cored plugin and the stand alone one
-is that in core we no longer throw an exception when there's a decode failure
-but instead log a warning.  If you rely on exceptions for control flow, you 
-will need to override method C<handle_unicode_encoding_exception> to die instead
-of warning.  Please let the dev team know if this is a problem for you.
-
 If you have trouble with any of this, please bring it to the attention of the
 Catalyst maintainer group.
 
@@ -108,7 +138,7 @@ to use L<Catalyst::Script::FastCGI>.
 The engines that are built upon the various iterations of mod_perl,
 L<Catalyst::Engine::Apache::MP13> (for mod_perl 1, and Apache 1.x) and
 L<Catalyst::Engine::Apache2::MP20> (for mod_perl 2, and Apache 2.x),
-should be seamless upgrades and will work using using L<Plack::Handler::Apache1>
+should be seamless upgrades and will work using L<Plack::Handler::Apache1>
 or L<Plack::Handler::Apache2> as required.
 
 L<Catalyst::Engine::Apache2::MP19>, however, is no longer supported, as