--> --> -->
 
 
<type 'exceptions.KeyError'>
Python 2.5.1: /usr/bin/python
Mon Jan 5 23:32:43 2009

A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred.

 /var/www/cavorite/hg/www/hgwebdir.cgi in ()
   43 
   44 def make_web_app():
   45     return hgwebdir("hgweb.config")
   46 
   47 wsgicgi.launch(wsgiapplication(make_web_app))
wsgicgi = <proxied module 'wsgicgi'>, wsgicgi.launch = <function launch at 0x405e2a74>, wsgiapplication = <class 'mercurial.hgweb.request.wsgiapplication'>, make_web_app = <function make_web_app at 0x405e2764>
 /var/lib/python-support/python2.5/mercurial/hgweb/wsgicgi.py in launch(application=<mercurial.hgweb.request.wsgiapplication object at 0x405e330c>)
   62         return write
   63 
   64     result = application(environ, start_response)
   65     try:
   66         for data in result:
result undefined, application = <mercurial.hgweb.request.wsgiapplication object at 0x405e330c>, environ = {'DOCUMENT_ROOT': '/var/www/cavorite/hg/www', 'GATEWAY_INTERFACE': 'CGI/1.1', 'HTTP_ACCEPT': 'Accept: application/xhtml+xml,text/html;q=0.9,text/plain;', 'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7', 'HTTP_ACCEPT_ENCODING': 'gzip', 'HTTP_ACCEPT_LANGUAGE': 'en-us,en;q=0.5', 'HTTP_CACHE_CONTROL': 'no-cache', 'HTTP_CONNECTION': 'close', 'HTTP_HOST': 'hg.cavorite.com', 'HTTP_PRAGMA': 'no-cache', ...}, start_response = <function start_response at 0x405e2b8c>
 /var/lib/python-support/python2.5/mercurial/hgweb/request.py in __call__(self=<mercurial.hgweb.request.wsgiapplication object at 0x405e330c>, wsgienv={'DOCUMENT_ROOT': '/var/www/cavorite/hg/www', 'GATEWAY_INTERFACE': 'CGI/1.1', 'HTTP_ACCEPT': 'Accept: application/xhtml+xml,text/html;q=0.9,text/plain;', 'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7', 'HTTP_ACCEPT_ENCODING': 'gzip', 'HTTP_ACCEPT_LANGUAGE': 'en-us,en;q=0.5', 'HTTP_CACHE_CONTROL': 'no-cache', 'HTTP_CONNECTION': 'close', 'HTTP_HOST': 'hg.cavorite.com', 'HTTP_PRAGMA': 'no-cache', ...}, start_response=<function start_response at 0x405e2b8c>)
   15 
   16     def __call__(self, wsgienv, start_response):
   17         return _wsgirequest(self.destmaker(), wsgienv, start_response)
   18 
   19 class _wsgirequest(object):
global _wsgirequest = <class 'mercurial.hgweb.request._wsgirequest'>, self = <mercurial.hgweb.request.wsgiapplication object at 0x405e330c>, self.destmaker = <function make_web_app at 0x405e2764>, wsgienv = {'DOCUMENT_ROOT': '/var/www/cavorite/hg/www', 'GATEWAY_INTERFACE': 'CGI/1.1', 'HTTP_ACCEPT': 'Accept: application/xhtml+xml,text/html;q=0.9,text/plain;', 'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7', 'HTTP_ACCEPT_ENCODING': 'gzip', 'HTTP_ACCEPT_LANGUAGE': 'en-us,en;q=0.5', 'HTTP_CACHE_CONTROL': 'no-cache', 'HTTP_CONNECTION': 'close', 'HTTP_HOST': 'hg.cavorite.com', 'HTTP_PRAGMA': 'no-cache', ...}, start_response = <function start_response at 0x405e2b8c>
 /var/lib/python-support/python2.5/mercurial/hgweb/request.py in __init__(self=<mercurial.hgweb.request._wsgirequest object at 0x405e378c>, destination=<mercurial.hgweb.hgwebdir_mod.hgwebdir object at 0x405e376c>, wsgienv={'DOCUMENT_ROOT': '/var/www/cavorite/hg/www', 'GATEWAY_INTERFACE': 'CGI/1.1', 'HTTP_ACCEPT': 'Accept: application/xhtml+xml,text/html;q=0.9,text/plain;', 'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7', 'HTTP_ACCEPT_ENCODING': 'gzip', 'HTTP_ACCEPT_LANGUAGE': 'en-us,en;q=0.5', 'HTTP_CACHE_CONTROL': 'no-cache', 'HTTP_CONNECTION': 'close', 'HTTP_HOST': 'hg.cavorite.com', 'HTTP_PRAGMA': 'no-cache', ...}, start_response=<function start_response at 0x405e2b8c>)
   33         self.start_response = start_response
   34         self.headers = []
   35         destination.run_wsgi(self)
   36 
   37     out = property(lambda self: self)
