Simply clicking on "Recent Changes" produces this python error.
OverflowErrorlong int too large to convert to int Please include this information in your bug reports!: Python Python 2.2.3: /usr/bin/python Linux cvs01.carfax.cfx 2.4.21-20.ELsmp #1 SMP Wed Aug 18 20:46:40 EDT 2004 i686 MoinMoin Release 1.3.1 [Revision patch-434] Wed Dec 15 15:20:48 2004 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.2/site-packages/MoinMoin/request.py in run(self=<MoinMoin.request.RequestCGI instance>) 822 else: 823 try: 824 cgitb.Hook(file=self).handle(saved_exc) 825 # was: cgitb.handler() 826 except: cgitb = <module 'MoinMoin.support.cgitb' from '/usr/lib/python2.2/site-packages/MoinMoin/support/cgitb.pyc'>, cgitb.Hook = <class MoinMoin.support.cgitb.Hook>, file undefined, self = <MoinMoin.request.RequestCGI instance>, ).handle undefined, saved_exc = (<class exceptions.OverflowError>, <exceptions.OverflowError instance>, <traceback object>) /usr/lib/python2.2/site-packages/MoinMoin/Page.py in send_page(self=<MoinMoin.Page.Page instance>, request=<MoinMoin.request.RequestCGI instance>, msg='', **keywords={'count_hit': 1}) 912 else: 913 # parse the text and send the page content 914 self.send_page_content(request, Parser, body, format_args=pi_formatargs, do_cache=do_cache) 915 916 # check for pending footnotes self = <MoinMoin.Page.Page instance>, self.send_page_content = <bound method Page.send_page_content of <MoinMoin.Page.Page instance>>, request = <MoinMoin.request.RequestCGI instance>, Parser = <class MoinMoin.parser.wiki.Parser>, body = u'||<tablewidth="100%" #FFFFA0> [[RandomQuote()]]|...other wikis, see OpenWiki:WikiSites/Aggregation.\n', format_args undefined, pi_formatargs = '', do_cache = 1 /usr/lib/python2.2/site-packages/MoinMoin/Page.py in send_page_content(self=<MoinMoin.Page.Page instance>, request=<MoinMoin.request.RequestCGI instance>, Parser=<class MoinMoin.parser.wiki.Parser>, body=u'||<tablewidth="100%" #FFFFA0> [[RandomQuote()]]|...other wikis, see OpenWiki:WikiSites/Aggregation.\n', needsupdate=0, format_args='', do_cache=1) 1043 1044 try: 1045 exec code 1046 except 'CacheNeedsUpdate': # if something goes wrong, try without caching 1047 self.send_page_content(request, Parser, body, needsupdate=1) code = <code object ? at 0x9606510, file "RecentChanges", line 2> ? /usr/lib/python2.2/site-packages/MoinMoin/formatter/base.py in macro(self=<MoinMoin.formatter.text_html.Formatter instance>, macro_obj=<MoinMoin.wikimacro.Macro instance>, name=u'RecentChanges', args=None) 219 def macro(self, macro_obj, name, args): 220 # call the macro 221 return macro_obj.execute(name, args) 222 223 def _get_bang_args(self, line): macro_obj = <MoinMoin.wikimacro.Macro instance>, macro_obj.execute = <bound method Macro.execute of <MoinMoin.wikimacro.Macro instance>>, name = u'RecentChanges', args = None /usr/lib/python2.2/site-packages/MoinMoin/wikimacro.py in execute(self=<MoinMoin.wikimacro.Macro instance>, macro_name=u'RecentChanges', args=None) 99 macro = wikiutil.importPlugin('macro', macro_name, path=self.cfg.data_dir) 100 if macro: 101 return macro(self, args) 102 103 builtins = vars(self.__class__) macro = <function execute>, self = <MoinMoin.wikimacro.Macro instance>, args = None /usr/lib/python2.2/site-packages/MoinMoin/macro/RecentChanges.py in execute(macro=<MoinMoin.wikimacro.Macro instance>, args=None, **kw={}) 356 357 for page in pages: 358 request.write(format_page_edits(macro, page, bookmark_usecs)) 359 360 request = <MoinMoin.request.RequestCGI instance>, request.write = <bound method RequestCGI.write of <MoinMoin.request.RequestCGI instance>>, global format_page_edits = <function format_page_edits>, macro = <MoinMoin.wikimacro.Macro instance>, page = [<MoinMoin.logfile.editlog.EditLogLine instance>], bookmark_usecs = 0 /usr/lib/python2.2/site-packages/MoinMoin/macro/RecentChanges.py in format_page_edits(macro=<MoinMoin.wikimacro.Macro instance>, lines=[<MoinMoin.logfile.editlog.EditLogLine instance>], bookmark_usecs=0) 84 d['time_html'] = None 85 if request.cfg.changed_time_fmt: 86 tdiff = long(tnow - wikiutil.version2timestamp(int(line.ed_time_usecs))) / 60 # has to be long for py 2.2.x 87 if tdiff < 1440: 88 d['time_html'] = _("%(hours)dh %(mins)dm ago") % { tdiff undefined, long undefined, tnow = 1103145648.6896181, global wikiutil = <module 'MoinMoin.wikiutil' from '/usr/lib/python2.2/site-packages/MoinMoin/wikiutil.pyc'>, wikiutil.version2timestamp = <function version2timestamp>, int undefined, line = <MoinMoin.logfile.editlog.EditLogLine instance>, line.ed_time_usecs = 1103145199000000L OverflowError: long int too large to convert to int __doc__ = 'Result too large to be represented.' __getitem__ = <bound method OverflowError.__getitem__ of <exceptions.OverflowError instance>> __init__ = <bound method OverflowError.__init__ of <exceptions.OverflowError instance>> __module__ = 'exceptions' __str__ = <bound method OverflowError.__str__ of <exceptions.OverflowError instance>> args = ('long int too large to convert to int',)
Can you use more recent version of Python? like well tested 2.3.4? Moin should work with 2.2.3, but you want to use newer Python.
Solution:
Go to file /usr/lib/python2.2/site-packages/MoinMoin/macro/RecentChanges.py and change line 86 from:
86 tdiff = long(tnow - wikiutil.version2timestamp(int(line.ed_time_usecs))) / 60 # has to be long for py
to:
86 tdiff = long(tnow - wikiutil.version2timestamp(long(line.ed_time_usecs))) / 60 # has to be long for py
Hope that helps.
TODO: fix in tla (please somebody commit it, my workdir is dirty with get_rev change)
Thank you, that appears to have fixed it. Rick