Ian Bicking wrote:
In Paste Deploy these extensions are typically written as
middleware. That means that they act as applications, and get first
shot at the request (but typically pass the request on to the next
level in the stack).
I really really prefer the way that Paste Deploy does this over
Jeff's proposed extension idea. If TurboGears extensions are just
WSGI middleware, then they have a higher potential for re-use in
different contexts, and there are a bunch of other projects that may
create "extensions" for us.
Instead of being TurboGears extensions, its HTTP filters, or WSGI
middleware, or whatever you want to call it.
Mike Sarahan wrote:
I think this is a good idea, especially considering how different
people's needs/wants have proven to be so far. One thought I have is
to somehow tie in default config files for a given set of extensions -
maybe concatenate them to a standard skeleton config file, or replace
the skeleton config file with a more full-featured file. I say this
because I know that I would likely try to enable something that may
not
be installed, and then wonder why it wouldn't work. If the config
shows up automatically with extension installation, it might be nice.
As Ian said, Paste Deploy pretty much does this stuff for you
already. Oh, and its available for install as an egg. Oh, and it
already works.
nerkles wrote:
How about an Extensions Manager in Toolbox?
Perhaps with a way to download/install/update them?
Or a config manager?
All great ideas, especially if what Ian says above is the way we go.
The Extensions Manager in the Toolbox would basically be a graphical
way to configure which WSGI middleware is enabled/disabled, and a way
to browse extensions in the cheeseshop. A graphical tool for
managing the HTTP pipeline would be pretty great, I think.
TurboGears' strength is the fact that it doesn't go off defining new
ways of doing things unless there isn't something that already fits
the bill. I think Paste and WSGI middleware already fit the bill.
--
Jonathan LaCour
http://cleverdevil.org