Bcc: cont...@bugs.debian.org Subject: Re: liborcus: FTBFS with Sphinx 2.4: TypeError: parse_declaration() missing 1 required positional argumeint: 'directiveType' Reply-To: In-Reply-To: <20200327142619.ga4...@xanadu.blop.info>
tag 955111 - ftbfs tag 955100 - ftbfs clone 955111 -1 severity -1 wishlist retitle -1 add Breaks against breathe << 4.13 reassign -1 src:sphinx reassign 955111 src:breathe reassign 955100 src:breathe forcemerge 955111 955100 retitle 955111 breathe needs updates for sphinx 2.0 affects 955111 liborcus,libixion close 955111 4.14.1-1 Hi, On Fri, Mar 27, 2020 at 03:26:19PM +0100, Lucas Nussbaum wrote: > > Traceback (most recent call last): > > File "/usr/lib/python3/dist-packages/sphinx/cmd/build.py", line 276, in > > build_main > > app.build(args.force_all, filenames) > > File "/usr/lib/python3/dist-packages/sphinx/application.py", line 337, in > > build > > self.builder.build_all() > > File "/usr/lib/python3/dist-packages/sphinx/builders/__init__.py", line > > 260, in build_all > > self.build(None, summary=__('all source files'), method='all') > > File "/usr/lib/python3/dist-packages/sphinx/builders/__init__.py", line > > 311, in build > > updated_docnames = set(self.read()) > > File "/usr/lib/python3/dist-packages/sphinx/builders/__init__.py", line > > 418, in read > > self._read_serial(docnames) > > File "/usr/lib/python3/dist-packages/sphinx/builders/__init__.py", line > > 439, in _read_serial > > self.read_doc(docname) > > File "/usr/lib/python3/dist-packages/sphinx/builders/__init__.py", line > > 479, in read_doc > > doctree = read_doc(self.app, self.env, self.env.doc2path(docname)) > > File "/usr/lib/python3/dist-packages/sphinx/io.py", line 316, in read_doc > > pub.publish() > > File "/usr/lib/python3/dist-packages/docutils/core.py", line 217, in > > publish > > self.document = self.reader.read(self.source, self.parser, > > File "/usr/lib/python3/dist-packages/sphinx/io.py", line 130, in read > > self.parse() > > File "/usr/lib/python3/dist-packages/docutils/readers/__init__.py", line > > 77, in parse > > self.parser.parse(self.input, document) > > File "/usr/lib/python3/dist-packages/sphinx/parsers.py", line 93, in parse > > self.statemachine.run(inputlines, document, inliner=self.inliner) > > File "/usr/lib/python3/dist-packages/docutils/parsers/rst/states.py", > > line 171, in run > > results = StateMachineWS.run(self, input_lines, input_offset, > > File "/usr/lib/python3/dist-packages/docutils/statemachine.py", line 241, > > in run > > context, next_state, result = self.check_line( > > File "/usr/lib/python3/dist-packages/docutils/statemachine.py", line 459, > > in check_line > > return method(match, context, next_state) > > File "/usr/lib/python3/dist-packages/docutils/parsers/rst/states.py", > > line 2770, in underline > > self.section(title, source, style, lineno - 1, messages) > > File "/usr/lib/python3/dist-packages/docutils/parsers/rst/states.py", > > line 328, in section > > self.new_subsection(title, lineno, messages) > > File "/usr/lib/python3/dist-packages/docutils/parsers/rst/states.py", > > line 394, in new_subsection > > newabsoffset = self.nested_parse( > > File "/usr/lib/python3/dist-packages/docutils/parsers/rst/states.py", > > line 282, in nested_parse > > state_machine.run(block, input_offset, memo=self.memo, > > File "/usr/lib/python3/dist-packages/docutils/parsers/rst/states.py", > > line 197, in run > > results = StateMachineWS.run(self, input_lines, input_offset) > > File "/usr/lib/python3/dist-packages/docutils/statemachine.py", line 241, > > in run > > context, next_state, result = self.check_line( > > File "/usr/lib/python3/dist-packages/docutils/statemachine.py", line 459, > > in check_line > > return method(match, context, next_state) > > File "/usr/lib/python3/dist-packages/docutils/parsers/rst/states.py", > > line 2770, in underline > > self.section(title, source, style, lineno - 1, messages) > > File "/usr/lib/python3/dist-packages/docutils/parsers/rst/states.py", > > line 328, in section > > self.new_subsection(title, lineno, messages) > > File "/usr/lib/python3/dist-packages/docutils/parsers/rst/states.py", > > line 394, in new_subsection > > newabsoffset = self.nested_parse( > > File "/usr/lib/python3/dist-packages/docutils/parsers/rst/states.py", > > line 282, in nested_parse > > state_machine.run(block, input_offset, memo=self.memo, > > File "/usr/lib/python3/dist-packages/docutils/parsers/rst/states.py", > > line 197, in run > > results = StateMachineWS.run(self, input_lines, input_offset) > > File "/usr/lib/python3/dist-packages/docutils/statemachine.py", line 241, > > in run > > context, next_state, result = self.check_line( > > File "/usr/lib/python3/dist-packages/docutils/statemachine.py", line 459, > > in check_line > > return method(match, context, next_state) > > File "/usr/lib/python3/dist-packages/docutils/parsers/rst/states.py", > > line 2343, in explicit_markup > > nodelist, blank_finish = self.explicit_construct(match) > > File "/usr/lib/python3/dist-packages/docutils/parsers/rst/states.py", > > line 2355, in explicit_construct > > return method(self, expmatch) > > File "/usr/lib/python3/dist-packages/docutils/parsers/rst/states.py", > > line 2097, in directive > > return self.run_directive( > > File "/usr/lib/python3/dist-packages/docutils/parsers/rst/states.py", > > line 2147, in run_directive > > result = directive_instance.run() > > File "/usr/lib/python3/dist-packages/breathe/directives.py", line 311, in > > run > > return self.render(matches[0], project_info, filter_, target_handler, > > mask_factory, > > File "/usr/lib/python3/dist-packages/breathe/directive/base.py", line 85, > > in render > > return object_renderer.render(node_stack[0], context) > > File "/usr/lib/python3/dist-packages/breathe/renderer/sphinxrenderer.py", > > line 1294, in render > > result = method(self, node) > > File "/usr/lib/python3/dist-packages/breathe/renderer/sphinxrenderer.py", > > line 1225, in dispatch_compound > > return self.visit_compound(node) > > File "/usr/lib/python3/dist-packages/breathe/renderer/sphinxrenderer.py", > > line 501, in visit_compound > > nodes, contentnode = render_sig( > > File "/usr/lib/python3/dist-packages/breathe/renderer/sphinxrenderer.py", > > line 483, in render_signature > > nodes = self.run_domain_directive(kind, self.context.directive_args[1], > > augment=augment) > > File "/usr/lib/python3/dist-packages/breathe/renderer/sphinxrenderer.py", > > line 345, in run_domain_directive > > nodes = domain_directive.run() > > File "/usr/lib/python3/dist-packages/sphinx/domains/cpp.py", line 6294, > > in run > > return super().run() > > File "/usr/lib/python3/dist-packages/sphinx/directives/__init__.py", line > > 176, in run > > name = self.handle_signature(sig, signode) > > File "/usr/lib/python3/dist-packages/sphinx/domains/cpp.py", line 6301, > > in handle_signature > > ast = self.parse_definition(parser) > > File "/usr/lib/python3/dist-packages/breathe/renderer/sphinxrenderer.py", > > line 38, in parse_definition > > ast = parser.parse_declaration("class") > > TypeError: parse_declaration() missing 1 required positional argument: > > 'directiveType' > > > > Exception occurred: > > File "/usr/lib/python3/dist-packages/breathe/renderer/sphinxrenderer.py", > > line 38, in parse_definition > > ast = parser.parse_declaration("class") > > TypeError: parse_declaration() missing 1 required positional argument: > > 'directiveType' > > The full traceback has been saved in /tmp/sphinx-err-l_cm2j82.log, if you > > want to report the issue to the developers. > > Please also report this if it was a user error, so that a better error > > message can be provided next time. > > A bug report can be filed in the tracker at > > <https://github.com/sphinx-doc/sphinx/issues>. Thanks! > > make[1]: *** [debian/rules:40: override_dh_auto_build-indep] Error 2 Had a quick chat with upstream about this today. There is https://github.com/sphinx-doc/sphinx/issues/6146 which says this is a python3-breathe issue: https://github.com/michaeljones/breathe/pull/411 and that one is fixed in 4.13. Sid has python3-breathe | 4.12.0-3 | unstable | all So python3-breathe | 4.14.1-1 | experimental | all is what one wants when one wants sphinx 2.4. Maybe sphinx 2.4 should break python(3)-breathe (<< 1:4.13)? I don't think it is the job of every package to add a versioned build-dep on python3-breathe (>= 4.13). Regards, Rene