Replacing Network.CGI with NewCGI
bringert at cs.chalmers.se
Thu Jul 20 18:54:30 EDT 2006
Any users of Network.CGI here?
I would like to propose replacing the current Network.CGI module with
what is now known as Network.NewCGI . This has been mentioned
briefly before . The new module is backwards compatible with the
old one (except for the export of Text.Html.Html, which is now
Here is what I would like to do:
- Remove Network.CGI from the network package.
- Change the name of Network.NewCGI to Network.CGI
- Add the cgi package to http://darcs.haskell.org/packages/
- Add the xhtml package  to http://darcs.haskell.org/packages/
This is needed since the cgi package uses it to generate error pages.
Any comments, suggestions, or objections?
Here is a summary of the features of NewCGI:
- Access to CGI parameters (e.g. form input) from both GET and POST
- Access to CGI environment variables.
- Ability to set arbitrary response headers.
- Support for HTTP cookies.
- An efficient implementation of multipart/form-data using
Data.ByteString. This allows for efficient handling of file uploads.
- Wrapper functions for compatibility with the existing Network.CGI
- A CGI monad transformer.
- Basic exception handling and logging.
- Low-level run functions that allow using NewCGI programs with
protocols other than CGI, for example FastCGI .
More information about the Libraries