```
reading sources... [ 14%] apidocs/rdflib.extras
Traceback (most recent call last):
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/util/typing.py", line 270, in restify
elif _is_annotated_form(cls):
^^^^^^^^^^^^^^^^^^^^^^^
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/util/typing.py", line 195, in _is_annotated_form
return typing.get_origin(obj) is Annotated or str(obj).startswith('typing.Annotated')
^^^^^^^^
File "/home/michael/src/rdflib/rdflib/namespace/__init__.py", line 286, in __str__
return str(cls._NS)
^^^^^^^
File "/home/michael/src/rdflib/rdflib/namespace/__init__.py", line 280, in __getattr__
return cls.__getitem__(name)
^^^^^^^^^^^^^^^^^^^^^
File "/home/michael/src/rdflib/rdflib/namespace/__init__.py", line 258, in __getitem__
raise AttributeError(
AttributeError: DefinedNamespace like object has no attribute '_NS'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/util/inspect.py", line 492, in object_description
s = repr(obj)
^^^^^^^^^
File "/home/michael/src/rdflib/rdflib/namespace/__init__.py", line 283, in __repr__
return f"Namespace({str(cls._NS)!r})"
^^^^^^^
File "/home/michael/src/rdflib/rdflib/namespace/__init__.py", line 280, in __getattr__
return cls.__getitem__(name)
^^^^^^^^^^^^^^^^^^^^^
File "/home/michael/src/rdflib/rdflib/namespace/__init__.py", line 258, in __getitem__
raise AttributeError(
AttributeError: DefinedNamespace like object has no attribute '_NS'
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/util/logging.py", line 266, in pending_warnings
yield memhandler
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/builders/__init__.py", line 318, in build
updated_docnames = set(self.read())
^^^^^^^^^^^
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/builders/__init__.py", line 425, in read
self._read_serial(docnames)
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/builders/__init__.py", line 477, in _read_serial
self.read_doc(docname)
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/builders/__init__.py", line 536, in read_doc
publisher.publish()
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/core.py", line 234, in publish
self.document = self.reader.read(self.source, self.parser,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/io.py", line 106, in read
self.parse()
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/readers/__init__.py", line 76, in parse
self.parser.parse(self.input, document)
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/parsers.py", line 83, in parse
self.statemachine.run(inputlines, document, inliner=self.inliner)
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 169, in run
results = StateMachineWS.run(self, input_lines, input_offset,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/statemachine.py", line 233, in run
context, next_state, result = self.check_line(
^^^^^^^^^^^^^^^^
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/statemachine.py", line 445, in check_line
return method(match, context, next_state)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 2785, in underline
self.section(title, source, style, lineno - 1, messages)
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 325, in section
self.new_subsection(title, lineno, messages)
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 391, in new_subsection
newabsoffset = self.nested_parse(
^^^^^^^^^^^^^^^^^^
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 279, in nested_parse
state_machine.run(block, input_offset, memo=self.memo,
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 195, in run
results = StateMachineWS.run(self, input_lines, input_offset)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/statemachine.py", line 233, in run
context, next_state, result = self.check_line(
^^^^^^^^^^^^^^^^
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/statemachine.py", line 445, in check_line
return method(match, context, next_state)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 2785, in underline
self.section(title, source, style, lineno - 1, messages)
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 325, in section
self.new_subsection(title, lineno, messages)
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 391, in new_subsection
newabsoffset = self.nested_parse(
^^^^^^^^^^^^^^^^^^
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 279, in nested_parse
state_machine.run(block, input_offset, memo=self.memo,
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 195, in run
results = StateMachineWS.run(self, input_lines, input_offset)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/statemachine.py", line 233, in run
context, next_state, result = self.check_line(
^^^^^^^^^^^^^^^^
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/statemachine.py", line 445, in check_line
return method(match, context, next_state)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 2355, in explicit_markup
nodelist, blank_finish = self.explicit_construct(match)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 2367, in explicit_construct
return method(self, expmatch)
^^^^^^^^^^^^^^^^^^^^^^
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 2104, in directive
return self.run_directive(
^^^^^^^^^^^^^^^^^^^
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 2154, in run_directive
result = directive_instance.run()
^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/ext/autodoc/directive.py", line 137, in run
documenter.generate(more_content=self.content)
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/ext/autodoc/__init__.py", line 971, in generate
self.document_members(all_members)
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/ext/autodoc/__init__.py", line 845, in document_members
documenter.generate(
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/ext/autodoc/__init__.py", line 1918, in generate
return super().generate(more_content=more_content,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/ext/autodoc/__init__.py", line 961, in generate
self.add_directive_header(sig)
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/ext/autodoc/__init__.py", line 1739, in add_directive_header
base_classes = [restify(cls, "smart") for cls in bases]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/ext/autodoc/__init__.py", line 1739, in
base_classes = [restify(cls, "smart") for cls in bases]
^^^^^^^^^^^^^^^^^^^^^
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/util/typing.py", line 366, in restify
return inspect.object_description(cls)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/util/inspect.py", line 494, in object_description
raise ValueError from exc
ValueError
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/cmd/build.py", line 337, in build_main
app.build(args.force_all, args.filenames)
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/application.py", line 378, in build
self.builder.build_update()
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/builders/__init__.py", line 297, in build_update
self.build(to_build,
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/builders/__init__.py", line 317, in build
with logging.pending_warnings():
File "/usr/lib/python3.11/contextlib.py", line 158, in __exit__
self.gen.throw(typ, value, traceback)
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/util/logging.py", line 273, in pending_warnings
memhandler.flushTo(logger)
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/util/logging.py", line 238, in flushTo
logger.handle(record)
File "/usr/lib/python3.11/logging/__init__.py", line 1644, in handle
self.callHandlers(record)
File "/usr/lib/python3.11/logging/__init__.py", line 1706, in callHandlers
hdlr.handle(record)
File "/usr/lib/python3.11/logging/__init__.py", line 974, in handle
rv = self.filter(record)
^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/logging/__init__.py", line 830, in filter
result = f.filter(record)
^^^^^^^^^^^^^^^^
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/util/logging.py", line 473, in filter
raise exc
sphinx.errors.SphinxWarning: Cannot resolve forward reference in type annotations of "rdflib.query.Result.__iter__": name '_SubjectType' is not defined
Warning, treated as error:
Cannot resolve forward reference in type annotations of "rdflib.query.Result.__iter__": name '_SubjectType' is not defined
```
Hello, in Debian we already upgraded sphinx-autodoc-typehints to 2.3.0 and cherry-picking https://github.com/RDFLib/rdflib/pull/2852 isn't enough to fix the build.
(we haven't upgraded to sphinx-autdoc-typehints 2.4.x because we are still on Sphinx 7.4.7, not 8.x)
See https://github.com/RDFLib/rdflib/pull/2913 for a PR demonstrating the error
Details
``` reading sources... [ 14%] apidocs/rdflib.extras Traceback (most recent call last): File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/util/typing.py", line 270, in restify elif _is_annotated_form(cls): ^^^^^^^^^^^^^^^^^^^^^^^ File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/util/typing.py", line 195, in _is_annotated_form return typing.get_origin(obj) is Annotated or str(obj).startswith('typing.Annotated') ^^^^^^^^ File "/home/michael/src/rdflib/rdflib/namespace/__init__.py", line 286, in __str__ return str(cls._NS) ^^^^^^^ File "/home/michael/src/rdflib/rdflib/namespace/__init__.py", line 280, in __getattr__ return cls.__getitem__(name) ^^^^^^^^^^^^^^^^^^^^^ File "/home/michael/src/rdflib/rdflib/namespace/__init__.py", line 258, in __getitem__ raise AttributeError( AttributeError: DefinedNamespace like object has no attribute '_NS' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/util/inspect.py", line 492, in object_description s = repr(obj) ^^^^^^^^^ File "/home/michael/src/rdflib/rdflib/namespace/__init__.py", line 283, in __repr__ return f"Namespace({str(cls._NS)!r})" ^^^^^^^ File "/home/michael/src/rdflib/rdflib/namespace/__init__.py", line 280, in __getattr__ return cls.__getitem__(name) ^^^^^^^^^^^^^^^^^^^^^ File "/home/michael/src/rdflib/rdflib/namespace/__init__.py", line 258, in __getitem__ raise AttributeError( AttributeError: DefinedNamespace like object has no attribute '_NS' The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/util/logging.py", line 266, in pending_warnings yield memhandler File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/builders/__init__.py", line 318, in build updated_docnames = set(self.read()) ^^^^^^^^^^^ File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/builders/__init__.py", line 425, in read self._read_serial(docnames) File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/builders/__init__.py", line 477, in _read_serial self.read_doc(docname) File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/builders/__init__.py", line 536, in read_doc publisher.publish() File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/core.py", line 234, in publish self.document = self.reader.read(self.source, self.parser, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/io.py", line 106, in read self.parse() File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/readers/__init__.py", line 76, in parse self.parser.parse(self.input, document) File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/parsers.py", line 83, in parse self.statemachine.run(inputlines, document, inliner=self.inliner) File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 169, in run results = StateMachineWS.run(self, input_lines, input_offset, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/statemachine.py", line 233, in run context, next_state, result = self.check_line( ^^^^^^^^^^^^^^^^ File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/statemachine.py", line 445, in check_line return method(match, context, next_state) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 2785, in underline self.section(title, source, style, lineno - 1, messages) File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 325, in section self.new_subsection(title, lineno, messages) File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 391, in new_subsection newabsoffset = self.nested_parse( ^^^^^^^^^^^^^^^^^^ File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 279, in nested_parse state_machine.run(block, input_offset, memo=self.memo, File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 195, in run results = StateMachineWS.run(self, input_lines, input_offset) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/statemachine.py", line 233, in run context, next_state, result = self.check_line( ^^^^^^^^^^^^^^^^ File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/statemachine.py", line 445, in check_line return method(match, context, next_state) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 2785, in underline self.section(title, source, style, lineno - 1, messages) File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 325, in section self.new_subsection(title, lineno, messages) File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 391, in new_subsection newabsoffset = self.nested_parse( ^^^^^^^^^^^^^^^^^^ File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 279, in nested_parse state_machine.run(block, input_offset, memo=self.memo, File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 195, in run results = StateMachineWS.run(self, input_lines, input_offset) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/statemachine.py", line 233, in run context, next_state, result = self.check_line( ^^^^^^^^^^^^^^^^ File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/statemachine.py", line 445, in check_line return method(match, context, next_state) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 2355, in explicit_markup nodelist, blank_finish = self.explicit_construct(match) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 2367, in explicit_construct return method(self, expmatch) ^^^^^^^^^^^^^^^^^^^^^^ File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 2104, in directive return self.run_directive( ^^^^^^^^^^^^^^^^^^^ File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 2154, in run_directive result = directive_instance.run() ^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/ext/autodoc/directive.py", line 137, in run documenter.generate(more_content=self.content) File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/ext/autodoc/__init__.py", line 971, in generate self.document_members(all_members) File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/ext/autodoc/__init__.py", line 845, in document_members documenter.generate( File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/ext/autodoc/__init__.py", line 1918, in generate return super().generate(more_content=more_content, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/ext/autodoc/__init__.py", line 961, in generate self.add_directive_header(sig) File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/ext/autodoc/__init__.py", line 1739, in add_directive_header base_classes = [restify(cls, "smart") for cls in bases] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/ext/autodoc/__init__.py", line 1739, in
base_classes = [restify(cls, "smart") for cls in bases]
^^^^^^^^^^^^^^^^^^^^^
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/util/typing.py", line 366, in restify
return inspect.object_description(cls)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/util/inspect.py", line 494, in object_description
raise ValueError from exc
ValueError
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/cmd/build.py", line 337, in build_main
app.build(args.force_all, args.filenames)
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/application.py", line 378, in build
self.builder.build_update()
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/builders/__init__.py", line 297, in build_update
self.build(to_build,
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/builders/__init__.py", line 317, in build
with logging.pending_warnings():
File "/usr/lib/python3.11/contextlib.py", line 158, in __exit__
self.gen.throw(typ, value, traceback)
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/util/logging.py", line 273, in pending_warnings
memhandler.flushTo(logger)
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/util/logging.py", line 238, in flushTo
logger.handle(record)
File "/usr/lib/python3.11/logging/__init__.py", line 1644, in handle
self.callHandlers(record)
File "/usr/lib/python3.11/logging/__init__.py", line 1706, in callHandlers
hdlr.handle(record)
File "/usr/lib/python3.11/logging/__init__.py", line 974, in handle
rv = self.filter(record)
^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/logging/__init__.py", line 830, in filter
result = f.filter(record)
^^^^^^^^^^^^^^^^
File "/home/michael/src/rdflib/.tox/docs/lib/python3.11/site-packages/sphinx/util/logging.py", line 473, in filter
raise exc
sphinx.errors.SphinxWarning: Cannot resolve forward reference in type annotations of "rdflib.query.Result.__iter__": name '_SubjectType' is not defined
Warning, treated as error:
Cannot resolve forward reference in type annotations of "rdflib.query.Result.__iter__": name '_SubjectType' is not defined
```