sphinx
sphinx copied to clipboard
AttributeError: 'PDFReader' object has no attribute '_xref'
Describe the bug
Trying to build my sphinx documentation for my company project (can t share code...) When running it raise this log:
# Sphinx version: 5.1.1
# Python version: 3.10.5 (CPython)
# Docutils version: 0.17.1 release
# Jinja2 version: 3.1.2
# Last messages:
# intro
# settings
# manage
# check
# calibration
# cut
# signal
# mapmag
# resolving references...
# rendering...
# Loaded extensions:
# sphinx.ext.mathjax (5.1.1) from /home/vince/.local/lib/python3.10/site-packages/sphinx/ext/mathjax.py
# sphinxcontrib.applehelp (1.0.2) from /home/vince/.local/lib/python3.10/site-packages/sphinxcontrib/applehelp/__init__.py
# sphinxcontrib.devhelp (1.0.2) from /home/vince/.local/lib/python3.10/site-packages/sphinxcontrib/devhelp/__init__.py
# sphinxcontrib.htmlhelp (2.0.0) from /home/vince/.local/lib/python3.10/site-packages/sphinxcontrib/htmlhelp/__init__.py
# sphinxcontrib.serializinghtml (1.1.5) from /home/vince/.local/lib/python3.10/site-packages/sphinxcontrib/serializinghtml/__init__.py
# sphinxcontrib.qthelp (1.0.3) from /home/vince/.local/lib/python3.10/site-packages/sphinxcontrib/qthelp/__init__.py
# alabaster (0.7.12) from /home/vince/.local/lib/python3.10/site-packages/alabaster/__init__.py
# sphinx.ext.autodoc.preserve_defaults (1.0) from /home/vince/.local/lib/python3.10/site-packages/sphinx/ext/autodoc/preserve_defaults.py
# sphinx.ext.autodoc.type_comment (5.1.1) from /home/vince/.local/lib/python3.10/site-packages/sphinx/ext/autodoc/type_comment.py
# sphinx.ext.autodoc (5.1.1) from /home/vince/.local/lib/python3.10/site-packages/sphinx/ext/autodoc/__init__.py
# sphinx.ext.napoleon (5.1.1) from /home/vince/.local/lib/python3.10/site-packages/sphinx/ext/napoleon/__init__.py
# sphinx.ext.graphviz (5.1.1) from /home/vince/.local/lib/python3.10/site-packages/sphinx/ext/graphviz.py
# myst_parser (0.18.0) from /home/vince/.local/lib/python3.10/site-packages/myst_parser/__init__.py
# rinoh.frontend.sphinx (0.5.4) from /home/vince/.local/lib/python3.10/site-packages/rinoh/frontend/sphinx/__init__.py
Traceback (most recent call last):
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/backend/pdf/reader.py", line 310, in __getitem__
obj = super().__getitem__(identifier)
KeyError: 23
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/vince/.local/lib/python3.10/site-packages/sphinx/cmd/build.py", line 277, in build_main
app.build(args.force_all, filenames)
File "/home/vince/.local/lib/python3.10/site-packages/sphinx/application.py", line 343, in build
self.builder.build_all()
File "/home/vince/.local/lib/python3.10/site-packages/sphinx/builders/__init__.py", line 265, in build_all
self.build(None, summary=__('all source files'), method='all')
File "/home/vince/.local/lib/python3.10/site-packages/sphinx/builders/__init__.py", line 367, in build
self.write(docnames, list(updated_docnames), method)
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/frontend/sphinx/__init__.py", line 257, in write
self.write_document(entry)
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/frontend/sphinx/__init__.py", line 267, in write_document
rinoh_document.render(outfilename)
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/document.py", line 436, in render
self.part_page_counts = self._render_pages()
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/document.py", line 478, in _render_pages
part_page_count += part.render(part_page_count.count + 1)
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/template.py", line 461, in render
page.render()
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/document.py", line 178, in render
super().render(CONTENT, rerender=index > 0)
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/layout.py", line 197, in render
child.render(type, rerender)
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/layout.py", line 197, in render
child.render(type, rerender)
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/layout.py", line 306, in render
self._render(type, rerender)
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/layout.py", line 366, in _render
self.chain.render(self, rerender=rerender)
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/layout.py", line 637, in render
self.flowables.flow(container, last_descender=None,
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/flowable.py", line 240, in flow
self.flow_inner(margin_container, last_descender, state=state,
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/flowable.py", line 295, in flow_inner
self.render(pad_cntnr, last_descender, state=state,
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/flowable.py", line 535, in render
self._flow_with_next(state, container, descender,
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/flowable.py", line 572, in _flow_with_next
flowable.flow(maybe_container, descender, state=flowable_state,
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/flowable.py", line 240, in flow
self.flow_inner(margin_container, last_descender, state=state,
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/flowable.py", line 295, in flow_inner
self.render(pad_cntnr, last_descender, state=state,
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/flowable.py", line 535, in render
self._flow_with_next(state, container, descender,
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/flowable.py", line 572, in _flow_with_next
flowable.flow(maybe_container, descender, state=flowable_state,
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/flowable.py", line 240, in flow
self.flow_inner(margin_container, last_descender, state=state,
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/flowable.py", line 295, in flow_inner
self.render(pad_cntnr, last_descender, state=state,
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/flowable.py", line 535, in render
self._flow_with_next(state, container, descender,
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/flowable.py", line 572, in _flow_with_next
flowable.flow(maybe_container, descender, state=flowable_state,
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/flowable.py", line 240, in flow
self.flow_inner(margin_container, last_descender, state=state,
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/flowable.py", line 295, in flow_inner
self.render(pad_cntnr, last_descender, state=state,
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/flowable.py", line 535, in render
self._flow_with_next(state, container, descender,
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/flowable.py", line 572, in _flow_with_next
flowable.flow(maybe_container, descender, state=flowable_state,
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/flowable.py", line 240, in flow
self.flow_inner(margin_container, last_descender, state=state,
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/flowable.py", line 295, in flow_inner
self.render(pad_cntnr, last_descender, state=state,
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/flowable.py", line 535, in render
self._flow_with_next(state, container, descender,
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/flowable.py", line 572, in _flow_with_next
flowable.flow(maybe_container, descender, state=flowable_state,
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/flowable.py", line 240, in flow
self.flow_inner(margin_container, last_descender, state=state,
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/flowable.py", line 295, in flow_inner
self.render(pad_cntnr, last_descender, state=state,
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/flowable.py", line 535, in render
self._flow_with_next(state, container, descender,
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/flowable.py", line 572, in _flow_with_next
flowable.flow(maybe_container, descender, state=flowable_state,
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/flowable.py", line 240, in flow
self.flow_inner(margin_container, last_descender, state=state,
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/flowable.py", line 295, in flow_inner
self.render(pad_cntnr, last_descender, state=state,
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/image.py", line 254, in render
image = container.document.backend.Image(filename_or_file)
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/backend/pdf/__init__.py", line 401, in __init__
self.xobject = Reader(filename_or_file)
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/backend/pdf/reader.py", line 529, in __init__
pdf_file = PDFReader(file_or_filename)
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/backend/pdf/reader.py", line 285, in __init__
self._xref, trailer = self.parse_xref_stream(xref_offset)
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/backend/pdf/reader.py", line 377, in parse_xref_stream
identifier, xref_stream = self.parse_indirect_object(offset)
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/backend/pdf/reader.py", line 340, in parse_indirect_object
obj = self.next_item(indirect=True)
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/backend/pdf/reader.py", line 92, in next_item
item = self.read_dictionary_or_stream(indirect)
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/backend/pdf/reader.py", line 189, in read_dictionary_or_stream
stream.update(dictionary)
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/backend/pdf/cos.py", line 325, in wrapper
return method(obj, key, *args, **kwargs)
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/backend/pdf/cos.py", line 350, in __getitem__
return super().__getitem__(key).object
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/backend/pdf/cos.py", line 98, in object
return self.document[self.identifier]
File "/home/vince/.local/lib/python3.10/site-packages/rinoh/backend/pdf/reader.py", line 312, in __getitem__
obj = self[identifier] = self._xref.get_object(identifier)
AttributeError: 'PDFReader' object has no attribute '_xref'
How to Reproduce
The command send to generate documentation is sphinx-build -aq -b rinoh PATH_SOURCE PATH_BUILD
Here are the extensions I use in conf.py
extensions = [
'sphinx.ext.napoleon',
'sphinx.ext.graphviz',
"myst_parser",
"sphinx.ext.mathjax"
]
with this variable declaration:
rinoh_documents = [dict(doc='index', target='manual')]
Expected behavior
I just want it give me a pdf file containing the documentation
Your project
CANT SHARE
Screenshots
No response
OS
Linux 5.18.16-arch1-1
Python version
3.10.5
Sphinx version
AUR python-sphinx 5.1.1-1
Sphinx extensions
[ 'sphinx.ext.napoleon', 'sphinx.ext.graphviz', "myst_parser", "sphinx.ext.mathjax"]
Extra tools
No response
Additional context
No response