[mod_python] MPServlets

Daniel J. Popowich dpopowich at comcast.net
Wed Mar 5 17:17:23 EST 2008

John Aherne writes:
> Some time last year there was discussion between Daniel Popowich and 
> Graham Dumpleton about the changes to mod_python 3.3 and the import 
> process.
> That gave Daniel some problems because of his own developed import 
> mechanism.
> I have not seen any indication that Daniel produced an update to 
> MPServlets to work with the 3.3 modpython.
> Does anyone know if anything happened or even that an update was requred 
> or not.

Hi.  Dan here.  No, I have made no further updates to mpservlets.

The only real problem with 3.3 (affecting mpservlets) was the change
made that affected sys.path: in 3.2, the handler directory was placed
in sys.path, in 3.3 it isn't, so python modules co-located with
servlet files (*.mps) in the handler directory could not be imported
by the mps files without error.  This is immediately evident with the
tutorial that comes with mpservlets.

To me, such a major change in functionality between minor releases was
(still is) a bug: I should not have to modify my applications to get
them to work from one minor release to the next.  I expressed my
frustration on the modpython-dev list, but my concerns fell mostly on
deaf ears (oh, sympathy I suppose, but no action).

Not that I don't want to update mpservlets, but I found myself so
terribly frustrated by the major functionality change in a minor
release, plus, for my liking, the obfuscated complexity of the new
importer, I didn't (and still don't) have the time necessary to
include the new importer into mpservlets.

I have always had a problem with the way mod_python handles sys.path
and importing, which as I see it, has its roots in the unfortunate
perception that "mod_python == publisher is True."  Yes, this list was
swamped with import issues prior to 3.3, but I have a fundamental
(philosophical?) problem with the solution.


The solution for me (running mpservlets under 3.3.x with co-located
python modules) has been to set PythonPath explicitly in my apache
config and/or .htaccess files.


Daniel Popowich

More information about the Mod_python mailing list