WebKit version 0.9.2 released on 09/18/06
New Features
- As suggested by Alex Southgate, WebKit now uses Fazal Majid's
threadframe
module (that needs to be installed separately from Webware) in order to
print thread stack frames when receiving a
SIGQUIT
signal.
On Windows, SIGBREAK
(Ctrl-Break) can be used instead.
- Finding the directory index file ignored cascading extensions.
If there was an index.py and an index.html file, you got a "not found"
error, even with
UseCascadingExtensions = True
and
ExtensionCascadeOrder = ['.py','.html']
. Now, the index.py
file will be chosen over the index.html file because it has the higher
priority. Still, the order of the file names in DirectoryFile
takes precedence over ExtensionCascadeOrder
.
(Patch 891917 by Christoph Zwerschke)
HTTPRequest
now exposes content type, charsets or
languages in an elementary fashion. Also, rawInput
was
somewhat prone to breakage. An additional check prevents illegal/impossible
operations on the request stream. (Patch 753331 by Paul Boddie)
- When a user created a new context, but forgot to add the __init__.py
file, the context failed to load. This file is now auto-generated when
loading the context failed. (Patch 763490 by Jose Galvez)
- By setting a special define, you can now have mod_webkit pass the
password secret from Apache to WebKit. Usually, Apache will pass only
the remote user name. (Patch 830586 by Maximillian Dornseif)
- The maximum file size to be cached and the buffer size when serving
unknown file types are now configurable via subsettings of the
UnknownFileTyes
setting in
Application.config
(see Configuration Guide for details).
- In WebKit/Adapters/CGIPlus you will find
additional and modified files to help you run Webware on OpenVMS in a WASD
CGIPlus environment (provided by Jean-François Piéronne).
Improvements and Refinements
- Names in the AppServer.config
Host
setting are now resolved. You can now also use
'localhost' = '127.0.0.1'
and '' = '0.0.0.0'
(all interfaces) as the Host
.
- Config files are now opened in universal newline mode. This means you
can now edit config files for Webware running under one platform (e.g. Unix)
with an editor running on a different platform (e.g. Windows) without
causing any troubles.
- Made the session cookie name configurable (request 1049922).
This can now be done with the Application setting
SessionName
.
The default name is "_SID_", as it has been used before.
- Removed the very obscure context keyword parameter from
forward()
, includeURL()
,
resolveInternalRelativePath()
and
callMethodOfServlet()
. Probably nobody used it anyway,
and it was pretty confusing. This context parameter (or, if missing,
the current context) was always prepended to absolute paths, though
according to the docstring absolute paths are not changed. Absolute paths
stay now really unchanged. This also fixes bugs 530390 and 789693.
- The
URLParser
now handles absolute file paths delivered
by the PSP handler.
- The
serverSidePath()
method now handles absolute paths,
removing a leading slash (request 836157 by Toyotomi Hideyoshi).
- Cheetah template backups are now ignored (patch 675230).
- Code-cleanup in
WebUtils.FieldStorage
.
parse_qs()
will not raise an exception any more if
REQUEST_METHOD
is not set.
- The
HTTPResponse.writeHeaders()
will now set the Status
header if there is none (part 2 of patch 1520399 by Jean-Francois
Pieronne). Also optimized that method for speed and readability.
- In the Image example, the image is now embedded in the ExamplePage.
- Solved problems with stale pid files in some start scripts.
- The address.text
(http.text,
monitor.text) files
are now deleted at shutdown. If they already exist at startup, then,
if possible, remove; continue startup if they cannot be removed but
have the same content anyway; otherwise give a proper error message.
- Some optimizations in the built-in HTTP server; removed dependency
from the deprecated
mimetools
module.
- Fixed some problems in the Ajax example and tried to make the code
more clear.
- Improved ListBox example to kindly handle refresh/reload.
- As a precaution, using
os.chdir()
while running the
ThreadedAppServer now prints an error message. You can set the
force
parameter to True if you want to do it anyway.
Bugfixes
- Fixed a typo causing trouble with the
AutoReloadingAppServer
.
- Because of another typo in
ThreadedAppServer
, the
activeThreadCount()
method always returned zero and the number
of threads could not be properly adjusted. (Reported by Oliver Bock)
- If an exception happened in an included or forwarded servlet, the
exception handling happened in the context of the including or forwarding
servlet. Particularly, the
writeExceptionReport()
method of
the including or forwarding servlet was called, an not the method of the
included or forwarded servlet. (Reported by Oliver Bock)
- The Request method
isSessionExpired()
and the Application
setting IgnoreInvalidSession
did not work any more due to a
larger rewrite of the Application module after Webware version 0.8.1. This
functionality has been reimplemented. (Reported by Niurka Perez)
- Building wkcgi on Solaris needs socket and nsl (bug 727052). The
makefile does now support a LIBS macro and the proper setting needs only
be commented out. See also the note in the README file.
- Rewritten URLs are now handled correctly by evaluating
SCRIPT_URL
(bug 902242).
- Bugfix in
setTransaction()
.
- Fixed a bug when Webware is used in a non-persistent environment
(OneShotAdapter); don't start the session sweeper in this case
(part 1 of patch 1520399 by Jean-Francois Pieronne). Also,
don't start the session sweeper when no session timeout is set.
- Some more minor changes and fixes.