Compare commits

..

3 Commits
f25 ... f24

Author SHA1 Message Date
Toshio Kuratomi
b147b17809 Remove environment-modules as well because aviso doesn't want major changes
like introducing alternatives or environment-modules to hit the released
  Fedora.  This takes the package back to before the alternatives changes
  were erroneously pushed back into f24.
2017-01-18 23:06:38 -08:00
Toshio Kuratomi
0a685e9dcd Fix changelog version 2016-12-30 22:00:53 -08:00
Toshio Kuratomi
47fc0906c8 Back out changes for 1.4.9 and texlive 2016 to get just the fixes applied to f24 2016-12-30 21:19:13 -08:00
8 changed files with 76 additions and 183 deletions

2
.gitignore vendored
View File

@@ -1 +1 @@
/Sphinx-1.5.2.tar.gz
/Sphinx-1.4.8.tar.gz

View File

@@ -1,12 +0,0 @@
diff --git a/sphinx/util/parallel.py b/sphinx/util/parallel.py
index ce51ac0..64f9bc1 100644
--- a/sphinx/util/parallel.py
+++ b/sphinx/util/parallel.py
@@ -100,6 +100,7 @@ class ParallelTasks(object):
raise SphinxParallelError(*result)
self._result_funcs.pop(tid)(self._args.pop(tid), result)
self._procs[tid].join()
+ self._precvs.pop(tid)
self._pworking -= 1
break
else:

View File

@@ -4,17 +4,17 @@
%{!?python_sitelib: %global python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print (get_python_lib())")}
%endif
# Currently Fedora policy is that the python2 version is the default version
%if 0
%global py3_alt_priority 500
# At some point, RHEL will need to be in here too
%if 0%{?fedora} && 0%{?fedora} > 24
%global py3_default 1
%else
%global py3_alt_priority 10
%global py3_default 0
%endif
%global upstream_name Sphinx
Name: python-sphinx
Version: 1.5.2
Version: 1.4.8
Release: 3%{?dist}
Summary: Python documentation generator
@@ -27,13 +27,7 @@ Group: Development/Tools
License: BSD and Public Domain and Python and (MIT or GPLv2)
URL: http://sphinx-doc.org/
Source0: https://files.pythonhosted.org/packages/source/S/%{upstream_name}/%{upstream_name}-%{version}.tar.gz
# Backport of a bugfix from the 1.6 upstream branch of sphinx
# to address a crash with parallel building.
# https://bugzilla.redhat.com/show_bug.cgi?id=1494276
# Upstream commit:
# https://github.com/sphinx-doc/sphinx/pull/4039/commits/0cb57f19a099be2809a8fb5dc9274f7411e1caac
Patch0: fix-crash-on-parallel-build.patch
Patch0: Sphinx-1.2.1-mantarget.patch
BuildArch: noarch
BuildRequires: python2-devel >= 2.4
@@ -46,26 +40,19 @@ BuildRequires: python-six
BuildRequires: python2-sphinx_rtd_theme
BuildRequires: python2-sphinx-theme-alabaster
BuildRequires: python2-imagesize
BuildRequires: python2-requests
BuildRequires: environment(modules)
# for fixes
BuildRequires: dos2unix
# for testing
BuildRequires: python-nose
BuildRequires: python2-pytest
BuildRequires: python-pytest-cov
BuildRequires: gettext
BuildRequires: texinfo
BuildRequires: graphviz
BuildRequires: python-sqlalchemy
BuildRequires: python2-mock
BuildRequires: python2-simplejson
BuildRequires: python-html5lib
BuildRequires: python-whoosh
BuildRequires: python2-snowballstemmer
BuildRequires: python-enum34
# note: no Python3 xapian binding yet
BuildRequires: xapian-bindings-python
BuildRequires: texlive-collection-fontsrecommended
@@ -75,6 +62,7 @@ BuildRequires: texlive-dvisvgm
BuildRequires: texlive-ucs
BuildRequires: tex(cmap.sty)
BuildRequires: tex(ecrm1000.tfm)
BuildRequires: tex(fancybox.sty)
BuildRequires: tex(footnote.sty)
BuildRequires: tex(framed.sty)
BuildRequires: tex(multirow.sty)
@@ -96,11 +84,6 @@ BuildRequires: tex(multirow.sty)
BuildRequires: tex(eqparbox.sty)
BuildRequires: tex(atbegshi.sty)
BuildRequires: tex(anyfontsize.sty)
BuildRequires: tex(luatex85.sty)
BuildRequires: tex(fncychap.sty)
BuildRequires: tex(tabulary.sty)
BuildRequires: tex(polyglossia.sty)
BuildRequires: tex(eu1enc.def)
%if 0%{?with_python3}
BuildRequires: python3-devel
@@ -110,19 +93,14 @@ BuildRequires: python3-docutils
BuildRequires: python3-jinja2
BuildRequires: python3-pygments
BuildRequires: python3-nose
BuildRequires: python3-pytest
BuildRequires: python3-pytest-cov
BuildRequires: python3-sqlalchemy
BuildRequires: python3-mock
BuildRequires: python3-simplejson
BuildRequires: python3-html5lib
BuildRequires: python3-whoosh
BuildRequires: python3-snowballstemmer
BuildRequires: python3-six
BuildRequires: python3-sphinx_rtd_theme
BuildRequires: python3-sphinx-theme-alabaster
BuildRequires: python3-imagesize
BuildRequires: python3-requests
%endif # with_python3
@@ -168,10 +146,10 @@ Requires: python2-sphinx_rtd_theme
Requires: python2-six
Requires: python2-sphinx-theme-alabaster
Requires: python2-imagesize
Requires: python2-requests
# Needed to get rid of the alternatives config installed in
# an earlier version of f24
Requires(posttrans): /usr/sbin/alternatives
Recommends: graphviz
Requires(post): %{_sbindir}/update-alternatives
Requires(postun): %{_sbindir}/update-alternatives
Obsoletes: python-sphinx <= 1.2.3
Obsoletes: python-sphinxcontrib-napoleon < 0.5
Provides: python-sphinxcontrib-napoleon = %{version}-%{release}
@@ -220,6 +198,7 @@ Requires: texlive-dvisvgm
Requires: texlive-ucs
Requires: tex(cmap.sty)
Requires: tex(ecrm1000.tfm)
Requires: tex(fancybox.sty)
Requires: tex(footnote.sty)
Requires: tex(framed.sty)
Requires: tex(multirow.sty)
@@ -241,11 +220,6 @@ Requires: tex(multirow.sty)
Requires: tex(eqparbox.sty)
Requires: tex(atbegshi.sty)
Requires: tex(anyfontsize.sty)
Requires: tex(luatex85.sty)
Requires: tex(fncychap.sty)
Requires: tex(tabulary.sty)
Requires: tex(polyglossia.sty)
Requires: tex(eu1enc.def)
Obsoletes: python3-sphinx-latex < 1.4.4-2
%description latex
@@ -274,16 +248,17 @@ Requires: python3-snowballstemmer
Requires: python3-sphinx_rtd_theme
Requires: python3-sphinx-theme-alabaster
Requires: python3-imagesize
Requires: python3-requests
Requires: python3-six
Recommends: graphviz
Requires(post): %{_sbindir}/update-alternatives
Requires(postun): %{_sbindir}/update-alternatives
# Needed to get rid of the alternatives config installed in
# an earlier version of f24
Requires(posttrans): /usr/sbin/alternatives
Obsoletes: python3-sphinxcontrib-napoleon < 0.3.0
Provides: python3-sphinxcontrib-napoleon = %{version}-%{release}
Provides: python(Sphinx) = %{version}-%{release}
%{?python_provide:%python_provide python3-sphinx}
Conflicts: python2-Sphinx < %{version}-%{release}
Conflicts: python2-sphinx < %{version}-%{release}
%description -n python3-sphinx
Sphinx is a tool that makes it easy to create intelligent and
@@ -355,10 +330,6 @@ sed '1d' -i sphinx/pycode/pgen2/token.py
# fix line encoding of bundled jquery.js
dos2unix -k ./sphinx/themes/basic/static/jquery.js
# In 1.5.2, the upstream tarball left this .pyc by mistake.
# Remove it so that it doesn't get included in the python3 build by mistake
rm sphinx/locale/__init__.pyc
%if 0%{?with_python3}
rm -rf %{py3dir}
cp -a . %{py3dir}
@@ -380,19 +351,12 @@ popd
%install
%if 0%{?with_python3}
%py3_install
for i in sphinx-{apidoc,autogen,build,quickstart}; do
mv %{buildroot}%{_bindir}/$i %{buildroot}%{_bindir}/$i-%{python3_version}
ln -s $i-%{python3_version} %{buildroot}%{_bindir}/$i-3
done
# These appear to be incomplete C extensions to speed up parsing. They are not
# built by setup.py yet. Removing them in %%install so that if sphinx does
# make use of them, and we don't notice, we only remove these source files
# after the build has created the .so's
rm %{buildroot}%{python3_sitelib}/sphinx/pycode/pgen2/parse.{pyx,c}
%endif # with_python3
%py2_install
@@ -401,21 +365,14 @@ for i in sphinx-{apidoc,autogen,build,quickstart}; do
ln -s $i-%{python2_version} %{buildroot}%{_bindir}/$i-2
done
# These appear to be incomplete C extensions to speed up parsing. They are not
# built by setup.py yet. Removing them in %%install so that if sphinx does
# make use of them, and we don't notice, we only remove these source files
# after the build has created the .so's
rm %{buildroot}%{python2_sitelib}/sphinx/pycode/pgen2/parse.{pyx,c}
for i in sphinx-{apidoc,autogen,build,quickstart}; do
touch %{buildroot}%{_bindir}/$i
done
pushd doc
# Deliver man pages
install -d %{buildroot}%{_mandir}/man1
for f in _build/man/sphinx-*.1;
do
### TODO: these are all the same. Do we really need to ship them three
### times or is it fine to just ship them as e.g. sphinx-build.1
cp -p $f %{buildroot}%{_mandir}/man1/$(basename $f)
cp -p $f %{buildroot}%{_mandir}/man1/$(basename $f | sed -e "s|.1$|-%{python2_version}.1|")
cp -p $f %{buildroot}%{_mandir}/man1/$(basename $f | sed -e "s|.1$|-%{python3_version}.1|")
done
@@ -445,6 +402,19 @@ do
rm -rf sphinx/locale/$lang
done
popd
%if %{py3_default}
for filename in sphinx-{build,apidoc,autogen,quickstart} ; do
ln -s %{_bindir}/$filename-3 %{buildroot}%{_bindir}/$filename
done
%else
for filename in sphinx-{build,apidoc,autogen,quickstart} ; do
ln -s %{_bindir}/$filename-2 %{buildroot}%{_bindir}/$filename
done
%endif
%find_lang sphinx
# Language files; Since these are javascript, it's not immediately obvious to
@@ -455,72 +425,26 @@ popd
%check
# Hate to disable checks but they need pytest 3.0+ in order to function
# and we don't have that on F25.
#LANG=en_US.UTF-8 make test
LANG=en_US.UTF-8 make test
%if 0%{?with_python3}
pushd %{py3dir}
#LANG=en_US.UTF-8 PYTHON=python3 make test
LANG=en_US.UTF-8 PYTHON=python3 make test
popd
%endif # with_python3
%post -n python2-sphinx
# Remove old versions of files so alternatives doesn't break
for filename in %{_mandir}/man1/sphinx-{all,apidoc,build,quickstart}.1.gz %{_bindir}/sphinx-{build,apidoc,autogen,quickstart}
do
if [ ! -L $filename ]
then
rm -f $filename
fi
done
%{_sbindir}/update-alternatives --install %{_bindir}/sphinx-build \
sphinx-build %{_bindir}/sphinx-build-%{python2_version} 100 \
--slave %{_bindir}/sphinx-apidoc sphinx-apidoc %{_bindir}/sphinx-apidoc-%{python2_version} \
--slave %{_bindir}/sphinx-autogen sphinx-autogen %{_bindir}/sphinx-autogen-%{python2_version} \
--slave %{_bindir}/sphinx-quickstart sphinx-quickstart %{_bindir}/sphinx-quickstart-%{python2_version} \
--slave %{_mandir}/man1/sphinx-all.1.gz sphinx-all.1.gz %{_mandir}/man1/sphinx-all-%{python2_version}.1.gz \
--slave %{_mandir}/man1/sphinx-apidoc.1.gz sphinx-apidoc.1.gz %{_mandir}/man1/sphinx-apidoc-%{python2_version}.1.gz \
--slave %{_mandir}/man1/sphinx-build.1.gz sphinx-build.1.gz %{_mandir}/man1/sphinx-build-%{python2_version}.1.gz \
--slave %{_mandir}/man1/sphinx-quickstart.1.gz sphinx-quickstart.1.gz %{_mandir}/man1/sphinx-quickstart-%{python2_version}.1.gz
%pre -n python2-sphinx
# python-sphinx as shipped in an update to f24 and f25 used alternatives. So
# we need to clean up the alternatives configuration until at least f27
%{_sbindir}/update-alternatives --remove sphinx-build %{_bindir}/sphinx-build-%{python2_version} || :
%if 0%{?with_python3}
%post -n python3-sphinx
# Remove old versions of files so alternatives doesn't break
for filename in %{_mandir}/man1/sphinx-{all,apidoc,build,quickstart}.1.gz %{_bindir}/sphinx-{build,apidoc,autogen,quickstart}
do
if [ ! -L $filename ]
then
rm -f $filename
fi
done
%{_sbindir}/update-alternatives --install %{_bindir}/sphinx-build \
sphinx-build %{_bindir}/sphinx-build-%{python3_version} %{py3_alt_priority} \
--slave %{_bindir}/sphinx-apidoc sphinx-apidoc %{_bindir}/sphinx-apidoc-%{python3_version} \
--slave %{_bindir}/sphinx-autogen sphinx-autogen %{_bindir}/sphinx-autogen-%{python3_version} \
--slave %{_bindir}/sphinx-quickstart sphinx-quickstart %{_bindir}/sphinx-quickstart-%{python3_version} \
--slave %{_mandir}/man1/sphinx-all.1.gz sphinx-all.1.gz %{_mandir}/man1/sphinx-all-%{python3_version}.1.gz \
--slave %{_mandir}/man1/sphinx-apidoc.1.gz sphinx-apidoc.1.gz %{_mandir}/man1/sphinx-apidoc-%{python3_version}.1.gz \
--slave %{_mandir}/man1/sphinx-build.1.gz sphinx-build.1.gz %{_mandir}/man1/sphinx-build-%{python3_version}.1.gz \
--slave %{_mandir}/man1/sphinx-quickstart.1.gz sphinx-quickstart.1.gz %{_mandir}/man1/sphinx-quickstart-%{python3_version}.1.gz
%pre -n python3-sphinx
# python-sphinx as shipped in an update to f24 and f25 used alternatives. So
# we need to clean up the alternatives configuration until at least f27
%{_sbindir}/update-alternatives --remove sphinx-build %{_bindir}/sphinx-build-%{python3_version} || :
%endif # with_python3
%postun -n python2-sphinx
if [ $1 -eq 0 ] ; then
%{_sbindir}/update-alternatives --remove sphinx-build %{_bindir}/sphinx-build-%{python2_version}
fi
%if 0%{?with_python3}
%postun -n python3-sphinx
if [ $1 -eq 0 ] ; then
%{_sbindir}/update-alternatives --remove sphinx-build %{_bindir}/sphinx-build-%{python3_version}
fi
%endif # with_python3
%files latex
%license LICENSE
@@ -539,15 +463,12 @@ fi
%{python2_sitelib}/Sphinx-%{version}-py%{python2_version}.egg-info/
%exclude %{_mandir}/man1/sphinx-*-%{python3_version}.1*
%{_mandir}/man1/*
%{_bindir}/sphinx-apidoc
%{_bindir}/sphinx-autogen
%{_bindir}/sphinx-build
%{_bindir}/sphinx-quickstart
%ghost %attr(755, root, root) %{_bindir}/sphinx-apidoc
%ghost %attr(755, root, root) %{_bindir}/sphinx-autogen
%ghost %attr(755, root, root) %{_bindir}/sphinx-build
%ghost %attr(755, root, root) %{_bindir}/sphinx-quickstart
%ghost %attr(644, root, root) %{_mandir}/man1/sphinx-all.1.gz
%ghost %attr(644, root, root) %{_mandir}/man1/sphinx-apidoc.1.gz
%ghost %attr(644, root, root) %{_mandir}/man1/sphinx-build.1.gz
%ghost %attr(644, root, root) %{_mandir}/man1/sphinx-quickstart.1.gz
%if 0%{?with_python3}
%files -n python3-sphinx
@@ -558,15 +479,6 @@ fi
%{python3_sitelib}/Sphinx-%{version}-py%{python3_version}.egg-info/
%{_mandir}/man1/sphinx-*-%{python3_version}.1*
%ghost %attr(755, root, root) %{_bindir}/sphinx-apidoc
%ghost %attr(755, root, root) %{_bindir}/sphinx-autogen
%ghost %attr(755, root, root) %{_bindir}/sphinx-build
%ghost %attr(755, root, root) %{_bindir}/sphinx-quickstart
%ghost %attr(644, root, root) %{_mandir}/man1/sphinx-all.1.gz
%ghost %attr(644, root, root) %{_mandir}/man1/sphinx-apidoc.1.gz
%ghost %attr(644, root, root) %{_mandir}/man1/sphinx-build.1.gz
%ghost %attr(644, root, root) %{_mandir}/man1/sphinx-quickstart.1.gz
%endif # with_python3
%files doc
@@ -574,42 +486,19 @@ fi
%changelog
* Fri Sep 22 2017 Charalampos Stratakis <cstratak@redhat.com> - 1.5.2-3
- Fix a crash on parallel build.
* Wed Jan 18 2017 Toshio Kuratomi <toshio@fedoraproject.org> - 1.4.8-3
- Remove environment-modules as well because aviso doesn't want major changes
like introducing alternatives or environment-modules to hit the released
Fedora. This takes the package back to before the alternatives changes
were erroneously pushed back into f24.
* Sat Feb 18 2017 Toshio Kuratomi <toshio@fedoraproject.org> - - 1.5.2-2
- Assign %%attrs to %%ghosted files so that rpm knows what permissions they
should have.
- Cleanup source files that should not be installed
- Fix the __init__.pyc that was byte compiled for the wrong python
* Fri Feb 17 2017 Toshio Kuratomi <toshio@fedoraproject.org> - - 1.5.2-1
- Update to 1.5.2
- Remove a few latex dependencies that are no longer needed
- Remove xapian patch; now in upstream tarball
- Disable checks. The tests require pytest >= 3.0 and we only have
pytest-2.9.2 on F25
* Fri Feb 17 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.5.1-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Fri Feb 17 2017 Orion Poplawski <orion@cora.nwra.com> - 1.5.1-1
- Update to 1.5.1
* Wed Jan 18 2017 Toshio Kuratomi <toshio@fedoraproject.org> - - 1.4.9-3
- Change alternatives priority so that the python2 version gets the default to
follow Fedora policy.
* Tue Dec 13 2016 Charalampos Stratakis <cstratak@redhat.com> - 1.4.9-1
- Update to 1.4.9
- Enable python3 tests
* Mon Dec 12 2016 Charalampos Stratakis <cstratak@redhat.com> - 1.4.8-3
- Rebuild for Python 3.6
- Disable python3 tests for now
* Thu Oct 6 2016 Avram Lubkin <aviso@fedoraproject.org> - 1.4.8-2
- Added tex(luatex85.sty) dependency to support TexLive 2016
* Fri Dec 30 2016 Toshio Kuratomi <toshio@fedoraproject.org> - 1.4.8-2
- Remove alternatives. Alternatives should only be used for a very small
number of packages (system daemons which also have a compatible command line
interface).
- Use environment-modules to switch between the python2 and python3 packages
*but* be aware that no amount of manual switching can get this 100% right.
The code has to be fixed upstream, not in packaging.
* Thu Oct 6 2016 Avram Lubkin <aviso@fedoraproject.org> - 1.4.8-1
- Update to 1.4.8

6
python2-sphinx Normal file
View File

@@ -0,0 +1,6 @@
#%Module 1.0
#
# python2-sphinx module for use with 'environment modules' package
#
conflict python-sphinx
prepend-path PATH @python2_sphinx_dir@

6
python3-sphinx Normal file
View File

@@ -0,0 +1,6 @@
#%Module 1.0
#
# python2-sphinx module for use with 'environment modules' package
#
conflict python-sphinx
prepend-path PATH @python3_sphinx_dir@

View File

@@ -1 +1 @@
SHA512 (Sphinx-1.5.2.tar.gz) = 32c8fb98d72e998fcce8c46ceddcbb0a0776d0e9ce75dc96cef48139b8b47ebe9636243fb48b9e04c8e1d5c56e09fc4c60248fbbef810fba9813b83a3e6cbe88
5ec718a4855917e149498bba91b74e67 Sphinx-1.4.8.tar.gz

View File

@@ -0,0 +1,2 @@
# Add path to the default python-sphinx scripts on this version of Fedora
module load python-sphinx

View File

@@ -0,0 +1,2 @@
# Add path to the default python-sphinx scripts on this version of Fedora
module load python-sphinx