You are viewing a plain text version of this content. The canonical link for it is here.
Posted to mod_python-commits@quetz.apache.org by jg...@apache.org on 2006/08/15 14:35:01 UTC
svn commit: r431590 - /httpd/mod_python/trunk/Doc/appendixc.tex
Author: jgallacher
Date: Tue Aug 15 05:35:01 2006
New Revision: 431590
URL: http://svn.apache.org/viewvc?rev=431590&view=rev
Log:
Reorganized the "Changes from ..." sections in appendexc.tex.
Modified:
httpd/mod_python/trunk/Doc/appendixc.tex
Modified: httpd/mod_python/trunk/Doc/appendixc.tex
URL: http://svn.apache.org/viewvc/httpd/mod_python/trunk/Doc/appendixc.tex?rev=431590&r1=431589&r2=431590&view=diff
==============================================================================
--- httpd/mod_python/trunk/Doc/appendixc.tex (original)
+++ httpd/mod_python/trunk/Doc/appendixc.tex Tue Aug 15 05:35:01 2006
@@ -1,89 +1,68 @@
-\chapter{Changes from Version (3.2.8)\label{app-changes-from-3.2.8}}
+\chapter{Changes from Version (3.2.x)\label{app-changes-from-3.2.x}}
+% Comments on changes committed to svn trunk should go in this section first.
+% As they are backported move them to the appropriate chapter below.
+
+% Let's introduce a little organization here by listing the changes
+% by JIRA issue. This will make it a little easier to reorganize this
+% file when an issue is backported.
+
+\indexii{Changes from}{version 3.2.x}
-\indexii{Changes from}{version 3.2.8}
-
New Features
\begin{itemize}
\item
- (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-94]{MODPYTHON-94})
- New \code{req.is_https()} and \code{req.ssl_var_lookup()} methods.
- These communicate direct with the Apache mod_ssl module, allowing
- it to be determined if the connection is using SSL/TLS and what the
- values of internal ssl variables are.
- \item
- (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-124]{MODPYTHON-124})
- New \code{req.auth_name()} and \code{req.auth_type()} methods.
- These return the values associated with the AuthName and AuthType
- directives respectively. The \code{req.ap_auth_type} has now also
- been made writable so that it can be set by an authentication
- handler.
- \item
- (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-132]{MODPYTHON-132})
- New \code{req.construct_url()} method. Used to construct a fully
- qualified URI string incorporating correct scheme, server and port.
- \item
(\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-103]{MODPYTHON-103})
New \code{req.add_output_filter()}, \code{req.add_input_filter()},
\code{req.register_output_fiter()}, \code{req.register_input_filter()}
methods. These allows the dynamic registration of filters and the
attaching of filters to the current request.
\item
- (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-135]{MODPYTHON-135})
- Fixed possible directory traversal attack in FileSession.
- \item
- (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-137]{MODPYTHON-137})
- New \code{req.server.get_options()} method. This returns the subset
- of Python options set at global scope within the Apache configuration.
- That is, outside of the context of any VirtualHost, Location, Directory
- or Files directives.
- \item
- (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-78]{MODPYTHON-78})
- Added support for Apache 2.2
- \item
- (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-131]{MODPYTHON-131})
- The directory used for mutex locks can now be specified at
- at compile time using \code{./configure --with-mutex-dir value}
- or at run time with \code{PythonOption mod_python.mutex_directory value}.
- \item
- (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-145]{MODPYTHON-145})
- The number of mutex locks can now be specified at run time with
- \code{PythonOption mod_python.mutex_locks value}.
- \item
(\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-104]{MODPYTHON-104})
Support added for using Python in content being passed through "INCLUDES"
output filter, or as more commonly referred to server side include (SSI)
mechanism.
\item
- (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-144]{MODPYTHON-144})
- The \samp{apache.interpreter} and \samp{apache.main_server} attributes
- have been made publically available. These were previously private and
- not part of the public API.
+ (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-108]{MODPYTHON-108})
+ Added support to cookies for \code{httponly} attribute, an extension
+ originally created by Microsoft, but now getting more widespread use
+ in the battle against cross site-scripting attacks.
\item
(\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-118]{MODPYTHON-118})
Now possible using the \code{PythonImport} directive to specify the name
of a function contained in the module to be called once the designated
module has been imported.
\item
+ (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-124]{MODPYTHON-124})
+ New \code{req.auth_name()} and \code{req.auth_type()} methods.
+ These return the values associated with the AuthName and AuthType
+ directives respectively. The \code{req.ap_auth_type} has now also
+ been made writable so that it can be set by an authentication
+ handler.
+ \item
(\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-130]{MODPYTHON-130})
Added \code{req.set_etag()}, \code{req.set_last_modified()} and
\code{req.update_mtime()} functions as wrappers for similar functions
provided by Apache C API.
\item
+ (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-132]{MODPYTHON-132})
+ New \code{req.construct_url()} method. Used to construct a fully
+ qualified URI string incorporating correct scheme, server and port.
+ \item
+ (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-144]{MODPYTHON-144})
+ The \samp{apache.interpreter} and \samp{apache.main_server} attributes
+ have been made publically available. These were previously private and
+ not part of the public API.
+ \item
+ (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-149]{MODPYTHON-149})
+ Added support for session objects that span domains.
+ \item
(\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-153]{MODPYTHON-153})
Added \code{req.discard_request_body()} function as wrapper for
similar function provided by Apache C API. The function tests for
and reads any message body in the request, simply discarding
whatever it receives.
\item
- (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-149]{MODPYTHON-149})
- Added support for session objects that span domains.
- \item
- (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-108]{MODPYTHON-108})
- Added support to cookies for \code{httponly} attribute, an extension
- originally created by Microsoft, but now getting more widespread use
- in the battle against cross site-scripting attacks.
- \item
(\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-164]{MODPYTHON-164})
The \code{req.add_handler()}, \code{req.register_input_filter()} and
\code{req.register_output_filter()} methods can now take a direct
@@ -92,65 +71,14 @@
\end{itemize}
Improvements
-
+
\begin{itemize}
\item
- (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-77]{MODPYTHON-77})
- Third party C modules that use the simplified API for the Global
- Interpreter Lock (GIL), as described in PEP 311, can now be used. The
- only requirement is that such modules can only be used in the context
- of the \samp{main_interpreter}.
- \item
- (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-125]{MODPYTHON-125})
- The \code{req.handler} attribute is now writable. This allows a handler
- executing in a phase prior to the response phase to specify which
- Apache module will be responsible for generating the content.
- \item
- (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-141]{MODPYTHON-141})
- The \code{req.proxyreq} and \code{req.uri} attributes are now writable.
- This allows a handler to setup these values and trigger proxying of the
- current request to a remote server.
- \item
- (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-119]{MODPYTHON-119})
- DbmSession unit test no longer uses the default directory for the dbm file,
- so the test will not interfer with the user's current apache instance.
- \item
- (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-142]{MODPYTHON-142})
- The \code{req.no_cache} and \code{req.no_local_copy} attributes are
- now writable.
- \item
(\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-27]{MODPYTHON-27})
When using mod_python.publisher, the \code{__auth__()} and
\code{__access__()} functions and the \code{__auth_realm__} string
can now be nested within a class method as a well a normal function.
\item
- (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-107]{MODPYTHON-107})
- Neither mod_python.publisher nor mod_python.psp explicitly flush
- output after writing the content of the response back to the request
- object. By not flushing output it is now possible to use the
- "CONTENT_LENGTH" output filter to add a "Content-Length" header.
- \item
- (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-128]{MODPYTHON-128})
- Added the \code{filetype} attribute of the Apache \code{finfo}
- structure to the tuple returned when accessing \code{req.finfo}.
- This value is accessed using \code{req.finfo[apache.FINFO_FILETYPE]}.
- New constants \code{apache.APR_NOFILE}, \code{apache.APR_REG},
- \code{apache.APR_DIR} etc, have been added for comparing with the
- \code{filetype} value. The \code{req.canonical_filename} attribute
- was also made writable.
- \item
- (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-93]{MODPYTHON-93})
- Improved util.FieldStorage efficiency.
- \item
- (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-111]{MODPYTHON-111})
- Note made in session documentation that a save is required to avoid
- session timeouts.
- \item
- (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-158]{MODPYTHON-158})
- Added additional debugging and logging output for where mod_python
- cannot initialise itself properly due to Python or mod_python version
- mismatches or missing Python module code files.
- \item
(\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-90]{MODPYTHON-90})
The \code{PythonEnablePdb} configuration option will now be ignored
if Apache hasn't been started up in single process mode.
@@ -162,20 +90,37 @@
than \code{None} being returned with a subsequent error complaining
about the handler returning an invalid value.
\item
+ (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-93]{MODPYTHON-93})
+ Improved util.FieldStorage efficiency.
+ \item
(\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-101]{MODPYTHON-101})
Force an exception when handler evaluates to something other than
\code{None} but is otherwise not callable. Previously an exception
would not be generated if the handler evaluated to \code{False}.
\item
- (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-152]{MODPYTHON-152})
- When in a sub request, when a request is the result of an internal
- redirect, or when when returning from such a request, the
- \code{req.main}, \code{req.prev} and \code{req.next} members now
- correctly return a reference to the original Python request object
- wrapper first created for the specific \code{request_rec} instance
- rather than creating a new distinct Python request object. This means
- that any data added explicitly to a request object can be passed
- between such requests.
+ (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-107]{MODPYTHON-107})
+ Neither mod_python.publisher nor mod_python.psp explicitly flush
+ output after writing the content of the response back to the request
+ object. By not flushing output it is now possible to use the
+ "CONTENT_LENGTH" output filter to add a "Content-Length" header.
+ \item
+ (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-111]{MODPYTHON-111})
+ Note made in session documentation that a save is required to avoid
+ session timeouts.
+ \item
+ (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-125]{MODPYTHON-125})
+ The \code{req.handler} attribute is now writable. This allows a handler
+ executing in a phase prior to the response phase to specify which
+ Apache module will be responsible for generating the content.
+ \item
+ (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-128]{MODPYTHON-128})
+ Added the \code{filetype} attribute of the Apache \code{finfo}
+ structure to the tuple returned when accessing \code{req.finfo}.
+ This value is accessed using \code{req.finfo[apache.FINFO_FILETYPE]}.
+ New constants \code{apache.APR_NOFILE}, \code{apache.APR_REG},
+ \code{apache.APR_DIR} etc, have been added for comparing with the
+ \code{filetype} value. The \code{req.canonical_filename} attribute
+ was also made writable.
\item
(\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-129]{MODPYTHON-129})
When specifying multiple handlers for phases other than the content
@@ -197,6 +142,30 @@
will continue to be executed if \code{apache.OK} is returned as well
as when \code{apache.DECLINED} is returned.
\item
+ (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-141]{MODPYTHON-141})
+ The \code{req.proxyreq} and \code{req.uri} attributes are now writable.
+ This allows a handler to setup these values and trigger proxying of the
+ current request to a remote server.
+ \item
+ (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-142]{MODPYTHON-142})
+ The \code{req.no_cache} and \code{req.no_local_copy} attributes are
+ now writable.
+ \item
+ (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-152]{MODPYTHON-152})
+ When in a sub request, when a request is the result of an internal
+ redirect, or when when returning from such a request, the
+ \code{req.main}, \code{req.prev} and \code{req.next} members now
+ correctly return a reference to the original Python request object
+ wrapper first created for the specific \code{request_rec} instance
+ rather than creating a new distinct Python request object. This means
+ that any data added explicitly to a request object can be passed
+ between such requests.
+ \item
+ (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-171]{MODPYTHON-171})
+ When a pathname is assigned to \code{req.filename}, the pathname will be
+ normalised with the result being a POSIX style pathname as required by
+ Apache.
+ \item
(\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-178]{MODPYTHON-178})
When using mod_python.psp, if the PSP file which is the target of the
request doesn't actually exist, an \code{apache.HTTP_NOT_FOUND} server
@@ -206,52 +175,53 @@
directory and no \code{DirectoryIndex} directive is specified which
lists a valid PSP index file, then the same \code{apache.HTTP_NOT_FOUND}
server error is returned to the client.
- \item
- (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-171]{MODPYTHON-171})
- When a pathname is assigned to \code{req.filename}, the pathname will be
- normalised with the result being a POSIX style pathname as required by
- Apache.
\end{itemize}
Bug Fixes
\begin{itemize}
- \item
- (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-112]{MODPYTHON-112})
- The \code{req.phase} attribute is no longer overwritten by an input
- or output filter. The \code{filter.is_input} member should be used
- to determine if a filter is an input or output filter.
+ \item
+ (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-38]{MODPYTHON-38})
+ Fixed issue when using PSP pages in conjunction with publisher handler
+ or where a PSP error page was being triggered, that form parameters
+ coming from content of a POST request weren't available or only available
+ using a workaround. Specifically, the PSP page will now use any
+ \code{FieldStorage} object instance cached as \code{req.form} left
+ there by preceding code.
\item
(\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-43]{MODPYTHON-43})
Nested \code{__auth__()} functions in mod_python.publisher now execute
in context of globals from the file the function is in and not that
of mod_python.publisher itself.
\item
- (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-133]{MODPYTHON-133})
- The table object returned by \code{req.server.get_config()} was not
- being populated correctly to be the state of directives set at global
- scope for the server.
- \item
- (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-134]{MODPYTHON-134})
- Setting \code{PythonDebug} to \code{Off}, wasn't overriding \code{On}
- setting in parent scope.
- \item
- (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-140]{MODPYTHON-140})
- The \code{util.redirect()} function should be returning server status of
- \code{apache.DONE} and not \code{apache.OK} otherwise it will not give
- desired result if used in non content handler phase or where there are
- stacked content handlers.
+ (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-47]{MODPYTHON-47})
+ Fixed mod_python.publisher so it will not return a HTTP Bad Request
+ response when mod_auth is being used to provide Digest authentication.
\item
- (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-122]{MODPYTHON-122})
- Fixed configure problem when using bash 3.1.x.
+ (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-63]{MODPYTHON-63})
+ When handler directives are used within \code{Directory} or
+ \code{DirectoryMatch} directives where wildcards or regular
+ expressions are used, the handler directory will be set to the
+ shortest directory matched by the directory pattern. Handler
+ directives can now also be used within \code{Files} and
+ \code{FilesMatch} directives and the handler directory will correctly
+ resolve to the directory corresponding to the enclosing
+ \code{Directory} or \code{DirectoryMatch} directive, or the directory
+ the \code{.htaccess} file is contained in.
\item
(\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-76]{MODPYTHON-76})
The \code{FilterDispatch} callback should not flush the filter if it
has already been closed.
\item
- (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-47]{MODPYTHON-47})
- Fixed mod_python.publisher so it will not return a HTTP Bad Request
- response when mod_auth is being used to provide Digest authentication.
+ (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-84]{MODPYTHON-84})
+ The original change to fix the symlink issue for \code{req.sendfile()}
+ was causing problems on Win32, plus code needed to be changed to work
+ with APR 1.2.7.
+ \item
+ (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-100]{MODPYTHON-100})
+ When using stacked handlers and a \code{SERVER_RETURN} exception was
+ used to return an \code{OK} status for that handler, any following
+ handlers weren't being run if appropriate for the phase.
\item
(\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-109]{MODPYTHON-109})
The \code{Py_Finalize()} function was being called on child process
@@ -259,6 +229,11 @@
signal handler, which is generally unsafe and would cause the process
to lock up. This function is no longer called on child process shutdown.
\item
+ (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-112]{MODPYTHON-112})
+ The \code{req.phase} attribute is no longer overwritten by an input
+ or output filter. The \code{filter.is_input} member should be used
+ to determine if a filter is an input or output filter.
+ \item
(\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-113]{MODPYTHON-113})
The \code{PythonImport} directive now uses the
\code{apache.import_module()} function to import modules to avoid
@@ -269,6 +244,34 @@
\code{PythonPath} directive is being used as well as problems with
infinite extension of path.
\item
+ (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-120]{MODPYTHON-120})
+ (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-121]{MODPYTHON-121})
+ Fixes to test suite so it will work on virtual hosting environments
+ where \code{localhost} doesn't resolve to \code{127.0.0.1} but the
+ actual IP address of the host.
+ \item
+ (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-126]{MODPYTHON-126})
+ When \code{Python*Handler} or \code{Python*Filter} directive is used
+ inside of a \code{Files} directive container, the handler/filter
+ directory value will now correctly resolve to the directory corresponding
+ to any parent \code{Directory} directive or the location of the
+ \code{.htaccess} file the \code{Files} directive is contained in.
+ \item
+ (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-133]{MODPYTHON-133})
+ The table object returned by \code{req.server.get_config()} was not
+ being populated correctly to be the state of directives set at global
+ scope for the server.
+ \item
+ (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-134]{MODPYTHON-134})
+ Setting \code{PythonDebug} to \code{Off}, wasn't overriding \code{On}
+ setting in parent scope.
+ \item
+ (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-140]{MODPYTHON-140})
+ The \code{util.redirect()} function should be returning server status of
+ \code{apache.DONE} and not \code{apache.OK} otherwise it will not give
+ desired result if used in non content handler phase or where there are
+ stacked content handlers.
+ \item
(\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-147]{MODPYTHON-147})
Stopped directories being added to \code{sys.path} multiple times when
\code{PythonImport} and \code{PythonPath} directive used.
@@ -289,12 +292,6 @@
occurred wasn't escaping special HTML characters in the traceback or
the details of the exception.
\item
- (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-120]{MODPYTHON-120})
- (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-121]{MODPYTHON-121})
- Fixes to test suite so it will work on virtual hosting environments
- where \code{localhost} doesn't resolve to \code{127.0.0.1} but the
- actual IP address of the host.
- \item
(\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-157]{MODPYTHON-157})
Wrong interpreter name used for fixup handler phase and earlier, when
\code{PythonInterpPerDirectory} was enabled and request was against
@@ -304,13 +301,15 @@
Using \code{PythonInterpPerDirective} when setting content handler to
run dynamically with \code{req.add_handler()} would cause Apache to
crash.
- \item
- (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-126]{MODPYTHON-126})
- When \code{Python*Handler} or \code{Python*Filter} directive is used
- inside of a \code{Files} directive container, the handler/filter
- directory value will now correctly resolve to the directory corresponding
- to any parent \code{Directory} directive or the location of the
- \code{.htaccess} file the \code{Files} directive is contained in.
+ \item
+ (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-161]{MODPYTHON-161})
+ Directory argument supplied to \code{req.add_handler()} is
+ canonicalized and a trailing slash added automatically. This is
+ needed to ensure that the directory is always in POSIX path style as
+ used by Apache and that convention where directories associated with
+ directives always have trailing slash is adhered to. If this is not
+ done, a different interpreter can be chosen to that expected when the
+ \code{PythonInterpPerDirective} is used.
\item
(\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-166]{MODPYTHON-166})
\code{PythonHandlerModule} was not setting up registration of the
@@ -330,31 +329,6 @@
Fixed psp_parser error when CR is used as a line terminator in psp code.
This may occur with some older editors such as GoLive on Mac OS X.
\item
- (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-100]{MODPYTHON-100})
- When using stacked handlers and a \code{SERVER_RETURN} exception was
- used to return an \code{OK} status for that handler, any following
- handlers weren't being run if appropriate for the phase.
- \item
- (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-161]{MODPYTHON-161})
- Directory argument supplied to \code{req.add_handler()} is
- canonicalized and a trailing slash added automatically. This is
- needed to ensure that the directory is always in POSIX path style as
- used by Apache and that convention where directories associated with
- directives always have trailing slash is adhered to. If this is not
- done, a different interpreter can be chosen to that expected when the
- \code{PythonInterpPerDirective} is used.
- \item
- (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-173]{MODPYTHON-173})
- Fixed DbmSession to create db file with mode 0640.
- \item
- (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-172]{MODPYTHON-172})
- Fixed three memory leaks that were found in _apachemodule.parse_qsl, req.readlines
- and util.cfgtree_walk.
- \item
- (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-179]{MODPYTHON-179})
- Fixed the behaviour of req.readlines() when a size hint was provided. Previously,
- it would always return a single line when a size hint was provided.
- \item
(\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-175]{MODPYTHON-175})
Fixed problem whereby a main PSP page and an error page triggered from
that page both accessing the session object would cause a deadlock.
@@ -365,35 +339,122 @@
PSP code will now only unlock session if it created it in the first
place.
\item
- (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-38]{MODPYTHON-38})
- Fixed issue when using PSP pages in conjunction with publisher handler
- or where a PSP error page was being triggered, that form parameters
- coming from content of a POST request weren't available or only available
- using a workaround. Specifically, the PSP page will now use any
- \code{FieldStorage} object instance cached as \code{req.form} left
- there by preceding code.
+ (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-179]{MODPYTHON-179})
+ Fixed the behaviour of req.readlines() when a size hint was provided. Previously,
+ it would always return a single line when a size hint was provided.
\item
(\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-181]{MODPYTHON-181})
Fixed memory leak when mod_python handlers are defined for more than
one phase at the same time.
\item
- (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-84]{MODPYTHON-84})
- The original change to fix the symlink issue for \code{req.sendfile()}
- was causing problems on Win32, plus code needed to be changed to work
- with APR 1.2.7.
+ (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-182]{MODPYTHON-182})
+ Fixed memory leak in req.readline().
+ \end{itemize}
+
+
+\chapter{Changes from Version (3.2.10)\label{app-changes-from-3.2.10}}
+% PUT BACKPORTS from trunk to to branches/3.2.x in here ***ONLY***
+% This section is reserved for the next 3.2.x release
+% (eg 3.2.11) DO NOT put anything in this section unless it has been
+% backported from trunk to branches/3.2.x
+% If we don't do another release this section will disappear, and
+% app-changes-from-3.2.x will be renamed app-changes-from-2.3.10
+
+\indexii{Changes from}{version 3.2.10}
+
+ New Features
+
+ \begin{itemize}
\item
- (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-63]{MODPYTHON-63})
- When handler directives are used within \code{Directory} or
- \code{DirectoryMatch} directives where wildcards or regular
- expressions are used, the handler directory will be set to the
- shortest directory matched by the directory pattern. Handler
- directives can now also be used within \code{Files} and
- \code{FilesMatch} directives and the handler directory will correctly
- resolve to the directory corresponding to the enclosing
- \code{Directory} or \code{DirectoryMatch} directive, or the directory
- the \code{.htaccess} file is contained in.
+ NONE
+ \end{itemize}
+
+ Improvements
+
+ \begin{itemize}
+ \item
+ NONE
+ \end{itemize}
+
+ Bug Fixes
+
+ \begin{itemize}
+ \item
+ NONE
+ \end{itemize}
+
+\chapter{Changes from Version (3.2.8)\label{app-changes}}
+% mod_python version 3.2.10
+
+\indexii{Changes from}{version 3.2.8}
+
+ New Features
+
+ \begin{itemize}
+ \item
+ (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-78]{MODPYTHON-78})
+ Added support for Apache 2.2.
+ \item
+ (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-94]{MODPYTHON-94})
+ New \code{req.is_https()} and \code{req.ssl_var_lookup()} methods.
+ These communicate direct with the Apache mod_ssl module, allowing
+ it to be determined if the connection is using SSL/TLS and what the
+ values of internal ssl variables are.
+ \item
+ (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-131]{MODPYTHON-131})
+ The directory used for mutex locks can now be specified at
+ at compile time using \code{./configure --with-mutex-dir value}
+ or at run time with \code{PythonOption mod_python.mutex_directory value}.
+ \item
+ (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-137]{MODPYTHON-137})
+ New \code{req.server.get_options()} method. This returns the subset
+ of Python options set at global scope within the Apache configuration.
+ That is, outside of the context of any VirtualHost, Location, Directory
+ or Files directives.
+ \item
+ (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-145]{MODPYTHON-145})
+ The number of mutex locks can now be specified at run time with
+ \code{PythonOption mod_python.mutex_locks value}.
+ \item
+ (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-172]{MODPYTHON-172})
+ Fixed three memory leaks that were found in _apachemodule.parse_qsl, req.readlines
+ and util.cfgtree_walk.
+ \end{itemize}
+
+ Improvements
+
+ \begin{itemize}
+ \item
+ (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-77]{MODPYTHON-77})
+ Third party C modules that use the simplified API for the Global
+ Interpreter Lock (GIL), as described in PEP 311, can now be used. The
+ only requirement is that such modules can only be used in the context
+ of the \samp{main_interpreter}.
+ \item
+ (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-119]{MODPYTHON-119})
+ DbmSession unit test no longer uses the default directory for the dbm file,
+ so the test will not interfer with the user's current apache instance.
+ \item
+ (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-158]{MODPYTHON-158})
+ Added additional debugging and logging output for where mod_python
+ cannot initialise itself properly due to Python or mod_python version
+ mismatches or missing Python module code files.
\end{itemize}
+ Bug Fixes
+
+ \begin{itemize}
+ \item
+ (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-84]{MODPYTHON-84})
+ Fixed request.sendfile() bug for symlinked files on Win32.
+ \item
+ (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-122]{MODPYTHON-122})
+ Fixed configure problem when using bash 3.1.x.
+ \item
+ (\citetitle[http://issues.apache.org/jira/browse/MODPYTHON-173]{MODPYTHON-173})
+ Fixed DbmSession to create db file with mode 0640.
+ \end{itemize}
+
\chapter{Changes from Version (3.2.7)\label{app-changes-from-3.2.7}}
\indexii{Changes from}{version 3.2.7}