| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
| |
1. Removed cherrypy.config.get! Instead, you should directly inspect cherrypy.request, response, server, etc. Note that request.config.get still works fine.
2. a) cherrypy.log is now an instance of LogManager. It's still callable, but now is the object you inspect instead of calling config.get("log*"). b) cherrypy.log_access is now cherrypy.log.access.
3. All threads should now have access to default Request and Response objects, not just the main thread.
4. deadlock.timeout is now request.timeout.
5. Renamed config.py to _cpconfig.py; cherrypy.config is now an instance of _cpconfig.Config.
I still need to decide what to do about log_config (removed for now).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
should now default to HTTP/1.1. Some tests still need to be written, and 1.0 support reviewed throughout, but the basics work.
|
| |
|
| |
|
|
|
|
| |
http://groups.google.com/group/cherrypy-devel/browse_frm/thread/ef761a8063cdc72b
|
|
|
|
|
|
| |
therefore never runs more than one process at a time. There's a new test for autoreload in test_states.py.
The state-management for the HTTP server is a mess, by the way. I only got test_states' KeyboardInterrupt test working by inlining the client threads. So wait() and interrupts, etc. only really work when there's a single master thread. This needs fixed.
|
|
|
|
| |
always flattened as soon as possible.
|
|
|
|
| |
'log_config_options' to 'log_config'. Moved cherrypy.set_config to cherrypy.config.wrap.
|
|
|
|
| |
loggers (whose config entries must be at "/"), and the global access logger has been removed (although you can make one manually if you like).
|
|
|
|
| |
attribute dicts outside a request.
|
|
|
|
| |
Moved non-Tool-related code from cptools to {{{lib/__init__}}}. Added docstrings.
|
| |
|
| |
|
|
|
|
| |
request (unless InternalRedirect is raised). Also moved the logging code out of {{{_cputil}}} and into {{{__init__}}}. xmlrpc still needs fixed so it doesn't re-write path_info.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
"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
|
| |
|
|
|
|
| |
replaces _cp_tools, _cp_on_error, and _cp_filters. The Request object now keeps its own 'config' attribute (recalculated whenever object_path changes) which mixes _cp_config settings with settings in cherrypy.config. Every tool now has a merged_args method, which is used to pass arguments to the wrapped callable.
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
| |
1. I'll look at replacing _cp_on_error with Tools some other day.
2. Moved the HookMap into tools.py.
3. New config.current_config function.
4. static.serve_file now sets body even if not modified_since.
|
| |
|
|
|
|
|
|
|
| |
1. 'path' arg is now required when calling dispatchers.
2. fixed default favicon declaration of staticfile.
3. missing import in lib/static.
4. fixed test_combinedfilters.py
|
|
|
|
| |
Lots of renaming and reorg of modules.
|
|
|
|
|
|
| |
init_only can now be set in the config (server.init_only). server.class already existed. server.instance can also be set in the config. It corresponds to the "server" parameter in the cherrypy.server.start() method.
Also added "embedded" server environment to simplify running CP embedded in mod_python, FastCGI, another WSGI server, etc.
|
| |
|
| |
|
|
|
|
| |
new lowercase API" and get a (small) speed boost from it.
|
| |
|
| |
|
|
|
|
| |
static_filter entry in the default config (much cleaner than making a special case for favicon.ico in the code).
|
|
|
|
| |
to conform to PEP8; Fixes to sessionauthenticatefilter
|
| |
|
|
|
|
| |
the book)
|
| |
|
|
|
|
|
|
| |
1. Changed "showRequestHeaders" to "logRequestHeaders".
2. Moved header logic from _cpLogMessage (which is not just for errors) to _cpOnHTTPError.
3. Added "logTracebacks" and "logRequestHeaders" to _cputil.outputConfigMap.
|
|
|
|
|
|
| |
attribute called _cpGlobalInformation.
Added support for printing the HTTP request headers when an error is logged. This can be controlled via server.showRequestHeaders in the config settings.
|
|
|
|
| |
and modules(), attributes() functions into cptools.
|
| |
|
|
|
|
| |
server.logFileNotFound boolean.
|
|
|
|
| |
of request.path has been changed to inspect request.objectPath instead (the "rewritten path"). The request.path should never be rewritten; instead, it should only be used to generate new URL's based on the original path. The request.originalPath attribute can now probably be deprecated.
|
|
|
|
|
|
|
|
| |
opened).
2. Also, a fix in _cputil.getErrorPage, where messages (and other kwargs set to None) were not printing defaults.
3. Removed defunct "server.httpErrors" config entry.
|
| |
|
|
|
|
| |
"showTracebacks" is now "server.showTracebacks"
|
|
|
|
| |
sever.maxRequestSize, this does not test the header size! (yet)
|
|
|
|
| |
somoe python editors.
|
|
|
|
| |
now have docstrings.
|
| |
|
|
|
|
| |
more "raise Exception" or "raise Exception, arg". See http://mail.python.org/pipermail/python-dev/2005-August/055687.html for Guido's pronouncement, which is now part of PEP 8.
|