Our first and (currently) only bug from the ux2 merge. (At least I *think* it is a ux2 problem, perhaps I should confirm on karlstaging.)
Sat Apr 21 01:44:13 2012 Exception when processing https://karl.soros.org/reset_confirm.html?key=7cbe7e738719be0071e0235e7e32353600f3dd32 Referer: https://mail.google.com/mail/mu/mp/330/ Traceback (most recent call last): File "/srv/osfkarl/production/42/eggs/karl-3.83-py2.6.egg/karl/errorlog.py", line 18, in middleware return app(environ, start_response) File "/srv/osfkarl/production/42/eggs/repoze.retry-0.9.4-py2.6.egg/repoze/retry/__init__.py", line 88, in __call__ app_iter = self.application(environ, replace_start_response) File "/srv/osfkarl/production/42/eggs/repoze.zodbconn-0.14-py2.6.egg/repoze/zodbconn/connector.py", line 22, in __call__ self.next_app(environ, start_response), File "/srv/osfkarl/production/42/eggs/repoze.tm2-1.0a5-py2.6.egg/repoze/tm/__init__.py", line 23, in __call__ result = self.application(environ, save_status_and_headers) File "/srv/osfkarl/production/42/eggs/repoze.who-1.0.15-py2.6.egg/repoze/who/middleware.py", line 107, in __call__ app_iter = app(environ, wrapper.wrap_start_response) File "/srv/osfkarl/production/42/eggs/repoze.urchin-0.2-py2.6.egg/repoze/urchin/__init__.py", line 53, in __call__ resp = req.get_response(self.app) File "/srv/osfkarl/production/42/eggs/WebOb-1.1.1-py2.6.egg/webob/request.py", line 1086, in get_response application, catch_exc_info=False) File "/srv/osfkarl/production/42/eggs/WebOb-1.1.1-py2.6.egg/webob/request.py", line 1055, in call_application app_iter = application(self.environ, start_response) File "/srv/osfkarl/production/42/eggs/pyramid-1.2.1-py2.6.egg/pyramid/router.py", line 176, in __call__ response = self.handle_request(request) File "/srv/osfkarl/production/42/eggs/pyramid-1.2.1-py2.6.egg/pyramid/tweens.py", line 17, in excview_tween response = handler(request) File "/srv/osfkarl/production/42/eggs/pyramid-1.2.1-py2.6.egg/pyramid/router.py", line 153, in handle_request response = view_callable(context, request) File "/srv/osfkarl/production/42/eggs/pyramid-1.2.1-py2.6.egg/pyramid/config/views.py", line 523, in __call__ return view(context, request) File "/srv/osfkarl/production/42/eggs/pyramid-1.2.1-py2.6.egg/pyramid/config/views.py", line 311, in rendered_view context) File "/srv/osfkarl/production/42/eggs/pyramid-1.2.1-py2.6.egg/pyramid/renderers.py", line 393, in render_view return self.render_to_response(response, system, request=request) File "/srv/osfkarl/production/42/eggs/pyramid-1.2.1-py2.6.egg/pyramid/renderers.py", line 422, in render_to_response result = self.render(value, system_values, request=request) File "/srv/osfkarl/production/42/eggs/pyramid-1.2.1-py2.6.egg/pyramid/renderers.py", line 418, in render result = renderer(value, system_values) File "/srv/osfkarl/production/42/eggs/karl-3.83-py2.6.egg/karl/application.py", line 125, in metarenderer return classic_renderer(value, system) File "/srv/osfkarl/production/42/eggs/pyramid-1.2.1-py2.6.egg/pyramid/chameleon_zpt.py", line 49, in __call__ result = self.template(**system) File "/srv/osfkarl/production/42/eggs/Chameleon-2.8.2-py2.6.egg/chameleon/template.py", line 125, in __call__ return self.render(**kwargs) File "/srv/osfkarl/production/42/eggs/Chameleon-2.8.2-py2.6.egg/chameleon/zpt/template.py", line 258, in render return super(PageTemplate, self).render(**vars) File "/srv/osfkarl/production/42/eggs/Chameleon-2.8.2-py2.6.egg/chameleon/template.py", line 191, in render raise_with_traceback(exc, tb) File "/srv/osfkarl/production/42/eggs/Chameleon-2.8.2-py2.6.egg/chameleon/template.py", line 172, in render self._render(stream, econtext, rcontext) File "anonymous_formish_form_935622bb33130207c18fb0f95140fdb379a947d3.py", line 183, in render File "/srv/osfkarl/production/42/eggs/Chameleon-2.8.2-py2.6.egg/chameleon/zpt/template.py", line 262, in include self._render(*args, **kwargs) File "layout_cc527bd757c3092c5b6bc50f4c6461c44364ec90.py", line 1318, in render File "/srv/osfkarl/production/42/eggs/pyramid_bottlecap-0.3-py2.6.egg/bottlecap/layout.py", line 32, in render_panel return Structure(panel(context, request, *args, **kw)) File "/srv/osfkarl/production/42/eggs/pyramid_bottlecap-0.3-py2.6.egg/bottlecap/config.py", line 187, in derived result = wrapped(context, request, *args, **kw) File "/srv/osfkarl/production/42/eggs/pyramid_bottlecap-0.3-py2.6.egg/bottlecap/config.py", line 172, in derived result = wrapped(context, request, *args, **kw) File "/srv/osfkarl/production/42/eggs/karl-3.83-py2.6.egg/karl/ux2/panels.py", line 141, in personal_tools profile = profiles[name] File "/srv/osfkarl/production/42/eggs/repoze.folder-0.6.2-py2.6.egg/repoze/folder/__init__.py", line 96, in __getitem__ return self.data[name] KeyError: u'None' - Expression: " ${panel('global_logo')} ${panel('global_nav')} ${panel('personal_tools')} ${panel('search')} " - Filename: /srv/osfkarl/production/42/eggs/karl-3.83-py2.6.egg/karl/ux2/templates/layout.pt - Location: (53:31) - Source: ... ^ - Arguments: repeat: {...} (0) renderer_name: karl.views.forms:templates/anonymous_formish_form.pt context_tools: <NoneType - at 0xb76c9340L> renderer_info: <RendererHelper - at 0xa9fda6c> api: <TemplateAPI - at 0x14749cec> panel: <instancemethod render_panel at 0x10b14b94> layout: <Layout - at 0x14749bcc> blurb_macro: <Macro - at 0xb5d96ec> request: <Request - at 0x14749dcc> main_template: <PageTemplateFile - at 0xaab24ec> context: <Site None at 0x1240936c> view: <FormView - at 0xa9fda2c>
I need to make a test for this.