Re: [PATCH] Documentation/sphinx: Fix Directive import error

From: Takashi Iwai
Date: Fri Mar 02 2018 - 09:55:15 EST


On Fri, 02 Mar 2018 15:50:55 +0100,
Matthew Wilcox wrote:
>
> On Fri, Mar 02, 2018 at 12:49:03PM +0100, Takashi Iwai wrote:
> > I'm no expert of sphinx nor python, so something might be wrong.
> > Please check it.
>
> I'm also not a pythonista, but ...
>
> > --- a/Documentation/sphinx/kerneldoc.py
> > +++ b/Documentation/sphinx/kerneldoc.py
> > @@ -37,7 +37,10 @@ import glob
> > from docutils import nodes, statemachine
> > from docutils.statemachine import ViewList
> > from docutils.parsers.rst import directives
> > -from sphinx.util.compat import Directive
> > +try:
> > + from sphinx.util.compat import Directive
> > +except ImportError:
> > + from docutils.parsers.rst import directives, Directive
>
> It seems to me the previous line already imported
> docutils.parsers.rst.directives, and we should probably prefer the newer
> parser even with Sphinx 1.6, so I would think this would work better:
>
> -from sphinx.util.compat import Directive
> +try:
> + from docutils.parsers.rst import Directive
> +except ImportError:
> + from sphinx.util.compat import Directive
>
> (it works on Debian with Sphinx 1.6.7)

Makes more sense, yes.

Jon, would you like me resending the patch? Or it's trivial enough as
you can fix in place.


thanks,

Takashi