Bug 1477166

Summary: sometimes nodes without a parent are generated
Product: [Fedora] Fedora Reporter: Petr Špaček <pspacek>
Component: python-breatheAssignee: Dave Johansen <davejohansen>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 26CC: davejohansen
Target Milestone: ---Keywords: Reopened
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: python-breathe-4.6.0-3.fc26 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-08-14 21:50:35 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
src.rpm which can be used to trigger the failure in breathe (using mock) none

Description Petr Špaček 2017-08-01 11:58:27 UTC
Description of problem:
Fedora 26 ships broken version of breathe which may fail because of bug
https://github.com/michaeljones/breathe/pull/334

Version-Release number of selected component (if applicable):
python2-breathe-4.6.0-1.fc26.noarch

How reproducible:
100 %

Steps to Reproduce:
1. try to build attached SRPM using `mock -r fedora-26-x86_64 knot-resolver-1.3.2-1.fc27.src.rpm`


Actual results:
Sphinx fails as result of Breathe bug, see logs below.


Expected results:
It should work as with python2-breathe-4.4.0-2.fc25.noarch. Given that fix was merged upstream, would it be possible to include patch to the package?

Thank you!


Additional info:
Log from Sphinx points towards Github issue https://github.com/sphinx-doc/sphinx/issues/3761 which in the end leads to fix in Breathe https://github.com/michaeljones/breathe/pull/334 .

Log from Sphinx follows:

# Sphinx version: 1.6.3
# Python version: 2.7.13 (CPython)
# Docutils version: 0.13.1 release
# Jinja2 version: 2.9.6
# Last messages:
#   loading pickled environment...
#   not yet created
#   building [mo]: targets for 0 po files that are out of date
#   building [html]: targets for 6 source files that are out of date
#   updating environment:
#   6 added, 0 changed, 0 removed
#   reading sources... [ 16%] build
#   reading sources... [ 33%] daemon
#   reading sources... [ 50%] index
#   reading sources... [ 66%] lib
# Loaded extensions:
#   sphinx.ext.viewcode (1.6.3) from /usr/lib/python2.7/site-packages/sphinx/ext/viewcode.pyc
#   sphinx.ext.todo (1.6.3) from /usr/lib/python2.7/site-packages/sphinx/ext/todo.pyc
#   breathe (4.6.0) from /usr/lib/python2.7/site-packages/breathe/__init__.pyc
#   alabaster (0.7.9) from /usr/lib/python2.7/site-packages/alabaster/__init__.pyc
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/sphinx/cmdline.py", line 306, in main
    app.build(opts.force_all, filenames)
  File "/usr/lib/python2.7/site-packages/sphinx/application.py", line 339, in build
    self.builder.build_update()
  File "/usr/lib/python2.7/site-packages/sphinx/builders/__init__.py", line 331, in build_update
    'out of date' % len(to_build))
  File "/usr/lib/python2.7/site-packages/sphinx/builders/__init__.py", line 344, in build
    updated_docnames = set(self.env.update(self.config, self.srcdir, self.doctreedir))
  File "/usr/lib/python2.7/site-packages/sphinx/environment/__init__.py", line 583, in update
    self._read_serial(docnames, self.app)
  File "/usr/lib/python2.7/site-packages/sphinx/environment/__init__.py", line 602, in _read_serial
    self.read_doc(docname, app)
  File "/usr/lib/python2.7/site-packages/sphinx/environment/__init__.py", line 723, in read_doc
    pub.publish()
  File "/usr/lib/python2.7/site-packages/docutils/core.py", line 218, in publish
    self.apply_transforms()
  File "/usr/lib/python2.7/site-packages/docutils/core.py", line 199, in apply_transforms
    self.document.transformer.apply_transforms()
  File "/usr/lib/python2.7/site-packages/docutils/transforms/__init__.py", line 171, in apply_transforms
    transform.apply(**kwargs)
  File "/usr/lib/python2.7/site-packages/docutils/transforms/universal.py", line 294, in apply
    txtnode.parent.replace(txtnode, nodes.Text(newtext))
AttributeError: 'NoneType' object has no attribute 'replace'

Comment 1 Petr Špaček 2017-08-01 11:59:20 UTC
Created attachment 1307537 [details]
src.rpm which can be used to trigger the failure in breathe (using mock)

Comment 2 Fedora Update System 2017-08-05 13:57:59 UTC
python-breathe-4.6.0-3.fc26 has been submitted as an update to Fedora 26. https://bodhi.fedoraproject.org/updates/FEDORA-2017-2055ccdeff

Comment 3 Fedora Update System 2017-08-07 06:25:08 UTC
python-breathe-4.6.0-3.fc26 has been pushed to the Fedora 26 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-2055ccdeff

Comment 4 Fedora Update System 2017-08-14 21:50:35 UTC
python-breathe-4.6.0-3.fc26 has been pushed to the Fedora 26 stable repository. If problems still persist, please make note of it in this bug report.