Gregory (Grisha) Trubetskoy wrote:
Just to put this SQLite business to rest.
I think that (and we can discuss this - I don't set laws, I just have
opinions that may not always beright, so feel free to comment)
mod_python should do fewer things but do them exceptionally well.
Roughly speaking, to be included in mod_python something has to fall
into the category of Apache/Python integration or demonstrate to be
addressing a challenge introduced by the mod_python environment and too
difficult to address by an average (Python) programmer.
Given this definition, the reason Sessions were included was that it
turned out that implementing session support under mod_python was not a
trivial task and required use of APR locking (which was implemented for
Sessions IIRC).
Similar reasoning behind the inclusion of PSP - it's not something an
average Python programmer could whip up, but it is also a bit of a
stretch and its inclusion was (and is) controversial.
Cookies were included because the standard Python lib module assumed a
CGI environment and was (and is) IMHO lacking in many ways.
On a more practical note - interoperation with third-party applications
creates a dependency. So even though SQLite would not have to be
installed in order for mod_python to work, it _would_ have to be
installed in order for the test suite to run. Or you don't test it, in
which case you risk it becoming broken and not noticing it. And if we
were to continue down this path, imagine having to have MySQL,
PostgreSQL and Oracle installed in order to run the test suite - we'd
never get any +1's on the list this way :-)
So based on the above, I think SQLite support should be removed.
The thing we need to address is what to do with nifty things we create
but that don't qualify for inclusion. The idea of a 'contrib' directory
has been floated around for a while, I for one am against it for the
same reasons above - it should either be 100% supported or not included
at all IMO.
I think for the time being the best approach is for people to use their
own resources to publish contrib-type code on the web and just follow
the usual process of announcing it on the list.
Grisha
Grisha,
I think much what you write could be distilled into "The mod_python
Philosophy" and should included in the documenation as such.
I'm ambivalent on the subject of a contrib directory. In theory it's a
great idea. In practice it often seems that a project's contributed code
is out of date and unmaintained. I think we should *only* ship
production quality code. This means that we would need to take
responsibilty for maintaining contributed code which I think would be a
bad idea - our resources are too limited.
It may be worthwhile expanding on our example code however. I don't
think people expect examples to be full fledged implementations, but can
be a great starting point for a user to create their own code. I guess
we can still get into dependency problems here as well though. There are
no easy answers.
Regards,
Jim