On Sat, Sep 03, 2016 at 05:12:27PM +0200, Ondrej Novy wrote: > Hi, > > https://review.openstack.org/365253 > > released newton version of python-swiftclient 3.1.0 requires newer version > of oslosphinx. Without it, docs can't be built. > > So i prepared fix: > https://review.openstack.org/#/c/365239/1 > > But gating says: no, you should update global requirements first. So I'm > doing it. > > Please consider granting an exception. Thanks.
I think we need a little more detail. As I understand it the issue is that projects which set 'show_other_versions' in html_theme_options will fail to build if it gets oslosphinx < 4.7.0. A quick look at [1] shows that this is only python-swiftclient. More generally however the docs *are* building because we always get oslosphinx 4.7.0 [2] So this review is about correctness rather than fixing a breakage. Please correct any of the above if I have it wrong. I'll outline our options on the assumption that I'm reasonably close in my problem analysis. From my POV we have a few options: 1) Grant the FFE Here are some stats about oslosphinx: Package : oslosphinx [oslosphinx!=3.4.0,>=2.5.0] (used by 223 projects) Taking review 365253 would force a minor semver bump a release of 76 projects + and deeper dependencies in libraries. Server/service projects will get the requirements bump in RC1. This has a pretty major impact on the release team at a time they're trying to stabilise things. 2) Fix it on master when the freeze is lifted As I said the docs are building for python-swiftclient, so we could acknowledge that we have a problem and fix it for master. Newton will always be broken but I think we've missed the boat on raising the minimum here due to the scale of the impact. We can't fix it on stable/newton as that's against the stable-policy. 3) Add a hack to python-swiftclient work around the problem. This is a terrible and I admit it's papering over an issue with out tools/process but we could do something like: --- diff --git a/doc/source/conf.py b/doc/source/conf.py index 5af77b2..f72b8d5 100644 --- a/doc/source/conf.py +++ b/doc/source/conf.py @@ -111,7 +111,14 @@ pygments_style = 'sphinx' # documentation. # html_theme_options = {} -html_theme_options = {'show_other_versions': True} +from pkg_resources import get_distribution, parse_version + +oslosphinx_installed = parse_version(get_distribution('oslosphinx').version) + +if oslosphinx_installed >= parse_version('4.7.0'): + html_theme_options = {'show_other_versions': True} +else: + html_theme_options = {} --- My opinion is that option 2 is the least worst, taking option 3 will be up to the swift and oslo teams. Yours Tony. [1] http://codesearch.openstack.org/?q=show_other_versions&i=nope&files=&repos= [2] Because: 1) The projects supports constraints and gets 4.7.0 ; or 2) The projects is unconstrained and pip picks the latest (4.7.0)
signature.asc
Description: PGP signature
__________________________________________________________________________ OpenStack Development Mailing List (not for usage questions) Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev