<type 'exceptions.UnicodeEncodeError'>
Python 2.7.17: /usr/bin/python
Thu Mar 28 13:40:35 2024

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

 /usr/lib/python2.7/dist-packages/flup/server/fcgi_base.py in run(self=<flup.server.fcgi_base.Request object>)
    556         """Runs the handler, flushes the streams, and ends the request."""
    557         try:
=>  558             protocolStatus, appStatus = self.server.handler(self)
    559         except:
    560             traceback.print_exc(file=self.stderr)
protocolStatus undefined, appStatus undefined, self = <flup.server.fcgi_base.Request object>, self.server = <flup.server.fcgi.WSGIServer object>, self.server.handler = <bound method WSGIServer.handler of <flup.server.fcgi.WSGIServer object>>
 /usr/lib/python2.7/dist-packages/flup/server/fcgi_base.py in handler(self=<flup.server.fcgi.WSGIServer object>, req=<flup.server.fcgi_base.Request object>)
   1116         try:
   1117             try:
=> 1118                 result = self.application(environ, start_response)
   1119                 try:
   1120                     for data in result:
result = None, self = <flup.server.fcgi.WSGIServer object>, self.application = <function script_name_fixer>, environ = {'CONTENT_LENGTH': '0', 'CONTEXT_DOCUMENT_ROOT': '/srv/dev.launchpad.net/moin.fcgi/', 'CONTEXT_PREFIX': '/', 'DOCUMENT_ROOT': '/srv/dev.launchpad.net/www/', 'GATEWAY_INTERFACE': 'CGI/1.1', 'HTTPS': 'on', 'HTTP_ACCEPT': '*/*', 'HTTP_CONNECTION': 'close', 'HTTP_HOST': 'dev.launchpad.net', 'HTTP_USER_AGENT': 'claudebot', ...}, start_response = <function start_response>
 /srv/dev.launchpad.net/moin.fcgi in script_name_fixer(env={'CONTENT_LENGTH': '0', 'CONTEXT_DOCUMENT_ROOT': '/srv/dev.launchpad.net/moin.fcgi/', 'CONTEXT_PREFIX': '/', 'DOCUMENT_ROOT': '/srv/dev.launchpad.net/www/', 'GATEWAY_INTERFACE': 'CGI/1.1', 'HTTPS': 'on', 'HTTP_ACCEPT': '*/*', 'HTTP_CONNECTION': 'close', 'HTTP_HOST': 'dev.launchpad.net', 'HTTP_USER_AGENT': 'claudebot', ...}, start=<function start_response>)
     64     def script_name_fixer(env, start):
     65         env['SCRIPT_NAME'] = fix_script_name
=>   66         return app(env, start)
     67     application = script_name_fixer
     68 
global app = <werkzeug.wsgi.SharedDataMiddleware object>, env = {'CONTENT_LENGTH': '0', 'CONTEXT_DOCUMENT_ROOT': '/srv/dev.launchpad.net/moin.fcgi/', 'CONTEXT_PREFIX': '/', 'DOCUMENT_ROOT': '/srv/dev.launchpad.net/www/', 'GATEWAY_INTERFACE': 'CGI/1.1', 'HTTPS': 'on', 'HTTP_ACCEPT': '*/*', 'HTTP_CONNECTION': 'close', 'HTTP_HOST': 'dev.launchpad.net', 'HTTP_USER_AGENT': 'claudebot', ...}, start = <function start_response>
 /usr/lib/python2.7/dist-packages/werkzeug/wsgi.py in __call__(self=<werkzeug.wsgi.SharedDataMiddleware object>, environ={'CONTENT_LENGTH': '0', 'CONTEXT_DOCUMENT_ROOT': '/srv/dev.launchpad.net/moin.fcgi/', 'CONTEXT_PREFIX': '/', 'DOCUMENT_ROOT': '/srv/dev.launchpad.net/www/', 'GATEWAY_INTERFACE': 'CGI/1.1', 'HTTPS': 'on', 'HTTP_ACCEPT': '*/*', 'HTTP_CONNECTION': 'close', 'HTTP_HOST': 'dev.launchpad.net', 'HTTP_USER_AGENT': 'claudebot', ...}, start_response=<function start_response>)
    764                     break
    765         if file_loader is None or not self.is_allowed(real_filename):
=>  766             return self.app(environ, start_response)
    767 
    768         guessed_type = mimetypes.guess_type(real_filename)
self = <werkzeug.wsgi.SharedDataMiddleware object>, self.app = <MoinMoin.wsgiapp.Application object>, environ = {'CONTENT_LENGTH': '0', 'CONTEXT_DOCUMENT_ROOT': '/srv/dev.launchpad.net/moin.fcgi/', 'CONTEXT_PREFIX': '/', 'DOCUMENT_ROOT': '/srv/dev.launchpad.net/www/', 'GATEWAY_INTERFACE': 'CGI/1.1', 'HTTPS': 'on', 'HTTP_ACCEPT': '*/*', 'HTTP_CONNECTION': 'close', 'HTTP_HOST': 'dev.launchpad.net', 'HTTP_USER_AGENT': 'claudebot', ...}, start_response = <function start_response>
 /usr/lib/python2.7/dist-packages/MoinMoin/wsgiapp.py in __call__(self=<MoinMoin.wsgiapp.Application object>, environ={'CONTENT_LENGTH': '0', 'CONTEXT_DOCUMENT_ROOT': '/srv/dev.launchpad.net/moin.fcgi/', 'CONTEXT_PREFIX': '/', 'DOCUMENT_ROOT': '/srv/dev.launchpad.net/www/', 'GATEWAY_INTERFACE': 'CGI/1.1', 'HTTPS': 'on', 'HTTP_ACCEPT': '*/*', 'HTTP_CONNECTION': 'close', 'HTTP_HOST': 'dev.launchpad.net', 'HTTP_USER_AGENT': 'claudebot', ...}, start_response=<function start_response>)
    262             context = init(request)
    263             try:
=>  264                 response = run(context)
    265             finally:
    266                 context.clock.stop('total')
response undefined, global run = <function run>, context = <AllContext ['AllContext']>
 /usr/lib/python2.7/dist-packages/MoinMoin/wsgiapp.py in run(context=<AllContext ['AllContext']>)
     87                 response = xmlrpc.xmlrpc2(XMLRPCContext(request))
     88             else:
=>   89                 response = dispatch(request, context, action_name)
     90             context.cfg.session_service.finalize(context, context.session)
     91             return response
response undefined, global dispatch = <function dispatch>, request = <AppRequest 6459 bytes [200 OK]>, context = <AllContext ['AllContext']>, action_name = u'info'
 /usr/lib/python2.7/dist-packages/MoinMoin/wsgiapp.py in dispatch(request=<AppRequest 6459 bytes [200 OK]>, context=<AllContext ['AllContext']>, action_name=u'info')
    135     # 2. handle action
    136     else:
=>  137         response = handle_action(context, pagename, action_name)
    138     if isinstance(response, Context):
    139         response = response.request
response undefined, global handle_action = <function handle_action>, context = <AllContext ['AllContext']>, pagename = u'Wishes/Translations/Feedback', action_name = u'info'
 /usr/lib/python2.7/dist-packages/MoinMoin/wsgiapp.py in handle_action(context=<AllContext ['AllContext']>, pagename=u'Wishes/Translations/Feedback', action_name=u'info')
    201             context.page.send_page()
    202         else:
=>  203             handler(context.page.page_name, context)
    204 
    205     return context
handler = <function execute>, context = <AllContext ['AllContext']>, context.page = <MoinMoin.Page.Page object>, context.page.page_name = u'Wishes/Translations/Feedback'
 /usr/lib/python2.7/dist-packages/MoinMoin/action/info.py in execute(pagename=u'Wishes/Translations/Feedback', request=<AllContext ['AllContext']>)
    369     if show_hitcounts:
    370         from MoinMoin.stats import hitcounts
=>  371         request.write(hitcounts.linkto(pagename, request, 'page=' + wikiutil.url_quote(pagename)))
    372     elif show_general:
    373         general(page, pagename, request)
request = <AllContext ['AllContext']>, request.write = <bound method AllContext.write of <AllContext ['AllContext']>>, hitcounts = <module 'MoinMoin.stats.hitcounts' from '/usr/li...n2.7/dist-packages/MoinMoin/stats/hitcounts.pyc'>, hitcounts.linkto = <function linkto>, pagename = u'Wishes/Translations/Feedback', global wikiutil = <module 'MoinMoin.wikiutil' from '/usr/lib/python2.7/dist-packages/MoinMoin/wikiutil.pyc'>, wikiutil.url_quote = <function url_quote>
 /usr/lib/python2.7/dist-packages/MoinMoin/stats/hitcounts.py in linkto(pagename=u'Wishes/Translations/Feedback', request=<AllContext ['AllContext']>, params='page=Wishes/Translations/Feedback')
     30 
     31     if not request.cfg.chart_options:
=>   32         return text(pagename, request, params)
     33 
     34     if _debug:
