Hi all -- [oops, meant to crosspost this to quixote-users -- sorry for the duplication] I spent most of yesterday fiddling with Apache, FastCGI, Quixote, and SPLAT! (a bug database I've been working on). I think Quixote needs a few minor changes to make it friendlier to outsiders (ie., any application other than our virtual fab). 1) slight overhaul of the session module, specifically: - rename SessionCollection to SessionManager - rename GlobalSession to Session I've never much liked the name SessionCollection, and it struck my at some point this weekend that that class was really a session *manager*. And part of my problem was that I wanted to disable session management. So the name change suddenly seemed obvious. 2) make session management optional. Currently, if you just drop the quixote.cgi supplied with Quixote into your web server's cgi-bin directory and try to execute it, it crashes because no session manager has been installed. Well, what if I don't *want* session management? I've come up with a reasonable way to disable sessions without mucking up publish.py too much: DummySessionManager and DummySession classes. Seems to work for me. I've already implemented these two; they're sitting on my hard disk at home waiting to be uploaded to work. The final one is a bit more involved: 3) allow multiple Quixote processes on the same machine (to service multiple "root packages". This would require getting rid of the quixote.config module (or at least allowing it to be overridden). It would have to be replaced by a config object that would be passed around wherever it's needed. We might also want to put the guts of publish.py into a Publisher class, to avoid reliance on keeping state in module- level globals. I've thought a bit about how to dump config.py in favour of a config object, but don't have anything concrete yet. I'm open to ideas! 4) don't say "root package", say "root namespace". That opens up the possibility of an instance or module instead of requiring a full-blown package to service Quixote requests. Thoughts? Greg -- Greg Ward - software developer gward@mems-exchange.org MEMS Exchange / CNRI voice: +1-703-262-5376 Reston, Virginia, USA fax: +1-703-262-5367