WebKit version 1.0 released on 11/29/08
Introduction
This release contains a few improvements and bugfixes, and it allows better
monitoring and handling of long-running threads in the ThreadedAppServer.
New Features
- Instead of using the standard WebKit adapter mod_webkit, you can also
use any SCGI adapter such as mod_scgi (not part of Webware for Python).
For details, see the installation and configuration guides.
- The ThreadedAppServer has got a new method
abortRequest()
allowing the abortion of the worker thread processing a request specified by
its request id. This feature needs a recent version of ctypes
and Python (2.3 or higher). The _canAbortRequest
attribute
tells you whether this feature is available.
- The new AppServer.config setting 'MaxRequestTime' allows monitoring
long-running requests. All requests with an execution time longer than
'MaxRequestTime' seconds will be automatically aborted. This feature is
disabled by setting 'MaxRequestTime' to 0 or None.
- The SMTP authentication when sending error emails has been improved,
and it is now possible to use SMTP after POP by adding the name of the POP
server to the ``ErrorEmailServer`` setting (Roger Haase).
- HTTPRequests have got two new methods
scheme()
and
hostAndPort()
returning the respective URL parts.
Improvements and Refinements
- If an exception occurs within a Task scheduled by the Application
TaskManager (obtained from
application.taskManager()
),
the exception will be handled by the Application's exception handler
(i.e. the exception will be logged and emailed if the appropriate
settings have been enabled within Application.config).
- The
_action_
prefix for Webware actions can now be
changed by overriding HTTPContent._actionPrefix
, or setting
this to None if you don't want to use actions at all.
- The error email messages are now created using the email module instead
of using the deprecated MimeWriter module for Python 2.2 and higher.
Bugfixes
- ThreadedAppServer could crash with socket error during nmap scan on
NetBSD (reported by Patrick TJ McPhee), this should be fixed now.
- Fixed bug with "Memory" Session configuration (as suggested by
Steve Schwarz).
HTTPResponse
created a Session for every request (bug
reported by Ben Parker).
- In the case of nested transactions (when you use forwarding),
the session is now only awakened and put to sleep once by the outmost
transaction (as suggested by Ben Parker).
- Made
Transaction.die()
work properly with Python 2.2
and higher, where WebKit.Object
is a new-style class.
- Changed the
urlRedirect
hook to behave as documented when
the urlRedirect
dictionary has an empty string as key.
- __init__.py is not created any more if
__init__.pyc exists (Andrew Gaul).
- The
UseAutomaticPathSessions
did not works with
Microsoft IIS (bug #494764 reported by Geoff Talvola).