[Python-projects] pyreverse crash on a certain source file

Zhang Sen zh.jesse at gmail.com
Tue Apr 28 17:05:27 CEST 2009


Hi list,

pyreverse always crashes here on a particular source file. I tried
several options but it's the same.

The 'bad' file is attached. Don't know if it's the problem of the file
itself, which can run well on itself and doesn't generate errors under
pylint.

My pyreverse is from the package of pylint, which is 0.18.0.

[jesse at zhang-laptop lib]$ pyreverse number_box.py
parsing number_box.py...
Exception RuntimeError: 'maximum recursion depth exceeded while calling
a Python object' in <type 'exceptions.RuntimeError'> ignored
Exception RuntimeError: 'maximum recursion depth exceeded while calling
a Python object' in <type 'exceptions.RuntimeError'> ignored
Exception RuntimeError: 'maximum recursion depth exceeded while calling
a Python object' in <type 'exceptions.RuntimeError'> ignored
Exception RuntimeError: 'maximum recursion depth exceeded while calling
a Python object' in <type 'exceptions.RuntimeError'> ignored
Exception RuntimeError: 'maximum recursion depth exceeded while calling
a Python object' in <type 'exceptions.RuntimeError'> ignored
Traceback (most recent call last):
  File "/usr/bin/pyreverse", line 4, in <module>
    main.Run(sys.argv[1:])
  File "/usr/lib64/python2.6/site-packages/pylint/pyreverse/main.py",
line 120, in __init__
    PyreverseCommand(args)
  File "/usr/lib64/python2.6/site-packages/pylint/pyreverse/main.py",
line 99, in __init__
    self.run(args)
  File "/usr/lib64/python2.6/site-packages/pylint/pyreverse/main.py",
line 109, in run
    diadefs = handler.get_diadefs(project, linker)
  File
"/usr/lib64/python2.6/site-packages/pylint/pyreverse/diadefslib.py",
line 227, in get_diadefs
    diagram.extract_relationships()
  File
"/usr/lib64/python2.6/site-packages/pylint/pyreverse/diagrams.py", line
150, in extract_relationships
    obj.attrs = self.get_attrs(node)
  File
"/usr/lib64/python2.6/site-packages/pylint/pyreverse/diagrams.py", line
86, in get_attrs
    names = self.class_names(ass_nodes)
  File
"/usr/lib64/python2.6/site-packages/pylint/pyreverse/diagrams.py", line
110, in class_names
    ass_node = ass_node._proxied
  File "/usr/lib64/python2.6/site-packages/logilab/astng/inference.py",
line 54, in _set_proxied
    const.__proxied = _CONST_PROXY[const.value.__class__]
KeyError: <class 'gtk._gtk.StateType'>
[jesse at zhang-laptop lib]$ 

Thanks again for the great tool! (We were searching for a tool to
generate UML, and it's really a surprise that pylint already ships a
nice one :)

Cheers,
Zhang Sen
-------------- next part --------------
A non-text attachment was scrubbed...
Name: number_box.py
Type: text/x-python
Size: 21381 bytes
Desc: not available
URL: <http://lists.logilab.org/pipermail/python-projects/attachments/20090428/ab9d8900/attachment-0271.py>


More information about the Python-Projects mailing list