summaryrefslogtreecommitdiff
path: root/cherrypy/lib/wsgiapp.py
Commit message (Collapse)AuthorAgeFilesLines
* trunk - Removing the deprecated wsgiapp module and its Tool. [2202] in python3.Lakin Wecker2009-05-311-77/+0
|
* Fix for #700 (Deprecate the wsgiapp Tool).Robert Brewer2007-10-261-0/+5
|
* Renamed {{{_cpwsgiserver.py}}} to {{{wsgiserver.py}}}, to make it more clear ↵Robert Brewer2006-11-301-1/+1
| | | | that it's a public, reusable module. Also renamed {{{_cpwsgi.WSGIServer}}} to {{{_cpwsgi.CPWSGIServer}}}, to match the naming convention of the other subclasses in that module.
* Some tool buglets and docs.Robert Brewer2006-11-071-3/+3
|
* Safer wsgi close.Robert Brewer2006-09-301-1/+6
|
* Test support for wsgiref.validate (new '--validate' arg to test.py), plus a ↵Robert Brewer2006-09-081-1/+1
| | | | couple minor fixes based on the first validation run.
* Tweaks to docs, line lengths, tests, and number of serving lookups.Robert Brewer2006-08-281-13/+15
|
* Overhaul of config system:Robert Brewer2006-08-241-1/+1
| | | | | | | | | | | | | | | | | 1. New docstring for config module! 2. Put all entries into a config namespace. New deadlock, log, request and response namespaces. 3. Request and response entries now directly modify attributes of cherrypy.request and .response, and consumer code looks up those attributes, not config. This also allows interactive inspection of defaults. 4. Removed 'log_config' config entry. Use engine.on_start_engine_list.append(config.log_config) instead. 5. Old 'dispatch' entry is now 'request.dispatch'. 6. New log entries: log.error.file, log.error.function, log.access.file, log.access.function, log.screen. 7. 'server.max_request_body_size' is now 'request.max_body_size'. 8. environments now only apply to globalconf. 9. The 'development' environment has been removed, since its settings were all the default anyway. 10. The 'embedded' environment has been removed, since it duplicates the 'production' environment now. 11. There's a new 'test_suite' environment. 12. Removed log_file_not_found (from static.py). Something still needs to be done to config.wrap, so it can take dotted names as kwarg keys.
* Replaced request.remote_addr, remote_port, and remote_host with a single ↵Robert Brewer2006-08-071-6/+5
| | | | "remote" attribute, an instance of lib.http.Host, which has "ip", "port" and "name" attributes. Added a similar request.local attribute. Changed request() signature to (local, remote, scheme). This allows requests run behind multiple HTTP servers to know the address info for their particular connection.
* WSGI-related changes:Robert Brewer2006-08-071-23/+24
| | | | | | | 1. Changed Request.run from request_line arg to deconstructed args: method, path, query_string, and protocol. 2. Moved HTTP protocol checking from _cprequest to _cpwsgiserver. What was cherrypy.response.version is now cherrypy.request.protocol (tuple form of SERVER_PROTOCOL). request.version and response.version attributes removed. _cpwsgiserver now writes out server.protocol, not SERVER_PROTOCOL (which is a misnomer, it really should have been REQUEST_PROTOCOL). 3. path unquoting was also moved from _cprequest to _cpwsgiserver (like most other WSGI servers). 4. New test for absoluteURI in the Request-Line.
* Fix for #537 (Support for listening on multiple ports). cherrypy.server now ↵Robert Brewer2006-08-051-3/+2
| | | | has no "httpserver" attribute; instead, it has an "httpservers" attribute, a dict of the form {server object: bind_addr} where bind_addr is usually (host, port). New start_all method. Calling stop stops all httpservers, and restart stops all then restarts all.
* httptools.Version was overengineered. Shame on me. Using tuples gives a 2-3% ↵Robert Brewer2006-06-121-1/+1
| | | | speed boost.
* Removed "filter" from lots of places, including renaming of tests.Robert Brewer2006-06-011-2/+0
|
* Root and config are now isolated per app:Robert Brewer2006-05-071-59/+21
| | | | | | | | | | | 1. object_path is now called path_info, and there's a new request.script_name attribute. This should equal the mount point of the current application. 2. cherrypy.root is gone, use cherrypy.request.app.root for now instead. Perhaps cherrypy.root will reappear and point to that. 3. cherrypy.tree.mount_points has been replaced with cherrypy.tree.apps, a dict of the form {script_name: Application(root, conf)}. 4. The [global] config namespace is now contained in a flat cherrypy.config.globalconf dict. 5. Got rid of handling favicon.ico and the "*" URI (although they may return someday). 6. Upshot is that e.g. test_objectmapping.py takes 1/3 the time as CP 2.2. 7. Moved request body size check into _cprequest from _cpwsgi. 8. Fixed lib/wsgiapp and made a tool for it.
* Moved the following config keys out of the "server." namespace (so that ↵Robert Brewer2006-05-071-1/+1
| | | | | | | | | | | | | | "server." may mean "httpserver"): * default_content_type * log_access_file * log_config_options * log_file * log_file_not_found * log_request_headers * log_to_screen * show_tracebacks * throw_errors
* Lots of changes to error and log handling:Robert Brewer2006-05-011-1/+1
| | | | | | | | | | | 1. Removed RequestHandled and InternalError. 2. Error response is now overridable by replacing request.error_response. Tools should do this in setup(). 3. New request.log_access attribute. 4. Moved response.handleError to request.handle_error. 5. Logging of tracebacks and request headers are now tools. 6. New ErrorRedirect tool class. 7. Tools may now be anonymous (not necessary to be placed in tools module globals). 8. Continued the move to lower_with_underscores.
* Removed a bunch of instances of the word "filter".Robert Brewer2006-04-251-1/+1
|
* CP 3 initial checkin. Global filters have been replaced by request.hooks. ↵Robert Brewer2006-04-211-0/+106
Lots of renaming and reorg of modules.