Source

CherryPy / cherrypy / _cpengine.py

Author Commit Message Labels Comments Date
Robert Brewer
New engine.release method, which decouples request and engine. Also new server.base method, which simplifies cherrypy.url. Finally, cherrypy._serving is promoted to cherrypy.serving, and has a new "load" method.
Robert Brewer
Fix for #637 (Move signal handlers into Engine class).
Robert Brewer
Moved checker back to cherrypy.checker from engine, and also added a new check_config_types method. There's also a new checker config namespace, so you can turn off the checker with "checker.on = False", or turn off specific methods with "checker.check_method_foo = None".
Robert Brewer
checker: 1. Moved cherrypy.checker to cherrypy.engine.checker so it can be set to None or another Checker instance in config. 2. Replaced Checker.checkall with {{{Checker.__call__}}}. 3. Fixed an output bug in check_compatibility.
Robert Brewer
New cherrypy.checker which runs by default in development mode.
Robert Brewer
New Engine.reexec_retry (timeout in seconds) for os.execv call.
Robert Brewer
Fix for #581 (Problem Re-spawning on Mac OS X).
Robert Brewer
Engine.stop was calling monitor_thread.cancel() but not .join(). Engine.monitor_thread is also now a PerpetualTimer, so it keeps the same thread rather than spawning new ones on each run.
Robert Brewer
More default attributes for NotReady.
Robert Brewer
docstring updates.
Robert Brewer
Made NotReadyRequest default to throw_errors = True.
Robert Brewer
Engine.drop_privileges: default umask to None.
Robert Brewer
Engine.drop_privileges: bugfix and allow uid/gid to be names or ints.
Robert Brewer
New engine.autoreload_match attribute for filtering autoreload to a single package (adapted from TG).
Robert Brewer
Fixes to test_states.
Robert Brewer
Oops.
Robert Brewer
Fix for #428 (drop privileges).
Robert Brewer
API and docstring cleanups: 1. Removed WrongConfigValue, decorate, decorate_all, and ExposeItems. 2. Moved cherrypy.logtime to cherrypy.log.time. 3. Reduced cherrypy.config.globalconf back to just cherrypy.config. 4. Moved _cpconfig.default_conf to config.defaults. .
Robert Brewer
Hook priority system: 1. All hook callbacks are now wrapped in an instance of _cprequest.Hook, where failsafe, priority, and kwargs are now stored. 2. Hooks are run in order of their "priority" attribute; lower numbers first. Default 50, range 0-100, floats OK. 2. cherrypy namespace: moved "serving" to "_serving", added cherrypy.Tool, changed "LogManager" to "_LogManager". 3. Set gzip.priority to 90.
Robert Brewer
More (final?) config overhaul work: 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 d…
Robert Brewer
Overhaul of config system: 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_star…
Robert Brewer
Fixed the HTTP/1.0 test suite. This involved moving wsgi SERVER_PROTOCOL back (to what the spec says!) and adding a new non-standard ACTUAL_SERVER_PROTOCOL entry.
Christian Wyglendowski
Engine.monitor_thread defaults to None now. This is in case an Exception is raised in an on_start_engine function and the code to start/stop the engine is wrapped in a try/finally, where Engine.stop is called in finally.
Robert Brewer
Lots of mixedCase to lower_with_underscores.
Robert Brewer
New deadlock monitor which sets Response.timed_out to True if Response.time < now - config.get("deadlock_timeout"). The request thread periodically checkes Response.timed_out and raises TimeoutError if it is True. Current checks are in HookMap.run, Request.respond, Body.__set__, and Response.finalize, more can be added later if needed.
Christian Wyglendowski
Giving NotReadyRequest a protocol attribute.
Robert Brewer
Replaced request.remote_addr, remote_port, and remote_host with a single "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.
Robert Brewer
WSGI-related changes: 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_PROTOCO…
Robert Brewer
Fix for #438 (autoreload.py: Server fails to start if a .pyc is imported with no corresponding .py).
Robert Brewer
silently disable signal handlers when running behind Apache (i.e. when "import _cprequest" is not done in the main thread).
  1. Prev
  2. 1
  3. 2
  4. Next