[openstack-dev] [all][requirements][docs] sphinx update to 1.7.4 from 1.6.5

Vladyslav Drok vdrok at mirantis.com
Tue Jun 26 14:24:25 UTC 2018


On Tue, Jun 26, 2018 at 5:14 PM Vladyslav Drok <vdrok at mirantis.com> wrote:

>
> On Tue, Jun 26, 2018 at 4:58 PM Takashi Yamamoto <yamamoto at midokura.com>
> wrote:
>
>> On Tue, Jun 26, 2018 at 10:13 PM, Doug Hellmann <doug at doughellmann.com>
>> wrote:
>> > Excerpts from Lance Bragstad's message of 2018-06-25 22:51:37 -0500:
>> >> Thanks a bunch for digging into this, Tony. I'll follow up with the
>> >> oauthlib maintainers and see if they'd be interested in these changes
>> >> upstream. If so, I can chip away at it. For now we'll have to settle
>> for
>> >> not treating warnings as errors to unblock our documentation gate [0].
>> >>
>> >> [0] https://review.openstack.org/#/c/577974/
>> >
>> > How are docstrings from a third-party library making their way into the
>> > keystone docs and breaking the build?
>>
>> in the same way that docstrings from os-vif affect networking-midonet
>> docs.
>> i.e. via class inheritance
>>
>> >
>> > Doug
>> >
>> >>
>> >> On 06/25/2018 07:27 PM, Tony Breeds wrote:
>> >> > On Mon, Jun 25, 2018 at 05:42:00PM -0500, Lance Bragstad wrote:
>> >> >> Keystone is hitting this, too [0]. I attempted the same solution
>> that
>> >> >> Tony posted, but no luck. I've even gone so far as removing every
>> >> >> comment from the module to see if that helps narrow down the problem
>> >> >> area, but sphinx still trips. The output from the error message
>> isn't
>> >> >> very descriptive either. Has anyone else had issues fixing this for
>> >> >> python comments, not just docstrings?
>> >> >>
>> >> >> [0] https://bugs.launchpad.net/keystone/+bug/1778603
>> >> > I did a little digging for the keystone problem and it's due to a
>> >> > missing ':' in
>> >> >
>> https://github.com/oauthlib/oauthlib/blob/master/oauthlib/oauth1/rfc5849/request_validator.py#L819-L820
>> >> >
>> >> > So the correct way to fix this is to correct that in oauthlib, get it
>> >> > released and use that.
>> >> >
>> >> > I hit additional problems in that enabling -W in oauthlib, to pevent
>> >> > this happening in the future, lead me down a rabbit hole I don't
>> really
>> >> > have cycles to dig out of.
>> >> >
>> >> > Here's a dump of where I got to[1].  Clearly it mixes "fixes" with
>> >> > debugging but it isn't too hard to reproduce and someone that knows
>> more
>> >> > Sphinx will be able to understand the errors better than I can.
>> >> >
>> >> >
>> >> > [1] http://paste.openstack.org/show/724271/
>> >> >
>> >> > Yours Tony.
>>
>
> This also might be related to this thread, in ironic I can see the
> following while building the docs, apart from 'Bullet list ends without a
> blank line' issue:
>
> Warning, treated as error:
> /home/vlad/work/ironic/ironic/api/app.py:docstring of
> ironic.api.app.IronicCORS:1:Error in "wsme:service" directive:
> unknown option: "module".
>
> .. wsme:service:: None
>    :module: ironic.api.app
>
>    Bases: :class:`oslo_middleware.cors.CORS`
>
>    Ironic-specific CORS class
>
>    We're adding the Ironic-specific version headers to the list of simple
>    headers in order that a request bearing those headers might be accepted
> by
>    the Ironic REST API.
>
> I see that there is some code in wsmeext that should be dealing with that
> if I understand correctly --
> https://github.com/openstack/wsme/blob/0.8.0/wsmeext/sphinxext.py#L356-L357
>
> Sphinx version I have is 1.7.5.
>
> Several other folks indicated that they hit it with on fresh fedora.
>

It also appears that index of :module: entry has changed:

-> if ':module:' in self.directive.result[-1]:
(Pdb) self.directive.result
ViewList(['', '.. py:module:: ironic.api.app', '', '', '.. wsme:service::
None', '   :module: ironic.api.app', '', '   Bases:
:class:`oslo_middleware.cors.CORS`'],
items=[('/home/vlad/work/ironic/ironic/api/app.py:docstring of
ironic.api.app', 0), ('/home/vlad/work/ironic/ironic/api/app.py:docstring
of ironic.api.app', 0),
('/home/vlad/work/ironic/ironic/api/app.py:docstring of ironic.api.app',
0), ('/home/vlad/work/ironic/ironic/api/app.py:docstring of
ironic.api.app.IronicCORS', 0),
('/home/vlad/work/ironic/ironic/api/app.py:docstring of
ironic.api.app.IronicCORS', 0),
('/home/vlad/work/ironic/ironic/api/app.py:docstring of
ironic.api.app.IronicCORS', 0),
('/home/vlad/work/ironic/ironic/api/app.py:docstring of
ironic.api.app.IronicCORS', 0),
('/home/vlad/work/ironic/ironic/api/app.py:docstring of
ironic.api.app.IronicCORS', 0)])

It is self.directive.result[-3] now, so I guess it needs to be changed to
iterate on everything in that list with that check?


>
>> >> >
>> >> >
>> >> >
>> __________________________________________________________________________
>> >> > OpenStack Development Mailing List (not for usage questions)
>> >> > Unsubscribe:
>> OpenStack-dev-request at lists.openstack.org?subject:unsubscribe
>> >> > http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
>> >
>> >
>> __________________________________________________________________________
>> > OpenStack Development Mailing List (not for usage questions)
>> > Unsubscribe:
>> OpenStack-dev-request at lists.openstack.org?subject:unsubscribe
>> > http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
>>
>> __________________________________________________________________________
>> OpenStack Development Mailing List (not for usage questions)
>> Unsubscribe:
>> OpenStack-dev-request at lists.openstack.org?subject:unsubscribe
>> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20180626/a0ddb29a/attachment.html>


More information about the OpenStack-dev mailing list