Accepting request 507246 from devel:languages:python
1 OBS-URL: https://build.opensuse.org/request/show/507246 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-pbr?expand=0&rev=29
This commit is contained in:
commit
58e34b978f
@ -1,101 +0,0 @@
|
||||
From 2d7c0045f402b31d6223437ba25423eeb32278e1 Mon Sep 17 00:00:00 2001
|
||||
From: Alfredo Moralejo <amoralej@redhat.com>
|
||||
Date: Wed, 22 Mar 2017 04:56:56 -0400
|
||||
Subject: [PATCH] Initialize sphinx config using application instead of config
|
||||
|
||||
Currently sphinx config is initialized using sphinx.config,
|
||||
however in recent versions of Sphinx, plugin specific parameters
|
||||
as man_pages for man builder has been moved to the extension
|
||||
and is not initialized from sphinx.config but using sphinx.application.
|
||||
This is making man_pages to be empty when using sphinx 1.5 and man
|
||||
builder is not properly called.
|
||||
|
||||
This patch initializes sphinx config using sphinx.application which
|
||||
works fine with both old and new Sphinx versions.
|
||||
|
||||
Closes-Bug: #1674795
|
||||
|
||||
Depends-On: I7bde8fc1f2a7db5bd73635aa197377bf5ac614d2
|
||||
Change-Id: Ib7c1a6fe8fbb5acfcfcfac61d0b53f080ff2b1e4
|
||||
---
|
||||
pbr/builddoc.py | 17 ++++-------------
|
||||
pbr/tests/test_setup.py | 6 +++++-
|
||||
2 files changed, 9 insertions(+), 14 deletions(-)
|
||||
|
||||
diff --git a/pbr/builddoc.py b/pbr/builddoc.py
|
||||
index f51b283..4f05673 100644
|
||||
--- a/pbr/builddoc.py
|
||||
+++ b/pbr/builddoc.py
|
||||
@@ -17,9 +17,7 @@
|
||||
from distutils import log
|
||||
import fnmatch
|
||||
import os
|
||||
-import pkg_resources
|
||||
import sys
|
||||
-import warnings
|
||||
|
||||
try:
|
||||
import cStringIO
|
||||
@@ -29,7 +27,6 @@ except ImportError:
|
||||
try:
|
||||
from sphinx import apidoc
|
||||
from sphinx import application
|
||||
- from sphinx import config
|
||||
from sphinx import setup_command
|
||||
except Exception as e:
|
||||
# NOTE(dhellmann): During the installation of docutils, setuptools
|
||||
@@ -134,16 +131,6 @@ class LocalBuildDoc(setup_command.BuildDoc):
|
||||
confoverrides['release'] = self.release
|
||||
if self.today:
|
||||
confoverrides['today'] = self.today
|
||||
- sphinx_config = config.Config(self.config_dir, 'conf.py', {}, [])
|
||||
- sphinx_ver = pkg_resources.parse_version(
|
||||
- pkg_resources.get_distribution("sphinx").version)
|
||||
- if sphinx_ver > pkg_resources.parse_version('1.2.3'):
|
||||
- sphinx_config.init_values(warnings.warn)
|
||||
- else:
|
||||
- sphinx_config.init_values()
|
||||
- if self.builder == 'man' and len(
|
||||
- getattr(sphinx_config, 'man_pages', '')) == 0:
|
||||
- return
|
||||
if self.sphinx_initialized:
|
||||
confoverrides['suppress_warnings'] = [
|
||||
'app.add_directive', 'app.add_role',
|
||||
@@ -153,6 +140,10 @@ class LocalBuildDoc(setup_command.BuildDoc):
|
||||
self.builder_target_dir, self.doctree_dir,
|
||||
self.builder, confoverrides, status_stream,
|
||||
freshenv=self.fresh_env, warningiserror=self.warning_is_error)
|
||||
+ sphinx_config = app.config
|
||||
+ if self.builder == 'man' and len(
|
||||
+ getattr(sphinx_config, 'man_pages', '')) == 0:
|
||||
+ return
|
||||
self.sphinx_initialized = True
|
||||
|
||||
try:
|
||||
diff --git a/pbr/tests/test_setup.py b/pbr/tests/test_setup.py
|
||||
index 0754a8d..0930e35 100644
|
||||
--- a/pbr/tests/test_setup.py
|
||||
+++ b/pbr/tests/test_setup.py
|
||||
@@ -224,6 +224,10 @@ class GitLogsTest(base.BaseTestCase):
|
||||
self.assertTrue(co_author in authors)
|
||||
|
||||
|
||||
+class _SphinxConfig(object):
|
||||
+ man_pages = ['foo']
|
||||
+
|
||||
+
|
||||
class BaseSphinxTest(base.BaseTestCase):
|
||||
|
||||
def setUp(self):
|
||||
@@ -234,7 +238,7 @@ class BaseSphinxTest(base.BaseTestCase):
|
||||
self.useFixture(fixtures.MonkeyPatch(
|
||||
"sphinx.application.Sphinx.build", lambda *a, **kw: None))
|
||||
self.useFixture(fixtures.MonkeyPatch(
|
||||
- "sphinx.config.Config.man_pages", ['foo']))
|
||||
+ "sphinx.application.Sphinx.config", _SphinxConfig))
|
||||
self.useFixture(fixtures.MonkeyPatch(
|
||||
"sphinx.config.Config.init_values", lambda *a: None))
|
||||
self.useFixture(fixtures.MonkeyPatch(
|
||||
--
|
||||
2.12.0
|
||||
|
@ -1,37 +0,0 @@
|
||||
From ebd9ae850a18b26f37738a67b7e528896b249e40 Mon Sep 17 00:00:00 2001
|
||||
From: Thomas Bechtold <tbechtold@suse.com>
|
||||
Date: Thu, 9 Mar 2017 11:29:48 +0100
|
||||
Subject: [PATCH] Make oslosphinx optional
|
||||
|
||||
Avoid cyclic dependencies between pbr and oslosphinx. So if oslosphinx is not
|
||||
available, continue to be able to generate the documentation.
|
||||
|
||||
Change-Id: I4c1f8ea5cded268388dab29931055223f8999c8a
|
||||
---
|
||||
doc/source/conf.py | 10 ++++++++--
|
||||
1 file changed, 8 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/doc/source/conf.py b/doc/source/conf.py
|
||||
index 31003c1..f0a78ec 100644
|
||||
--- a/doc/source/conf.py
|
||||
+++ b/doc/source/conf.py
|
||||
@@ -8,8 +8,14 @@ sys.path.insert(0, os.path.abspath('../..'))
|
||||
|
||||
# Add any Sphinx extension module names here, as strings. They can be
|
||||
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom ones.
|
||||
-extensions = ['sphinx.ext.autodoc',
|
||||
- 'oslosphinx']
|
||||
+extensions = ['sphinx.ext.autodoc']
|
||||
+# make oslosphinx optional to not increase the needed dependencies
|
||||
+try:
|
||||
+ import oslosphinx
|
||||
+except ImportError:
|
||||
+ pass
|
||||
+else:
|
||||
+ extensions.append('oslosphinx')
|
||||
|
||||
# autodoc generation is a bit aggressive and a nuisance when doing heavy
|
||||
# text edit cycles.
|
||||
--
|
||||
1.9.1
|
||||
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:0ccd2db529afd070df815b1521f01401d43de03941170f8a800e7531faba265d
|
||||
size 98568
|
3
pbr-3.1.1.tar.gz
Normal file
3
pbr-3.1.1.tar.gz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:05f61c71aaefc02d8e37c0a3eeb9815ff526ea28b3b76324769e6158d7f95be1
|
||||
size 102665
|
@ -1,3 +1,19 @@
|
||||
-------------------------------------------------------------------
|
||||
Thu Jun 29 16:16:36 UTC 2017 - tbechtold@suse.com
|
||||
|
||||
- update to 3.1.1:
|
||||
* Restore previous IP binding
|
||||
* allow user to override the output location of api docs
|
||||
* fix tests based on API change in Sphinx
|
||||
* Updated from global requirements
|
||||
* Add binding option for WSGI server
|
||||
* Ignore index URL lines in requirements.txt files
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jun 23 15:21:37 UTC 2017 - jmatejek@suse.com
|
||||
|
||||
- drop upstreamed make_oslosphinx_optional.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Mar 29 11:59:55 UTC 2017 - tbechtold@suse.com
|
||||
|
||||
|
@ -18,7 +18,7 @@
|
||||
|
||||
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
|
||||
Name: python-pbr-doc
|
||||
Version: 2.0.0
|
||||
Version: 3.1.1
|
||||
Release: 0
|
||||
Summary: Documentation for python-pbr
|
||||
License: Apache-2.0
|
||||
@ -26,8 +26,6 @@ Group: Development/Languages/Python
|
||||
Url: http://pypi.python.org/pypi/pbr
|
||||
Source: https://files.pythonhosted.org/packages/source/p/pbr/pbr-%{version}.tar.gz
|
||||
Source1: python-pbr-rpmlintrc
|
||||
# make_oslosphinx_optional.patch - https://review.openstack.org/#/c/443555/
|
||||
Patch1: make_oslosphinx_optional.patch
|
||||
BuildRequires: fdupes
|
||||
# Documentation requirements:
|
||||
BuildRequires: python3-Sphinx >= 1.1.2
|
||||
@ -41,7 +39,6 @@ This package contains documentation files for python-pbr
|
||||
|
||||
%prep
|
||||
%setup -q -n pbr-%{version}
|
||||
%patch1 -p1
|
||||
# Get rid of ugly build-time deps that require network:
|
||||
sed -i "s/, 'sphinx\.ext\.intersphinx'//" doc/source/conf.py
|
||||
|
||||
|
@ -1,3 +1,38 @@
|
||||
-------------------------------------------------------------------
|
||||
Thu Jun 29 16:16:36 UTC 2017 - tbechtold@suse.com
|
||||
|
||||
- update to 3.1.1:
|
||||
* Restore previous IP binding
|
||||
* allow user to override the output location of api docs
|
||||
* fix tests based on API change in Sphinx
|
||||
* Updated from global requirements
|
||||
* Add binding option for WSGI server
|
||||
* Ignore index URL lines in requirements.txt files
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu May 18 11:36:19 UTC 2017 - dmueller@suse.com
|
||||
|
||||
- Update to pbr-3.0.1:
|
||||
* builddoc: uses the new Sphinx 1.6 code for multiple builder
|
||||
* Updated from global requirements
|
||||
* Fix missing comment from previous change
|
||||
* trivial: Add note about multiple builders support
|
||||
* Remove 'build\_sphinx\_latex'
|
||||
* Stop building man pages by default
|
||||
* docs: Use definition lists
|
||||
* add image.nonlocal\_uri to the list of warnings ignored
|
||||
* doc: Document Sphinx integration
|
||||
* add changelog to published documentation
|
||||
* Lazy import pkg\_resources
|
||||
* Add Changelog build handling for invalid chars
|
||||
* Initialize sphinx config using application instead of config
|
||||
* Make oslosphinx optional
|
||||
* Updated from global requirements
|
||||
* Also generate XML coverage report
|
||||
* Update to a newer hacking library
|
||||
- drop 0001-Initialize-sphinx-config-using-application-instead-o.patch
|
||||
Upstream
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Apr 3 05:05:43 UTC 2017 - tbechtold@suse.com
|
||||
|
||||
|
@ -22,7 +22,7 @@
|
||||
|
||||
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
|
||||
Name: python-pbr
|
||||
Version: 2.0.0
|
||||
Version: 3.1.1
|
||||
Release: 0
|
||||
Summary: Python Build Reasonableness
|
||||
License: Apache-2.0
|
||||
@ -30,8 +30,6 @@ Group: Development/Languages/Python
|
||||
Url: http://pypi.python.org/pypi/pbr
|
||||
Source: https://files.pythonhosted.org/packages/source/p/pbr/pbr-%{version}.tar.gz
|
||||
Source1: python-pbr-rpmlintrc
|
||||
# PATCH-FIX-UPSTREAM 0001-Initialize-sphinx-config-using-application-instead-o.patch~- https://review.openstack.org/#/c/448455/
|
||||
Patch1: 0001-Initialize-sphinx-config-using-application-instead-o.patch
|
||||
BuildRequires: %{python_module devel}
|
||||
BuildRequires: %{python_module pip >= 1.4}
|
||||
BuildRequires: fdupes
|
||||
@ -40,7 +38,6 @@ BuildRequires: python-rpm-macros
|
||||
%if %{with test}
|
||||
#BuildRequires: python-coverage >= 3.6
|
||||
BuildRequires: %{python_module fixtures >= 1.3.1}
|
||||
BuildRequires: %{python_module hacking >= 0.9.2}
|
||||
BuildRequires: %{python_module mock >= 1.2}
|
||||
BuildRequires: %{python_module python-subunit >= 0.0.18}
|
||||
BuildRequires: %{python_module six >= 1.9.0}
|
||||
@ -67,7 +64,6 @@ information.
|
||||
|
||||
%prep
|
||||
%setup -q -n pbr-%{version}
|
||||
%patch1 -p1
|
||||
# Get rid of ugly build-time deps that require network:
|
||||
sed -i "s/, 'sphinx\.ext\.intersphinx'//" doc/source/conf.py
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user