Hello community, here is the log from the commit of package python-breathe for openSUSE:Factory checked in at 2020-12-12 20:29:41 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-breathe (Old) and /work/SRC/openSUSE:Factory/.python-breathe.new.2328 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-breathe" Sat Dec 12 20:29:41 2020 rev:11 rq:854518 version:4.24.1 Changes: -------- --- /work/SRC/openSUSE:Factory/python-breathe/python-breathe.changes 2020-10-29 09:48:03.076154173 +0100 +++ /work/SRC/openSUSE:Factory/.python-breathe.new.2328/python-breathe.changes 2020-12-12 20:32:09.513839157 +0100 @@ -1,0 +2,12 @@ +Wed Dec 9 23:29:13 UTC 2020 - Benjamin Greiner <c...@bnavigator.de> + +- Update to v4.24.1 + * Fix anchors on pages generated by Doxygen >= 1.8.17. #602 +- Breathe v4.24.0 + * Update CI for Sphinx 3.3.x and fix test mock. #597 + * Add support for xrefitem based page generation (doxygenpage). + #596 +- Breathe v4.23.0 + * Add initial xrefsect support. #589 + +------------------------------------------------------------------- Old: ---- v4.22.1.tar.gz New: ---- v4.24.1.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-breathe.spec ++++++ --- /var/tmp/diff_new_pack.5VxCYE/_old 2020-12-12 20:32:10.149839822 +0100 +++ /var/tmp/diff_new_pack.5VxCYE/_new 2020-12-12 20:32:10.149839822 +0100 @@ -18,7 +18,7 @@ %define skip_python2 1 Name: python-breathe -Version: 4.22.1 +Version: 4.24.1 Release: 0 Summary: Sphinx Doxygen renderer License: BSD-3-Clause @@ -32,7 +32,7 @@ BuildRequires: %{python_module six >= 1.9} BuildRequires: fdupes BuildRequires: python-rpm-macros -Requires: python-Sphinx >= 2.0 +Requires: python-Sphinx >= 3.0 Requires: python-docutils >= 0.12 Requires: python-setuptools Requires: python-six >= 1.9 ++++++ v4.22.1.tar.gz -> v4.24.1.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/breathe-4.22.1/.github/workflows/unit_tests.yml new/breathe-4.24.1/.github/workflows/unit_tests.yml --- old/breathe-4.22.1/.github/workflows/unit_tests.yml 2020-09-26 21:27:40.000000000 +0200 +++ new/breathe-4.24.1/.github/workflows/unit_tests.yml 2020-12-01 22:19:50.000000000 +0100 @@ -11,7 +11,7 @@ - 3.0.4 - 3.1.2 - 3.2.0 - - git+https://github.com/sphinx-doc/sphinx.git@3.2.x + - git+https://github.com/sphinx-doc/sphinx.git@3.3.x - git+https://github.com/sphinx-doc/sphinx.git@3.x # master (Sphinx 4) will require at least Python 3.6, so disable it for now #- git+https://github.com/sphinx-doc/sphinx.git@master diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/breathe-4.22.1/README.rst new/breathe-4.24.1/README.rst --- old/breathe-4.22.1/README.rst 2020-09-26 21:27:40.000000000 +0200 +++ new/breathe-4.24.1/README.rst 2020-12-01 22:19:50.000000000 +0100 @@ -1,7 +1,9 @@ - Breathe ======= +**Packagers:** PGP signing key changes for Breathe >= v4.23.0. +https://github.com/michaeljones/breathe/issues/591 + .. image:: https://github.com/michaeljones/breathe/workflows/unit%20tests/badge.svg :target: https://github.com/michaeljones/breathe/actions?query=workflow%3A%22unit+tests%22 @@ -170,6 +172,19 @@ Inspired by `Keepachangelog.com <http://keepachangelog.com/>`__. +- 2020-12-01 - Breathe v4.24.1 + + - Fix anchors on pages generated by Doxygen >= 1.8.17. #602 + +- 2020-11-15 - Breathe v4.24.0 + + - Update CI for Sphinx 3.3.x and fix test mock. #597 + - Add support for xrefitem based page generation (doxygenpage). #596 + +- 2020-10-20 - Breathe v4.23.0 + + - Add initial xrefsect support. #589 + - 2020-09-26 - Breathe v4.22.1 - Fix anonymous struct/union usage in C domain. #585 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/breathe-4.22.1/breathe/__init__.py new/breathe-4.24.1/breathe/__init__.py --- old/breathe-4.22.1/breathe/__init__.py 2020-09-26 21:27:40.000000000 +0200 +++ new/breathe-4.24.1/breathe/__init__.py 2020-12-01 22:19:50.000000000 +0100 @@ -4,7 +4,7 @@ from sphinx.application import Sphinx -__version__ = '4.22.1' +__version__ = '4.24.1' def setup(app: Sphinx): diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/breathe-4.22.1/breathe/directives.py new/breathe-4.24.1/breathe/directives.py --- old/breathe-4.22.1/breathe/directives.py 2020-09-26 21:27:40.000000000 +0200 +++ new/breathe-4.24.1/breathe/directives.py 2020-12-01 22:19:50.000000000 +0100 @@ -358,7 +358,7 @@ if not matches: warning = create_warning(project_info, self.state, self.lineno, name=name, kind=self.kind) - return warning.warn('doxygen{kind}: Cannot find namespace "{name}" {tail}') + return warning.warn('doxygen{kind}: Cannot find {kind} "{name}" {tail}') if 'content-only' in self.options: # Unpack the single entry in the matches list @@ -412,6 +412,14 @@ } +class DoxygenPageDirective(_DoxygenContentBlockDirective): + kind = "page" + option_spec = { + "path": unchanged_required, + "project": unchanged_required, + } + + # TODO: is this comment still relevant? # This class was the same as the DoxygenBaseDirective above, except that it # wraps the output in a definition_list before passing it back. This should be @@ -557,6 +565,7 @@ "doxygengroup": DoxygenGroupDirective, "doxygenfile": DoxygenFileDirective, "autodoxygenfile": AutoDoxygenFileDirective, + "doxygenpage": DoxygenPageDirective, } # note: the parser factory contains a cache of the parsed XML diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/breathe-4.22.1/breathe/parser/compound.py new/breathe-4.24.1/breathe/parser/compound.py --- old/breathe-4.22.1/breathe/parser/compound.py 2020-09-26 21:27:40.000000000 +0200 +++ new/breathe-4.24.1/breathe/parser/compound.py 2020-12-01 22:19:50.000000000 +0100 @@ -642,6 +642,12 @@ def __init__(self, term=None): supermod.docVarListEntryType.__init__(self, term) + def buildChildren(self, child_, nodeName_): + if child_.nodeType == Node.ELEMENT_NODE and nodeName_ == 'term': + obj_ = supermod.docTitleType.factory() + obj_.build(child_) + self.set_term(obj_) + supermod.docVarListEntryType.subclass = docVarListEntryTypeSub # end class docVarListEntryTypeSub @@ -858,6 +864,33 @@ # end class docXRefSectTypeSub +class docVariableListTypeSub(supermod.docVariableListType): + + node_type = "docvariablelist" + + def __init__(self, valueOf_=''): + supermod.docVariableListType.__init__(self, valueOf_) + + self.varlistentries = [] + self.listitems = [] + + def buildChildren(self, child_, nodeName_): + supermod.docVariableListType.buildChildren(self, child_, nodeName_) + + if child_.nodeType == Node.ELEMENT_NODE and nodeName_ == "varlistentry": + obj_ = supermod.docVarListEntryType.factory() + obj_.build(child_) + self.varlistentries.append(obj_) + elif child_.nodeType == Node.ELEMENT_NODE and nodeName_ == "listitem": + obj_ = supermod.docListItemType.factory() + obj_.build(child_) + self.listitems.append(obj_) + + +supermod.docVariableListType.subclass = docVariableListTypeSub +# end class docVariableListTypeSub + + class docCopyTypeSub(supermod.docCopyType): node_type = "doccopy" @@ -1005,6 +1038,18 @@ obj_ = supermod.docURLLink.factory() obj_.build(child_) self.content.append(obj_) + elif child_.nodeType == Node.ELEMENT_NODE and nodeName_ == "xrefsect": + obj_ = supermod.docXRefSectType.factory() + obj_.build(child_) + self.content.append(obj_) + elif child_.nodeType == Node.ELEMENT_NODE and nodeName_ == "variablelist": + obj_ = supermod.docVariableListType.factory() + obj_.build(child_) + self.content.append(obj_) + elif child_.nodeType == Node.ELEMENT_NODE and nodeName_ == "anchor": + obj_ = supermod.docAnchorType.factory() + obj_.build(child_) + self.content.append(obj_) supermod.docParaType.subclass = docParaTypeSub @@ -1048,6 +1093,19 @@ supermod.docTitleType.__init__(self, valueOf_, mixedclass_, content_) self.type_ = None + def buildChildren(self, child_, nodeName_): + supermod.docTitleType.buildChildren(self, child_, nodeName_) + + if child_.nodeType == Node.ELEMENT_NODE and nodeName_ == "ref": + obj_ = supermod.docRefTextType.factory() + obj_.build(child_) + self.content_.append(obj_) + self.valueOf_ += obj_.valueOf_ + elif child_.nodeType == Node.ELEMENT_NODE and nodeName_ == "anchor": + obj_ = supermod.docAnchorType.factory() + obj_.build(child_) + self.content_.append(obj_) + supermod.docTitleType.subclass = docTitleTypeSub # end class docTitleTypeSub diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/breathe-4.22.1/breathe/renderer/filter.py new/breathe-4.24.1/breathe/renderer/filter.py --- old/breathe-4.22.1/breathe/renderer/filter.py 2020-09-26 21:27:40.000000000 +0200 +++ new/breathe-4.24.1/breathe/renderer/filter.py 2020-12-01 22:19:50.000000000 +0100 @@ -577,7 +577,7 @@ def create_render_filter(self, kind: str, options: Dict[str, Any]) -> Filter: """Render filter for group & namespace blocks""" - if kind not in ['group', 'namespace']: + if kind not in ['group', 'page', 'namespace']: raise UnrecognisedKindError(kind) # Generate new dictionary from defaults @@ -933,7 +933,7 @@ As a finder/content filter we only need to match exactly what we're interested in. """ - if kind not in ['group', 'namespace']: + if kind not in ['group', 'page', 'namespace']: raise UnrecognisedKindError(kind) node = Node() @@ -1063,6 +1063,12 @@ InFilter(KindAccessor(Node()), ["group"]), InFilter(NameAccessor(Node()), [name]) ) + elif kind == 'page': + filter_ = AndFilter( + InFilter(NodeTypeAccessor(Node()), ["compound"]), + InFilter(KindAccessor(Node()), ["page"]), + InFilter(NameAccessor(Node()), [name]) + ) else: # Assume kind == 'namespace' filter_ = AndFilter( diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/breathe-4.22.1/breathe/renderer/sphinxrenderer.py new/breathe-4.24.1/breathe/renderer/sphinxrenderer.py --- old/breathe-4.22.1/breathe/renderer/sphinxrenderer.py 2020-09-26 21:27:40.000000000 +0200 +++ new/breathe-4.24.1/breathe/renderer/sphinxrenderer.py 2020-12-01 22:19:50.000000000 +0100 @@ -1539,6 +1539,52 @@ ] return nodelist + def visit_docxrefsect(self, node) -> List[Node]: + signode = addnodes.desc_signature() + title = node.xreftitle[0] + ':' + titlenode = nodes.emphasis(text=title) + ref = addnodes.pending_xref( + "", + reftype="ref", + refdomain="std", + refexplicit=True, + reftarget=node.id, + refdoc=self.app.env.docname, + *[titlenode]) + signode += ref + + nodelist = self.render(node.xrefdescription) + contentnode = addnodes.desc_content() + contentnode += nodelist + + descnode = addnodes.desc() + descnode['objtype'] = 'xrefsect' + descnode += signode + descnode += contentnode + + return [descnode] + + def visit_docvariablelist(self, node) -> List[Node]: + output = [] + for varlistentry, listitem in zip(node.varlistentries, node.listitems): + descnode = addnodes.desc() + descnode['objtype'] = 'varentry' + signode = addnodes.desc_signature() + signode += self.render_optional(varlistentry) + descnode += signode + contentnode = addnodes.desc_content() + contentnode += self.render_iterable(listitem.para) + descnode += contentnode + output.append(descnode) + return output + + def visit_docvarlistentry(self, node) -> List[Node]: + content = node.term.content_ + return self.render_iterable(content) + + def visit_docanchor(self, node) -> List[None]: + return self.create_doxygen_target(node) + def visit_mixedcontainer(self, node) -> List[Node]: return self.render_optional(node.getValue()) @@ -1913,7 +1959,11 @@ "docparamlistitem": visit_docparamlistitem, "docparamnamelist": visit_docparamnamelist, "docparamname": visit_docparamname, - "templateparamlist": visit_templateparamlist + "templateparamlist": visit_templateparamlist, + "docxrefsect": visit_docxrefsect, + "docvariablelist": visit_docvariablelist, + "docvarlistentry": visit_docvarlistentry, + "docanchor": visit_docanchor, } def render(self, node, context: Optional[RenderContext] = None) -> List[Node]: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/breathe-4.22.1/documentation/source/conf.py new/breathe-4.24.1/documentation/source/conf.py --- old/breathe-4.22.1/documentation/source/conf.py 2020-09-26 21:27:40.000000000 +0200 +++ new/breathe-4.24.1/documentation/source/conf.py 2020-12-01 22:19:50.000000000 +0100 @@ -222,6 +222,7 @@ "cpp_friendclass":"../../examples/specific/cpp_friendclass/xml/", "cpp_inherited_members":"../../examples/specific/cpp_inherited_members/xml/", "cpp_trailing_return_type":"../../examples/specific/cpp_trailing_return_type/xml/", + "xrefsect": "../../examples/specific/xrefsect/xml/", } breathe_projects_source = { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/breathe-4.22.1/documentation/source/directives.rst new/breathe-4.24.1/documentation/source/directives.rst --- old/breathe-4.22.1/documentation/source/directives.rst 2020-09-26 21:27:40.000000000 +0200 +++ new/breathe-4.24.1/documentation/source/directives.rst 2020-12-01 22:19:50.000000000 +0100 @@ -18,6 +18,7 @@ file group autofile + page .. contents:: Table of Contents @@ -193,7 +194,7 @@ This directive generates the appropriate output for the contents of a doxygen group. A doxygen group can be declared with specific doxygen markup in the -source comments as covered in the `doxygen documentation`_. +source comments as covered in the `doxygen grouping documentation`_. It takes the standard ``project``, ``path``, ``outline`` and ``no-link`` options and additionally the ``content-only``, ``members``, ``protected-members``, @@ -216,7 +217,7 @@ Checkout the :ref:`doxygengroup documentation <group-example>` for more details and to see it in action. -.. _doxygen documentation: http://www.stack.nl/~dimitri/doxygen/manual/grouping.html +.. _doxygen grouping documentation: https://www.doxygen.nl/manual/grouping.html .. _doxygenindex: @@ -387,6 +388,28 @@ Checkout the :ref:`example <variable-example>` to see it in action. +doxygenpage +~~~~~~~~~~~ + +This directive generates the appropriate output for the contents of a doxygen +page. A doxygen page is created for each "key" of every \\xrefitem command used +for markup in the source comments. For more information check the +`doxygen xrefitem documentation`_. + +It takes the standard ``project`` and ``path`` options. + +:: + + .. doxygenpage:: <page name> + :project: ... + :path: ... + +Checkout the :ref:`doxygenpage documentation <page-example>` for more details +and to see it in action. + +.. _doxygen xrefitem documentation: https://www.doxygen.nl/manual/commands.html#cmdxrefitem + + Config Values ------------- diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/breathe-4.22.1/documentation/source/group.rst new/breathe-4.24.1/documentation/source/group.rst --- old/breathe-4.22.1/documentation/source/group.rst 2020-09-26 21:27:40.000000000 +0200 +++ new/breathe-4.24.1/documentation/source/group.rst 2020-12-01 22:19:50.000000000 +0100 @@ -6,7 +6,7 @@ This directive generates the appropriate output for the contents of a doxygen group. A doxygen group can be declared with specific doxygen markup in the -source comments as cover in the `doxygen documentation`_. +source comments as cover in the `doxygen grouping documentation`_. It takes the standard ``project``, ``path``, ``outline`` and ``no-link`` options and additionally the ``content-only``, ``members``, ``protected-members``, @@ -47,7 +47,7 @@ defining them inside the scope of another group, or by using the Doxygen \ingroup command, are also parsed and loaded. -.. _doxygen documentation: http://www.stack.nl/~dimitri/doxygen/manual/grouping.html +.. _doxygen grouping documentation: https://www.doxygen.nl/manual/grouping.html .. contents:: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/breathe-4.22.1/documentation/source/page.rst new/breathe-4.24.1/documentation/source/page.rst --- old/breathe-4.22.1/documentation/source/page.rst 1970-01-01 01:00:00.000000000 +0100 +++ new/breathe-4.24.1/documentation/source/page.rst 2020-12-01 22:19:50.000000000 +0100 @@ -0,0 +1,60 @@ + +.. _page-example: + +doxygenpage Directive +===================== + +This directive generates the appropriate output for the contents of a doxygen +page. A doxygen page is created for each "key" of every \\xrefitem command used +for markup in the source comments. For more information check the +`doxygen documentation`_. + +It takes the standard ``project`` and ``path`` options. + +:: + + .. doxygenpage:: <page name> + :project: ... + :path: ... + +.. _doxygen documentation: https://www.doxygen.nl/manual/commands.html#cmdxrefitem + +.. contents:: + + +Basic Example +------------- + +.. cpp:namespace:: @ex_page_basic + +The plain ``doxygenpage`` directive will output the page name and description +and any variable entries which were defined to be part of this page (with an +\xrefitem usage). + +.. code-block:: rst + + .. doxygenpage:: xrefsample + :project: xrefsect + +It produces this output: + +.. doxygenpage:: xrefsample + :project: xrefsect + + +Failing Example +--------------- + +.. cpp:namespace:: @ex_page_failing + +This intentionally fails: + +.. code-block:: rst + + .. doxygengroup:: madeuppage + :project: xrefsect + +It produces the following warning message: + +.. warning:: Cannot find file "madeuppage" in doxygen xml output for project + "xrefsect" from directory: ../../examples/specific/xrefsect/xml/ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/breathe-4.22.1/documentation/source/specific.rst new/breathe-4.24.1/documentation/source/specific.rst --- old/breathe-4.22.1/documentation/source/specific.rst 2020-09-26 21:27:40.000000000 +0200 +++ new/breathe-4.24.1/documentation/source/specific.rst 2020-12-01 22:19:50.000000000 +0100 @@ -10,10 +10,10 @@ .. doxygentypedef:: IsFurry :path: ../../examples/specific/template_type_alias/xml - + .. doxygentypedef:: IsFuzzy :path: ../../examples/specific/template_type_alias/xml - + Typedef Examples ---------------- @@ -130,13 +130,13 @@ .. doxygenfunction:: bar :project: array - + C Struct -------- .. doxygenfile:: c_struct.h :project: c_struct - + C Union ------- @@ -148,7 +148,7 @@ .. doxygenenum:: GSM_BackupFormat :project: c_enum - + C Typedef --------- @@ -166,7 +166,7 @@ .. doxygenfile:: define.h :project: define - + Multifile --------- @@ -190,7 +190,7 @@ .. doxygenfile:: cpp_anon.h :project: cpp_anon - + C++ Union --------- @@ -238,3 +238,9 @@ .. doxygenfile:: cpp_trailing_return_type.h :project: cpp_trailing_return_type + +Doxygen xrefsect +---------------- + +.. doxygenfile:: xrefsect.h + :project: xrefsect diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/breathe-4.22.1/examples/specific/Makefile new/breathe-4.24.1/examples/specific/Makefile --- old/breathe-4.22.1/examples/specific/Makefile 2020-09-26 21:27:40.000000000 +0200 +++ new/breathe-4.24.1/examples/specific/Makefile 2020-12-01 22:19:50.000000000 +0100 @@ -23,7 +23,7 @@ image name union group struct struct_function qtsignalsandslots lists \ headings links parameters template_class template_class_non_type \ template_function template_type_alias template_specialisation \ - enum define interface \ + enum define interface xrefsect \ cpp_anon cpp_enum cpp_union cpp_function cpp_friendclass \ cpp_inherited_members cpp_trailing_return_type \ c_file c_struct c_enum c_typedef c_macro c_union diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/breathe-4.22.1/examples/specific/xrefsect.cfg new/breathe-4.24.1/examples/specific/xrefsect.cfg --- old/breathe-4.22.1/examples/specific/xrefsect.cfg 1970-01-01 01:00:00.000000000 +0100 +++ new/breathe-4.24.1/examples/specific/xrefsect.cfg 2020-12-01 22:19:50.000000000 +0100 @@ -0,0 +1,12 @@ +PROJECT_NAME = "Doxygen xrefsect" +OUTPUT_DIRECTORY = xrefsect +GENERATE_LATEX = NO +GENERATE_MAN = NO +GENERATE_RTF = NO +CASE_SENSE_NAMES = NO +INPUT = xrefsect.h +QUIET = YES +JAVADOC_AUTOBRIEF = YES +GENERATE_HTML = NO +GENERATE_XML = YES +ALIASES = "xrefsample=\xrefitem xrefsample \"xref Sample\" \"xref Sample\" " diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/breathe-4.22.1/examples/specific/xrefsect.h new/breathe-4.24.1/examples/specific/xrefsect.h --- old/breathe-4.22.1/examples/specific/xrefsect.h 1970-01-01 01:00:00.000000000 +0100 +++ new/breathe-4.24.1/examples/specific/xrefsect.h 2020-12-01 22:19:50.000000000 +0100 @@ -0,0 +1,34 @@ +/** + * @file xrefsect.h + * A few examples of xrefsect items support. + */ + +/** + * An example of using Doxygen's todo command. + * + * @todo Implement this function. + */ +int unimplemented(void); + +/** + * An example of using Doxygen's bug and test commands. + * + * @bug Does not work yet. + * + * @test Add proper unit testing first. + */ +void buggy_function(int param); + +/** + * An example of using Doxygen's deprecated command. + * + * @deprecated Should not be used on new code. + */ +void old_function(void); + +/** + * An example of a custom Doxygen xrefitem declared as an ALIAS. + * + * @xrefsample This text shows up in the xref output. + */ +void sample_xrefitem_function(void); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/breathe-4.22.1/tests/test_renderer.py new/breathe-4.24.1/tests/test_renderer.py --- old/breathe-4.22.1/tests/test_renderer.py 2020-09-26 21:27:40.000000000 +0200 +++ new/breathe-4.24.1/tests/test_renderer.py 2020-12-01 22:19:50.000000000 +0100 @@ -123,6 +123,8 @@ self.reporter = MockReporter() def get_source_and_line(self, lineno: int): + if lineno is None: + lineno = 42 return 'mock-doc', lineno _______________________________________________ openSUSE Commits mailing list -- commit@lists.opensuse.org To unsubscribe, email commit-le...@lists.opensuse.org List Netiquette: https://en.opensuse.org/openSUSE:Mailing_list_netiquette List Archives: https://lists.opensuse.org/archives/list/commit@lists.opensuse.org