global text = <function text>, pagename = u'Wishes/Translations/Feedback', request = <AllContext ['AllContext']>, params = 'page=Wishes/Translations/Feedback'
 /usr/lib/python2.7/dist-packages/MoinMoin/stats/hitcounts.py in text(pagename=u'Wishes/Translations/Feedback', request=<AllContext ['AllContext']>, params='page=Wishes/Translations/Feedback')
    152         filterpage = request.values['page']
    153 
=>  154     days, views, edits = get_data(pagename, request, filterpage)
    155 
    156     hits = TupleDataset()
days undefined, views undefined, edits undefined, global get_data = <function get_data>, pagename = u'Wishes/Translations/Feedback', request = <AllContext ['AllContext']>, filterpage = u'Wishes/Translations/Feedback'
 /usr/lib/python2.7/dist-packages/MoinMoin/stats/hitcounts.py in get_data(pagename=u'Wishes/Translations/Feedback', request=<AllContext ['AllContext']>, filterpage=u'Wishes/Translations/Feedback')
     86         log.set_filter(['VIEWPAGE', 'SAVEPAGE'])
     87         latest = None
=>   88         for event in log.reverse():
     89             # don't use event_log.date()
     90             if latest is None:
event = (1707145887607932L, u'VIEWPAGE', MultiDict([('pagename', u'LEP/Dashboards'), ('HT...'ClaudeBot'), ('REMOTE_ADDR', u'54.172.85.217')])), log = <MoinMoin.logfile.eventlog.EventLog instance>, log.reverse = <bound method EventLog.reverse of <MoinMoin.logfile.eventlog.EventLog instance>>
 /usr/lib/python2.7/dist-packages/MoinMoin/logfile/__init__.py in reverse(self=<MoinMoin.logfile.eventlog.EventLog instance>)
    114             try:
    115                 logging.log(self.loglevel, "LogFile.reverse %s" % self.__filename)
=>  116                 result = self.previous()
    117             except StopIteration:
    118                 return
result = (1707145887607932L, u'VIEWPAGE', MultiDict([('pagename', u'LEP/Dashboards'), ('HT...'ClaudeBot'), ('REMOTE_ADDR', u'54.172.85.217')])), self = <MoinMoin.logfile.eventlog.EventLog instance>, self.previous = <bound method EventLog.previous of <MoinMoin.logfile.eventlog.EventLog instance>>
 /usr/lib/python2.7/dist-packages/MoinMoin/logfile/__init__.py in previous(self=<MoinMoin.logfile.eventlog.EventLog instance>)
    321             while result is None:
    322                 logging.log(self.loglevel, "LogFile.previous %s" % self.__filename)
=>  323                 result = self.__previous()
    324             if self.filter and not self.filter(result):
    325                 result = None
result = None, self = <MoinMoin.logfile.eventlog.EventLog instance>, self.__previous undefined
 /usr/lib/python2.7/dist-packages/MoinMoin/logfile/__init__.py in __previous(self=<MoinMoin.logfile.eventlog.EventLog instance>)
    310         if self.peek(-1):
    311             raise StopIteration
=>  312         return self.parser(self.__buffer.lines[self.__rel_index])
    313 
    314     def previous(self):
self = <MoinMoin.logfile.eventlog.EventLog instance>, self.parser = <bound method EventLog.parser of <MoinMoin.logfile.eventlog.EventLog instance>>, self.__buffer undefined, self.__rel_index undefined
 /usr/lib/python2.7/dist-packages/MoinMoin/logfile/eventlog.py in parser(self=<MoinMoin.logfile.eventlog.EventLog instance>, line=u'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...reserving+Prefetch+Proxy&REMOTE_ADDR=66.102.6.134')
     65             # badly formatted line in file, skip it
     66             return None
=>   67         return long(time_usecs), eventtype, wikiutil.parseQueryString(kvpairs)
     68 
     69     def set_filter(self, event_types=None):
builtin long = <type 'long'>, time_usecs = u'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x001707145887561095', eventtype = u'VIEWPAGE', global wikiutil = <module 'MoinMoin.wikiutil' from '/usr/lib/python2.7/dist-packages/MoinMoin/wikiutil.pyc'>, wikiutil.parseQueryString = <function parseQueryString>, kvpairs = u'pagename=.well-known%2Ftraffic-advice&HTTP_USER_...reserving+Prefetch+Proxy&REMOTE_ADDR=66.102.6.134'

<type 'exceptions.UnicodeEncodeError'>: 'decimal' codec can't encode characters in position 0-104: invalid decimal Unicode string
      args = ('decimal', u'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x001707145887561095', 0, 105, 'invalid decimal Unicode string')
      encoding = 'decimal'
      end = 105
      message = ''
      object = u'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x001707145887561095'
      reason = 'invalid decimal Unicode string'
      start = 0