Issue Details (XML | Word | Printable)

Key: MODPYTHON-144
Type: Improvement Improvement
Status: Closed Closed
Resolution: Fixed
Priority: Major Major
Assignee: Graham Dumpleton
Reporter: Graham Dumpleton
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
mod_python

Make apache._server/apace._interpreter part of public API.

Created: 11/Mar/06 09:41 AM   Updated: 11/Apr/07 11:34 AM
Return to search
Component/s: core
Affects Version/s: None
Fix Version/s: 3.3.1

Time Tracking:
Not Specified

Resolution Date: 15/Mar/06 06:46 PM


 Description  « Hide
Within the mod_python.apache module there exists two private variables called "_server" and "_interpreter". These are initialised when an interpreter is first created. The variables are set to be an instance of the mod_python "serverobject" and the name of the interpreter. In effect, these would be the same as are available to a request handler as "req.server" and "req.interpreter".

The problem with those in the "req" object is that they are only available to the request handler. If these variables in the "mod_python.apache" module are made part of the public API, they would then be accessible by any code. Since "server.get_options()" now exists and "server.get_config()" works properly, making these public would allow code running at global scope when a module is being imported to consult the server level config and/or options to customise their runtime behavour.

Thus, proposed that these variables be renamed to "apache.server" and "apache.interpreter".





 All   Comments   Work Log   Change History   Subversion Commits      Sort Order: Ascending order - Click to sort in descending order
Repository Revision Date User Message
ASF #386039 Wed Mar 15 10:42:56 UTC 2006 grahamd The apache.interpreter and apache.main_server attributes have been made
publically available. These were previously private and not part of the
public API. Bug also fixed in that the server reference wasn't always the
actual main server object. (MODPYTHON-144)
Files Changed
MODIFY /httpd/mod_python/trunk/test/htdocs/tests.py
MODIFY /httpd/mod_python/trunk/Doc/modpython4.tex
MODIFY /httpd/mod_python/trunk/src/mod_python.c
MODIFY /httpd/mod_python/trunk/Doc/appendixc.tex
MODIFY /httpd/mod_python/trunk/lib/python/mod_python/apache.py