Source: exhale Version: 0.3.6-3 Severity: serious Justification: FTBFS Tags: trixie sid ftbfs User: lu...@debian.org Usertags: ftbfs-20230925 ftbfs-trixie
Hi, During a rebuild of all packages in sid, your package failed to build on amd64. Relevant part (hopefully): > debian/rules binary > dh binary --buildsystem=pybuild > dh_update_autotools_config -O--buildsystem=pybuild > dh_autoreconf -O--buildsystem=pybuild > dh_auto_configure -O--buildsystem=pybuild > dh_auto_build -O--buildsystem=pybuild > I: pybuild plugin_pyproject:110: Building wheel for python3.11 with "build" > module > I: pybuild base:291: python3.11 -m build --skip-dependency-check > --no-isolation --wheel --outdir /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11 > * Building wheel... > running bdist_wheel > running build > running build_py > creating build > creating build/lib > creating build/lib/exhale > copying exhale/graph.py -> build/lib/exhale > copying exhale/utils.py -> build/lib/exhale > copying exhale/__init__.py -> build/lib/exhale > copying exhale/parse.py -> build/lib/exhale > copying exhale/configs.py -> build/lib/exhale > copying exhale/deploy.py -> build/lib/exhale > creating build/lib/exhale/data > creating build/lib/exhale/data/treeView > creating build/lib/exhale/data/treeView/collapsible-lists > creating build/lib/exhale/data/treeView/collapsible-lists/css > copying exhale/data/treeView/collapsible-lists/css/button-closed.png -> > build/lib/exhale/data/treeView/collapsible-lists/css > copying exhale/data/treeView/collapsible-lists/css/list-item-open.png -> > build/lib/exhale/data/treeView/collapsible-lists/css > copying exhale/data/treeView/collapsible-lists/css/button-open.png -> > build/lib/exhale/data/treeView/collapsible-lists/css > copying exhale/data/treeView/collapsible-lists/css/list-item-last.png -> > build/lib/exhale/data/treeView/collapsible-lists/css > copying exhale/data/treeView/collapsible-lists/css/list-item.png -> > build/lib/exhale/data/treeView/collapsible-lists/css > copying exhale/data/treeView/collapsible-lists/css/list-item-contents.png -> > build/lib/exhale/data/treeView/collapsible-lists/css > copying exhale/data/treeView/collapsible-lists/css/list-item-last-open.png -> > build/lib/exhale/data/treeView/collapsible-lists/css > copying exhale/data/treeView/collapsible-lists/css/list-item-root.png -> > build/lib/exhale/data/treeView/collapsible-lists/css > copying exhale/data/treeView/collapsible-lists/css/tree_view.css -> > build/lib/exhale/data/treeView/collapsible-lists/css > copying exhale/data/treeView/collapsible-lists/css/button.png -> > build/lib/exhale/data/treeView/collapsible-lists/css > creating build/lib/exhale/data/treeView/collapsible-lists/js > copying > exhale/data/treeView/collapsible-lists/js/CollapsibleLists.compressed.js -> > build/lib/exhale/data/treeView/collapsible-lists/js > copying exhale/data/treeView/collapsible-lists/js/apply-collapsible-lists.js > -> build/lib/exhale/data/treeView/collapsible-lists/js > copying exhale/data/treeView/collapsible-lists/LICENSE.md -> > build/lib/exhale/data/treeView/collapsible-lists > creating build/lib/exhale/data/treeView-bootstrap > creating build/lib/exhale/data/treeView-bootstrap/bootstrap-treeview > copying > exhale/data/treeView-bootstrap/bootstrap-treeview/bootstrap-treeview.min.css > -> build/lib/exhale/data/treeView-bootstrap/bootstrap-treeview > copying > exhale/data/treeView-bootstrap/bootstrap-treeview/bootstrap-treeview.min.js > -> build/lib/exhale/data/treeView-bootstrap/bootstrap-treeview > copying exhale/data/treeView-bootstrap/bootstrap-treeview/LICENSE -> > build/lib/exhale/data/treeView-bootstrap/bootstrap-treeview > copying > exhale/data/treeView-bootstrap/bootstrap-treeview/apply-bootstrap-treview.js > -> build/lib/exhale/data/treeView-bootstrap/bootstrap-treeview > installing to build/bdist.linux-x86_64/wheel > running install > running install_lib > creating build/bdist.linux-x86_64 > creating build/bdist.linux-x86_64/wheel > creating build/bdist.linux-x86_64/wheel/exhale > copying build/lib/exhale/graph.py -> build/bdist.linux-x86_64/wheel/exhale > copying build/lib/exhale/utils.py -> build/bdist.linux-x86_64/wheel/exhale > copying build/lib/exhale/__init__.py -> build/bdist.linux-x86_64/wheel/exhale > creating build/bdist.linux-x86_64/wheel/exhale/data > creating build/bdist.linux-x86_64/wheel/exhale/data/treeView > creating build/bdist.linux-x86_64/wheel/exhale/data/treeView/collapsible-lists > creating > build/bdist.linux-x86_64/wheel/exhale/data/treeView/collapsible-lists/css > copying > build/lib/exhale/data/treeView/collapsible-lists/css/button-closed.png -> > build/bdist.linux-x86_64/wheel/exhale/data/treeView/collapsible-lists/css > copying > build/lib/exhale/data/treeView/collapsible-lists/css/list-item-open.png -> > build/bdist.linux-x86_64/wheel/exhale/data/treeView/collapsible-lists/css > copying > build/lib/exhale/data/treeView/collapsible-lists/css/list-item-root.png -> > build/bdist.linux-x86_64/wheel/exhale/data/treeView/collapsible-lists/css > copying > build/lib/exhale/data/treeView/collapsible-lists/css/list-item-last.png -> > build/bdist.linux-x86_64/wheel/exhale/data/treeView/collapsible-lists/css > copying build/lib/exhale/data/treeView/collapsible-lists/css/list-item.png -> > build/bdist.linux-x86_64/wheel/exhale/data/treeView/collapsible-lists/css > copying build/lib/exhale/data/treeView/collapsible-lists/css/button-open.png > -> build/bdist.linux-x86_64/wheel/exhale/data/treeView/collapsible-lists/css > copying build/lib/exhale/data/treeView/collapsible-lists/css/button.png -> > build/bdist.linux-x86_64/wheel/exhale/data/treeView/collapsible-lists/css > copying > build/lib/exhale/data/treeView/collapsible-lists/css/list-item-contents.png > -> build/bdist.linux-x86_64/wheel/exhale/data/treeView/collapsible-lists/css > copying build/lib/exhale/data/treeView/collapsible-lists/css/tree_view.css -> > build/bdist.linux-x86_64/wheel/exhale/data/treeView/collapsible-lists/css > copying > build/lib/exhale/data/treeView/collapsible-lists/css/list-item-last-open.png > -> build/bdist.linux-x86_64/wheel/exhale/data/treeView/collapsible-lists/css > creating > build/bdist.linux-x86_64/wheel/exhale/data/treeView/collapsible-lists/js > copying > build/lib/exhale/data/treeView/collapsible-lists/js/CollapsibleLists.compressed.js > -> build/bdist.linux-x86_64/wheel/exhale/data/treeView/collapsible-lists/js > copying > build/lib/exhale/data/treeView/collapsible-lists/js/apply-collapsible-lists.js > -> build/bdist.linux-x86_64/wheel/exhale/data/treeView/collapsible-lists/js > copying build/lib/exhale/data/treeView/collapsible-lists/LICENSE.md -> > build/bdist.linux-x86_64/wheel/exhale/data/treeView/collapsible-lists > creating build/bdist.linux-x86_64/wheel/exhale/data/treeView-bootstrap > creating > build/bdist.linux-x86_64/wheel/exhale/data/treeView-bootstrap/bootstrap-treeview > copying > build/lib/exhale/data/treeView-bootstrap/bootstrap-treeview/bootstrap-treeview.min.css > -> > build/bdist.linux-x86_64/wheel/exhale/data/treeView-bootstrap/bootstrap-treeview > copying build/lib/exhale/data/treeView-bootstrap/bootstrap-treeview/LICENSE > -> > build/bdist.linux-x86_64/wheel/exhale/data/treeView-bootstrap/bootstrap-treeview > copying > build/lib/exhale/data/treeView-bootstrap/bootstrap-treeview/apply-bootstrap-treview.js > -> > build/bdist.linux-x86_64/wheel/exhale/data/treeView-bootstrap/bootstrap-treeview > copying > build/lib/exhale/data/treeView-bootstrap/bootstrap-treeview/bootstrap-treeview.min.js > -> > build/bdist.linux-x86_64/wheel/exhale/data/treeView-bootstrap/bootstrap-treeview > copying build/lib/exhale/parse.py -> build/bdist.linux-x86_64/wheel/exhale > copying build/lib/exhale/configs.py -> build/bdist.linux-x86_64/wheel/exhale > copying build/lib/exhale/deploy.py -> build/bdist.linux-x86_64/wheel/exhale > running install_egg_info > running egg_info > creating exhale.egg-info > writing exhale.egg-info/PKG-INFO > /usr/lib/python3/dist-packages/setuptools/dist.py:172: > SetuptoolsDeprecationWarning: Invalid config. > !! > > > ******************************************************************************** > newlines are not allowed in `summary` and will break in the future > > ******************************************************************************** > > !! > write_field('Summary', single_line(summary)) > writing dependency_links to exhale.egg-info/dependency_links.txt > writing requirements to exhale.egg-info/requires.txt > writing top-level names to exhale.egg-info/top_level.txt > writing manifest file 'exhale.egg-info/SOURCES.txt' > reading manifest file 'exhale.egg-info/SOURCES.txt' > adding license file 'LICENSE' > writing manifest file 'exhale.egg-info/SOURCES.txt' > Copying exhale.egg-info to > build/bdist.linux-x86_64/wheel/exhale-0.3.6.egg-info > running install_scripts > creating build/bdist.linux-x86_64/wheel/exhale-0.3.6.dist-info/WHEEL > creating > '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/.tmp-ni7dxltd/exhale-0.3.6-py3-none-any.whl' > and adding 'build/bdist.linux-x86_64/wheel' to it > adding 'exhale/__init__.py' > adding 'exhale/configs.py' > adding 'exhale/deploy.py' > adding 'exhale/graph.py' > adding 'exhale/parse.py' > adding 'exhale/utils.py' > adding 'exhale/data/treeView/collapsible-lists/LICENSE.md' > adding 'exhale/data/treeView/collapsible-lists/css/button-closed.png' > adding 'exhale/data/treeView/collapsible-lists/css/button-open.png' > adding 'exhale/data/treeView/collapsible-lists/css/button.png' > adding 'exhale/data/treeView/collapsible-lists/css/list-item-contents.png' > adding 'exhale/data/treeView/collapsible-lists/css/list-item-last-open.png' > adding 'exhale/data/treeView/collapsible-lists/css/list-item-last.png' > adding 'exhale/data/treeView/collapsible-lists/css/list-item-open.png' > adding 'exhale/data/treeView/collapsible-lists/css/list-item-root.png' > adding 'exhale/data/treeView/collapsible-lists/css/list-item.png' > adding 'exhale/data/treeView/collapsible-lists/css/tree_view.css' > adding > 'exhale/data/treeView/collapsible-lists/js/CollapsibleLists.compressed.js' > adding 'exhale/data/treeView/collapsible-lists/js/apply-collapsible-lists.js' > adding 'exhale/data/treeView-bootstrap/bootstrap-treeview/LICENSE' > adding > 'exhale/data/treeView-bootstrap/bootstrap-treeview/apply-bootstrap-treview.js' > adding > 'exhale/data/treeView-bootstrap/bootstrap-treeview/bootstrap-treeview.min.css' > adding > 'exhale/data/treeView-bootstrap/bootstrap-treeview/bootstrap-treeview.min.js' > adding 'exhale-0.3.6.dist-info/LICENSE' > adding 'exhale-0.3.6.dist-info/METADATA' > adding 'exhale-0.3.6.dist-info/WHEEL' > adding 'exhale-0.3.6.dist-info/top_level.txt' > adding 'exhale-0.3.6.dist-info/RECORD' > removing build/bdist.linux-x86_64/wheel > Successfully built exhale-0.3.6-py3-none-any.whl > I: pybuild plugin_pyproject:122: Unpacking wheel built for python3.11 with > "installer" module > dh_auto_test -O--buildsystem=pybuild > I: pybuild base:291: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build; > python3.11 -m pytest /<<PKGBUILDDIR>>/testing -m "not setup_raises" -k "not > CPPNestingPages" > ============================= test session starts > ============================== > platform linux -- Python 3.11.5, pytest-7.4.2, pluggy-1.3.0 > cachedir: testing/.cache > rootdir: /<<PKGBUILDDIR>> > configfile: pyproject.toml > collected 121 items / 13 deselected / 108 selected > > ../../../testing/tests/c_maths.py ..... [ > 4%] > ../../../testing/tests/configs.py .......................... [ > 28%] > ../../../testing/tests/configs_tree_view.py ...... [ > 34%] > ../../../testing/tests/cpp_dir_underscores.py .... [ > 37%] > ../../../testing/tests/cpp_fortran_mixed.py ..F. [ > 41%] > ../../../testing/tests/cpp_func_overloads.py ... [ > 44%] > ../../../testing/tests/cpp_long_names.py ... [ > 47%] > ../../../testing/tests/cpp_nesting.py ... [ > 50%] > ../../../testing/tests/cpp_pimpl.py ....... [ > 56%] > ../../../testing/tests/cpp_with_spaces.py ... [ > 59%] > ../../../testing/tests/utils.py ........................................ [ > 96%] > .... > [100%] > > =================================== FAILURES > =================================== > _______________________ CPPFortranMixed.test_hierarchies > _______________________ > > self = <testing.tests.cpp_fortran_mixed.CPPFortranMixed > testMethod=test_hierarchies> > > def test_hierarchies(self): > """ > Validate the class and file hierarchies. > > **Not tested on Windows**, maybe I'll care to fix it one day. > `But it is not this day`__! > > __ https://youtu.be/EXGUNvIFTQw > > .. todo:: > > Too much shared code in hierarchy comparisons, the class > hierarchy for this > project should be **empty**. Need to enable asserting this fact > (same for > the ``cpp_nesting`` project). > """ > if platform.system() != "Windows": > # compare_class_hierarchy(self, class_hierarchy({})) > > compare_file_hierarchy(self, > > file_hierarchy(self.file_hierarchy_dict())) > > ../../../testing/tests/cpp_fortran_mixed.py:74: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > ../../../testing/hierarchies.py:1246: in compare_file_hierarchy > _compare_children("file", test, test_obj, exhale_obj) > ../../../testing/hierarchies.py:1114: in _compare_children > _compare_children(hierarchy_type, test, test_grand_child, > exhale_grand_child) > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > hierarchy_type = 'file' > test = <testing.tests.cpp_fortran_mixed.CPPFortranMixed > testMethod=test_hierarchies> > test_child = File(src/conversions.f90, n_kids=8) > exhale_child = File(src/conversions.f90, n_kids=8) > > def _compare_children(hierarchy_type, test, test_child, exhale_child): > if test_child.parent: > test.assertTrue( > exhale_child.parent is not None, > f"test_child of kind={test_child.kind} name={test_child.name} > had a " > f"parent of kind={test_child.parent.kind} > name={test_child.parent.name} " > "but exhale_child did *NOT* have a parent. Likely invalid > test hierarchy.") > test.assertEqual(test_child.parent.name, exhale_child.parent.name) > test.assertEqual(test_child.parent.kind, exhale_child.parent.kind) > else: > # namespaces are not represented in the file hierarchy, but in > the Exhale graph > # the parent will be the namespace > if "::" in test_child.name and hierarchy_type == "file": > test.assertTrue(exhale_child.parent is not None) > test.assertTrue(exhale_child.parent.kind == "namespace") > else: > # Better error message when the test fails, but don't crash > tests > # that succeed by accessing `parent`. > def err_message(): > if exhale_child.parent is None: > return "" > return ( > f"exhale_child of kind={exhale_child.kind} " > f"name={exhale_child.name} had a parent of " > f"kind={exhale_child.parent.kind} " > f"name={exhale_child.parent.name} but *NO* parent was > expected." > ) > > test.assertTrue(exhale_child.parent is None, err_message()) > > if hierarchy_type == "file": > if test_child.def_in_file: > # TODO: populate location variables for files > test.assertEqual(test_child.def_in_file.name, > exhale_child.def_in_file.name) > test.assertEqual(test_child.def_in_file.location, > exhale_child.def_in_file.location) > else: > test.assertTrue(exhale_child.def_in_file is None) > > # Make sure parent references for directory and file pages are > included. > if test_child.kind in {"dir", "file"}: > # Load in the generated file contents. > generated_rst_path = os.path.join( > test.getAbsContainmentFolder(), exhale_child.file_name > ) > with codecs.open(generated_rst_path, "r", "utf-8") as > gen_file: > generated_rst = gen_file.read() > > if test_child.kind == "dir": > # Make sure full directory path is included (at least for > now, may > # put it back in the title at some point). > path = "*Directory path:* > ``{path}``".format(path=test_child.name) > test.assertTrue( > path in generated_rst, > textwrap.dedent(''' > The following full path listing: > > {vsep} > {path} > {vsep} > > was not found in '{generated_rst_path}' with full > contents: > > {vsep} > {generated_rst} > {vsep} > ''').format( > vsep=("*" * 77), > path=path, > generated_rst_path=generated_rst_path, > generated_rst=generated_rst > ) > ) > else: # test_child.kind == "file" > program_listing_path = os.path.join( > os.path.dirname(generated_rst_path), > exhale_child.program_file # wtf did i do > gerrymanderNodeFilenames for?! > ) > program_listing_basename = > os.path.basename(program_listing_path) > > # 1. Make sure link to program_listing file is generated. > program_listing_toctree = textwrap.dedent(''' > .. toctree:: > :maxdepth: 1 > > {program_listing_basename} > ''').format( > program_listing_basename=program_listing_basename > ) > test.assertTrue( > program_listing_toctree in generated_rst, > textwrap.dedent(''' > The following toctree directive: > > {vsep} > {program_listing_toctree} > {vsep} > > was not found in '{generated_rst_path}' with full > contents: > > {vsep} > {generated_rst} > {vsep} > ''').format( > vsep=("*" * 77), > program_listing_toctree=program_listing_toctree, > generated_rst_path=generated_rst_path, > generated_rst=generated_rst > ) > ) > > # 2. Make sure link back to file page from > program_listing file is generated. > program_back_link = textwrap.dedent(''' > |exhale_lsh| :ref:`Return to documentation for file > <{file_link}>` (``{file_location}``) > > .. |exhale_lsh| unicode:: U+021B0 .. UPWARDS ARROW > WITH TIP LEFTWARDS > > ''').format( > file_link=exhale_child.link_name, > file_location=exhale_child.location > ) > # NOTE: see #171 > test.assertTrue( > program_back_link.endswith("S\n\n"), > "Test setup failure, trailing newlines are expected.") > > with codecs.open(program_listing_path, "r", "utf-8") as > pl_file: > desired_lines = [] > for line in pl_file: > if line.startswith(".. code-block::"): > break > desired_lines.append(line) > program_listing_header = "".join(desired_lines) > > test.assertTrue( > program_back_link in program_listing_header, > textwrap.dedent(''' > The following back-link: > > {vsep} > {program_back_link} > {vsep} > > was not found in '{program_listing_path}' with > header contents: > > {vsep} > {program_listing_header} > {vsep} > ''').format( > vsep=("*" * 77), > program_back_link=program_back_link, > program_listing_path=program_listing_path, > program_listing_header=program_listing_header > ) > ) > > # If parent exists, verify that a link to the parent is > created. > if test_child.parent: > # Reconstruct expected parent directory reference rst. > # TODO: un-copy-paste this from graph.py > if test_child.parent.kind == "file": > parent_unique_id = test_child.parent.location > else: > parent_unique_id = test_child.parent.name > parent_unique_id = parent_unique_id.replace(":", > "_").replace(os.sep, "_").replace(" ", "_") > parent_link_name = > "{kind}_{id}".format(kind=test_child.parent.kind, id=parent_unique_id) > parent_name = test_child.parent.name > parent_reference = textwrap.dedent(''' > |exhale_lsh| :ref:`Parent directory <{parent_link}>` > (``{parent_name}``) > > .. |exhale_lsh| unicode:: U+021B0 .. UPWARDS ARROW > WITH TIP LEFTWARDS > > '''.format( > parent_link=parent_link_name, parent_name=parent_name > )) > # NOTE: see #171 > test.assertTrue( > parent_reference.endswith("S\n\n"), > "Test setup failure, trailing newlines are expected.") > > # Verify that both files and directories link to their > directory parent > test.assertTrue( > parent_reference in generated_rst, > textwrap.dedent(''' > The following parent directory reference: > > {vsep} > {parent_reference} > {vsep} > > was not found in '{generated_rst_path}' with full > contents: > > {vsep} > {generated_rst} > {vsep} > ''').format( > vsep=("*" * 77), > parent_reference=parent_reference, > generated_rst_path=generated_rst_path, > generated_rst=generated_rst > ) > ) > > # Make sure they have the same name. > test.assertEqual( > test_child.name, > exhale_child.name, > "test_child.name [{tc_name}] != exhale_child.name > [{ec_name}]".format( > tc_name=test_child.name, ec_name=exhale_child.name > ) > ) > # Make sure they have the same kind. > test.assertEqual( > test_child.kind, > exhale_child.kind, > "test_child.kind [{tc_kind}] != exhale_child.kind > [{ec_kind}]".format( > tc_kind=test_child.kind, ec_kind=exhale_child.kind > ) > ) > # Make sure they have the same number of children. > CHILD_COUNT_IGNORE_KINDS = ["enumvalue", "group"] > # Functions do not appear in the class hierarchy. > if hierarchy_type == "class": > CHILD_COUNT_IGNORE_KINDS.append("function") > num_exhale_children = sum(child.kind not in CHILD_COUNT_IGNORE_KINDS > for child in exhale_child.children) > test.assertEqual( > len(test_child.children), > num_exhale_children, > textwrap.dedent(''' > For child: {child_name} > > test_child.children names: > > {tc_names} > > exhale_child.children names: > > {ec_names} > ''').format( > child_name=test_child.breathe_identifier(), > tc_names="\n".join([ > "- > {breathe_identifier}".format(breathe_identifier=child.breathe_identifier()) > for child in test_child.children > ]), > ec_names="\n".join([ > "- > {breathe_identifier}".format(breathe_identifier=child.breathe_identifier()) > for child in exhale_child.children if child.kind not in > CHILD_COUNT_IGNORE_KINDS > ]) > ) > ) > > for test_grand_child in test_child.children: > exhale_grand_child = None > if test_grand_child.kind == "function": > # NOTE: First hit in macOS, possibly inbound with newer > doxygen elsewhere. > # Matching child for [function] > 'conversions::degrees_to_radians_s' with > # signature > # 'real(c_float) function > conversions::degrees_to_radians_s(degrees_s)' > # not found! Considered signatures: > # real(c_double) function > conversions::degrees_to_radians_d(real(c_double), intent(in)) > # real(c_float) function > conversions::degrees_to_radians_s(real(c_float), intent(in)) > # real(c_double) function > conversions::radians_to_degrees_d(real(c_double), intent(in)) > # real(c_float) function > conversions::radians_to_degrees_s(real(c_float), intent(in)) > # > # ns::func(paramname) => ns::func(paramtype, param???) > # degrees_s real(c_float), intent(in) > # > # Coming from cpp_fortran_mixed conversions.f90, relates to > docstring... > test_signature = test_grand_child.full_signature() > if platform.system() == "Darwin" and \ > test_grand_child.def_in_file.name == > "conversions.f90": > test_signature = re.sub( > rf"(.*) (function > ({test_grand_child.name}))\((.*)\)$", > r"\1 \2(\1, intent(in))", > test_signature > ) > considered_signatures = [] # for error reporting help in CI > for candidate in exhale_child.children: > if candidate.kind == "function": > candidate_signature = candidate.full_signature() > considered_signatures.append(candidate_signature) > if test_signature == candidate_signature: > exhale_grand_child = candidate > break > > if not exhale_grand_child: > sig_str = "\n- ".join(considered_signatures) > > raise RuntimeError( > f"Matching child for [{test_grand_child.kind}] " > f"'{test_grand_child.name}' with signature > '{test_signature}' not " > f"found! Considered signatures:\n{sig_str}.") > E RuntimeError: Matching child for [function] > 'conversions::degrees_to_radians_s' with signature 'real(c_float) function > conversions::degrees_to_radians_s(degrees_s)' not found! Considered > signatures: > E real(c_double) function > conversions::degrees_to_radians_d(real(c_double), intent(in)) > E - real(c_float) function > conversions::degrees_to_radians_s(real(c_float), intent(in)) > E - real(c_double) function > conversions::radians_to_degrees_d(real(c_double), intent(in)) > E - real(c_float) function > conversions::radians_to_degrees_s(real(c_float), intent(in)). > > ../../../testing/hierarchies.py:1100: RuntimeError > ---------------------------- Captured stdout setup > ----------------------------- > Doxygen version used: 1.9.8 > Notice: Output directory > '/<<PKGBUILDDIR>>/testing/projects/cpp_fortran_mixed/docs_CPPFortranMixed_test_hierarchies/_doxygen' > does not exist. I have created it for you. > Searching for include files... > Searching for example files... > Searching for images... > Searching for dot files... > Searching for msc files... > Searching for dia files... > Searching for files to exclude > Searching INPUT for files to process... > Searching for files in directory > /<<PKGBUILDDIR>>/testing/projects/cpp_fortran_mixed/include > Searching for files in directory > /<<PKGBUILDDIR>>/testing/projects/cpp_fortran_mixed/include/convert > Reading and parsing tag files > Parsing files > Preprocessing > /<<PKGBUILDDIR>>/testing/projects/cpp_fortran_mixed/include/convert/convert.hpp... > Parsing file > /<<PKGBUILDDIR>>/testing/projects/cpp_fortran_mixed/include/convert/convert.hpp... > Reading > /<<PKGBUILDDIR>>/testing/projects/cpp_fortran_mixed/src/conversions.f90... > Parsing file > /<<PKGBUILDDIR>>/testing/projects/cpp_fortran_mixed/src/conversions.f90... > Building macro definition list... > Building group list... > Building directory list... > Building namespace list... > Building file list... > Building class list... > Building concept list... > Computing nesting relations for classes... > Associating documentation with classes... > Associating documentation with concepts... > Associating documentation with modules... > Building example list... > Searching for enumerations... > Searching for documented typedefs... > Searching for members imported via using declarations... > Searching for included using directives... > Searching for documented variables... > Building interface member list... > Building member list... > Searching for friends... > Searching for documented defines... > Computing class inheritance relations... > Computing class usage relations... > Flushing cached template relations that have become invalid... > Computing class relations... > Add enum values to enums... > Searching for member function documentation... > Creating members for template instances... > Building page list... > Search for main page... > Computing page relations... > Determining the scope of groups... > Computing module relations... > Sorting lists... > Determining which enums are documented > Computing member relations... > Building full member lists recursively... > Adding members to member groups. > Computing member references... > Inheriting documentation... > Generating disk names... > Adding source references... > Adding xrefitems... > Sorting member lists... > Setting anonymous enum type... > Computing dependencies between directories... > Generating citations page... > Counting members... > Counting data structures... > Resolving user defined references... > Finding anchors and sections in the documentation... > Transferring function references... > Combining using relations... > Adding members to index pages... > Correcting members for VHDL... > Computing tooltip texts... > Generating style sheet... > Generating search indices... > Generating example documentation... > Generating file sources... > Generating code for file include/convert/convert.hpp... > Generating file documentation... > Generating docs for file include/convert/convert.hpp... > Generating docs for file src/conversions.f90... > Generating page documentation... > Generating group documentation... > Generating class documentation... > Generating concept documentation... > Generating module documentation... > Generating namespace documentation... > Generating docs for namespace conversions > Generating docs for namespace convert > Generating graph info page... > Generating directory documentation... > Generating dependency graph for directory include/convert > finalizing index lists... > writing tag file... > Generating XML output... > Generating XML output for namespace conversions > Generating XML output for namespace convert > Generating XML output for file convert.hpp > Generating XML output for file conversions.f90 > Generate XML output for dir > /<<PKGBUILDDIR>>/testing/projects/cpp_fortran_mixed/include/convert/ > Generate XML output for dir > /<<PKGBUILDDIR>>/testing/projects/cpp_fortran_mixed/include/ > Generate XML output for dir > /<<PKGBUILDDIR>>/testing/projects/cpp_fortran_mixed/src/ > Running plantuml with JAVA... > Running dot... > type lookup cache used 28/65536 hits=194 misses=28 > symbol lookup cache used 39/65536 hits=369 misses=39 > finished... > > [34;1m[~] Exhale: parsing Doxygen XML.[0m > [32;1m[+] Exhale: finished parsing Doxygen XML in 0.04 seconds.[0m > [34;1m[~] Exhale: generating reStructuredText documents.[0m > [32;1m[+] Exhale: generated reStructuredText documents in 0.03 seconds.[0m > --------------------------- Captured stdout teardown > --------------------------- > # testroot: root > # builder: html > # srcdir: > /<<PKGBUILDDIR>>/testing/projects/cpp_fortran_mixed/docs_CPPFortranMixed_test_hierarchies > # outdir: > /<<PKGBUILDDIR>>/testing/projects/cpp_fortran_mixed/docs_CPPFortranMixed_test_hierarchies/_build/html > # status: > [01mRunning Sphinx v5.3.0[39;49;00m > [34;1m[~] Exhale: changing directories to > [/<<PKGBUILDDIR>>/testing/projects/cpp_fortran_mixed/docs_CPPFortranMixed_test_hierarchies] > to execute Doxygen.[0m > [34;1m[~] Exhale: executing doxygen.[0m > [34;1m[~] Exhale: changing directories back to > [/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build] after Doxygen.[0m > [32;1m[+] Exhale: doxygen ran successfully in 0.05 seconds.[0m > > # warning: > > =============================== warnings summary > =============================== > ../../../../../../usr/lib/python3/dist-packages/babel/messages/catalog.py:13 > /usr/lib/python3/dist-packages/babel/messages/catalog.py:13: > DeprecationWarning: 'cgi' is deprecated and slated for removal in Python 3.13 > from cgi import parse_header > > testing/tests/c_maths.py::CMathsTests::test_alt_out > /usr/lib/python3/dist-packages/sphinx/util/images.py:4: DeprecationWarning: > 'imghdr' is deprecated and slated for removal in Python 3.13 > import imghdr > > -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html > =========================== short test summary info > ============================ > FAILED > ../../../testing/tests/cpp_fortran_mixed.py::CPPFortranMixed::test_hierarchies > ========== 1 failed, 107 passed, 13 deselected, 2 warnings in 21.31s > =========== > E: pybuild pybuild:395: test: plugin pyproject failed with: exit code=1: cd > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build; python3.11 -m pytest > /<<PKGBUILDDIR>>/testing -m "not setup_raises" -k "not CPPNestingPages" > dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p 3.11 > returned exit code 13 The full build log is available from: http://qa-logs.debian.net/2023/09/25/exhale_0.3.6-3_unstable.log All bugs filed during this archive rebuild are listed at: https://bugs.debian.org/cgi-bin/pkgreport.cgi?tag=ftbfs-20230925;users=lu...@debian.org or: https://udd.debian.org/bugs/?release=na&merged=ign&fnewerval=7&flastmodval=7&fusertag=only&fusertagtag=ftbfs-20230925&fusertaguser=lu...@debian.org&allbugs=1&cseverity=1&ctags=1&caffected=1#results A list of current common problems and possible solutions is available at http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute! If you reassign this bug to another package, please mark it as 'affects'-ing this package. See https://www.debian.org/Bugs/server-control#affects If you fail to reproduce this, please provide a build log and diff it with mine so that we can identify if something relevant changed in the meantime.