[#1516] - Rework middleware, remove dependency on MagicalC and threadlocal Environ

To implement this, there was a lot of reworking of our "global"-ish objects (pylons.c,
pylons.g, ew.widget_context, credentials, etc.) to use Paste's StackedObjectProxies (SOPs).
A SOP is managed by a Registry, and all the SOPs can be cleaned up at once. In order to make
this work, we needed to use the RegistryMiddleware in 'streaming' mode so that it didn't try
to clean up stuff until the iterator was exhausted (as we tend to use pylons.c during rendering,
flushing ORM sessions at the end of the stream, etc.). All the tests now work locally, will trust
Chuck to find anything else I missed.

Signed-off-by: Rick Copeland rcopeland@geek.net

Rick Copeland Rick Copeland 2011-02-24

removed Allura/allura/tests/test_middleware.py
changed Allura/allura/command/base.py
changed Allura/allura/command/reactor.py
changed Allura/allura/config/app_cfg.py
changed Allura/allura/config/middleware.py
changed Allura/allura/lib/app_globals.py
changed Allura/allura/lib/custom_middleware.py
changed Allura/allura/lib/stats.py
changed Allura/allura/model/session.py
changed Allura/allura/tests/model/test_artifact.py
changed Allura/allura/tests/model/test_notification.py
changed Allura/allura/tests/unit/patches.py
changed Allura/allura/websetup/schema.py
changed AlluraTesting/alluratest/controller.py
Allura/allura/command/base.py Diff Switch to side-by-side view
Loading...
Allura/allura/command/reactor.py Diff Switch to side-by-side view
Loading...
Allura/allura/config/app_cfg.py Diff Switch to side-by-side view
Loading...
Allura/allura/config/middleware.py Diff Switch to side-by-side view
Loading...
Allura/allura/lib/app_globals.py Diff Switch to side-by-side view
Loading...
Allura/allura/lib/custom_middleware.py Diff Switch to side-by-side view
Loading...
Allura/allura/lib/stats.py Diff Switch to side-by-side view
Loading...
Allura/allura/model/session.py Diff Switch to side-by-side view
Loading...
Allura/allura/tests/model/test_artifact.py Diff Switch to side-by-side view
Loading...
Allura/allura/tests/model/test_notification.py Diff Switch to side-by-side view
Loading...
Allura/allura/tests/unit/patches.py Diff Switch to side-by-side view
Loading...
Allura/allura/websetup/schema.py Diff Switch to side-by-side view
Loading...
AlluraTesting/alluratest/controller.py Diff Switch to side-by-side view
Loading...