-
-
Notifications
You must be signed in to change notification settings - Fork 144
Closed
Labels
bugSomething isn't workingSomething isn't working
Description
Expected Behavior
Doc generation works fine
Actual Behavior
python3.7 -m pdoc --html ./foo.py -o build/docs --force
Traceback (most recent call last):
File "/usr/local/lib/python3.7/dist-packages/pdoc/__init__.py", line 122, in _render_template
return t.render(**config).strip()
File "/usr/lib/python3/dist-packages/mako/template.py", line 462, in render
return runtime._render(self, self.callable_, args, data)
File "/usr/lib/python3/dist-packages/mako/runtime.py", line 838, in _render
**_kwargs_for_callable(callable_, data))
File "/usr/lib/python3/dist-packages/mako/runtime.py", line 873, in _render_context
_exec_template(inherit, lclcontext, args=args, kwargs=kwargs)
File "/usr/lib/python3/dist-packages/mako/runtime.py", line 899, in _exec_template
callable_(context, *args, **kwargs)
File "/usr/local/lib/python3.7/dist-packages/pdoc/templates/html.mako", line 394, in render_body
${show_module(module)}
File "/usr/local/lib/python3.7/dist-packages/pdoc/templates/html.mako", line 0, in show_module
File "/usr/local/lib/python3.7/dist-packages/pdoc/templates/html.mako", line 160, in render_show_module
${show_func(f)}
File "/usr/local/lib/python3.7/dist-packages/pdoc/templates/html.mako", line 101, in show_func
<%
File "/usr/local/lib/python3.7/dist-packages/pdoc/__init__.py", line 1085, in params
return self._params(self.obj, annotate=annotate, link=link, module=self.module)
File "/usr/local/lib/python3.7/dist-packages/pdoc/__init__.py", line 1137, in _params
p = safe_default_value(p)
File "/usr/local/lib/python3.7/dist-packages/pdoc/__init__.py", line 1110, in safe_default_value
replacement = html.escape(replacement or p.default)
File "/usr/lib/python3.7/html/__init__.py", line 19, in escape
s = s.replace("&", "&") # Must be done first!
AttributeError: '_io.TextIOWrapper' object has no attribute 'replace'
/usr/lib/python3/dist-packages/apport/report.py:13: DeprecationWarning: the imp module is deprecated in favour of importlib; see the module's documentation for alternative uses
import fnmatch, glob, traceback, errno, sys, atexit, locale, imp
Traceback (most recent call last):
File "/usr/lib/python3.7/runpy.py", line 193, in _run_module_as_main
"__main__", mod_spec)
File "/usr/lib/python3.7/runpy.py", line 85, in _run_code
exec(code, run_globals)
File "/usr/local/lib/python3.7/dist-packages/pdoc/__main__.py", line 6, in <module>
main()
File "/usr/local/lib/python3.7/dist-packages/pdoc/cli.py", line 489, in main
write_files(module, ext='.html', **template_config)
File "/usr/local/lib/python3.7/dist-packages/pdoc/cli.py", line 318, in write_files
w.write(m.html(**kwargs))
File "/usr/local/lib/python3.7/dist-packages/pdoc/__init__.py", line 686, in html
html = _render_template('/html.mako', module=self, **kwargs)
File "/usr/local/lib/python3.7/dist-packages/pdoc/__init__.py", line 122, in _render_template
return t.render(**config).strip()
File "/usr/lib/python3/dist-packages/mako/template.py", line 462, in render
return runtime._render(self, self.callable_, args, data)
File "/usr/lib/python3/dist-packages/mako/runtime.py", line 838, in _render
**_kwargs_for_callable(callable_, data))
File "/usr/lib/python3/dist-packages/mako/runtime.py", line 873, in _render_context
_exec_template(inherit, lclcontext, args=args, kwargs=kwargs)
File "/usr/lib/python3/dist-packages/mako/runtime.py", line 899, in _exec_template
callable_(context, *args, **kwargs)
File "_html_mako", line 127, in render_body
File "_html_mako", line 30, in show_module
File "_html_mako", line 396, in render_show_module
File "_html_mako", line 311, in show_func
File "/usr/local/lib/python3.7/dist-packages/pdoc/__init__.py", line 1085, in params
return self._params(self.obj, annotate=annotate, link=link, module=self.module)
File "/usr/local/lib/python3.7/dist-packages/pdoc/__init__.py", line 1137, in _params
p = safe_default_value(p)
File "/usr/local/lib/python3.7/dist-packages/pdoc/__init__.py", line 1110, in safe_default_value
replacement = html.escape(replacement or p.default)
File "/usr/lib/python3.7/html/__init__.py", line 19, in escape
s = s.replace("&", "&") # Must be done first!
AttributeError: '_io.TextIOWrapper' object has no attribute 'replace'
Error in sys.excepthook:
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/apport_python_hook.py", line 63, in apport_excepthook
from apport.fileutils import likely_packaged, get_recent_crashes
File "/usr/lib/python3/dist-packages/apport/__init__.py", line 5, in <module>
from apport.report import Report
File "/usr/lib/python3/dist-packages/apport/report.py", line 30, in <module>
import apport.fileutils
File "/usr/lib/python3/dist-packages/apport/fileutils.py", line 23, in <module>
from apport.packaging_impl import impl as packaging
File "/usr/lib/python3/dist-packages/apport/packaging_impl.py", line 24, in <module>
import apt
File "/usr/lib/python3/dist-packages/apt/__init__.py", line 23, in <module>
import apt_pkg
ModuleNotFoundError: No module named 'apt_pkg'
Original exception was:
Traceback (most recent call last):
File "/usr/lib/python3.7/runpy.py", line 193, in _run_module_as_main
"__main__", mod_spec)
File "/usr/lib/python3.7/runpy.py", line 85, in _run_code
exec(code, run_globals)
File "/usr/local/lib/python3.7/dist-packages/pdoc/__main__.py", line 6, in <module>
main()
File "/usr/local/lib/python3.7/dist-packages/pdoc/cli.py", line 489, in main
write_files(module, ext='.html', **template_config)
File "/usr/local/lib/python3.7/dist-packages/pdoc/cli.py", line 318, in write_files
w.write(m.html(**kwargs))
File "/usr/local/lib/python3.7/dist-packages/pdoc/__init__.py", line 686, in html
html = _render_template('/html.mako', module=self, **kwargs)
File "/usr/local/lib/python3.7/dist-packages/pdoc/__init__.py", line 122, in _render_template
return t.render(**config).strip()
File "/usr/lib/python3/dist-packages/mako/template.py", line 462, in render
return runtime._render(self, self.callable_, args, data)
File "/usr/lib/python3/dist-packages/mako/runtime.py", line 838, in _render
**_kwargs_for_callable(callable_, data))
File "/usr/lib/python3/dist-packages/mako/runtime.py", line 873, in _render_context
_exec_template(inherit, lclcontext, args=args, kwargs=kwargs)
File "/usr/lib/python3/dist-packages/mako/runtime.py", line 899, in _exec_template
callable_(context, *args, **kwargs)
File "_html_mako", line 127, in render_body
File "_html_mako", line 30, in show_module
File "_html_mako", line 396, in render_show_module
File "_html_mako", line 311, in show_func
File "/usr/local/lib/python3.7/dist-packages/pdoc/__init__.py", line 1085, in params
return self._params(self.obj, annotate=annotate, link=link, module=self.module)
File "/usr/local/lib/python3.7/dist-packages/pdoc/__init__.py", line 1137, in _params
p = safe_default_value(p)
File "/usr/local/lib/python3.7/dist-packages/pdoc/__init__.py", line 1110, in safe_default_value
replacement = html.escape(replacement or p.default)
File "/usr/lib/python3.7/html/__init__.py", line 19, in escape
s = s.replace("&", "&") # Must be done first!
AttributeError: '_io.TextIOWrapper' object has no attribute 'replace'
Steps to Reproduce
- create
foo.pywith the following content:
# -*- coding: utf-8 -*-
import sys
def sample(output=sys.stdout, content="┬──┬ ノ( ゜-゜ノ)\n"):
output.write("%s\n" % (content * 100))
sample()The offender seems to be declaring output=sys.stdout.
- run
python3.7 -m pdoc --html ./foo.py -o build/docs --force
Additional info
- pdoc version:
$ python3.7 -m pdoc --version
__main__.py 0.7.1
$ python3.7 --version
Python 3.7.3
- sounds similar to dataclasses.field breaks doc generation #116
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working