destination = <mercurial.hgweb.hgwebdir_mod.hgwebdir object at 0x405e376c>, destination.run_wsgi = <bound method hgwebdir.run_wsgi of <mercurial.hgweb.hgwebdir_mod.hgwebdir object at 0x405e376c>>, self = <mercurial.hgweb.request._wsgirequest object at 0x405e378c>
 /var/lib/python-support/python2.5/mercurial/hgweb/hgwebdir_mod.py in run_wsgi(self=<mercurial.hgweb.hgwebdir_mod.hgwebdir object at 0x405e376c>, req=<mercurial.hgweb.request._wsgirequest object at 0x405e378c>)
  212                         req.write(tmpl("error", error=str(inst)))
  213                 else:
  214                     req.write(tmpl("notfound", repo=virtual))
  215             else:
  216                 if req.form.has_key('static'):
req = <mercurial.hgweb.request._wsgirequest object at 0x405e378c>, req.write = <bound method _wsgirequest.write of <mercurial.hgweb.request._wsgirequest object at 0x405e378c>>, tmpl = None, repo undefined, virtual = 'public'
 /var/lib/python-support/python2.5/mercurial/hgweb/request.py in write(self=<mercurial.hgweb.request._wsgirequest object at 0x405e378c>, *things=(<generator object at 0x405f852c>,))
   46         for thing in things:
   47             if hasattr(thing, "__iter__"):
   48                 for part in thing:
   49                     self.write(part)
   50             else:
part undefined, thing = <generator object at 0x405f852c>
 /var/lib/python-support/python2.5/mercurial/templater.py in __call__(self=<mercurial.templater.templater object at 0x405e11ec>, t='notfound', **map={'repo': 'public'})
   85         if not self.cache.has_key(t):
   86             try:
   87                 self.cache[t] = file(self.map[t]).read()
   88             except IOError, inst:
   89                 raise IOError(inst.args[0], _('template file %s: %s') %
self = <mercurial.templater.templater object at 0x405e11ec>, self.cache = {'annotateline': '<tr style="font-family:monospace" class="parity#...v#</a></td><td><pre>#line|escape#</pre></td></tr>', 'archiveentry': ' | <a href="{url}archive/{node|short}{extension}">#type|escape#</a> ', 'branchentry': '<tr class="parity{parity}"><td class="age"><i>{d...sessionvars%urlparameter}">manifest</a></td></tr>', 'branchtag': '<span class="branchtag" title="{name}">{name}</span> ', 'changelogchild': '<tr><th class="child">child #rev#:</th><td class...ionvars%urlparameter}">#node|short#</a></td></tr>', 'changelogparent': '<tr><th class="parent">parent #rev#:</th><td cla...ionvars%urlparameter}">#node|short#</a></td></tr>', 'changesetchild': '<tr><td>child {rev}</td><td style="font-family:m...ionvars%urlparameter}">{node|short}</a></td></tr>', 'changesetparent': '<tr><td>parent {rev}</td><td style="font-family:...ionvars%urlparameter}">{node|short}</a></td></tr>', 'default': 'summary', 'diffblock': '<pre>#lines#</pre>', ...}, t = 'notfound', builtin file = <type 'file'>, self.map = {'changelog': '/var/lib/python-support/python2.5/mercurial/templates/gitweb/changelog.tmpl', 'changelogentry': '/var/lib/python-support/python2.5/mercurial/templates/gitweb/changelogentry.tmpl', 'changeset': '/var/lib/python-support/python2.5/mercurial/templates/gitweb/changeset.tmpl', 'error': '/var/lib/python-support/python2.5/mercurial/templates/gitweb/error.tmpl', 'fileannotate': '/var/lib/python-support/python2.5/mercurial/templates/gitweb/fileannotate.tmpl', 'filediff': '/var/lib/python-support/python2.5/mercurial/templates/gitweb/filediff.tmpl', 'filelog': '/var/lib/python-support/python2.5/mercurial/templates/gitweb/filelog.tmpl', 'filerevision': '/var/lib/python-support/python2.5/mercurial/templates/gitweb/filerevision.tmpl', 'footer': '/var/lib/python-support/python2.5/mercurial/templates/gitweb/footer.tmpl', 'header': '/var/lib/python-support/python2.5/mercurial/templates/gitweb/header.tmpl', ...}, ).read undefined

<type 'exceptions.KeyError'>: 'notfound'
      args = ('notfound',)
      message = 'notfound'