Em Wed, 22 May 2019 10:36:45 +0300 Jani Nikula <jani.nikula@xxxxxxxxxxxxxxx> escreveu: > On Tue, 21 May 2019, Jonathan Corbet <corbet@xxxxxxx> wrote: > > The Sphinx folks are deprecating some interfaces in the upcoming 2.0 > > release; one immediate result of that is a bunch of warnings that show up > > when building with 1.8. These two patches make those warnings go away, > > but at a cost: > > > > - It introduces a couple of Sphinx version checks, which are always > > ugly, but the alternative would be to stop supporting versions > > before 1.7. For now, I think we can carry that cruft. > > Frankly, I'd just require Sphinx 1.7+, available even in Debian stable > through stretch-backports. We can raise the bar and force a 1.7 or even 1.8 (Fedora 30 comes with version 1.8.4), but I would prefer to keep support older versions, at least while we don't depend on some new features introduced after the version we're using, and while our extensions won't require a major rework due to a new version. > > > - The second patch causes the build to fail horribly on newer > > Sphinx installations. The change to switch_source_input() seems > > to make the parser much more finicky, increasing warnings and > > eventually failing the build altogether. In particular, it will > > scream about problems in .rst files that are not included in the > > TOC tree at all. The complaints appear to be legitimate, but it's > > a bunch of stuff to clean up. There is a flag to cleanup the warning about a file not included at a TOC tree (:orphan:), but it will still try to parse it. There's also a conf.py way of doing it. For example, you can exclude an entire dir: exclude_patterns = ['includes/*.rst'] But using exclude_patterns will likely be too messy. > I can understand Sphinx complaining that a file is not included in a TOC > tree, but I don't understand why it goes on to parse them anyway. Yeah, this is, IMHO, a very bad behavior. > > BR, > Jani. > > > > > > I've tested these with 1.4 and 1.8, but not various versions in between. > > > > Jonathan Corbet (2): > > doc: Cope with Sphinx logging deprecations > > doc: Cope with the deprecation of AutoReporter > > > > Documentation/sphinx/kerneldoc.py | 48 ++++++++++++++++++++++++------- > > Documentation/sphinx/kernellog.py | 28 ++++++++++++++++++ > > Documentation/sphinx/kfigure.py | 38 +++++++++++++----------- > > 3 files changed, 87 insertions(+), 27 deletions(-) > > create mode 100644 Documentation/sphinx/kernellog.py > Thanks, Mauro