Opened 13 years ago

Last modified 12 years ago

#973 defect closed fixed (fixed)

epyrun dies with an internal error

Reported by: Ycros Owned by:
Priority: highest Milestone:
Component: Keywords: documentation
Cc: radix, spiv, itamarst, jknight, Ycros Branch:


Change History (6)

comment:1 Changed 13 years ago by Ycros

When running admin/epyrun, it fails with the message:   
"INTERNAL ERROR: Cannot create a UID for a str without a base UID."  
Traceback when run with --debug:  
 Traceback (most recent call last): 
  File "admin/epyrun", line 401, in ? 
  File "/usr/lib64/python2.4/site-packages/epydoc/", line 110, in cli 
    docmap = _make_docmap(modules, options) 
  File "/usr/lib64/python2.4/site-packages/epydoc/", line 483, in 
    try: d.add(module) 
  File "/usr/lib64/python2.4/site-packages/epydoc/", line 2954, in add 
  File "admin/epyrun", line 223, in _add 
    return orig_add(self, objID) 
  File "/usr/lib64/python2.4/site-packages/epydoc/", line 2968, in 
  File "admin/epyrun", line 223, in _add 
    return orig_add(self, objID) 
  File "/usr/lib64/python2.4/site-packages/epydoc/", line 2971, in 
  File "admin/epyrun", line 223, in _add 
    return orig_add(self, objID) 
  File "/usr/lib64/python2.4/site-packages/epydoc/", line 2990, in 
  File "admin/epyrun", line 223, in _add 
    return orig_add(self, objID) 
  File "/usr/lib64/python2.4/site-packages/epydoc/", line 2976, in 
  File "/usr/lib64/python2.4/site-packages/epydoc/", line 2924, in 
    clsdoc =[objID.parent()] 
KeyError: <UID: zope.interface.interface.Specification>

comment:2 Changed 12 years ago by itamarst

I don't have this problem, I suspect because I don't have the zope.interface C
extension loaded. If we got epyrun to make sure this module is not loaded (and
it's only used for optimization) we should be able to generate API docs for 2.0.
Something like:

  sys.modules["zope.interface._zope_interface_coptimizations"] = None

should do it.

comment:3 Changed 12 years ago by spiv

Itamar's hack doesn't make epyrun succeed for me.  It dies at:

  [ 98%] ......................................
INTERNAL ERROR: string index out of range

!! An internal error occured.  To see the exception that caused the !!
!! error, use the '--debug' option.                                 !!

By that point it has generated 2644 HTML files out of 2678, though...

comment:4 Changed 12 years ago by spiv

I get better results with CVS epydoc, though.  It manages to write out 11815
HTML files (presumably the standard 2678 files + all the extras my hack to
epyrun makes it write).  It still give the "An internal error occured" message
(and fails to run at all under --debug), but a quite poke at the HTML in my web
browser looks good.

radix, do you want me to send you a tarball of the result so you can put it on
the website?

comment:5 Changed 12 years ago by spiv

So, foom has fixed epyrun to work with epydoc 2.1 as well as current CVS. 
epyrun also seems to depend on a newish zope.interface.  Otherwise, it generates
HTML just fine rather than dying.

Therefore I'm resolving this issue.

comment:6 Changed 7 years ago by <automation>

Owner: spiv deleted
Note: See TracTickets for help on using tickets.