=head2 Upgrading the Preforking Engine
If you were using L<Catalyst::Engine::HTTP::Prefork> then L<Starman>
-is automatically loaded.
+is automatically loaded.
+
+XXX FIXME - note how to run Starman with different options.
=head2 Upgrading the PSGI Engine
If you were using L<Catalyst::Engine::PSGI> this new release supercedes this
engine in supporting L<Plack>. By default the Engine is now always L<Plack>.
As a result, you can stop depending on L<Catalyst::Engine::PSGI> in your
-C<Makefile.PL>. Additionally, if you have an C<app.psgi> script you no longer
+C<Makefile.PL>.
+
+Applications that were using L<Catalyst::Engine::PSGI>
+previously should entirely continue to work in this release with no changes.
+
+However, if you have an C<app.psgi> script, then you no longer
need to specify the PSGI engine. Instead, the L<Catalyst> application class
-now has a new method C<psgi_app> which returns a L<Plack> compatible coderef.
+now has a new method C<psgi_app> which returns a L<PSGI> compatible coderef
+which you can wrap in middleware of your choice.
+
+Catalyst will use the .psgi for your application if it is located in the C<home>
+directory of the application
-For example, if you were using L<Catalyst::Engine::PSGI> in the past, you may
-have written an C<app.psgi> file similar to this one:
+For example, if you were using L<Catalyst::Engine::PSGI> in the past, you will
+have written (or generated) a C<script/myapp.psgi> file similar to this one:
use Plack::Builder;
use MyCatalytApp;
sub { MyCatalystApp->run(@_) };
};
-Instead, you now just do
+Instead, you now say:
use Plack::Builder;
use MyCatalystApp;
MyCatalystApp->psgi_app;
};
+And also rename C<< script/myapp.psgi >> to C<< myapp.psgi >>.
+
+If you rename your .psgi file without these modifications, then any tests run via
+L<Catalyst::Test> will not be compatible with the new release, and will result in
+the development server starting, rather than the expected test running.
+
+=head2 Engines which are known broken
+
+The following engines B<DO NOT> work as of Catalyst version 5.90. The core
+team is extremely happy to work with the developers and/or users of these
+engines to help them port to the new Plack/Engine system, however applications
+which are currently using these engines B<WILL NOT> run without modification
+to the engine code.
+
+=over
+
+=item Catalyst::Engine::Wx
+
+=back
+
=head2 Engines with unknown status
The following engines have untested or unknown compatibility. Reports are
highly welcomed:
- Catalyst::Engine::Embeddable
+ Catalyst::Engine::Embeddable - needs testing, should work?
Catalyst::Engine::XMPP2
Catalyst::Engine::SCGI
Catalyst::Engine::Mojo
- Catalyst::Engine::Zeus
- Catalyst::Engine::JobQueue::POE
- Catalyst::Engine::Wx
- Catalyst::Engine::Stomp
+ Catalyst::Engine::Zeus - broken for ages
+ Catalyst::Engine::JobQueue::POE - broken for ages
+ Catalyst::Engine::Stomp - fixed
Catalyst::Engine::Server (Marked as Deprecated)
Catalyst::Engine::HTTP::POE (Marked as Deprecated)