grahamd in httpd

Minor tweaks to apache.import_module() documentation.

Updates to documentation for apache.import_module().

Update notes in change log in respect of companion functions needed to use


More documentation about apache.import_module(), specifically, how to enable

the old importer.

Further documentation for the apache.import_module() function.

Further updates to documentation for the apache.import_module() function.

(MODPYTHON-143) Allow just '~' to be used as a directory in the module

importer search path to refer to the handler root directory.

Progressive documentation updates for the apache.import_module() function.

(MODPYTHON-170) Added req._request_rec, server._server_rec and

conn._conn_rec semi private members for getting accessing to underlying

Apache struct as a Python CObject. These can be used for use in

implementing SWIG bindings for lower level APIs of Apache. These members

should be regarded as experimental and there are no guarantees that they

will remain present in this specific form in the future.

Have documentation about directives refer to apache.import_module() where


(MODPYTHON-143) Have the handler root fallback to be the document root when

handler directives are used in Location directive or in root context of

VirtualHost or actual server. This handler root is what is used as the

first place to look for a module when using apache.import_module() or when

it is necessary to expand a path prefixed by '~/'.

Updated documentation of the req.meets_condition() member function to show

req.update_mtime() and req.set_last_modified() in example.

(MODPYTHON-128) The apache.stat() function, which is a wrapper for the

apr_stat() function, should still return a valid finfoobject when the

target of the apr_stat() call does not exist. This is instead of raising

an exception. This is necessary as otherwise there is no way of replacing

req.finfo with a finfoobject where req.finfo.filetype is APR_NOFILE. An

exception will only be raised now if a truly unexpected problem arises.

Callers of apache.stat() need to check finfo.filetype for APR_NOFILE if

they need to know if target existed or not.

(MODPYTHON-93) Made assignment using the subscript operator against the

FieldStorage class act like a dictionary. In other words, any existing values

against a field are replaced with a single value rather than an additional

value being added against the field.

(MODPYTHON-129) Changed how return status of stacked handlers registered

against PythonHandler phase are interpreted. Subsequent stacked content

handlers are now executed when apache.DECLINED is returned as well as when

apache.OK is returned.

(MODPYTHON-207) The attribute req.args is now modifiable and can be set

from within handlers.

The attribute req.used_path_info is now modifiable and can be set from

within handlers. This is equivalent to having used the AcceptPathInfo


Need to be looking for link library and not dll when determining if APR 1

is present on Windows.

Attempt to auto detect when Apache uses APR 1.0 and link to those libraries

instead of older libraries when on Windows.

WinZIP on Windows boxes ignores empty directories in tar files when extracting

them. This causes test case to fail as 'test/htdocs/subdir' will not exist.

Put a dummy file in the directory so that WinZIP has something to extract.

    • ?
Need to normalise paths in sys.path for PythonImport test case as sys.path

is extended with document root which follows Apache forward slash convention

and not operating system backward slash convention when on Windows.

(MODPYTHON-143) Added entry to list of changes for implementation of new

module importer.

(MODPYTHON-195) Fix potential Win32 resource leaks in parent Apache process

when process restarts occur.

(MODPYTHON-143) Minimal documentation on some, but not all, changes to the

apache.import_module() function. Also corrections to documentation of

request objects functions for registering handlers and filters.

(MODPYTHON-191) Session class will no longer accept a normal cookie if a

signed cookie was expected.

(MODPYTHON-200) Fixed problem whereby signed and marshalled cookies could

not be used at the same time. When expecting marshalled cookie, any signed,

but not marshalled cookies will be returned as normal cookies.

(MODPYTHON-125) When assigning to req.handler, should allow it to be set

to None to reset it.

The request object add_handler() function should allow None to be supplied

as the optional path argument and have it be interpreted as if the argument

was never supplied in the first place.

(MODPYTHON-143) Cleanup code formatting debug output for children and friends.

(MODPYTHON-143) Fix module cache debug output whereby it dies when no

modules in per request cache. Also update output so it lists children as

paths instead of magic module name. Also distinguish friends from children,

friends being modules that were imported as part of the execution of the

request handler and not module import and therefore aren't included in

dependency checks to determine if module should be reloaded.

(MODPYTHON-143) Allow '~/' shortcut to be used in paths listed in the

'mod_python.importer.path' option. This means that paths can be specified

with respect to handler root rather than using absolute paths in Apache

configuration files.