Changes for version 0.9015 - 2009-11-26
- Fixed a bug in URLMap where $env is shallow copied and some middleware don't work
- Added -e and -M to plackup
- plackup -r with args (directories to watch) is deprecated. Use -R instead
- plackup foo.psgi now DWIMs. -a (--app) continues to work
- Optimizaitons to Middleware and docs to explicitly call to_app because overloading happens every request and is inefficient.
- The abilitiy to auto-select server backends for POE/AnyEvent/Coro is restored. Doesn't work with -r though. #50
- Display server package name in the Standalone/Prefork startup
- Fixed a bug in Plack::Test::MockHTTP where $res doesn't return the request (teejay)
- Fixed a bug in URLMap where requests to / fails in some cases (chiba)
Documentation
Run PSGI application with Plack servers
Modules
Converts HTTP::Request and HTTP::Response from/to PSGI env and response
PSGI reference implementation and utilities
Serve static files from document root with directory index
Dispatch requests to FCGI servers
Serve static files from root directory
Map multiple apps in different paths
OO and DSL to enable Plack Middlewares
Parse HTTP headers
Pure perl fallback of HTTP::Parser::XS
(auto)load Plack Servers
Base class for easy-to-use PSGI middleware
Logs requests like Apache's log format
Logs requests with time and accurate body size
Simple basic authentication middleware
Applies chunked encoding to the response body
Conditional wrapper for Plack middleware
Middleware to add "conditional", GET
Adds Content-Length header automatically
Automatically sets the Content-MD5 header on all String bodies
Compress response body with Gzip or Deflate
Set Error Document based on HTTP status code
Wraps JSON response in JSONP if callback parameter is specified
Validate request and response
Overrides HTTP method with X-HTTP-Method-Override header
Reorder HTTP headers for buggy clients
Restart the standalone server
Filters response content
Displays stack trace when your app dies
serve static files with Plack
Sample middleware to add X-Framework
Sets X-Sendfile (or a like) header for frontends
Standard interface for Plack implementations
Apache 1.3.x handlers to run PSGI application
Apache 2.0 handlers to run PSGI application
single process standalone HTTP server
Prefork standalone HTTP server
Test PSGI applications with various backends
Run mocked HTTP tests through PSGI applications
Run HTTP tests through live Plack servers
Utility subroutines for Plack server and framework developers
Provides
in lib/Plack/Test/Suite.pm
in lib/Plack/Loader/Reloadable.pm
in lib/Plack/Middleware/Writer.pm
in lib/Plack/Server/CGI.pm
in lib/Plack/Server/FCGI.pm
in lib/Plack/Test/Suite.pm
in lib/Plack/Util.pm
in lib/Plack/Util.pm
Examples
- eg/dot-psgi/Dumper.psgi
- eg/dot-psgi/Hello.psgi
- eg/dot-psgi/cgi-pm.psgi
- eg/dot-psgi/cgi-script.psgi
- eg/dot-psgi/echo-stream.psgi
- eg/dot-psgi/echo.psgi
- eg/dot-psgi/error.psgi
- eg/dot-psgi/frameworks/Angelos.psgi
- eg/dot-psgi/frameworks/Ark.psgi
- eg/dot-psgi/frameworks/CGI-Application.psgi
- eg/dot-psgi/frameworks/Catalyst.psgi
- eg/dot-psgi/frameworks/HTML-Mason.psgi
- eg/dot-psgi/frameworks/HTTP-Engine.psgi
- eg/dot-psgi/frameworks/Maypole.psgi
- eg/dot-psgi/frameworks/Mojo.psgi
- eg/dot-psgi/frameworks/Schenker.psgi
- eg/dot-psgi/frameworks/Squatting.psgi
- eg/dot-psgi/image.psgi
- eg/dot-psgi/plack-req.psgi
- eg/dot-psgi/slowapp.psgi
- eg/dot-psgi/static.psgi
- eg/dot-psgi/static/index.html
- eg/dot-psgi/static/test.css
- eg/dot-psgi/static/test.js
- eg/dot-psgi/twitter-stream.psgi