From 2da599dd9a36f511cc0345603833c3368c16b847 Mon Sep 17 00:00:00 2001 From: Karolina Surma Date: Wed, 17 Aug 2022 10:05:18 +0200 Subject: [PATCH 01/56] Update to 5.1.1 --- .gitignore | 1 + python-sphinx.spec | 8 ++++++-- sources | 2 +- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index 99f1348..b44e532 100644 --- a/.gitignore +++ b/.gitignore @@ -38,3 +38,4 @@ /Sphinx-4.4.0.tar.gz /Sphinx-4.5.0.tar.gz /Sphinx-5.0.2.tar.gz +/Sphinx-5.1.1.tar.gz diff --git a/python-sphinx.spec b/python-sphinx.spec index 0d9b1dc..d58ea23 100644 --- a/python-sphinx.spec +++ b/python-sphinx.spec @@ -24,11 +24,11 @@ %global upstream_name Sphinx Name: python-sphinx -%global general_version 5.0.2 +%global general_version 5.1.1 #global prerel ... %global upstream_version %{general_version}%{?prerel} Version: %{general_version}%{?prerel:~%{prerel}} -Release: 2%{?dist} +Release: 1%{?dist} Epoch: 1 Summary: Python documentation generator @@ -364,6 +364,10 @@ mkdir %{buildroot}%{python3_sitelib}/sphinxcontrib %changelog +* Mon Aug 15 2022 Karolina Surma - 1:5.1.1-1 +- Update to 5.1.1 +- Fixes rhbz#2110473 + * Fri Jul 22 2022 Fedora Release Engineering - 1:5.0.2-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild diff --git a/sources b/sources index 3452c44..dab4f7a 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (Sphinx-5.0.2.tar.gz) = d564697f0b82a9a59dd6a81e7822dbeac00fb6cc98cdc2422f04ec87c5133b5e03057ccdfdcfe38dccff41f6c53262d49f4ee6f77047c579aa2e55370bfe2dc6 +SHA512 (Sphinx-5.1.1.tar.gz) = 82cb4c435b0f6cee6bf80b81028f06e425e3d6fb5614e64b1f5a8c715ece80b697b5b55e04f3afe26236bb4590de9cd41008d6480c4b3d895803d83e914afff3 From 9104ffe5536a0e88842dc18bde13ff3a5b084b85 Mon Sep 17 00:00:00 2001 From: Karolina Surma Date: Mon, 22 Aug 2022 13:56:02 +0200 Subject: [PATCH 02/56] Remove reST docs from the -doc package, ship only HTML --- python-sphinx.spec | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/python-sphinx.spec b/python-sphinx.spec index d58ea23..ccfdbd3 100644 --- a/python-sphinx.spec +++ b/python-sphinx.spec @@ -236,7 +236,7 @@ Brandl. It was originally created to translate the new Python documentation, but has now been cleaned up in the hope that it will be useful to many other projects. -This package contains documentation in reST and HTML formats. +This package contains documentation in the HTML format. %prep @@ -294,12 +294,6 @@ do done popd -# Deliver rst files -rm -rf doc/_build -sed -i 's|python ../sphinx-build.py|/usr/bin/sphinx-build|' doc/Makefile -mv doc reST -rm reST/make.bat - # Move language files to /usr/share; # patch to support this incorporated in 0.6.6 pushd %{buildroot}%{python3_sitelib} @@ -360,13 +354,14 @@ mkdir %{buildroot}%{python3_sitelib}/sphinxcontrib %files doc %license LICENSE -%doc html reST +%doc html %changelog * Mon Aug 15 2022 Karolina Surma - 1:5.1.1-1 - Update to 5.1.1 - Fixes rhbz#2110473 +- Remove reST documentation from the -doc package, ship only HTML * Fri Jul 22 2022 Fedora Release Engineering - 1:5.0.2-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild From 9c0d32b9af4250ff3ee5d95c8eac5836d062861e Mon Sep 17 00:00:00 2001 From: Karolina Surma Date: Mon, 22 Aug 2022 14:00:23 +0200 Subject: [PATCH 03/56] Remove duplicate files from the built documentation --- python-sphinx.spec | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/python-sphinx.spec b/python-sphinx.spec index ccfdbd3..6d4896b 100644 --- a/python-sphinx.spec +++ b/python-sphinx.spec @@ -268,6 +268,10 @@ export SPHINXBUILD="%{python3} ../sphinx/cmd/build.py" make html SPHINXBUILD="$SPHINXBUILD" make man SPHINXBUILD="$SPHINXBUILD" rm -rf _build/html/.buildinfo +# Those files are copied to _build/html/_images and loaded to the +# html pages from there - we can safely remove the duplicated and unused files +rm -rf _build/html/_static/themes _build/html/_static/tutorial +rm -f _build/html/_static/more.png _build/html/_static/translation.svg mv _build/html .. popd From d24b3b01a975bfaf3220d6d9e3ed41d2c1ae09b4 Mon Sep 17 00:00:00 2001 From: Karolina Surma Date: Wed, 5 Oct 2022 10:41:45 +0200 Subject: [PATCH 04/56] Update to 5.3.0 --- .gitignore | 2 ++ python-sphinx.spec | 17 +++++++++-------- sources | 2 +- 3 files changed, 12 insertions(+), 9 deletions(-) diff --git a/.gitignore b/.gitignore index b44e532..b4a2dc4 100644 --- a/.gitignore +++ b/.gitignore @@ -39,3 +39,5 @@ /Sphinx-4.5.0.tar.gz /Sphinx-5.0.2.tar.gz /Sphinx-5.1.1.tar.gz +/Sphinx-5.2.3.tar.gz +/Sphinx-5.3.0.tar.gz diff --git a/python-sphinx.spec b/python-sphinx.spec index 6d4896b..2633ff1 100644 --- a/python-sphinx.spec +++ b/python-sphinx.spec @@ -24,7 +24,7 @@ %global upstream_name Sphinx Name: python-sphinx -%global general_version 5.1.1 +%global general_version 5.3.0 #global prerel ... %global upstream_version %{general_version}%{?prerel} Version: %{general_version}%{?prerel:~%{prerel}} @@ -249,11 +249,6 @@ dos2unix -k ./sphinx/themes/basic/static/jquery.js rm tests/test_ext_imgconverter.py %endif -# Don't measure coverage: -sed -i '/pytest-cov/d' setup.py -# Not needed on recent Pythons, https://github.com/sphinx-doc/sphinx/pull/8483 -sed -i '/typed_ast/d' setup.py - %generate_buildrequires %pyproject_buildrequires -r %{?with_tests:-x test} @@ -331,9 +326,11 @@ mkdir %{buildroot}%{python3_sitelib}/sphinxcontrib %if %{with tests} %check # Currently, all linkcheck tests and test_latex_images need internet +# test_build_latex_doc needs internet to download pictures, +# but fails also with it enabled, we decided to skip it entirely %pytest \ %if %{without internet} - -k "not linkcheck and not test_latex_images" \ + -k "not linkcheck and not test_latex_images and not test_build_latex_doc" \ %endif ; %endif @@ -345,7 +342,7 @@ mkdir %{buildroot}%{python3_sitelib}/sphinxcontrib %{_bindir}/sphinx-* %{python3_sitelib}/sphinx/ %dir %{python3_sitelib}/sphinxcontrib/ -%{python3_sitelib}/Sphinx-%{upstream_version}.dist-info/ +%{python3_sitelib}/sphinx-%{upstream_version}.dist-info/ %dir %{_datadir}/sphinx/ %dir %{_datadir}/sphinx/locale %dir %{_datadir}/sphinx/locale/* @@ -362,6 +359,10 @@ mkdir %{buildroot}%{python3_sitelib}/sphinxcontrib %changelog +* Tue Nov 08 2022 Karolina Surma - 1:5.3.0-1 +- Update to 5.3.0 +- Fixes rhbz#2129546 + * Mon Aug 15 2022 Karolina Surma - 1:5.1.1-1 - Update to 5.1.1 - Fixes rhbz#2110473 diff --git a/sources b/sources index dab4f7a..051ef77 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (Sphinx-5.1.1.tar.gz) = 82cb4c435b0f6cee6bf80b81028f06e425e3d6fb5614e64b1f5a8c715ece80b697b5b55e04f3afe26236bb4590de9cd41008d6480c4b3d895803d83e914afff3 +SHA512 (Sphinx-5.3.0.tar.gz) = cd2321409f7566c6333d6fc5c4eb4ed2d07490923b0c8762a31f062d9e5d86bbd9bd2c2bb3b93a00b37f31940173404dba8259de940fe402a248cf66a72cd7ae From 750789355926b7e3aab97a9420c42a87834c7179 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 20 Jan 2023 17:26:13 +0000 Subject: [PATCH 05/56] Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- python-sphinx.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/python-sphinx.spec b/python-sphinx.spec index 2633ff1..3207bbf 100644 --- a/python-sphinx.spec +++ b/python-sphinx.spec @@ -28,7 +28,7 @@ Name: python-sphinx #global prerel ... %global upstream_version %{general_version}%{?prerel} Version: %{general_version}%{?prerel:~%{prerel}} -Release: 1%{?dist} +Release: 2%{?dist} Epoch: 1 Summary: Python documentation generator @@ -359,6 +359,9 @@ mkdir %{buildroot}%{python3_sitelib}/sphinxcontrib %changelog +* Fri Jan 20 2023 Fedora Release Engineering - 1:5.3.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + * Tue Nov 08 2022 Karolina Surma - 1:5.3.0-1 - Update to 5.3.0 - Fixes rhbz#2129546 From a31453064c1cf8a12df76439ec0a7634ff9b9e29 Mon Sep 17 00:00:00 2001 From: Karolina Surma Date: Tue, 31 Jan 2023 16:26:54 +0100 Subject: [PATCH 06/56] Fix tests failures with Pygments 2.14 --- fix-tests-with-pygments-2.14.patch | 114 +++++++++++++++++++++++++++++ python-sphinx.spec | 10 ++- 2 files changed, 123 insertions(+), 1 deletion(-) create mode 100644 fix-tests-with-pygments-2.14.patch diff --git a/fix-tests-with-pygments-2.14.patch b/fix-tests-with-pygments-2.14.patch new file mode 100644 index 0000000..986e7d5 --- /dev/null +++ b/fix-tests-with-pygments-2.14.patch @@ -0,0 +1,114 @@ +From c3bf917fcf18c5211b220a7b294b7e6012c2d510 Mon Sep 17 00:00:00 2001 +From: Adam Turner <9087854+aa-turner@users.noreply.github.com> +Date: Sun, 1 Jan 2023 19:17:03 +0000 +Subject: [PATCH] Fix tests for Pygments 2.14 + +Pygments 2.14 was released on 01/01/2023 [0] + +[0]: https://pygments.org/docs/changelog/#version-2-14-0 + +--- + pyproject.toml | 2 +- + tests/test_ext_viewcode.py | 27 +++++++++++++++++++-------- + tests/test_intl.py | 11 +++++++++-- + 3 files changed, 29 insertions(+), 11 deletions(-) + +diff --git a/pyproject.toml b/pyproject.toml +index 0e059b5..c02ce20 100644 +--- a/pyproject.toml ++++ b/pyproject.toml +@@ -64,7 +64,7 @@ dependencies = [ + "sphinxcontrib-serializinghtml>=1.1.5", + "sphinxcontrib-qthelp", + "Jinja2>=3.0", +- "Pygments>=2.12", ++ "Pygments>=2.13", + "docutils>=0.14,<0.20", + "snowballstemmer>=2.0", + "babel>=2.9", +diff --git a/tests/test_ext_viewcode.py b/tests/test_ext_viewcode.py +index 7750b8d..6d443d1 100644 +--- a/tests/test_ext_viewcode.py ++++ b/tests/test_ext_viewcode.py +@@ -2,6 +2,7 @@ + + import re + ++import pygments + import pytest + + +@@ -31,14 +32,24 @@ def test_viewcode(app, status, warning): + + result = (app.outdir / '_modules/spam/mod1.html').read_text(encoding='utf8') + result = re.sub('', '', result) # filter pygments classes +- assert ('
[docs]' +- '@decorator\n' +- 'class Class1' +- '(object):\n' +- ' """\n' +- ' this is Class1\n' +- ' """
\n') in result ++ if pygments.__version__ >= '2.14.0': ++ assert ('
[docs]' ++ '@decorator\n' ++ 'class Class1' ++ '(object):\n' ++ ' """\n' ++ ' this is Class1\n' ++ ' """
\n') in result ++ else: ++ assert ('
[docs]' ++ '@decorator\n' ++ 'class Class1' ++ '(object):\n' ++ ' """\n' ++ ' this is Class1\n' ++ ' """
\n') in result + + + @pytest.mark.sphinx('epub', testroot='ext-viewcode') +diff --git a/tests/test_intl.py b/tests/test_intl.py +index 796d95b..0c4b838 100644 +--- a/tests/test_intl.py ++++ b/tests/test_intl.py +@@ -6,6 +6,7 @@ Runs the text builder in the test root. + import os + import re + ++import pygments + import docutils + import pytest + from babel.messages import mofile, pofile +@@ -1105,8 +1106,11 @@ def test_additional_targets_should_not_be_translated(app): + expected_expr = ("""literal""" + """-""" + """block\n""" +- """in """ ++ """in""" ++ """ """ + """list""") ++ if pygments.__version__ < '2.14.0': ++ expected_expr = expected_expr.replace(""" """, ' ') + assert_count(expected_expr, result, 1) + + # doctest block should not be translated but be highlighted +@@ -1184,8 +1188,11 @@ def test_additional_targets_should_be_translated(app): + expected_expr = ("""LITERAL""" + """-""" + """BLOCK\n""" +- """IN """ ++ """IN""" ++ """ """ + """LIST""") ++ if pygments.__version__ < '2.14.0': ++ expected_expr = expected_expr.replace(""" """, ' ') + assert_count(expected_expr, result, 1) + + # doctest block should not be translated but be highlighted +-- +2.39.1 + diff --git a/python-sphinx.spec b/python-sphinx.spec index 3207bbf..5455f7d 100644 --- a/python-sphinx.spec +++ b/python-sphinx.spec @@ -28,7 +28,7 @@ Name: python-sphinx #global prerel ... %global upstream_version %{general_version}%{?prerel} Version: %{general_version}%{?prerel:~%{prerel}} -Release: 2%{?dist} +Release: 3%{?dist} Epoch: 1 Summary: Python documentation generator @@ -45,6 +45,11 @@ Source0: %{pypi_source %{upstream_name} %{upstream_version}} # which causes that test to fail. Patch1: sphinx-test_theming.diff +# Backported upstream commit included in Sphinx 6+ ensures compatibility +# with python-pygments 2.14+ +# https://github.com/sphinx-doc/sphinx/commit/965768bfda2a00ba6 +Patch2: fix-tests-with-pygments-2.14.patch + BuildArch: noarch BuildRequires: make @@ -359,6 +364,9 @@ mkdir %{buildroot}%{python3_sitelib}/sphinxcontrib %changelog +* Tue Jan 31 2023 Karolina Surma - 1:5.3.0-3 +- Fix tests with python-pygments 2.14+ + * Fri Jan 20 2023 Fedora Release Engineering - 1:5.3.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild From 84bf048c914292701e532ebf3743f49b1f076130 Mon Sep 17 00:00:00 2001 From: Karolina Surma Date: Thu, 9 Mar 2023 09:51:20 +0100 Subject: [PATCH 07/56] Fix test failures - fix test failures related to Babel 2.12 - remove the tests that required setuptools in the environment --- fix-tests-with-babel-2.12.patch | 48 +++++++++++++++++++++++++++++++++ python-sphinx.spec | 16 ++++++++++- 2 files changed, 63 insertions(+), 1 deletion(-) create mode 100644 fix-tests-with-babel-2.12.patch diff --git a/fix-tests-with-babel-2.12.patch b/fix-tests-with-babel-2.12.patch new file mode 100644 index 0000000..e1992f2 --- /dev/null +++ b/fix-tests-with-babel-2.12.patch @@ -0,0 +1,48 @@ +From c5641702b552d71bc99c1ba3b45073488a30d398 Mon Sep 17 00:00:00 2001 +From: Adam Turner <9087854+aa-turner@users.noreply.github.com> +Date: Sun, 5 Mar 2023 13:32:37 +0000 +Subject: [PATCH] Update tests for Babel 2.12 (CLDR 42) + +--- + tests/test_util_i18n.py | 13 +++++++++++-- + 1 file changed, 11 insertions(+), 2 deletions(-) + +diff --git a/tests/test_util_i18n.py b/tests/test_util_i18n.py +index e52e27671d8..7be6f3e779a 100644 +--- a/tests/test_util_i18n.py ++++ b/tests/test_util_i18n.py +@@ -4,12 +4,15 @@ + import os + import warnings + ++import babel + import pytest + from babel.messages.mofile import read_mo + + from sphinx.errors import SphinxError + from sphinx.util import i18n + ++BABEL_VERSION = tuple(map(int, babel.__version__.split('.'))) ++ + + def test_catalog_info_for_file_and_path(): + cat = i18n.CatalogInfo('path', 'domain', 'utf-8') +@@ -78,10 +81,16 @@ def test_format_date(): + format = '%x' + assert i18n.format_date(format, date=datet, language='en') == 'Feb 7, 2016' + format = '%X' +- assert i18n.format_date(format, date=datet, language='en') == '5:11:17 AM' ++ if BABEL_VERSION >= (2, 12): ++ assert i18n.format_date(format, date=datet, language='en') == '5:11:17\u202fAM' ++ else: ++ assert i18n.format_date(format, date=datet, language='en') == '5:11:17 AM' + assert i18n.format_date(format, date=date, language='en') == 'Feb 7, 2016' + format = '%c' +- assert i18n.format_date(format, date=datet, language='en') == 'Feb 7, 2016, 5:11:17 AM' ++ if BABEL_VERSION >= (2, 12): ++ assert i18n.format_date(format, date=datet, language='en') == 'Feb 7, 2016, 5:11:17\u202fAM' ++ else: ++ assert i18n.format_date(format, date=datet, language='en') == 'Feb 7, 2016, 5:11:17 AM' + assert i18n.format_date(format, date=date, language='en') == 'Feb 7, 2016' + + # timezone diff --git a/python-sphinx.spec b/python-sphinx.spec index 5455f7d..fd4d0fe 100644 --- a/python-sphinx.spec +++ b/python-sphinx.spec @@ -28,7 +28,7 @@ Name: python-sphinx #global prerel ... %global upstream_version %{general_version}%{?prerel} Version: %{general_version}%{?prerel:~%{prerel}} -Release: 3%{?dist} +Release: 4%{?dist} Epoch: 1 Summary: Python documentation generator @@ -50,6 +50,10 @@ Patch1: sphinx-test_theming.diff # https://github.com/sphinx-doc/sphinx/commit/965768bfda2a00ba6 Patch2: fix-tests-with-pygments-2.14.patch +# Backported upstream commit ensures compatibility with Babel 2.12 +# https://github.com/sphinx-doc/sphinx/commit/c5641702b +Patch3: fix-tests-with-babel-2.12.patch + BuildArch: noarch BuildRequires: make @@ -254,6 +258,12 @@ dos2unix -k ./sphinx/themes/basic/static/jquery.js rm tests/test_ext_imgconverter.py %endif +# Remove the tests that rely on setuptools +# https://github.com/sphinx-doc/sphinx/commit/44326fe2476db44e8c2a60d9326c9c3ac2865c03 +rm -r tests/roots/test-setup/ +rm tests/roots/test-theming/{MANIFEST.in,setup.py} +rm tests/test_setup_command.py + %generate_buildrequires %pyproject_buildrequires -r %{?with_tests:-x test} @@ -364,6 +374,10 @@ mkdir %{buildroot}%{python3_sitelib}/sphinxcontrib %changelog +* Thu Mar 09 2023 Karolina Surma - 1:5.3.0-4 +- Fix tests related to missing setuptools and Babel 2.12 +- Fixes rhbz#2176685 + * Tue Jan 31 2023 Karolina Surma - 1:5.3.0-3 - Fix tests with python-pygments 2.14+ From 9a29732cf9f355a4ee6fa483d466a68f7436f6c9 Mon Sep 17 00:00:00 2001 From: Karolina Surma Date: Thu, 9 Mar 2023 14:09:19 +0100 Subject: [PATCH 08/56] Update to 6.1.3 --- .gitignore | 1 + fix-tests-with-pygments-2.14.patch | 114 ----------------------------- python-sphinx.spec | 26 ++----- sources | 2 +- 4 files changed, 9 insertions(+), 134 deletions(-) delete mode 100644 fix-tests-with-pygments-2.14.patch diff --git a/.gitignore b/.gitignore index b4a2dc4..27c8b8c 100644 --- a/.gitignore +++ b/.gitignore @@ -41,3 +41,4 @@ /Sphinx-5.1.1.tar.gz /Sphinx-5.2.3.tar.gz /Sphinx-5.3.0.tar.gz +/Sphinx-6.1.3.tar.gz diff --git a/fix-tests-with-pygments-2.14.patch b/fix-tests-with-pygments-2.14.patch deleted file mode 100644 index 986e7d5..0000000 --- a/fix-tests-with-pygments-2.14.patch +++ /dev/null @@ -1,114 +0,0 @@ -From c3bf917fcf18c5211b220a7b294b7e6012c2d510 Mon Sep 17 00:00:00 2001 -From: Adam Turner <9087854+aa-turner@users.noreply.github.com> -Date: Sun, 1 Jan 2023 19:17:03 +0000 -Subject: [PATCH] Fix tests for Pygments 2.14 - -Pygments 2.14 was released on 01/01/2023 [0] - -[0]: https://pygments.org/docs/changelog/#version-2-14-0 - ---- - pyproject.toml | 2 +- - tests/test_ext_viewcode.py | 27 +++++++++++++++++++-------- - tests/test_intl.py | 11 +++++++++-- - 3 files changed, 29 insertions(+), 11 deletions(-) - -diff --git a/pyproject.toml b/pyproject.toml -index 0e059b5..c02ce20 100644 ---- a/pyproject.toml -+++ b/pyproject.toml -@@ -64,7 +64,7 @@ dependencies = [ - "sphinxcontrib-serializinghtml>=1.1.5", - "sphinxcontrib-qthelp", - "Jinja2>=3.0", -- "Pygments>=2.12", -+ "Pygments>=2.13", - "docutils>=0.14,<0.20", - "snowballstemmer>=2.0", - "babel>=2.9", -diff --git a/tests/test_ext_viewcode.py b/tests/test_ext_viewcode.py -index 7750b8d..6d443d1 100644 ---- a/tests/test_ext_viewcode.py -+++ b/tests/test_ext_viewcode.py -@@ -2,6 +2,7 @@ - - import re - -+import pygments - import pytest - - -@@ -31,14 +32,24 @@ def test_viewcode(app, status, warning): - - result = (app.outdir / '_modules/spam/mod1.html').read_text(encoding='utf8') - result = re.sub('', '', result) # filter pygments classes -- assert ('
[docs]' -- '@decorator\n' -- 'class Class1' -- '(object):\n' -- ' """\n' -- ' this is Class1\n' -- ' """
\n') in result -+ if pygments.__version__ >= '2.14.0': -+ assert ('
[docs]' -+ '@decorator\n' -+ 'class Class1' -+ '(object):\n' -+ ' """\n' -+ ' this is Class1\n' -+ ' """
\n') in result -+ else: -+ assert ('
[docs]' -+ '@decorator\n' -+ 'class Class1' -+ '(object):\n' -+ ' """\n' -+ ' this is Class1\n' -+ ' """
\n') in result - - - @pytest.mark.sphinx('epub', testroot='ext-viewcode') -diff --git a/tests/test_intl.py b/tests/test_intl.py -index 796d95b..0c4b838 100644 ---- a/tests/test_intl.py -+++ b/tests/test_intl.py -@@ -6,6 +6,7 @@ Runs the text builder in the test root. - import os - import re - -+import pygments - import docutils - import pytest - from babel.messages import mofile, pofile -@@ -1105,8 +1106,11 @@ def test_additional_targets_should_not_be_translated(app): - expected_expr = ("""literal""" - """-""" - """block\n""" -- """in """ -+ """in""" -+ """ """ - """list""") -+ if pygments.__version__ < '2.14.0': -+ expected_expr = expected_expr.replace(""" """, ' ') - assert_count(expected_expr, result, 1) - - # doctest block should not be translated but be highlighted -@@ -1184,8 +1188,11 @@ def test_additional_targets_should_be_translated(app): - expected_expr = ("""LITERAL""" - """-""" - """BLOCK\n""" -- """IN """ -+ """IN""" -+ """ """ - """LIST""") -+ if pygments.__version__ < '2.14.0': -+ expected_expr = expected_expr.replace(""" """, ' ') - assert_count(expected_expr, result, 1) - - # doctest block should not be translated but be highlighted --- -2.39.1 - diff --git a/python-sphinx.spec b/python-sphinx.spec index fd4d0fe..dd7b298 100644 --- a/python-sphinx.spec +++ b/python-sphinx.spec @@ -24,19 +24,17 @@ %global upstream_name Sphinx Name: python-sphinx -%global general_version 5.3.0 +%global general_version 6.1.3 #global prerel ... %global upstream_version %{general_version}%{?prerel} Version: %{general_version}%{?prerel:~%{prerel}} -Release: 4%{?dist} +Release: 1%{?dist} Epoch: 1 Summary: Python documentation generator # Unless otherwise noted, the license for code is BSD -# sphinx/util/inspect.py has bits licensed with PSF license v2 (Python) # sphinx/themes/haiku/static/haiku.css_t has bits licensed with MIT -# JS: JQuery, Underscore, css3-mediaqueries are available under MIT -License: BSD and Python and MIT +License: BSD and MIT URL: https://www.sphinx-doc.org/ Source0: %{pypi_source %{upstream_name} %{upstream_version}} @@ -45,10 +43,6 @@ Source0: %{pypi_source %{upstream_name} %{upstream_version}} # which causes that test to fail. Patch1: sphinx-test_theming.diff -# Backported upstream commit included in Sphinx 6+ ensures compatibility -# with python-pygments 2.14+ -# https://github.com/sphinx-doc/sphinx/commit/965768bfda2a00ba6 -Patch2: fix-tests-with-pygments-2.14.patch # Backported upstream commit ensures compatibility with Babel 2.12 # https://github.com/sphinx-doc/sphinx/commit/c5641702b @@ -64,9 +58,6 @@ BuildRequires: pyproject-rpm-macros BuildRequires: python%{python3_pkgversion}-sphinxcontrib-websupport %endif -# for fixes -BuildRequires: dos2unix - %if %{with tests} # tests import _testcapi BuildRequires: python%{python3_pkgversion}-test @@ -149,10 +140,6 @@ Summary: Python documentation generator Recommends: graphviz Recommends: ImageMagick -# Bundled JavaScript -Provides: bundled(jquery) = 3.5.1 -Provides: bundled(underscore) = 1.3.1 -Provides: bundled(css3-mediaqueries) = 1.0 %description -n python%{python3_pkgversion}-sphinx Sphinx is a tool that makes it easy to create intelligent and @@ -251,9 +238,6 @@ This package contains documentation in the HTML format. %prep %autosetup -n %{upstream_name}-%{upstream_version} -p1 -# fix line encoding of bundled jquery.js -dos2unix -k ./sphinx/themes/basic/static/jquery.js - %if %{without imagemagick_tests} rm tests/test_ext_imgconverter.py %endif @@ -374,6 +358,10 @@ mkdir %{buildroot}%{python3_sitelib}/sphinxcontrib %changelog +* Fri Mar 10 2023 Karolina Surma - 1:6.1.3-1 +- Update to 6.1.3 +- Fixes rhbz#2135122 + * Thu Mar 09 2023 Karolina Surma - 1:5.3.0-4 - Fix tests related to missing setuptools and Babel 2.12 - Fixes rhbz#2176685 diff --git a/sources b/sources index 051ef77..744927d 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (Sphinx-5.3.0.tar.gz) = cd2321409f7566c6333d6fc5c4eb4ed2d07490923b0c8762a31f062d9e5d86bbd9bd2c2bb3b93a00b37f31940173404dba8259de940fe402a248cf66a72cd7ae +SHA512 (Sphinx-6.1.3.tar.gz) = 97970f9c25355a5d40dedc7386415b84634f753f1f384ea2bbcee127ffcb637deca088daac615dce21518a32270b70e7e268321c72a4997d64d5eae99edadfbe From fa49ab85f05d0c522d96b3fca7ca4474840283e9 Mon Sep 17 00:00:00 2001 From: Karolina Surma Date: Thu, 9 Mar 2023 14:10:10 +0100 Subject: [PATCH 09/56] Convert license to SPDX tag --- python-sphinx.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/python-sphinx.spec b/python-sphinx.spec index dd7b298..25e3516 100644 --- a/python-sphinx.spec +++ b/python-sphinx.spec @@ -32,9 +32,9 @@ Release: 1%{?dist} Epoch: 1 Summary: Python documentation generator -# Unless otherwise noted, the license for code is BSD +# Unless otherwise noted, the license for code is BSD-2-Clause # sphinx/themes/haiku/static/haiku.css_t has bits licensed with MIT -License: BSD and MIT +License: BSD-2-Clause AND MIT URL: https://www.sphinx-doc.org/ Source0: %{pypi_source %{upstream_name} %{upstream_version}} From e46bed5658146dc2d52b0be2416dbbc13aeab089 Mon Sep 17 00:00:00 2001 From: Karolina Surma Date: Fri, 17 Mar 2023 08:49:25 +0100 Subject: [PATCH 10/56] Undefine dedicated macro %_py3_shebang_s It is more readable and less magical. --- python-sphinx.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/python-sphinx.spec b/python-sphinx.spec index 25e3516..754ea9a 100644 --- a/python-sphinx.spec +++ b/python-sphinx.spec @@ -6,7 +6,7 @@ # Unset -s on python shebang to allow RPM-installed sphinx to be used # with user-installed modules (#1903763) -%global py3_shebang_flags %(echo %py3_shebang_flags | sed s/s//) +%undefine _py3_shebang_s # No internet in Koji %bcond_with internet From fd31a7629c3bdd2732f83e709893b99dc9eca714 Mon Sep 17 00:00:00 2001 From: Karolina Surma Date: Fri, 17 Mar 2023 08:55:12 +0100 Subject: [PATCH 11/56] Stop enumerating sources and patches --- python-sphinx.spec | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/python-sphinx.spec b/python-sphinx.spec index 754ea9a..60c76a5 100644 --- a/python-sphinx.spec +++ b/python-sphinx.spec @@ -37,16 +37,16 @@ Summary: Python documentation generator License: BSD-2-Clause AND MIT URL: https://www.sphinx-doc.org/ -Source0: %{pypi_source %{upstream_name} %{upstream_version}} +Source: %{pypi_source %{upstream_name} %{upstream_version}} # Allow extra themes to exist. We pull in python3-sphinx-theme-alabaster # which causes that test to fail. -Patch1: sphinx-test_theming.diff +Patch: sphinx-test_theming.diff # Backported upstream commit ensures compatibility with Babel 2.12 # https://github.com/sphinx-doc/sphinx/commit/c5641702b -Patch3: fix-tests-with-babel-2.12.patch +Patch: fix-tests-with-babel-2.12.patch BuildArch: noarch From 5311862e59d268bd4b430f59c80c66136b7e74a3 Mon Sep 17 00:00:00 2001 From: Yaakov Selkowitz Date: Tue, 30 May 2023 12:48:43 -0400 Subject: [PATCH 12/56] Avoid html5lib test dependency in RHEL builds python-html5lib is unwanted in RHEL. --- python-sphinx.spec | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/python-sphinx.spec b/python-sphinx.spec index 60c76a5..67fae3a 100644 --- a/python-sphinx.spec +++ b/python-sphinx.spec @@ -28,7 +28,7 @@ Name: python-sphinx #global prerel ... %global upstream_version %{general_version}%{?prerel} Version: %{general_version}%{?prerel:~%{prerel}} -Release: 1%{?dist} +Release: 2%{?dist} Epoch: 1 Summary: Python documentation generator @@ -248,6 +248,10 @@ rm -r tests/roots/test-setup/ rm tests/roots/test-theming/{MANIFEST.in,setup.py} rm tests/test_setup_command.py +%if %{defined rhel} +# unwanted dependency in RHEL, https://bugzilla.redhat.com/show_bug.cgi?id=1945182 +sed -i '/html5lib/d' pyproject.toml +%endif %generate_buildrequires %pyproject_buildrequires -r %{?with_tests:-x test} @@ -327,7 +331,15 @@ mkdir %{buildroot}%{python3_sitelib}/sphinxcontrib # Currently, all linkcheck tests and test_latex_images need internet # test_build_latex_doc needs internet to download pictures, # but fails also with it enabled, we decided to skip it entirely +# In RHEL builds, skip tests which use html5lib (excluded above) %pytest \ +%if %{defined rhel} + --ignore tests/test_build_html.py \ + --ignore tests/test_build_latex.py \ + --ignore tests/test_build_texinfo.py \ + --ignore tests/test_domain_std.py \ + --ignore tests/test_smartquotes.py \ +%endif %if %{without internet} -k "not linkcheck and not test_latex_images and not test_build_latex_doc" \ %endif @@ -358,6 +370,9 @@ mkdir %{buildroot}%{python3_sitelib}/sphinxcontrib %changelog +* Wed May 31 2023 Yaakov Selkowitz - 1:6.1.3-2 +- Avoid html5lib test dependency in RHEL builds + * Fri Mar 10 2023 Karolina Surma - 1:6.1.3-1 - Update to 6.1.3 - Fixes rhbz#2135122 From 4b48db9c7940b0de9856144b9d7dbe9bcf081abc Mon Sep 17 00:00:00 2001 From: Python Maint Date: Wed, 14 Jun 2023 00:24:40 +0200 Subject: [PATCH 13/56] Bootstrap for Python 3.12 --- python-sphinx.spec | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/python-sphinx.spec b/python-sphinx.spec index 67fae3a..581805b 100644 --- a/python-sphinx.spec +++ b/python-sphinx.spec @@ -1,3 +1,5 @@ +%global _without_tests 1 +%global _without_websupport 1 # When bootstrapping sphinx, we don't yet have sphinxcontrib-websupport # Without it we have warnings in docs, but it's not a hard dependency %bcond_without websupport @@ -28,7 +30,7 @@ Name: python-sphinx #global prerel ... %global upstream_version %{general_version}%{?prerel} Version: %{general_version}%{?prerel:~%{prerel}} -Release: 2%{?dist} +Release: 3%{?dist} Epoch: 1 Summary: Python documentation generator @@ -370,6 +372,9 @@ mkdir %{buildroot}%{python3_sitelib}/sphinxcontrib %changelog +* Tue Jun 13 2023 Python Maint - 1:6.1.3-3 +- Bootstrap for Python 3.12 + * Wed May 31 2023 Yaakov Selkowitz - 1:6.1.3-2 - Avoid html5lib test dependency in RHEL builds From 44a9235d5a3ffd60a2da4b254fe735540d128631 Mon Sep 17 00:00:00 2001 From: Python Maint Date: Fri, 16 Jun 2023 08:19:41 +0200 Subject: [PATCH 14/56] Rebuilt for Python 3.12 --- python-sphinx.spec | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/python-sphinx.spec b/python-sphinx.spec index 581805b..8cd5ae3 100644 --- a/python-sphinx.spec +++ b/python-sphinx.spec @@ -1,5 +1,3 @@ -%global _without_tests 1 -%global _without_websupport 1 # When bootstrapping sphinx, we don't yet have sphinxcontrib-websupport # Without it we have warnings in docs, but it's not a hard dependency %bcond_without websupport @@ -30,7 +28,7 @@ Name: python-sphinx #global prerel ... %global upstream_version %{general_version}%{?prerel} Version: %{general_version}%{?prerel:~%{prerel}} -Release: 3%{?dist} +Release: 4%{?dist} Epoch: 1 Summary: Python documentation generator @@ -372,6 +370,9 @@ mkdir %{buildroot}%{python3_sitelib}/sphinxcontrib %changelog +* Fri Jun 16 2023 Python Maint - 1:6.1.3-4 +- Rebuilt for Python 3.12 + * Tue Jun 13 2023 Python Maint - 1:6.1.3-3 - Bootstrap for Python 3.12 From 43d6afce76aeda33416a3ed61f912c26640608f7 Mon Sep 17 00:00:00 2001 From: Karolina Surma Date: Tue, 2 May 2023 13:41:28 +0200 Subject: [PATCH 15/56] Update to 6.2.1 --- .gitignore | 1 + fix-tests-with-babel-2.12.patch | 48 --------------------------------- python-sphinx.spec | 18 +++++-------- sources | 2 +- 4 files changed, 8 insertions(+), 61 deletions(-) delete mode 100644 fix-tests-with-babel-2.12.patch diff --git a/.gitignore b/.gitignore index 27c8b8c..ad21f1c 100644 --- a/.gitignore +++ b/.gitignore @@ -42,3 +42,4 @@ /Sphinx-5.2.3.tar.gz /Sphinx-5.3.0.tar.gz /Sphinx-6.1.3.tar.gz +/Sphinx-6.2.1.tar.gz diff --git a/fix-tests-with-babel-2.12.patch b/fix-tests-with-babel-2.12.patch deleted file mode 100644 index e1992f2..0000000 --- a/fix-tests-with-babel-2.12.patch +++ /dev/null @@ -1,48 +0,0 @@ -From c5641702b552d71bc99c1ba3b45073488a30d398 Mon Sep 17 00:00:00 2001 -From: Adam Turner <9087854+aa-turner@users.noreply.github.com> -Date: Sun, 5 Mar 2023 13:32:37 +0000 -Subject: [PATCH] Update tests for Babel 2.12 (CLDR 42) - ---- - tests/test_util_i18n.py | 13 +++++++++++-- - 1 file changed, 11 insertions(+), 2 deletions(-) - -diff --git a/tests/test_util_i18n.py b/tests/test_util_i18n.py -index e52e27671d8..7be6f3e779a 100644 ---- a/tests/test_util_i18n.py -+++ b/tests/test_util_i18n.py -@@ -4,12 +4,15 @@ - import os - import warnings - -+import babel - import pytest - from babel.messages.mofile import read_mo - - from sphinx.errors import SphinxError - from sphinx.util import i18n - -+BABEL_VERSION = tuple(map(int, babel.__version__.split('.'))) -+ - - def test_catalog_info_for_file_and_path(): - cat = i18n.CatalogInfo('path', 'domain', 'utf-8') -@@ -78,10 +81,16 @@ def test_format_date(): - format = '%x' - assert i18n.format_date(format, date=datet, language='en') == 'Feb 7, 2016' - format = '%X' -- assert i18n.format_date(format, date=datet, language='en') == '5:11:17 AM' -+ if BABEL_VERSION >= (2, 12): -+ assert i18n.format_date(format, date=datet, language='en') == '5:11:17\u202fAM' -+ else: -+ assert i18n.format_date(format, date=datet, language='en') == '5:11:17 AM' - assert i18n.format_date(format, date=date, language='en') == 'Feb 7, 2016' - format = '%c' -- assert i18n.format_date(format, date=datet, language='en') == 'Feb 7, 2016, 5:11:17 AM' -+ if BABEL_VERSION >= (2, 12): -+ assert i18n.format_date(format, date=datet, language='en') == 'Feb 7, 2016, 5:11:17\u202fAM' -+ else: -+ assert i18n.format_date(format, date=datet, language='en') == 'Feb 7, 2016, 5:11:17 AM' - assert i18n.format_date(format, date=date, language='en') == 'Feb 7, 2016' - - # timezone diff --git a/python-sphinx.spec b/python-sphinx.spec index 8cd5ae3..9f0c83e 100644 --- a/python-sphinx.spec +++ b/python-sphinx.spec @@ -24,11 +24,11 @@ %global upstream_name Sphinx Name: python-sphinx -%global general_version 6.1.3 +%global general_version 6.2.1 #global prerel ... %global upstream_version %{general_version}%{?prerel} Version: %{general_version}%{?prerel:~%{prerel}} -Release: 4%{?dist} +Release: 1%{?dist} Epoch: 1 Summary: Python documentation generator @@ -44,10 +44,6 @@ Source: %{pypi_source %{upstream_name} %{upstream_version}} Patch: sphinx-test_theming.diff -# Backported upstream commit ensures compatibility with Babel 2.12 -# https://github.com/sphinx-doc/sphinx/commit/c5641702b -Patch: fix-tests-with-babel-2.12.patch - BuildArch: noarch BuildRequires: make @@ -242,12 +238,6 @@ This package contains documentation in the HTML format. rm tests/test_ext_imgconverter.py %endif -# Remove the tests that rely on setuptools -# https://github.com/sphinx-doc/sphinx/commit/44326fe2476db44e8c2a60d9326c9c3ac2865c03 -rm -r tests/roots/test-setup/ -rm tests/roots/test-theming/{MANIFEST.in,setup.py} -rm tests/test_setup_command.py - %if %{defined rhel} # unwanted dependency in RHEL, https://bugzilla.redhat.com/show_bug.cgi?id=1945182 sed -i '/html5lib/d' pyproject.toml @@ -370,6 +360,10 @@ mkdir %{buildroot}%{python3_sitelib}/sphinxcontrib %changelog +* Mon Jun 26 2023 Karolina Surma - 1:6.2.1-1 +- Update to 6.2.1 +- Fixes rhbz#2188968 + * Fri Jun 16 2023 Python Maint - 1:6.1.3-4 - Rebuilt for Python 3.12 diff --git a/sources b/sources index 744927d..861e1df 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (Sphinx-6.1.3.tar.gz) = 97970f9c25355a5d40dedc7386415b84634f753f1f384ea2bbcee127ffcb637deca088daac615dce21518a32270b70e7e268321c72a4997d64d5eae99edadfbe +SHA512 (Sphinx-6.2.1.tar.gz) = 88daae1f9bacbf513c0db1e7d732104b00ac36803b82e253d14eda287b4d48cfa34d0ed90b13099748610f405dc8bdcc54c2d33002a27b970117baf93418a062 From d236f3e2ecdebf472f23e8fa85de20735f23cc38 Mon Sep 17 00:00:00 2001 From: Karolina Surma Date: Mon, 26 Jun 2023 19:11:21 +0200 Subject: [PATCH 16/56] Use the correct SPDX tag for -doc subpackage's license --- python-sphinx.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/python-sphinx.spec b/python-sphinx.spec index 9f0c83e..d60e18a 100644 --- a/python-sphinx.spec +++ b/python-sphinx.spec @@ -217,7 +217,7 @@ builder. %package doc Summary: Documentation for %{name} -License: BSD +License: BSD-2-Clause Recommends: python%{python3_pkgversion}-sphinx = %{epoch}:%{version}-%{release} %description doc From 0896827c70e394527d09e26ab12c2751428439b0 Mon Sep 17 00:00:00 2001 From: Karolina Surma Date: Thu, 13 Jul 2023 11:28:02 +0200 Subject: [PATCH 17/56] Don't use sphinxcontrib-websupport to build the documentation on RHEL --- python-sphinx.spec | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/python-sphinx.spec b/python-sphinx.spec index d60e18a..a884fa3 100644 --- a/python-sphinx.spec +++ b/python-sphinx.spec @@ -1,6 +1,7 @@ -# When bootstrapping sphinx, we don't yet have sphinxcontrib-websupport +# When bootstrapping sphinx in Fedora, we don't yet have sphinxcontrib-websupport # Without it we have warnings in docs, but it's not a hard dependency -%bcond_without websupport +# We don't want to support sphinxcontrib-websupport in RHEL, hence disabling the dependency +%bcond websupport %{undefined rhel} # Also, we don't have all the tests requirements %bcond_without tests @@ -28,7 +29,7 @@ Name: python-sphinx #global prerel ... %global upstream_version %{general_version}%{?prerel} Version: %{general_version}%{?prerel:~%{prerel}} -Release: 1%{?dist} +Release: 2%{?dist} Epoch: 1 Summary: Python documentation generator @@ -360,6 +361,9 @@ mkdir %{buildroot}%{python3_sitelib}/sphinxcontrib %changelog +* Thu Jul 13 2023 Karolina Surma - 1:6.2.1-2 +- Don't use websupport to build documentation on RHEL + * Mon Jun 26 2023 Karolina Surma - 1:6.2.1-1 - Update to 6.2.1 - Fixes rhbz#2188968 From f907d7218a24a205a0d64dde99edf31e5360b06d Mon Sep 17 00:00:00 2001 From: Karolina Surma Date: Fri, 14 Jul 2023 09:44:34 +0200 Subject: [PATCH 18/56] Modernize %bconds --- python-sphinx.spec | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/python-sphinx.spec b/python-sphinx.spec index a884fa3..eac02b3 100644 --- a/python-sphinx.spec +++ b/python-sphinx.spec @@ -3,24 +3,20 @@ # We don't want to support sphinxcontrib-websupport in RHEL, hence disabling the dependency %bcond websupport %{undefined rhel} # Also, we don't have all the tests requirements -%bcond_without tests +%bcond tests 1 # Unset -s on python shebang to allow RPM-installed sphinx to be used # with user-installed modules (#1903763) %undefine _py3_shebang_s # No internet in Koji -%bcond_with internet +%bcond internet 0 -%if 0%{?rhel} > 7 # Build without BuildRequires ImageMagick, to skip imgconverter tests -%bcond_with imagemagick_tests -%else -%bcond_without imagemagick_tests -%endif +%bcond imagemagick_tests %{undefined rhel} # During texlive updates, sometimes the latex environment is unstable -%bcond_without latex_tests +%bcond latex_tests 1 %global upstream_name Sphinx From d36e4d737bfb66f7b497ff14b343a587671f7140 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 21 Jul 2023 14:14:17 +0000 Subject: [PATCH 19/56] Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- python-sphinx.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/python-sphinx.spec b/python-sphinx.spec index eac02b3..5cfc93b 100644 --- a/python-sphinx.spec +++ b/python-sphinx.spec @@ -25,7 +25,7 @@ Name: python-sphinx #global prerel ... %global upstream_version %{general_version}%{?prerel} Version: %{general_version}%{?prerel:~%{prerel}} -Release: 2%{?dist} +Release: 3%{?dist} Epoch: 1 Summary: Python documentation generator @@ -357,6 +357,9 @@ mkdir %{buildroot}%{python3_sitelib}/sphinxcontrib %changelog +* Fri Jul 21 2023 Fedora Release Engineering - 1:6.2.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + * Thu Jul 13 2023 Karolina Surma - 1:6.2.1-2 - Don't use websupport to build documentation on RHEL From cd973c604ca0036bc0822dcfd8aaa37e23cce9e1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Thu, 27 Jul 2023 10:36:15 +0200 Subject: [PATCH 20/56] Don't use filelock to test this package on RHEL --- python-sphinx.spec | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/python-sphinx.spec b/python-sphinx.spec index 5cfc93b..5f501b8 100644 --- a/python-sphinx.spec +++ b/python-sphinx.spec @@ -14,6 +14,8 @@ # Build without BuildRequires ImageMagick, to skip imgconverter tests %bcond imagemagick_tests %{undefined rhel} +# Same for filelock -- we don't want it in RHEL just to run a handful of tests here +%bcond filelock_tests %{undefined rhel} # During texlive updates, sometimes the latex environment is unstable %bcond latex_tests 1 @@ -25,7 +27,7 @@ Name: python-sphinx #global prerel ... %global upstream_version %{general_version}%{?prerel} Version: %{general_version}%{?prerel:~%{prerel}} -Release: 3%{?dist} +Release: 4%{?dist} Epoch: 1 Summary: Python documentation generator @@ -235,6 +237,11 @@ This package contains documentation in the HTML format. rm tests/test_ext_imgconverter.py %endif +%if %{without filelock_tests} +sed -i '/filelock/d' pyproject.toml +rm tests/test_build_linkcheck.py tests/test_ext_intersphinx.py +%endif + %if %{defined rhel} # unwanted dependency in RHEL, https://bugzilla.redhat.com/show_bug.cgi?id=1945182 sed -i '/html5lib/d' pyproject.toml @@ -357,6 +364,9 @@ mkdir %{buildroot}%{python3_sitelib}/sphinxcontrib %changelog +* Thu Jul 27 2023 Miro Hrončok - 1:6.2.1-4 +- Don't use filelock to test this package on RHEL + * Fri Jul 21 2023 Fedora Release Engineering - 1:6.2.1-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild From b64fb4b5b380a5d84ee5f1130f4a349d73d719d5 Mon Sep 17 00:00:00 2001 From: Karolina Surma Date: Mon, 19 Jun 2023 12:30:21 +0200 Subject: [PATCH 21/56] Update to 7.0.1 --- .gitignore | 1 + python-sphinx.spec | 7 +++++-- sources | 2 +- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index ad21f1c..806e3ee 100644 --- a/.gitignore +++ b/.gitignore @@ -43,3 +43,4 @@ /Sphinx-5.3.0.tar.gz /Sphinx-6.1.3.tar.gz /Sphinx-6.2.1.tar.gz +/Sphinx-7.0.1.tar.gz diff --git a/python-sphinx.spec b/python-sphinx.spec index 5f501b8..4f5a10b 100644 --- a/python-sphinx.spec +++ b/python-sphinx.spec @@ -23,11 +23,11 @@ %global upstream_name Sphinx Name: python-sphinx -%global general_version 6.2.1 +%global general_version 7.0.1 #global prerel ... %global upstream_version %{general_version}%{?prerel} Version: %{general_version}%{?prerel:~%{prerel}} -Release: 4%{?dist} +Release: 1%{?dist} Epoch: 1 Summary: Python documentation generator @@ -364,6 +364,9 @@ mkdir %{buildroot}%{python3_sitelib}/sphinxcontrib %changelog +* Mon Aug 07 2023 Karolina Surma - 1:7.0.1-1 +- Update to 7.0.1 + * Thu Jul 27 2023 Miro Hrončok - 1:6.2.1-4 - Don't use filelock to test this package on RHEL diff --git a/sources b/sources index 861e1df..e349895 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (Sphinx-6.2.1.tar.gz) = 88daae1f9bacbf513c0db1e7d732104b00ac36803b82e253d14eda287b4d48cfa34d0ed90b13099748610f405dc8bdcc54c2d33002a27b970117baf93418a062 +SHA512 (Sphinx-7.0.1.tar.gz) = 3edbb0460dd5679a26ec8f13f25e4802e6a211735986b42f2ee8d5a15ace6eca044654da3bdca2be235130d9e81dbca1d80a070f8aa762df383b3415a2c1fba3 From 55bd0f7f4a601045dda57d0d9c54aa98d1652e91 Mon Sep 17 00:00:00 2001 From: Karolina Surma Date: Mon, 14 Aug 2023 10:43:24 +0200 Subject: [PATCH 22/56] Update to 7.1.2 --- .gitignore | 1 + 85ffb3b0.patch | 100 +++++++++++++++++++++++++++++++++++++++++++++ python-sphinx.spec | 10 ++++- sources | 2 +- 4 files changed, 110 insertions(+), 3 deletions(-) create mode 100644 85ffb3b0.patch diff --git a/.gitignore b/.gitignore index 806e3ee..ef4595c 100644 --- a/.gitignore +++ b/.gitignore @@ -44,3 +44,4 @@ /Sphinx-6.1.3.tar.gz /Sphinx-6.2.1.tar.gz /Sphinx-7.0.1.tar.gz +/sphinx-7.1.2.tar.gz diff --git a/85ffb3b0.patch b/85ffb3b0.patch new file mode 100644 index 0000000..97de128 --- /dev/null +++ b/85ffb3b0.patch @@ -0,0 +1,100 @@ +From 85ffb3b0fdcfefd5484e3fa895a46e3d11d7284f Mon Sep 17 00:00:00 2001 +From: Adam Turner <9087854+aa-turner@users.noreply.github.com> +Date: Mon, 7 Aug 2023 21:51:05 +0100 +Subject: [PATCH] Fix ``test_assets_order`` for Pygments 2.16 + +--- + tests/roots/test-html_file_checksum/conf.py | 1 + + tests/roots/test-html_file_checksum/index.rst | 0 + tests/roots/test-html_file_checksum/static/empty.js | 0 + .../roots/test-html_file_checksum/static/script.js | 1 + + .../test-html_file_checksum/static/stylesheet-a.css | 1 + + .../test-html_file_checksum/static/stylesheet-b.css | 1 + + tests/test_build_html.py | 13 ++++++++----- + 7 files changed, 12 insertions(+), 5 deletions(-) + create mode 100644 tests/roots/test-html_file_checksum/conf.py + create mode 100644 tests/roots/test-html_file_checksum/index.rst + create mode 100644 tests/roots/test-html_file_checksum/static/empty.js + create mode 100644 tests/roots/test-html_file_checksum/static/script.js + create mode 100644 tests/roots/test-html_file_checksum/static/stylesheet-a.css + create mode 100644 tests/roots/test-html_file_checksum/static/stylesheet-b.css + +diff --git a/tests/roots/test-html_file_checksum/conf.py b/tests/roots/test-html_file_checksum/conf.py +new file mode 100644 +index 00000000000..f9188142153 +--- /dev/null ++++ b/tests/roots/test-html_file_checksum/conf.py +@@ -0,0 +1 @@ ++html_static_path = ['static'] +diff --git a/tests/roots/test-html_file_checksum/index.rst b/tests/roots/test-html_file_checksum/index.rst +new file mode 100644 +index 00000000000..e69de29bb2d +diff --git a/tests/roots/test-html_file_checksum/static/empty.js b/tests/roots/test-html_file_checksum/static/empty.js +new file mode 100644 +index 00000000000..e69de29bb2d +diff --git a/tests/roots/test-html_file_checksum/static/script.js b/tests/roots/test-html_file_checksum/static/script.js +new file mode 100644 +index 00000000000..9a21456003e +--- /dev/null ++++ b/tests/roots/test-html_file_checksum/static/script.js +@@ -0,0 +1 @@ ++/* Script */ +diff --git a/tests/roots/test-html_file_checksum/static/stylesheet-a.css b/tests/roots/test-html_file_checksum/static/stylesheet-a.css +new file mode 100644 +index 00000000000..3a5d802510d +--- /dev/null ++++ b/tests/roots/test-html_file_checksum/static/stylesheet-a.css +@@ -0,0 +1 @@ ++/* Stylesheet A */ +diff --git a/tests/roots/test-html_file_checksum/static/stylesheet-b.css b/tests/roots/test-html_file_checksum/static/stylesheet-b.css +new file mode 100644 +index 00000000000..ad5ff28f692 +--- /dev/null ++++ b/tests/roots/test-html_file_checksum/static/stylesheet-b.css +@@ -0,0 +1 @@ ++/* Stylesheet B */ +diff --git a/tests/test_build_html.py b/tests/test_build_html.py +index 9a6326c69f5..5a10c964ae0 100644 +--- a/tests/test_build_html.py ++++ b/tests/test_build_html.py +@@ -10,6 +10,7 @@ + import pytest + from html5lib import HTMLParser + ++import sphinx.builders.html + from sphinx.builders.html import validate_html_extra_path, validate_html_static_path + from sphinx.errors import ConfigError + from sphinx.testing.util import strip_escseq +@@ -1172,7 +1173,9 @@ def test_html_assets(app): + + + @pytest.mark.sphinx('html', testroot='html_assets') +-def test_assets_order(app): ++def test_assets_order(app, monkeypatch): ++ monkeypatch.setattr(sphinx.builders.html, '_file_checksum', lambda o, f: '') ++ + app.add_css_file('normal.css') + app.add_css_file('early.css', priority=100) + app.add_css_file('late.css', priority=750) +@@ -1188,8 +1191,8 @@ def test_assets_order(app): + # css_files + expected = [ + '_static/early.css', +- '_static/pygments.css?v=b3523f8e', +- '_static/alabaster.css?v=039e1c02', ++ '_static/pygments.css', ++ '_static/alabaster.css', + 'https://example.com/custom.css', + '_static/normal.css', + '_static/late.css', +@@ -1202,8 +1205,8 @@ def test_assets_order(app): + # js_files + expected = [ + '_static/early.js', +- '_static/doctools.js?v=888ff710', +- '_static/sphinx_highlight.js?v=4825356b', ++ '_static/doctools.js', ++ '_static/sphinx_highlight.js', + 'https://example.com/script.js', + '_static/normal.js', + '_static/late.js', diff --git a/python-sphinx.spec b/python-sphinx.spec index 4f5a10b..50faca8 100644 --- a/python-sphinx.spec +++ b/python-sphinx.spec @@ -20,10 +20,10 @@ # During texlive updates, sometimes the latex environment is unstable %bcond latex_tests 1 -%global upstream_name Sphinx +%global upstream_name sphinx Name: python-sphinx -%global general_version 7.0.1 +%global general_version 7.1.2 #global prerel ... %global upstream_version %{general_version}%{?prerel} Version: %{general_version}%{?prerel:~%{prerel}} @@ -42,6 +42,8 @@ Source: %{pypi_source %{upstream_name} %{upstream_version}} # which causes that test to fail. Patch: sphinx-test_theming.diff +# Fix test_assets_order for Sphinx 7.1.2 +Patch: https://github.com/sphinx-doc/sphinx/commit/85ffb3b0.patch BuildArch: noarch @@ -364,6 +366,10 @@ mkdir %{buildroot}%{python3_sitelib}/sphinxcontrib %changelog +* Mon Aug 14 2023 Karolina Surma - 1:7.1.2-1 +- Update to 7.1.2 +- Fixes rhbz#2225274 + * Mon Aug 07 2023 Karolina Surma - 1:7.0.1-1 - Update to 7.0.1 diff --git a/sources b/sources index e349895..c6d348a 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (Sphinx-7.0.1.tar.gz) = 3edbb0460dd5679a26ec8f13f25e4802e6a211735986b42f2ee8d5a15ace6eca044654da3bdca2be235130d9e81dbca1d80a070f8aa762df383b3415a2c1fba3 +SHA512 (sphinx-7.1.2.tar.gz) = d6bccdaa476c700bef444736bb439a4097b9cd40d9c2fce1c3bb889f3677b6d17fe2833b0d3cf4cd3e43927f5fe6f59825f290dabeb2736e77f7f1f26c84d2ec From d3ad84c154606595b6f0534d2b1aabee022ab2f6 Mon Sep 17 00:00:00 2001 From: Karolina Surma Date: Mon, 14 Aug 2023 10:44:58 +0200 Subject: [PATCH 23/56] Use sphinx instead of the %{upstream_name} macro It's easily readable and the upstream name doesn't change that often. --- python-sphinx.spec | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/python-sphinx.spec b/python-sphinx.spec index 50faca8..69ac6a1 100644 --- a/python-sphinx.spec +++ b/python-sphinx.spec @@ -20,8 +20,6 @@ # During texlive updates, sometimes the latex environment is unstable %bcond latex_tests 1 -%global upstream_name sphinx - Name: python-sphinx %global general_version 7.1.2 #global prerel ... @@ -36,7 +34,7 @@ Summary: Python documentation generator License: BSD-2-Clause AND MIT URL: https://www.sphinx-doc.org/ -Source: %{pypi_source %{upstream_name} %{upstream_version}} +Source: %{pypi_source sphinx %{upstream_version}} # Allow extra themes to exist. We pull in python3-sphinx-theme-alabaster # which causes that test to fail. @@ -233,7 +231,7 @@ This package contains documentation in the HTML format. %prep -%autosetup -n %{upstream_name}-%{upstream_version} -p1 +%autosetup -n sphinx-%{upstream_version} -p1 %if %{without imagemagick_tests} rm tests/test_ext_imgconverter.py From 5f7ebc734f7c83c479c9cb7596bdaa97daddd953 Mon Sep 17 00:00:00 2001 From: Karolina Surma Date: Thu, 21 Sep 2023 14:08:55 +0200 Subject: [PATCH 24/56] Fix test_dark_style with python-pygments 2.16+ --- 083d573b.patch | 56 ++++++++++++++++++++++++++++++++++++++++++++++ python-sphinx.spec | 8 ++++++- 2 files changed, 63 insertions(+), 1 deletion(-) create mode 100644 083d573b.patch diff --git a/083d573b.patch b/083d573b.patch new file mode 100644 index 0000000..f014777 --- /dev/null +++ b/083d573b.patch @@ -0,0 +1,56 @@ +From 083d573b7cf42d98f6c946715f52becba11d674b Mon Sep 17 00:00:00 2001 +From: Adam Turner <9087854+aa-turner@users.noreply.github.com> +Date: Mon, 7 Aug 2023 21:02:25 +0100 +Subject: [PATCH] Fix ``test_dark_style`` for Pygments 2.16 + +--- + tests/test_theming.py | 20 +++++++++++++++++--- + 1 file changed, 17 insertions(+), 3 deletions(-) + +diff --git a/tests/test_theming.py b/tests/test_theming.py +index 7473cb371c5..e3bd2a0f016 100644 +--- a/tests/test_theming.py ++++ b/tests/test_theming.py +@@ -5,6 +5,7 @@ + import alabaster + import pytest + ++import sphinx.builders.html + from sphinx.theming import ThemeError + + +@@ -91,18 +92,31 @@ def test_staticfiles(app, status, warning): + + @pytest.mark.sphinx(testroot='theming', + confoverrides={'html_theme': 'test-theme'}) +-def test_dark_style(app, status, warning): ++def test_dark_style(app, monkeypatch): ++ monkeypatch.setattr(sphinx.builders.html, '_file_checksum', lambda o, f: '') ++ + style = app.builder.dark_highlighter.formatter_args.get('style') + assert style.__name__ == 'MonokaiStyle' + + app.build() + assert (app.outdir / '_static' / 'pygments_dark.css').exists() + ++ css_file, properties = app.registry.css_files[0] ++ assert css_file == 'pygments_dark.css' ++ assert "media" in properties ++ assert properties["media"] == '(prefers-color-scheme: dark)' ++ ++ assert sorted(app.builder.css_files) == [ ++ '_static/classic.css', ++ '_static/pygments.css', ++ '_static/pygments_dark.css', ++ ] ++ + result = (app.outdir / 'index.html').read_text(encoding='utf8') +- assert '' in result ++ assert '' in result + assert ('') in result ++ 'href="_static/pygments_dark.css" />') in result + + + @pytest.mark.sphinx(testroot='theming') diff --git a/python-sphinx.spec b/python-sphinx.spec index 69ac6a1..46acb07 100644 --- a/python-sphinx.spec +++ b/python-sphinx.spec @@ -25,7 +25,7 @@ Name: python-sphinx #global prerel ... %global upstream_version %{general_version}%{?prerel} Version: %{general_version}%{?prerel:~%{prerel}} -Release: 1%{?dist} +Release: 2%{?dist} Epoch: 1 Summary: Python documentation generator @@ -43,6 +43,9 @@ Patch: sphinx-test_theming.diff # Fix test_assets_order for Sphinx 7.1.2 Patch: https://github.com/sphinx-doc/sphinx/commit/85ffb3b0.patch +# Fix test_dark_style with Pygments 2.16+ +Patch: https://github.com/sphinx-doc/sphinx/commit/083d573b.patch + BuildArch: noarch BuildRequires: make @@ -364,6 +367,9 @@ mkdir %{buildroot}%{python3_sitelib}/sphinxcontrib %changelog +* Thu Sep 21 2023 Karolina Surma - 1:7.1.2-2 +- Fix FTBFS with Pygments 2.16+ + * Mon Aug 14 2023 Karolina Surma - 1:7.1.2-1 - Update to 7.1.2 - Fixes rhbz#2225274 From 72bb1987ee1cb1700563d7d8f4ad076fcb0f2915 Mon Sep 17 00:00:00 2001 From: Karolina Surma Date: Fri, 1 Sep 2023 10:17:06 +0200 Subject: [PATCH 25/56] Update to 7.2.6 --- .gitignore | 1 + 083d573b.patch | 56 ---------------------- 85ffb3b0.patch | 100 --------------------------------------- python-sphinx.spec | 22 +++++---- sources | 2 +- sphinx-test_theming.diff | 6 +-- 6 files changed, 19 insertions(+), 168 deletions(-) delete mode 100644 083d573b.patch delete mode 100644 85ffb3b0.patch diff --git a/.gitignore b/.gitignore index ef4595c..fd204f3 100644 --- a/.gitignore +++ b/.gitignore @@ -45,3 +45,4 @@ /Sphinx-6.2.1.tar.gz /Sphinx-7.0.1.tar.gz /sphinx-7.1.2.tar.gz +/sphinx-7.2.6.tar.gz diff --git a/083d573b.patch b/083d573b.patch deleted file mode 100644 index f014777..0000000 --- a/083d573b.patch +++ /dev/null @@ -1,56 +0,0 @@ -From 083d573b7cf42d98f6c946715f52becba11d674b Mon Sep 17 00:00:00 2001 -From: Adam Turner <9087854+aa-turner@users.noreply.github.com> -Date: Mon, 7 Aug 2023 21:02:25 +0100 -Subject: [PATCH] Fix ``test_dark_style`` for Pygments 2.16 - ---- - tests/test_theming.py | 20 +++++++++++++++++--- - 1 file changed, 17 insertions(+), 3 deletions(-) - -diff --git a/tests/test_theming.py b/tests/test_theming.py -index 7473cb371c5..e3bd2a0f016 100644 ---- a/tests/test_theming.py -+++ b/tests/test_theming.py -@@ -5,6 +5,7 @@ - import alabaster - import pytest - -+import sphinx.builders.html - from sphinx.theming import ThemeError - - -@@ -91,18 +92,31 @@ def test_staticfiles(app, status, warning): - - @pytest.mark.sphinx(testroot='theming', - confoverrides={'html_theme': 'test-theme'}) --def test_dark_style(app, status, warning): -+def test_dark_style(app, monkeypatch): -+ monkeypatch.setattr(sphinx.builders.html, '_file_checksum', lambda o, f: '') -+ - style = app.builder.dark_highlighter.formatter_args.get('style') - assert style.__name__ == 'MonokaiStyle' - - app.build() - assert (app.outdir / '_static' / 'pygments_dark.css').exists() - -+ css_file, properties = app.registry.css_files[0] -+ assert css_file == 'pygments_dark.css' -+ assert "media" in properties -+ assert properties["media"] == '(prefers-color-scheme: dark)' -+ -+ assert sorted(app.builder.css_files) == [ -+ '_static/classic.css', -+ '_static/pygments.css', -+ '_static/pygments_dark.css', -+ ] -+ - result = (app.outdir / 'index.html').read_text(encoding='utf8') -- assert '' in result -+ assert '' in result - assert ('') in result -+ 'href="_static/pygments_dark.css" />') in result - - - @pytest.mark.sphinx(testroot='theming') diff --git a/85ffb3b0.patch b/85ffb3b0.patch deleted file mode 100644 index 97de128..0000000 --- a/85ffb3b0.patch +++ /dev/null @@ -1,100 +0,0 @@ -From 85ffb3b0fdcfefd5484e3fa895a46e3d11d7284f Mon Sep 17 00:00:00 2001 -From: Adam Turner <9087854+aa-turner@users.noreply.github.com> -Date: Mon, 7 Aug 2023 21:51:05 +0100 -Subject: [PATCH] Fix ``test_assets_order`` for Pygments 2.16 - ---- - tests/roots/test-html_file_checksum/conf.py | 1 + - tests/roots/test-html_file_checksum/index.rst | 0 - tests/roots/test-html_file_checksum/static/empty.js | 0 - .../roots/test-html_file_checksum/static/script.js | 1 + - .../test-html_file_checksum/static/stylesheet-a.css | 1 + - .../test-html_file_checksum/static/stylesheet-b.css | 1 + - tests/test_build_html.py | 13 ++++++++----- - 7 files changed, 12 insertions(+), 5 deletions(-) - create mode 100644 tests/roots/test-html_file_checksum/conf.py - create mode 100644 tests/roots/test-html_file_checksum/index.rst - create mode 100644 tests/roots/test-html_file_checksum/static/empty.js - create mode 100644 tests/roots/test-html_file_checksum/static/script.js - create mode 100644 tests/roots/test-html_file_checksum/static/stylesheet-a.css - create mode 100644 tests/roots/test-html_file_checksum/static/stylesheet-b.css - -diff --git a/tests/roots/test-html_file_checksum/conf.py b/tests/roots/test-html_file_checksum/conf.py -new file mode 100644 -index 00000000000..f9188142153 ---- /dev/null -+++ b/tests/roots/test-html_file_checksum/conf.py -@@ -0,0 +1 @@ -+html_static_path = ['static'] -diff --git a/tests/roots/test-html_file_checksum/index.rst b/tests/roots/test-html_file_checksum/index.rst -new file mode 100644 -index 00000000000..e69de29bb2d -diff --git a/tests/roots/test-html_file_checksum/static/empty.js b/tests/roots/test-html_file_checksum/static/empty.js -new file mode 100644 -index 00000000000..e69de29bb2d -diff --git a/tests/roots/test-html_file_checksum/static/script.js b/tests/roots/test-html_file_checksum/static/script.js -new file mode 100644 -index 00000000000..9a21456003e ---- /dev/null -+++ b/tests/roots/test-html_file_checksum/static/script.js -@@ -0,0 +1 @@ -+/* Script */ -diff --git a/tests/roots/test-html_file_checksum/static/stylesheet-a.css b/tests/roots/test-html_file_checksum/static/stylesheet-a.css -new file mode 100644 -index 00000000000..3a5d802510d ---- /dev/null -+++ b/tests/roots/test-html_file_checksum/static/stylesheet-a.css -@@ -0,0 +1 @@ -+/* Stylesheet A */ -diff --git a/tests/roots/test-html_file_checksum/static/stylesheet-b.css b/tests/roots/test-html_file_checksum/static/stylesheet-b.css -new file mode 100644 -index 00000000000..ad5ff28f692 ---- /dev/null -+++ b/tests/roots/test-html_file_checksum/static/stylesheet-b.css -@@ -0,0 +1 @@ -+/* Stylesheet B */ -diff --git a/tests/test_build_html.py b/tests/test_build_html.py -index 9a6326c69f5..5a10c964ae0 100644 ---- a/tests/test_build_html.py -+++ b/tests/test_build_html.py -@@ -10,6 +10,7 @@ - import pytest - from html5lib import HTMLParser - -+import sphinx.builders.html - from sphinx.builders.html import validate_html_extra_path, validate_html_static_path - from sphinx.errors import ConfigError - from sphinx.testing.util import strip_escseq -@@ -1172,7 +1173,9 @@ def test_html_assets(app): - - - @pytest.mark.sphinx('html', testroot='html_assets') --def test_assets_order(app): -+def test_assets_order(app, monkeypatch): -+ monkeypatch.setattr(sphinx.builders.html, '_file_checksum', lambda o, f: '') -+ - app.add_css_file('normal.css') - app.add_css_file('early.css', priority=100) - app.add_css_file('late.css', priority=750) -@@ -1188,8 +1191,8 @@ def test_assets_order(app): - # css_files - expected = [ - '_static/early.css', -- '_static/pygments.css?v=b3523f8e', -- '_static/alabaster.css?v=039e1c02', -+ '_static/pygments.css', -+ '_static/alabaster.css', - 'https://example.com/custom.css', - '_static/normal.css', - '_static/late.css', -@@ -1202,8 +1205,8 @@ def test_assets_order(app): - # js_files - expected = [ - '_static/early.js', -- '_static/doctools.js?v=888ff710', -- '_static/sphinx_highlight.js?v=4825356b', -+ '_static/doctools.js', -+ '_static/sphinx_highlight.js', - 'https://example.com/script.js', - '_static/normal.js', - '_static/late.js', diff --git a/python-sphinx.spec b/python-sphinx.spec index 46acb07..9d835ad 100644 --- a/python-sphinx.spec +++ b/python-sphinx.spec @@ -21,11 +21,11 @@ %bcond latex_tests 1 Name: python-sphinx -%global general_version 7.1.2 +%global general_version 7.2.6 #global prerel ... %global upstream_version %{general_version}%{?prerel} Version: %{general_version}%{?prerel:~%{prerel}} -Release: 2%{?dist} +Release: 1%{?dist} Epoch: 1 Summary: Python documentation generator @@ -40,12 +40,6 @@ Source: %{pypi_source sphinx %{upstream_version}} # which causes that test to fail. Patch: sphinx-test_theming.diff -# Fix test_assets_order for Sphinx 7.1.2 -Patch: https://github.com/sphinx-doc/sphinx/commit/85ffb3b0.patch - -# Fix test_dark_style with Pygments 2.16+ -Patch: https://github.com/sphinx-doc/sphinx/commit/083d573b.patch - BuildArch: noarch BuildRequires: make @@ -250,6 +244,14 @@ rm tests/test_build_linkcheck.py tests/test_ext_intersphinx.py sed -i '/html5lib/d' pyproject.toml %endif +# Sphinx' tests import from each other, this feature is not supported by +# the 'importlib' import mode in pytest. Upstream mitigates this by invoking +# `python -m pytest` rather than `pytest` directly, but in the context of the +# RPM build we explicitly want to test the installed library rather than the +# one from PWD. +# https://github.com/sphinx-doc/sphinx/issues/11740 +sed -i '/"--import-mode=importlib",/d' pyproject.toml + %generate_buildrequires %pyproject_buildrequires -r %{?with_tests:-x test} @@ -367,6 +369,10 @@ mkdir %{buildroot}%{python3_sitelib}/sphinxcontrib %changelog +* Thu Oct 26 2023 Karolina Surma - 1:7.2.6-1 +- Update to 7.2.6 +- Fixes rhbz#2232469 + * Thu Sep 21 2023 Karolina Surma - 1:7.1.2-2 - Fix FTBFS with Pygments 2.16+ diff --git a/sources b/sources index c6d348a..aaab39a 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (sphinx-7.1.2.tar.gz) = d6bccdaa476c700bef444736bb439a4097b9cd40d9c2fce1c3bb889f3677b6d17fe2833b0d3cf4cd3e43927f5fe6f59825f290dabeb2736e77f7f1f26c84d2ec +SHA512 (sphinx-7.2.6.tar.gz) = 9a42e38c3c54429cc008b58892297ade4ccdd67561ee671e42a1fae976955895bb5383d58cb66a4f9f7edd1cc50dc2d1f083efeef036eac9fffc205979d3ccbc diff --git a/sphinx-test_theming.diff b/sphinx-test_theming.diff index 975305e..30994a1 100644 --- a/sphinx-test_theming.diff +++ b/sphinx-test_theming.diff @@ -7,6 +7,6 @@ diff -ru Sphinx-1.7.6/tests/test_theming.py Sphinx-1.7.6_patched/tests/test_them # test Theme class API - assert set(app.registry.html_themes.keys()) == set(themes) + assert set(app.registry.html_themes.keys()) >= set(themes) - assert app.registry.html_themes['test-theme'] == app.srcdir / 'test_theme' / 'test-theme' - assert app.registry.html_themes['ziptheme'] == app.srcdir / 'ziptheme.zip' - assert app.registry.html_themes['staticfiles'] == app.srcdir / 'test_theme' / 'staticfiles' + assert app.registry.html_themes['test-theme'] == str(app.srcdir / 'test_theme' / 'test-theme') + assert app.registry.html_themes['ziptheme'] == str(app.srcdir / 'ziptheme.zip') + assert app.registry.html_themes['staticfiles'] == str(app.srcdir / 'test_theme' / 'staticfiles') From 3ae8dffd9306dffdca1bc3c7aa36547f0547e967 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Wed, 8 Nov 2023 12:48:25 +0100 Subject: [PATCH 26/56] Weaken the runtime dependency on the first party sphinxcontrib packages For now, we don't BuildRequire them, to allow orphaning + retirement without reporting sphinx as impacted. Later, we can BuildRequire the remaining ones to produce a more complete documentation. --- 11747.patch | 189 +++++++++++++++++++++++++++++++++++++++++++++ python-sphinx.spec | 38 ++++++++- 2 files changed, 226 insertions(+), 1 deletion(-) create mode 100644 11747.patch diff --git a/11747.patch b/11747.patch new file mode 100644 index 0000000..4c41402 --- /dev/null +++ b/11747.patch @@ -0,0 +1,189 @@ +From a8371a919b4f1552853a879377251ad25c3d988f Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= +Date: Mon, 6 Nov 2023 13:44:17 +0100 +Subject: [PATCH] Make the first party extensions optional, add [extensions] + extra + +--- + pyproject.toml | 33 +++++++++++++++++++++++++++------ + sphinx/application.py | 18 ++++++++++++++---- + sphinx/testing/fixtures.py | 6 ++++++ + tests/test_api_translator.py | 2 ++ + tests/test_build_html.py | 3 +++ + 5 files changed, 52 insertions(+), 10 deletions(-) + +diff --git a/pyproject.toml b/pyproject.toml +index a0ada3cd3ae..7cb0112897a 100644 +--- a/pyproject.toml ++++ b/pyproject.toml +@@ -55,12 +55,6 @@ classifiers = [ + "Topic :: Utilities", + ] + dependencies = [ +- "sphinxcontrib-applehelp", +- "sphinxcontrib-devhelp", +- "sphinxcontrib-jsmath", +- "sphinxcontrib-htmlhelp>=2.0.0", +- "sphinxcontrib-serializinghtml>=1.1.9", +- "sphinxcontrib-qthelp", + "Jinja2>=3.0", + "Pygments>=2.14", + "docutils>=0.18.1,<0.21", +@@ -76,8 +70,35 @@ dependencies = [ + dynamic = ["version"] + + [project.optional-dependencies] ++applehelp = [ ++ "sphinxcontrib-applehelp", ++] ++devhelp = [ ++ "sphinxcontrib-devhelp", ++] ++jsmath = [ ++ "sphinxcontrib-jsmath", ++] ++htmlhelp = [ ++ "sphinxcontrib-htmlhelp>=2.0.0", ++] ++serializinghtml = [ ++ "sphinxcontrib-serializinghtml>=1.1.9", ++] ++qthelp = [ ++ "sphinxcontrib-qthelp", ++] ++extensions = [ ++ "sphinx[applehelp]", ++ "sphinx[devhelp]", ++ "sphinx[jsmath]", ++ "sphinx[htmlhelp]", ++ "sphinx[serializinghtml]", ++ "sphinx[qthelp]", ++] + docs = [ + "sphinxcontrib-websupport", ++ "sphinx[extensions]", + ] + lint = [ + "flake8>=3.5.0", +diff --git a/sphinx/application.py b/sphinx/application.py +index d5fbaa9f30a..776bafa1ee3 100644 +--- a/sphinx/application.py ++++ b/sphinx/application.py +@@ -24,7 +24,12 @@ + from sphinx import locale, package_dir + from sphinx.config import Config + from sphinx.environment import BuildEnvironment +-from sphinx.errors import ApplicationError, ConfigError, VersionRequirementError ++from sphinx.errors import ( ++ ApplicationError, ++ ConfigError, ++ ExtensionError, ++ VersionRequirementError, ++) + from sphinx.events import EventManager + from sphinx.highlighting import lexer_classes + from sphinx.locale import __ +@@ -226,7 +231,7 @@ def __init__(self, srcdir: str | os.PathLike[str], confdir: str | os.PathLike[st + # load all built-in extension modules, first-party extension modules, + # and first-party themes + for extension in builtin_extensions: +- self.setup_extension(extension) ++ self.setup_extension(extension, optional=extension in _first_party_extensions) + + # load all user-given extension modules + for extension in self.config.extensions: +@@ -395,7 +400,7 @@ def build(self, force_all: bool = False, filenames: list[str] | None = None) -> + + # ---- general extensibility interface ------------------------------------- + +- def setup_extension(self, extname: str) -> None: ++ def setup_extension(self, extname: str, optional: bool = False) -> None: + """Import and setup a Sphinx extension module. + + Load the extension given by the module *name*. Use this if your +@@ -403,7 +408,12 @@ def setup_extension(self, extname: str) -> None: + called twice. + """ + logger.debug('[app] setting up extension: %r', extname) +- self.registry.load_extension(self, extname) ++ try: ++ self.registry.load_extension(self, extname) ++ except ExtensionError: ++ logger.debug('[app] extension not found: %r', extname) ++ if not optional: ++ raise + + @staticmethod + def require_sphinx(version: tuple[int, int] | str) -> None: +diff --git a/sphinx/testing/fixtures.py b/sphinx/testing/fixtures.py +index 0cc4882fe1c..f57f709b415 100644 +--- a/sphinx/testing/fixtures.py ++++ b/sphinx/testing/fixtures.py +@@ -22,6 +22,7 @@ + 'sphinx(builder, testroot=None, freshenv=False, confoverrides=None, tags=None,' + ' docutilsconf=None, parallel=0): arguments to initialize the sphinx test application.' + ), ++ 'sphinxcontrib(...): required sphinxcontrib.* extensions', + 'test_params(shared_result=...): test parameters.', + ] + +@@ -67,6 +68,11 @@ def app_params(request: Any, test_params: dict, shared_result: SharedResult, + sphinx.application.Sphinx initialization + """ + ++ # ##### process pytest.mark.sphinxcontrib ++ for info in reversed(list(request.node.iter_markers("sphinxcontrib"))): ++ for arg in info.args: ++ pytest.importorskip("sphinxcontrib." + arg) ++ + # ##### process pytest.mark.sphinx + + pargs = {} +diff --git a/tests/test_api_translator.py b/tests/test_api_translator.py +index 9f2bd448863..81575b71946 100644 +--- a/tests/test_api_translator.py ++++ b/tests/test_api_translator.py +@@ -36,6 +36,7 @@ def test_singlehtml_set_translator_for_singlehtml(app, status, warning): + assert translator_class.__name__ == 'ConfSingleHTMLTranslator' + + ++@pytest.mark.sphinxcontrib('serializinghtml') + @pytest.mark.sphinx('pickle', testroot='api-set-translator') + def test_pickle_set_translator_for_pickle(app, status, warning): + translator_class = app.builder.get_translator_class() +@@ -43,6 +44,7 @@ def test_pickle_set_translator_for_pickle(app, status, warning): + assert translator_class.__name__ == 'ConfPickleTranslator' + + ++@pytest.mark.sphinxcontrib('serializinghtml') + @pytest.mark.sphinx('json', testroot='api-set-translator') + def test_json_set_translator_for_json(app, status, warning): + translator_class = app.builder.get_translator_class() +diff --git a/tests/test_build_html.py b/tests/test_build_html.py +index a89a6fcafaf..8bd44111853 100644 +--- a/tests/test_build_html.py ++++ b/tests/test_build_html.py +@@ -1547,6 +1547,7 @@ def test_html_math_renderer_is_imgmath(app, status, warning): + assert app.builder.math_renderer_name == 'imgmath' + + ++@pytest.mark.sphinxcontrib('serializinghtml', 'jsmath') + @pytest.mark.sphinx('html', testroot='basic', + confoverrides={'extensions': ['sphinxcontrib.jsmath', + 'sphinx.ext.imgmath']}) +@@ -1567,6 +1568,7 @@ def test_html_math_renderer_is_duplicated2(app, status, warning): + assert app.builder.math_renderer_name == 'imgmath' # The another one is chosen + + ++@pytest.mark.sphinxcontrib('jsmath') + @pytest.mark.sphinx('html', testroot='basic', + confoverrides={'extensions': ['sphinxcontrib.jsmath', + 'sphinx.ext.imgmath'], +@@ -1575,6 +1577,7 @@ def test_html_math_renderer_is_chosen(app, status, warning): + assert app.builder.math_renderer_name == 'imgmath' + + ++@pytest.mark.sphinxcontrib('jsmath') + @pytest.mark.sphinx('html', testroot='basic', + confoverrides={'extensions': ['sphinxcontrib.jsmath', + 'sphinx.ext.mathjax'], diff --git a/python-sphinx.spec b/python-sphinx.spec index 9d835ad..bc1b7fb 100644 --- a/python-sphinx.spec +++ b/python-sphinx.spec @@ -25,7 +25,7 @@ Name: python-sphinx #global prerel ... %global upstream_version %{general_version}%{?prerel} Version: %{general_version}%{?prerel:~%{prerel}} -Release: 1%{?dist} +Release: 2%{?dist} Epoch: 1 Summary: Python documentation generator @@ -40,6 +40,21 @@ Source: %{pypi_source sphinx %{upstream_version}} # which causes that test to fail. Patch: sphinx-test_theming.diff +# Make the first party extensions optional +# This removes the runtime dependencies on: +# - sphinxcontrib.applehelp +# - sphinxcontrib.devhelp +# - sphinxcontrib.jsmath +# - sphinxcontrib.htmlhelp +# - sphinxcontrib.serializinghtml +# - sphinxcontrib.qthelp +# The majority of Fedora RPM packages does not need any of those. +# By removing the dependencies, we minimize the stuff that's pulled into +# the buildroots of 700+ of packages. +# +# The change is proposed upstream. +Patch: https://github.com/sphinx-doc/sphinx/pull/11747.patch + BuildArch: noarch BuildRequires: make @@ -132,6 +147,17 @@ Summary: Python documentation generator Recommends: graphviz Recommends: ImageMagick +# Upstream Requires those, but we have a patch to remove the dependency. +# We keep them Recommended to preserve the default user experience. +# (We don't desire them in RHEL.) +%if %{undefined rhel} +Recommends: python%{python3_pkgversion}-sphinxcontrib-applehelp +Recommends: python%{python3_pkgversion}-sphinxcontrib-devhelp +Recommends: python%{python3_pkgversion}-sphinxcontrib-jsmath +Recommends: python%{python3_pkgversion}-sphinxcontrib-htmlhelp +Recommends: python%{python3_pkgversion}-sphinxcontrib-serializinghtml +Recommends: python%{python3_pkgversion}-sphinxcontrib-qthelp +%endif %description -n python%{python3_pkgversion}-sphinx Sphinx is a tool that makes it easy to create intelligent and @@ -369,6 +395,16 @@ mkdir %{buildroot}%{python3_sitelib}/sphinxcontrib %changelog +* Wed Nov 08 2023 Miro Hrončok - 1:7.2.6-2 +- Weaken the runtime dependency on: + - python3-sphinxcontrib-applehelp + - python3-sphinxcontrib-devhelp + - python3-sphinxcontrib-jsmath + - python3-sphinxcontrib-htmlhelp + - python3-sphinxcontrib-serializinghtml + - python3-sphinxcontrib-qthelp +- Packages that want to use them during build need to BuildRequire them explicitly + * Thu Oct 26 2023 Karolina Surma - 1:7.2.6-1 - Update to 7.2.6 - Fixes rhbz#2232469 From 3a7f1fc94433ce60de4621e196607f8d4f07bbfe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Thu, 16 Nov 2023 12:43:10 +0100 Subject: [PATCH 27/56] Repurpose the websupport bcond to a sphinxcontrib bcond On Fedora, BuildRequire the sphinxcontrib packages to build the documentation. We don't BR the packages that are orphaned, we anticipate their retirement. --- python-sphinx.spec | 26 ++++++++++++++++---------- 1 file changed, 16 insertions(+), 10 deletions(-) diff --git a/python-sphinx.spec b/python-sphinx.spec index bc1b7fb..6bba4f7 100644 --- a/python-sphinx.spec +++ b/python-sphinx.spec @@ -1,7 +1,7 @@ -# When bootstrapping sphinx in Fedora, we don't yet have sphinxcontrib-websupport -# Without it we have warnings in docs, but it's not a hard dependency -# We don't want to support sphinxcontrib-websupport in RHEL, hence disabling the dependency -%bcond websupport %{undefined rhel} +# When bootstrapping sphinx in Fedora, we don't yet have sphinxcontrib-* +# Without the packages, we have warnings in docs, but it's not a hard dependency +# We don't want to support sphinxcontrib-* in RHEL, hence disabling the dependencies +%bcond sphinxcontrib %{undefined rhel} # Also, we don't have all the tests requirements %bcond tests 1 @@ -25,7 +25,7 @@ Name: python-sphinx #global prerel ... %global upstream_version %{general_version}%{?prerel} Version: %{general_version}%{?prerel:~%{prerel}} -Release: 2%{?dist} +Release: 3%{?dist} Epoch: 1 Summary: Python documentation generator @@ -61,7 +61,12 @@ BuildRequires: make BuildRequires: python%{python3_pkgversion}-devel BuildRequires: pyproject-rpm-macros -%if %{with websupport} +%if %{with sphinxcontrib} +# applehelp and jsmath have been orphaned, we cannot use the [docs] extra directly +BuildRequires: python%{python3_pkgversion}-sphinxcontrib-devhelp +BuildRequires: python%{python3_pkgversion}-sphinxcontrib-htmlhelp +BuildRequires: python%{python3_pkgversion}-sphinxcontrib-serializinghtml +BuildRequires: python%{python3_pkgversion}-sphinxcontrib-qthelp BuildRequires: python%{python3_pkgversion}-sphinxcontrib-websupport %endif @@ -149,11 +154,9 @@ Recommends: ImageMagick # Upstream Requires those, but we have a patch to remove the dependency. # We keep them Recommended to preserve the default user experience. -# (We don't desire them in RHEL.) -%if %{undefined rhel} -Recommends: python%{python3_pkgversion}-sphinxcontrib-applehelp +%if %{with sphinxcontrib} +# applehelp and jsmath have been orphaned Recommends: python%{python3_pkgversion}-sphinxcontrib-devhelp -Recommends: python%{python3_pkgversion}-sphinxcontrib-jsmath Recommends: python%{python3_pkgversion}-sphinxcontrib-htmlhelp Recommends: python%{python3_pkgversion}-sphinxcontrib-serializinghtml Recommends: python%{python3_pkgversion}-sphinxcontrib-qthelp @@ -395,6 +398,9 @@ mkdir %{buildroot}%{python3_sitelib}/sphinxcontrib %changelog +* Thu Nov 16 2023 Miro Hrončok - 1:7.2.6-3 +- On Fedora, BuildRequire the sphinxcontrib packages to build the documentation + * Wed Nov 08 2023 Miro Hrončok - 1:7.2.6-2 - Weaken the runtime dependency on: - python3-sphinxcontrib-applehelp From 70abcdbd9fa660d5c2571e3faad6b0248f6d6c35 Mon Sep 17 00:00:00 2001 From: Karolina Surma Date: Tue, 12 Dec 2023 14:11:44 +0100 Subject: [PATCH 28/56] Fix test failures with Python 3.11.7, 3.12.1 and later --- 11774.patch | 69 ++++++++++++++++++++++++++++++++++++++++++++++ python-sphinx.spec | 9 +++++- 2 files changed, 77 insertions(+), 1 deletion(-) create mode 100644 11774.patch diff --git a/11774.patch b/11774.patch new file mode 100644 index 0000000..47370b2 --- /dev/null +++ b/11774.patch @@ -0,0 +1,69 @@ +From bc8939b34037f81b8610f3b26caec128ee20a2f4 Mon Sep 17 00:00:00 2001 +From: Karolina Surma +Date: Tue, 28 Nov 2023 14:43:58 +0100 +Subject: [PATCH] Adjust the expected string to match Python 3.11+ changed + output + +--- + tests/test_ext_autodoc_configs.py | 21 +++++++++++++++++---- + 1 file changed, 17 insertions(+), 4 deletions(-) + +diff --git a/tests/test_ext_autodoc_configs.py b/tests/test_ext_autodoc_configs.py +index 45bc729b73e..0994c08e899 100644 +--- a/tests/test_ext_autodoc_configs.py ++++ b/tests/test_ext_autodoc_configs.py +@@ -11,6 +11,7 @@ + from .test_ext_autodoc import do_autodoc + + IS_PYPY = platform.python_implementation() == 'PyPy' ++IS_PY311_AND_LATER = sys.version_info >= (3, 11) + + + @contextmanager +@@ -1627,7 +1628,10 @@ def test_autodoc_default_options(app): + assert ' Iterate squares of each value.' in actual + if not IS_PYPY: + assert ' .. py:attribute:: CustomIter.__weakref__' in actual +- assert ' list of weak references to the object (if defined)' in actual ++ if IS_PY311_AND_LATER: ++ assert ' list of weak references to the object' in actual ++ else: ++ assert ' list of weak references to the object (if defined)' in actual + + # :exclude-members: None - has no effect. Unlike :members:, + # :special-members:, etc. where None == "include all", here None means +@@ -1651,7 +1655,10 @@ def test_autodoc_default_options(app): + assert ' Iterate squares of each value.' in actual + if not IS_PYPY: + assert ' .. py:attribute:: CustomIter.__weakref__' in actual +- assert ' list of weak references to the object (if defined)' in actual ++ if IS_PY311_AND_LATER: ++ assert ' list of weak references to the object' in actual ++ else: ++ assert ' list of weak references to the object (if defined)' in actual + assert ' .. py:method:: CustomIter.snafucate()' in actual + assert ' Makes this snafucated.' in actual + +@@ -1698,7 +1705,10 @@ def test_autodoc_default_options_with_values(app): + assert ' Iterate squares of each value.' in actual + if not IS_PYPY: + assert ' .. py:attribute:: CustomIter.__weakref__' not in actual +- assert ' list of weak references to the object (if defined)' not in actual ++ if IS_PY311_AND_LATER: ++ assert ' list of weak references to the object' not in actual ++ else: ++ assert ' list of weak references to the object (if defined)' not in actual + + # with :exclude-members: + app.config.autodoc_default_options = { +@@ -1722,6 +1732,9 @@ def test_autodoc_default_options_with_values(app): + assert ' Iterate squares of each value.' in actual + if not IS_PYPY: + assert ' .. py:attribute:: CustomIter.__weakref__' not in actual +- assert ' list of weak references to the object (if defined)' not in actual ++ if IS_PY311_AND_LATER: ++ assert ' list of weak references to the object' not in actual ++ else: ++ assert ' list of weak references to the object (if defined)' not in actual + assert ' .. py:method:: CustomIter.snafucate()' not in actual + assert ' Makes this snafucated.' not in actual diff --git a/python-sphinx.spec b/python-sphinx.spec index 6bba4f7..6b74c11 100644 --- a/python-sphinx.spec +++ b/python-sphinx.spec @@ -25,7 +25,7 @@ Name: python-sphinx #global prerel ... %global upstream_version %{general_version}%{?prerel} Version: %{general_version}%{?prerel:~%{prerel}} -Release: 3%{?dist} +Release: 4%{?dist} Epoch: 1 Summary: Python documentation generator @@ -55,6 +55,10 @@ Patch: sphinx-test_theming.diff # The change is proposed upstream. Patch: https://github.com/sphinx-doc/sphinx/pull/11747.patch +# Fix the expected test docstring to match output in Python 3.11.7, 3.12.1 and later +# Proposed upstream. +Patch: https://github.com/sphinx-doc/sphinx/pull/11774.patch + BuildArch: noarch BuildRequires: make @@ -398,6 +402,9 @@ mkdir %{buildroot}%{python3_sitelib}/sphinxcontrib %changelog +* Tue Dec 12 2023 Karolina Surma - 1:7.2.6-4 +- Fix the tests run when building with Python 3.11.7, 3.12.1 and later + * Thu Nov 16 2023 Miro Hrončok - 1:7.2.6-3 - On Fedora, BuildRequire the sphinxcontrib packages to build the documentation From 8af563fb2bfa91ec0c4292d466ea8d6df5c90d5d Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Mon, 22 Jan 2024 07:19:13 +0000 Subject: [PATCH 29/56] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- python-sphinx.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/python-sphinx.spec b/python-sphinx.spec index 6b74c11..3f1edcc 100644 --- a/python-sphinx.spec +++ b/python-sphinx.spec @@ -25,7 +25,7 @@ Name: python-sphinx #global prerel ... %global upstream_version %{general_version}%{?prerel} Version: %{general_version}%{?prerel:~%{prerel}} -Release: 4%{?dist} +Release: 5%{?dist} Epoch: 1 Summary: Python documentation generator @@ -402,6 +402,9 @@ mkdir %{buildroot}%{python3_sitelib}/sphinxcontrib %changelog +* Mon Jan 22 2024 Fedora Release Engineering - 1:7.2.6-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Tue Dec 12 2023 Karolina Surma - 1:7.2.6-4 - Fix the tests run when building with Python 3.11.7, 3.12.1 and later From 854fb579d548ef24efa867ce2401acf3554d6954 Mon Sep 17 00:00:00 2001 From: Karolina Surma Date: Mon, 15 Jan 2024 16:15:10 +0100 Subject: [PATCH 30/56] Suppress traceback when importing the weakened sphinxcontrib* dependencies --- ...-the-first-party-extensions-optional.patch | 93 +++++++++++-------- python-sphinx.spec | 10 +- 2 files changed, 61 insertions(+), 42 deletions(-) rename 11747.patch => Make-the-first-party-extensions-optional.patch (68%) diff --git a/11747.patch b/Make-the-first-party-extensions-optional.patch similarity index 68% rename from 11747.patch rename to Make-the-first-party-extensions-optional.patch index 4c41402..ad3985a 100644 --- a/11747.patch +++ b/Make-the-first-party-extensions-optional.patch @@ -1,19 +1,22 @@ -From a8371a919b4f1552853a879377251ad25c3d988f Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= -Date: Mon, 6 Nov 2023 13:44:17 +0100 +From 9699465414515f0eba76d05069e755b5bcf34eef Mon Sep 17 00:00:00 2001 +From: Karolina Surma +Date: Mon, 15 Jan 2024 16:19:32 +0100 Subject: [PATCH] Make the first party extensions optional, add [extensions] extra + +Co-authored-by: Miro Hrončok --- pyproject.toml | 33 +++++++++++++++++++++++++++------ - sphinx/application.py | 18 ++++++++++++++---- + sphinx/application.py | 6 +++--- + sphinx/registry.py | 9 ++++++--- sphinx/testing/fixtures.py | 6 ++++++ tests/test_api_translator.py | 2 ++ tests/test_build_html.py | 3 +++ - 5 files changed, 52 insertions(+), 10 deletions(-) + 6 files changed, 47 insertions(+), 12 deletions(-) diff --git a/pyproject.toml b/pyproject.toml -index a0ada3cd3ae..7cb0112897a 100644 +index 8f93701..41c28c5 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -55,12 +55,6 @@ classifiers = [ @@ -66,60 +69,69 @@ index a0ada3cd3ae..7cb0112897a 100644 lint = [ "flake8>=3.5.0", diff --git a/sphinx/application.py b/sphinx/application.py -index d5fbaa9f30a..776bafa1ee3 100644 +index d5fbaa9..b030dab 100644 --- a/sphinx/application.py +++ b/sphinx/application.py -@@ -24,7 +24,12 @@ - from sphinx import locale, package_dir - from sphinx.config import Config - from sphinx.environment import BuildEnvironment --from sphinx.errors import ApplicationError, ConfigError, VersionRequirementError -+from sphinx.errors import ( -+ ApplicationError, -+ ConfigError, -+ ExtensionError, -+ VersionRequirementError, -+) - from sphinx.events import EventManager - from sphinx.highlighting import lexer_classes - from sphinx.locale import __ -@@ -226,7 +231,7 @@ def __init__(self, srcdir: str | os.PathLike[str], confdir: str | os.PathLike[st +@@ -226,7 +226,7 @@ class Sphinx: # load all built-in extension modules, first-party extension modules, # and first-party themes for extension in builtin_extensions: - self.setup_extension(extension) -+ self.setup_extension(extension, optional=extension in _first_party_extensions) ++ self.setup_extension(extension, skip_nonimportable=extension in _first_party_extensions) # load all user-given extension modules for extension in self.config.extensions: -@@ -395,7 +400,7 @@ def build(self, force_all: bool = False, filenames: list[str] | None = None) -> +@@ -395,7 +395,7 @@ class Sphinx: # ---- general extensibility interface ------------------------------------- - def setup_extension(self, extname: str) -> None: -+ def setup_extension(self, extname: str, optional: bool = False) -> None: ++ def setup_extension(self, extname: str, skip_nonimportable: bool = False) -> None: """Import and setup a Sphinx extension module. Load the extension given by the module *name*. Use this if your -@@ -403,7 +408,12 @@ def setup_extension(self, extname: str) -> None: +@@ -403,7 +403,7 @@ class Sphinx: called twice. """ logger.debug('[app] setting up extension: %r', extname) - self.registry.load_extension(self, extname) -+ try: -+ self.registry.load_extension(self, extname) -+ except ExtensionError: -+ logger.debug('[app] extension not found: %r', extname) -+ if not optional: -+ raise ++ self.registry.load_extension(self, extname, skip_nonimportable=skip_nonimportable) @staticmethod def require_sphinx(version: tuple[int, int] | str) -> None: +diff --git a/sphinx/registry.py b/sphinx/registry.py +index 501661d..96d4554 100644 +--- a/sphinx/registry.py ++++ b/sphinx/registry.py +@@ -430,7 +430,7 @@ class SphinxComponentRegistry: + def add_html_theme(self, name: str, theme_path: str) -> None: + self.html_themes[name] = theme_path + +- def load_extension(self, app: Sphinx, extname: str) -> None: ++ def load_extension(self, app: Sphinx, extname: str, skip_nonimportable: bool = False) -> None: + """Load a Sphinx extension.""" + if extname in app.extensions: # already loaded + return +@@ -446,9 +446,12 @@ class SphinxComponentRegistry: + try: + mod = import_module(extname) + except ImportError as err: ++ msg = __('Could not import extension %s') ++ if skip_nonimportable: ++ logger.debug(msg % extname) ++ return + logger.verbose(__('Original exception:\n') + traceback.format_exc()) +- raise ExtensionError(__('Could not import extension %s') % extname, +- err) from err ++ raise ExtensionError(msg % extname, err) from err + + setup = getattr(mod, 'setup', None) + if setup is None: diff --git a/sphinx/testing/fixtures.py b/sphinx/testing/fixtures.py -index 0cc4882fe1c..f57f709b415 100644 +index 0cc4882..f57f709 100644 --- a/sphinx/testing/fixtures.py +++ b/sphinx/testing/fixtures.py -@@ -22,6 +22,7 @@ +@@ -22,6 +22,7 @@ DEFAULT_ENABLED_MARKERS = [ 'sphinx(builder, testroot=None, freshenv=False, confoverrides=None, tags=None,' ' docutilsconf=None, parallel=0): arguments to initialize the sphinx test application.' ), @@ -140,7 +152,7 @@ index 0cc4882fe1c..f57f709b415 100644 pargs = {} diff --git a/tests/test_api_translator.py b/tests/test_api_translator.py -index 9f2bd448863..81575b71946 100644 +index 9f2bd44..81575b7 100644 --- a/tests/test_api_translator.py +++ b/tests/test_api_translator.py @@ -36,6 +36,7 @@ def test_singlehtml_set_translator_for_singlehtml(app, status, warning): @@ -160,10 +172,10 @@ index 9f2bd448863..81575b71946 100644 def test_json_set_translator_for_json(app, status, warning): translator_class = app.builder.get_translator_class() diff --git a/tests/test_build_html.py b/tests/test_build_html.py -index a89a6fcafaf..8bd44111853 100644 +index 07f101d..c512a33 100644 --- a/tests/test_build_html.py +++ b/tests/test_build_html.py -@@ -1547,6 +1547,7 @@ def test_html_math_renderer_is_imgmath(app, status, warning): +@@ -1544,6 +1544,7 @@ def test_html_math_renderer_is_imgmath(app, status, warning): assert app.builder.math_renderer_name == 'imgmath' @@ -171,7 +183,7 @@ index a89a6fcafaf..8bd44111853 100644 @pytest.mark.sphinx('html', testroot='basic', confoverrides={'extensions': ['sphinxcontrib.jsmath', 'sphinx.ext.imgmath']}) -@@ -1567,6 +1568,7 @@ def test_html_math_renderer_is_duplicated2(app, status, warning): +@@ -1564,6 +1565,7 @@ def test_html_math_renderer_is_duplicated2(app, status, warning): assert app.builder.math_renderer_name == 'imgmath' # The another one is chosen @@ -179,7 +191,7 @@ index a89a6fcafaf..8bd44111853 100644 @pytest.mark.sphinx('html', testroot='basic', confoverrides={'extensions': ['sphinxcontrib.jsmath', 'sphinx.ext.imgmath'], -@@ -1575,6 +1577,7 @@ def test_html_math_renderer_is_chosen(app, status, warning): +@@ -1572,6 +1574,7 @@ def test_html_math_renderer_is_chosen(app, status, warning): assert app.builder.math_renderer_name == 'imgmath' @@ -187,3 +199,6 @@ index a89a6fcafaf..8bd44111853 100644 @pytest.mark.sphinx('html', testroot='basic', confoverrides={'extensions': ['sphinxcontrib.jsmath', 'sphinx.ext.mathjax'], +-- +2.43.0 + diff --git a/python-sphinx.spec b/python-sphinx.spec index 3f1edcc..aa94ee4 100644 --- a/python-sphinx.spec +++ b/python-sphinx.spec @@ -25,7 +25,7 @@ Name: python-sphinx #global prerel ... %global upstream_version %{general_version}%{?prerel} Version: %{general_version}%{?prerel:~%{prerel}} -Release: 5%{?dist} +Release: 6%{?dist} Epoch: 1 Summary: Python documentation generator @@ -52,8 +52,9 @@ Patch: sphinx-test_theming.diff # By removing the dependencies, we minimize the stuff that's pulled into # the buildroots of 700+ of packages. # -# The change is proposed upstream. -Patch: https://github.com/sphinx-doc/sphinx/pull/11747.patch +# This is a downstream-only change - rejected upstream. +# https://github.com/sphinx-doc/sphinx/pull/11747 +Patch: Make-the-first-party-extensions-optional.patch # Fix the expected test docstring to match output in Python 3.11.7, 3.12.1 and later # Proposed upstream. @@ -402,6 +403,9 @@ mkdir %{buildroot}%{python3_sitelib}/sphinxcontrib %changelog +* Wed Jan 24 2024 Karolina Surma - 1:7.2.6-6 +- Suppress traceback when importing the weakened sphinxcontrib* dependencies + * Mon Jan 22 2024 Fedora Release Engineering - 1:7.2.6-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From 33d7e3b55b0028b7cbb391cd2fd5f5b67e49b5fc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Mon, 29 Jan 2024 15:40:09 +0100 Subject: [PATCH 31/56] Convert to %autorelease and %autochangelog [skip changelog] --- changelog | 608 ++++++++++++++++++++++++++++++++++++++++++++ python-sphinx.spec | 611 +-------------------------------------------- 2 files changed, 610 insertions(+), 609 deletions(-) create mode 100644 changelog diff --git a/changelog b/changelog new file mode 100644 index 0000000..bdb1639 --- /dev/null +++ b/changelog @@ -0,0 +1,608 @@ +* Wed Jan 24 2024 Karolina Surma - 1:7.2.6-6 +- Suppress traceback when importing the weakened sphinxcontrib* dependencies + +* Mon Jan 22 2024 Fedora Release Engineering - 1:7.2.6-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Tue Dec 12 2023 Karolina Surma - 1:7.2.6-4 +- Fix the tests run when building with Python 3.11.7, 3.12.1 and later + +* Thu Nov 16 2023 Miro Hrončok - 1:7.2.6-3 +- On Fedora, BuildRequire the sphinxcontrib packages to build the documentation + +* Wed Nov 08 2023 Miro Hrončok - 1:7.2.6-2 +- Weaken the runtime dependency on: + - python3-sphinxcontrib-applehelp + - python3-sphinxcontrib-devhelp + - python3-sphinxcontrib-jsmath + - python3-sphinxcontrib-htmlhelp + - python3-sphinxcontrib-serializinghtml + - python3-sphinxcontrib-qthelp +- Packages that want to use them during build need to BuildRequire them explicitly + +* Thu Oct 26 2023 Karolina Surma - 1:7.2.6-1 +- Update to 7.2.6 +- Fixes rhbz#2232469 + +* Thu Sep 21 2023 Karolina Surma - 1:7.1.2-2 +- Fix FTBFS with Pygments 2.16+ + +* Mon Aug 14 2023 Karolina Surma - 1:7.1.2-1 +- Update to 7.1.2 +- Fixes rhbz#2225274 + +* Mon Aug 07 2023 Karolina Surma - 1:7.0.1-1 +- Update to 7.0.1 + +* Thu Jul 27 2023 Miro Hrončok - 1:6.2.1-4 +- Don't use filelock to test this package on RHEL + +* Fri Jul 21 2023 Fedora Release Engineering - 1:6.2.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Thu Jul 13 2023 Karolina Surma - 1:6.2.1-2 +- Don't use websupport to build documentation on RHEL + +* Mon Jun 26 2023 Karolina Surma - 1:6.2.1-1 +- Update to 6.2.1 +- Fixes rhbz#2188968 + +* Fri Jun 16 2023 Python Maint - 1:6.1.3-4 +- Rebuilt for Python 3.12 + +* Tue Jun 13 2023 Python Maint - 1:6.1.3-3 +- Bootstrap for Python 3.12 + +* Wed May 31 2023 Yaakov Selkowitz - 1:6.1.3-2 +- Avoid html5lib test dependency in RHEL builds + +* Fri Mar 10 2023 Karolina Surma - 1:6.1.3-1 +- Update to 6.1.3 +- Fixes rhbz#2135122 + +* Thu Mar 09 2023 Karolina Surma - 1:5.3.0-4 +- Fix tests related to missing setuptools and Babel 2.12 +- Fixes rhbz#2176685 + +* Tue Jan 31 2023 Karolina Surma - 1:5.3.0-3 +- Fix tests with python-pygments 2.14+ + +* Fri Jan 20 2023 Fedora Release Engineering - 1:5.3.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Tue Nov 08 2022 Karolina Surma - 1:5.3.0-1 +- Update to 5.3.0 +- Fixes rhbz#2129546 + +* Mon Aug 15 2022 Karolina Surma - 1:5.1.1-1 +- Update to 5.1.1 +- Fixes rhbz#2110473 +- Remove reST documentation from the -doc package, ship only HTML + +* Fri Jul 22 2022 Fedora Release Engineering - 1:5.0.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Tue Jun 21 2022 Karolina Surma - 1:5.0.2-1 +- Update to 5.0.2 + +* Mon Jun 13 2022 Python Maint - 1:4.5.0-3 +- Rebuilt for Python 3.11 + +* Mon Jun 13 2022 Python Maint - 1:4.5.0-2 +- Bootstrap for Python 3.11 + +* Fri Apr 01 2022 Karolina Surma - 1:4.5.0-1 +- Update to 4.5.0 +- Fixes rhbz#2068924 + +* Tue Feb 01 2022 Karolina Surma - 1:4.4.0-1 +- Update to 4.4.0 +- Fixes rhbz#2033955 + +* Fri Jan 21 2022 Fedora Release Engineering - 1:4.3.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Mon Nov 29 2021 Karolina Surma - 1:4.3.1-1 +- Update to 4.3.1 +- Fixes rhbz#2027059 + +* Fri Nov 19 2021 Karolina Surma - 1:4.3.0-1 +- Update to 4.3.0 +- Fixes rhbz#2022111 + +* Fri Sep 17 2021 Karolina Surma - 1:4.2.0-1 +- Update to 4.2.0 +- Fixes rhbz#2003427 + +* Thu Sep 16 2021 Karolina Surma - 1:4.1.2-3 +- Display typing objects correctly with Python 3.10 (fix FTBFS) +- Generate correct reference to parent class if class has `_name` attribute +- Enable previously deselected test + +* Wed Aug 18 2021 Karolina Surma - 1:4.1.2-2 +- Patch python-sphinx to work with python-pygments >=2.10 + +* Mon Aug 02 2021 Karolina Surma - 1:4.1.2-1 +- Update to 4.1.2 +- Fixes rhbz#1979326 +- Backport commit to fix python-sphinx with Python 3.10-rc1 + +* Fri Jul 23 2021 Fedora Release Engineering - 1:4.0.2-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Fri Jun 11 2021 Karolina Surma - 1:4.0.2-1 +- Update to 4.0.2 +- Fixes rhbz#1948279 + +* Thu Jun 03 2021 Python Maint - 1:3.5.4-3 +- Rebuilt for Python 3.10 + +* Wed Jun 02 2021 Python Maint - 1:3.5.4-2 +- Bootstrap for Python 3.10 + +* Mon May 10 2021 Karolina Surma - 1:3.5.4-1 +- Update to 3.5.4 +- Fixes rhbz#1949477 + +* Thu Apr 01 2021 Karolina Surma - 1:3.5.3-1 +- Update to 3.5.3 +- Fixes rhbz#1941161 + +* Wed Mar 10 2021 Charalampos Stratakis - 1:3.5.2-1 +- Update 3.5.2 +- Fixes rhbz#1928459 + +* Wed Jan 27 2021 Fedora Release Engineering - 1:3.4.3-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Tue Jan 19 2021 Charalampos Stratakis - 1:3.4.3-1 +- Update to 3.4.3 +- Fixes rhbz#1909494 + +* Sat Dec 05 2020 Mattia Verga - 1:3.3.1-2 +- Unset -s from python shebang +- Fixes: rhbz#1903763 + +* Mon Nov 23 2020 Miro Hrončok - 1:3.3.1-1 +- Update to 3.3.1 +- Fixes: rhbz#1893752 + +* Wed Oct 14 2020 Tomas Hrnciar - 1:3.2.1-2 +- Backport commit to fix python-sphinx with python-pygments v2.7.1 + +* Tue Aug 18 2020 Miro Hrončok - 1:3.2.1-1 +- Update to 3.2.1 +- Remove compatibility symbolic links from /usr/libexec/ +- Fixes rhbz#1867294 + +* Fri Aug 07 2020 Miro Hrončok - 1:3.1.2-1 +- Update to 3.1.2 +- Fixes rhbz#1853901 + +* Wed Jul 29 2020 Fedora Release Engineering - 1:3.1.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Tue Jun 30 2020 Charalampos Stratakis - 1:3.1.1-1 +- Update to 3.1.1 (#1783776) + +* Sat May 23 2020 Miro Hrončok - 1:2.2.2-4 +- Rebuilt for Python 3.9 + +* Fri May 22 2020 Miro Hrončok - 1:2.2.2-3 +- Bootstrap for Python 3.9 + +* Thu Jan 30 2020 Fedora Release Engineering - 1:2.2.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Tue Dec 10 2019 Miro Hrončok - 1:2.2.2-1 +- Update to 2.2.2 (rhbz#1743018) + +* Thu Oct 03 2019 Miro Hrončok - 1:2.1.2-6 +- Rebuilt for Python 3.8.0rc1 (#1748018) + +* Fri Aug 16 2019 Miro Hrončok - 1:2.1.2-5 +- Rebuilt for Python 3.8 + +* Thu Aug 15 2019 Miro Hrončok - 1:2.1.2-4 +- Bootstrap for Python 3.8 + +* Thu Aug 15 2019 Richard Shaw - 1:2.1.2-3 +- Rebuild for Python 3.8. + +* Fri Jul 26 2019 Fedora Release Engineering - 1:2.1.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Sun Jun 23 2019 Miro Hrončok - 1:2.1.2-1 +- Update to 2.1.2 (#1716158) + +* Wed Apr 10 2019 Miro Hrončok - 1:2.0.1-1 +- Update to 2.0.1 (#1697544) +- Own the sphinxcontrib directory (#1669790) + +* Wed Mar 27 2019 Charalampos Stratakis - 1:2.0.0~b2-1 +- Update to 2.0.0b2 + +* Wed Feb 27 2019 Miro Hrončok - 1:2.0.0~b1-1 +- Update to 2.0.0b1 +- Drop Python 2 package +- https://fedoraproject.org/wiki/Changes/Sphinx2 + +* Thu Feb 07 2019 Alfredo Moralejo - 1:1.8.4-1 +- Update to 1.8.4. + +* Sat Feb 02 2019 Fedora Release Engineering - 1:1.7.6-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Sun Nov 18 2018 Zbigniew Jędrzejewski-Szmek - 1:1.7.6-2 +- Drop explicit locale setting for python3, use C.UTF-8 for python2 + See https://fedoraproject.org/wiki/Changes/Remove_glibc-langpacks-all_from_buildroot + +* Mon Jul 23 2018 Marcel Plch - 1:1.7.6-1 +- Update to 1.7.6 + +* Fri Jul 13 2018 Miro Hrončok - 1:1.7.5-6 +- Remove unused dependencies on xapian and simplejson + +* Thu Jul 5 2018 Zbigniew Jędrzejewski-Szmek - 1:1.7.5-5 +- Add patch to fix build if alabaster theme is installed +- Add patch for #1589868 + +* Mon Jul 02 2018 Miro Hrončok - 1:1.7.5-4 +- Enable tests + +* Mon Jul 02 2018 Miro Hrončok - 1:1.7.5-3 +- Enable websupport + +* Mon Jul 02 2018 Miro Hrončok - 1:1.7.5-2 +- Rebuilt for Python 3.7 + +* Tue Jun 19 2018 Charalampos Stratakis - 1:1.7.5-1 +- Update to 1.7.5 (bz#1570451) + +* Mon Jun 18 2018 Miro Hrončok - 1:1.7.2-5 +- Rebuilt for Python 3.7 + +* Fri Jun 15 2018 Miro Hrončok - 1:1.7.2-4 +- Bootstrap for Python 3.7 + +* Thu Jun 14 2018 Miro Hrončok - 1:1.7.2-3 +- Bootstrap for Python 3.7 + +* Wed Apr 11 2018 Petr Viktorin - 1:1.7.2-2 +- Conditionalize the ImageMagick build dependency & tests + +* Wed Apr 11 2018 Petr Viktorin - 1:1.7.2-1 +- Update to 1.7.2 (bz#1558968) + +* Tue Mar 13 2018 Charalampos Stratakis - 1:1.7.1-1 +- Update to 1.7.1 (bz#1534802) + +* Fri Feb 09 2018 Fedora Release Engineering - 1:1.6.6-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Tue Jan 09 2018 Charalampos Stratakis - 1:1.6.6-1 +- Update to 1.6.6 (bz#1532435) + +* Mon Dec 11 2017 Iryna Shcherbina - 1:1.6.5-2 +- Fix ambiguous Python 2 dependency declarations + (See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3) + +* Mon Nov 06 2017 Charalampos Stratakis - 1:1.6.5-1 +- Update to 1.6.5 (bz#1508237) + +* Mon Oct 09 2017 Troy Dawson - 1:1.6.4-2 +- Cleanup spec file conditionals + +* Tue Sep 26 2017 Charalampos Stratakis - 1:1.6.4-1 +- Update to 1.6.4 (bz#1426928) + +* Wed Sep 20 2017 Charalampos Stratakis - 1:1.6.3-3 +- Provide the epoch tag in order to keep the upgrade path clean. + +* Thu Jul 27 2017 Fedora Release Engineering - 1.6.3-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Thu Jul 20 2017 Charalampos Stratakis - - 1.6.3-1 +- Update to 1.6.3 (bz#1426928) + +* Sat Feb 18 2017 Toshio Kuratomi - - 1.5.2-2 +- 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 - - 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 + +* Sat Feb 11 2017 Fedora Release Engineering - 1.5.1-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Tue Jan 31 2017 Toshio Kuratomi - - 1.5.1-5 +- environment-modules is less featureful than Lmod. + - Select the default version in a different way since environment-modules + didn't understand the symlink + - Ignore error messsages in the shell startup script as environment-modules + prints an error message if a module has already been loaded. The command + is doing the right thing for this case except that it's also printing an + error message. + +* Thu Jan 26 2017 Toshio Kuratomi - - 1.5.1-4 +- Add recipe for setting the system default to the README.fedora + +* Wed Jan 18 2017 Toshio Kuratomi - - 1.5.1-3 +- Move the unversioned executables into the python2 package as they are now + using python2 to run + +* Wed Jan 18 2017 Toshio Kuratomi - - 1.5.1-2 +- Add README.fedora so people know how to use environment-modules to switch. +- Change the default to be the python2 version to match with the guidelines +- Switch to generic environment(modules) instead of Lmod specifically. + +* Fri Dec 30 2016 Orion Poplawski - 1.5.1-1 +- Update to 1.5.1 + +* Fri Dec 30 2016 Toshio Kuratomi - 1.4.9-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. + +* Tue Dec 13 2016 Charalampos Stratakis - 1.4.9-1 +- Update to 1.4.9 +- Enable python3 tests + +* Mon Dec 12 2016 Charalampos Stratakis - 1.4.8-3 +- Rebuild for Python 3.6 +- Disable python3 tests for now + +* Thu Oct 6 2016 Avram Lubkin - 1.4.8-2 +- Added tex(luatex85.sty) dependency to support TexLive 2016 + +* Thu Oct 6 2016 Avram Lubkin - 1.4.8-1 +- Update to 1.4.8 +- Alternatives fails for scripts sometimes (bz#1382405) + +* Sun Sep 4 2016 Avram Lubkin - 1.4.6-2 +- Alternatives fails for man pages due to existing files + +* Fri Sep 2 2016 Avram Lubkin - 1.4.6-1 +- Update to 1.4.6 (bz#1370810) +- Fix unversioned Obsoletes +- Add alternatives slaves for man pages + +* Fri Aug 12 2016 Avram Lubkin - 1.4.5-1 +- Update to 1.4.5 (bz#1356336) +- Remove Recommends for latex, locale, and doc subpackages (bz#1366624) +- Remove Requires from locale subpackage (bz#1366624) +- Set executable scripts via alternatives (bz#1321413) +- Change graphviz Requires to Recommends (bz#1366706) + +* Sun Jul 03 2016 Avram Lubkin - 1.4.4-2 +- doc and locale no longer specifically require python2-sphinx +- Colapsed python3-sphinx-latex into python-latex + +* Sun Jun 12 2016 Avram Lubkin - 1.4.4-1 +- Updated to 1.4.4 +- Added python-sphinx-locale for common locale files + +* Thu Feb 04 2016 Fedora Release Engineering - 1.3.1-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Fri Nov 27 2015 Zbigniew Jędrzejewski-Szmek - 1.3.1-4 +- Obsolete napoleon extension, it is now packaged with sphinx (#1286275) +- Rename python2-Sphinx to python2-sphinx +- Add conflicts to disallow parallel installation of different versions, + which causes file conflicts because of the shared documentation files. + +* Wed Nov 25 2015 Zbigniew Jędrzejewski-Szmek - 1.3.1-3 +- Restore using python2 scripts by default (#1285535) + +* Wed Nov 25 2015 Zbigniew Jędrzejewski-Szmek - 1.3.1-2 +- Fix requirements of python2- subpackage +- Provide sphinx-*-{3.5,3} symlinks for each script + +* Tue Nov 24 2015 Julien Enselme - 1.3.1-1 +- Update to 1.3.1 (#1136284) +- Update to new guidelines +- Make the default executable use python3 + +* Tue Oct 13 2015 Robert Kuska - 1.2.3-5 +- Rebuilt for Python3.5 rebuild +- add patch to reflect that Python3.5 dropped HTMLParserError + +* Mon Jul 20 2015 Michel Alexandre Salim - 1.2.3-4 +- Fix line encoding of bundled jquery.js + +* Mon Jul 20 2015 Michel Alexandre Salim - 1.2.3-3 +- Re-introduce LaTeX subpackage, solely for pulling in LaTeX dependencies + +* Thu Jun 18 2015 Fedora Release Engineering - 1.2.3-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Thu Feb 5 2015 Michel Alexandre Salim - 1.2.3-1 +- Update to 1.2.3 +- Mark license file with %%license instead of %%doc + +* Thu Feb 5 2015 Michel Alexandre Salim - 1.2.2-10 +- Complete LaTeX builder deps (fixes bz#882166) +- Make test output verbose +- Add BRs needed to enable all tests + +* Tue Feb 3 2015 Michel Alexandre Salim - 1.2.2-9 +- python3-sphinx package also Provides: python3-sphinx-latex + +* Tue Feb 3 2015 Michel Alexandre Salim - 1.2.2-8 +- If a separate LaTeX subpackage is not generated, the main package should have + a virtual Provides: for it (bz#1187989) + +* Tue Jan 27 2015 Michel Alexandre Salim - 1.2.2-7 +- Disable separate LaTeX builder for now (bz#1185574) + +* Thu Jan 22 2015 Michel Alexandre Salim - 1.2.2-6 +- Split off LaTeX builder into its own subpackages, to remove TeXLive + dependencies from the main package. + Thanks to Robert Kuska for feedback +- Clean up python3-sphinx's locale files, they ended up in the python2 package. + Share the locale files in /usr/share instead + +* Sat Jun 07 2014 Fedora Release Engineering - 1.2.2-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Tue May 27 2014 Bohuslav Kabrda - 1.2.2-4 +- Don't own the -3 scripts by python 2 package + +* Thu May 22 2014 Bohuslav Kabrda - 1.2.2-3 +- Add sphinx-*-3 links to scripts +Resolves: #1098109 + +* Fri May 9 2014 Orion Poplawski - 1.2.2-2 +- Rebuild for Python 3.4 + +* Fri May 9 2014 Orion Poplawski - 1.2.2-1 +- Update to 1.2.2 + +* Thu Feb 13 2014 Michel Salim - 1.2.1-1 +- Update to 1.2.1 + +* Sun Aug 04 2013 Fedora Release Engineering - 1.1.3-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Sat Mar 9 2013 Michel Salim - 1.1.3-7 +- Fix inheritance_diagram quoting bug, exposed by the newer, stricter dot + +* Thu Feb 14 2013 Fedora Release Engineering - 1.1.3-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + +* Tue Aug 21 2012 Toshio Kuratomi - 1.1.3-5 +- Fix for use of sphinx's manpage writer with docutils-0.10 + +* Mon Aug 6 2012 Michel Salim - 1.1.3-4 +- Rebuild for Python 3.3 + +* Fri Aug 3 2012 David Malcolm - 1.1.3-3 +- remove rhel logic from with_python3 conditional + +* Sat Jul 21 2012 Fedora Release Engineering - 1.1.3-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Thu Apr 5 2012 Michel Salim - 1.1.3-1 +- Update to 1.1.3 + +* Sun Feb 5 2012 Michel Salim - 1.1.2-5 +- Move python3 runtime dependencies to the right subpackage +- Properly exclude python3 binaries + +* Sat Jan 14 2012 Fedora Release Engineering - 1.1.2-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + +* Sat Dec 17 2011 Michel Salim - 1.1.2-3 +- BR on texlive-latex for LaTeX tests + +* Thu Dec 8 2011 Michel Salim - 1.1.2-2 +- Enable python3 subpackage + +* Mon Nov 28 2011 Toshio Kuratomi - 1.1.2-1 +- Update to upstream 1.1.2 + +* Wed Feb 09 2011 Fedora Release Engineering - 1.0.7-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + +* Tue Jan 18 2011 Toshio Kuratomi - 1.0.7-1 +- Update to upstream 1.0.7 + +* Mon Jan 17 2011 Toshio Kuratomi - 1.0.6-1 +- Update to upstream 1.0.6 + +* Mon Nov 1 2010 Michel Salim - 1.0.4-3 +- Fix -doc Makefile to allow regeneration of .rst files + +* Mon Nov 1 2010 Michel Salim - 1.0.4-2 +- Actually include *.js locale files +- Generate manpages + +* Fri Sep 17 2010 Michel Salim - 1.0.4-1 +- Update to 1.0.4 +- Remove BuildRoot and %%clean declarations + +* Thu Jul 22 2010 David Malcolm - 1.0-0.1.b2.1 +- Rebuilt for https://fedoraproject.org/wiki/Features/Python_2.7/MassRebuild + +* Mon May 31 2010 Toshio Kuratomi - 1.0-0.2.b2 +- Update to 1.0 beta 2 +- Fixes problem building html documentation in non-English locales + +* Wed May 26 2010 Michel Salim - 1.0-0.1.b1 +- Update to 1.0 beta 1 + +* Tue May 25 2010 Michel Salim - 0.6.6-1 +- Update to 0.6.6 + +* Fri May 21 2010 Toshio Kuratomi - 0.6.5-2 +- Few minor tweaks to Gareth's spec file update + +* Mon May 10 2010 Gareth Armstrong - 0.6.5-1.hp +- Update to 0.6.5 +- Initial import of python-sphinx from Fedora Rawhide for use in HP CMS +- Enforce that Sphinx requires Python 2.4 or later via an explicit BR +- Minor tweaks to spec file +- Move language files to %%{_datadir}, idea borrowed from Debian's sphinx + package +- Deliver man pages for sphinx-build & sphinx-quickstart +- Deliver rst documentation files to reST directory in doc sub-package +- Add %%check section for Python2 and add BR on python-nose + +* Wed Jan 13 2010 Toshio Kuratomi - 0.6.4-1 +- Update to 0.6.4 +- Fixes a problem using autodoc with pylons projects. + +* Fri Sep 4 2009 Michel Salim - 0.6.3-1 +- Update to 0.6.3 + +* Mon Aug 17 2009 Toshio Kuratomi - 0.6.2-1 +- Update to 0.6.2 -- upstream bugfix requested inside bz#512438 + +* Sun Jul 26 2009 Fedora Release Engineering - 0.6.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild + +* Fri Jun 05 2009 Luke Macken - 0.6.1-2 +- Add a patch to use our own setuptools package + +* Fri Apr 17 2009 Michel Salim - 0.6.1-1 +- Update to 0.6.1 + +* Thu Feb 26 2009 Fedora Release Engineering - 0.5.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild + +* Fri Jan 2 2009 Michel Salim - 0.5.1-1 +- Update to 0.5.1 + +* Sat Nov 29 2008 Ignacio Vazquez-Abrams - 0.5-2 +- Rebuild for Python 2.6 + +* Mon Nov 24 2008 Michel Salim - 0.5-1 +- Update to 0.5 + +* Fri Oct 10 2008 Michel Salim - 0.4.3-1 +- Update to 0.4.3 + +* Wed Aug 27 2008 Toshio Kuratomi - 0.4.2-1.1 +- Fix for EL-5 build. + +* Mon Aug 25 2008 Michel Salim - 0.4.2-1 +- Update to 0.4.2 + +* Mon May 26 2008 Michel Salim - 0.3-1 +- Update to 0.3 + +* Fri May 2 2008 Michel Salim - 0.1.61950-3 +- Split documentation into subpackage +- Exclude C files (not built by default anyway) + +* Wed Apr 16 2008 José Matos - 0.1.61950-2 +- Build html documentation, include it and include the rst + documentation. + +* Thu Mar 27 2008 Michel Salim 0.1.61950-1 +- Initial package diff --git a/python-sphinx.spec b/python-sphinx.spec index aa94ee4..fd0c7e6 100644 --- a/python-sphinx.spec +++ b/python-sphinx.spec @@ -25,7 +25,7 @@ Name: python-sphinx #global prerel ... %global upstream_version %{general_version}%{?prerel} Version: %{general_version}%{?prerel:~%{prerel}} -Release: 6%{?dist} +Release: %autorelease Epoch: 1 Summary: Python documentation generator @@ -403,611 +403,4 @@ mkdir %{buildroot}%{python3_sitelib}/sphinxcontrib %changelog -* Wed Jan 24 2024 Karolina Surma - 1:7.2.6-6 -- Suppress traceback when importing the weakened sphinxcontrib* dependencies - -* Mon Jan 22 2024 Fedora Release Engineering - 1:7.2.6-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Tue Dec 12 2023 Karolina Surma - 1:7.2.6-4 -- Fix the tests run when building with Python 3.11.7, 3.12.1 and later - -* Thu Nov 16 2023 Miro Hrončok - 1:7.2.6-3 -- On Fedora, BuildRequire the sphinxcontrib packages to build the documentation - -* Wed Nov 08 2023 Miro Hrončok - 1:7.2.6-2 -- Weaken the runtime dependency on: - - python3-sphinxcontrib-applehelp - - python3-sphinxcontrib-devhelp - - python3-sphinxcontrib-jsmath - - python3-sphinxcontrib-htmlhelp - - python3-sphinxcontrib-serializinghtml - - python3-sphinxcontrib-qthelp -- Packages that want to use them during build need to BuildRequire them explicitly - -* Thu Oct 26 2023 Karolina Surma - 1:7.2.6-1 -- Update to 7.2.6 -- Fixes rhbz#2232469 - -* Thu Sep 21 2023 Karolina Surma - 1:7.1.2-2 -- Fix FTBFS with Pygments 2.16+ - -* Mon Aug 14 2023 Karolina Surma - 1:7.1.2-1 -- Update to 7.1.2 -- Fixes rhbz#2225274 - -* Mon Aug 07 2023 Karolina Surma - 1:7.0.1-1 -- Update to 7.0.1 - -* Thu Jul 27 2023 Miro Hrončok - 1:6.2.1-4 -- Don't use filelock to test this package on RHEL - -* Fri Jul 21 2023 Fedora Release Engineering - 1:6.2.1-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild - -* Thu Jul 13 2023 Karolina Surma - 1:6.2.1-2 -- Don't use websupport to build documentation on RHEL - -* Mon Jun 26 2023 Karolina Surma - 1:6.2.1-1 -- Update to 6.2.1 -- Fixes rhbz#2188968 - -* Fri Jun 16 2023 Python Maint - 1:6.1.3-4 -- Rebuilt for Python 3.12 - -* Tue Jun 13 2023 Python Maint - 1:6.1.3-3 -- Bootstrap for Python 3.12 - -* Wed May 31 2023 Yaakov Selkowitz - 1:6.1.3-2 -- Avoid html5lib test dependency in RHEL builds - -* Fri Mar 10 2023 Karolina Surma - 1:6.1.3-1 -- Update to 6.1.3 -- Fixes rhbz#2135122 - -* Thu Mar 09 2023 Karolina Surma - 1:5.3.0-4 -- Fix tests related to missing setuptools and Babel 2.12 -- Fixes rhbz#2176685 - -* Tue Jan 31 2023 Karolina Surma - 1:5.3.0-3 -- Fix tests with python-pygments 2.14+ - -* Fri Jan 20 2023 Fedora Release Engineering - 1:5.3.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild - -* Tue Nov 08 2022 Karolina Surma - 1:5.3.0-1 -- Update to 5.3.0 -- Fixes rhbz#2129546 - -* Mon Aug 15 2022 Karolina Surma - 1:5.1.1-1 -- Update to 5.1.1 -- Fixes rhbz#2110473 -- Remove reST documentation from the -doc package, ship only HTML - -* Fri Jul 22 2022 Fedora Release Engineering - 1:5.0.2-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild - -* Tue Jun 21 2022 Karolina Surma - 1:5.0.2-1 -- Update to 5.0.2 - -* Mon Jun 13 2022 Python Maint - 1:4.5.0-3 -- Rebuilt for Python 3.11 - -* Mon Jun 13 2022 Python Maint - 1:4.5.0-2 -- Bootstrap for Python 3.11 - -* Fri Apr 01 2022 Karolina Surma - 1:4.5.0-1 -- Update to 4.5.0 -- Fixes rhbz#2068924 - -* Tue Feb 01 2022 Karolina Surma - 1:4.4.0-1 -- Update to 4.4.0 -- Fixes rhbz#2033955 - -* Fri Jan 21 2022 Fedora Release Engineering - 1:4.3.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Mon Nov 29 2021 Karolina Surma - 1:4.3.1-1 -- Update to 4.3.1 -- Fixes rhbz#2027059 - -* Fri Nov 19 2021 Karolina Surma - 1:4.3.0-1 -- Update to 4.3.0 -- Fixes rhbz#2022111 - -* Fri Sep 17 2021 Karolina Surma - 1:4.2.0-1 -- Update to 4.2.0 -- Fixes rhbz#2003427 - -* Thu Sep 16 2021 Karolina Surma - 1:4.1.2-3 -- Display typing objects correctly with Python 3.10 (fix FTBFS) -- Generate correct reference to parent class if class has `_name` attribute -- Enable previously deselected test - -* Wed Aug 18 2021 Karolina Surma - 1:4.1.2-2 -- Patch python-sphinx to work with python-pygments >=2.10 - -* Mon Aug 02 2021 Karolina Surma - 1:4.1.2-1 -- Update to 4.1.2 -- Fixes rhbz#1979326 -- Backport commit to fix python-sphinx with Python 3.10-rc1 - -* Fri Jul 23 2021 Fedora Release Engineering - 1:4.0.2-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Fri Jun 11 2021 Karolina Surma - 1:4.0.2-1 -- Update to 4.0.2 -- Fixes rhbz#1948279 - -* Thu Jun 03 2021 Python Maint - 1:3.5.4-3 -- Rebuilt for Python 3.10 - -* Wed Jun 02 2021 Python Maint - 1:3.5.4-2 -- Bootstrap for Python 3.10 - -* Mon May 10 2021 Karolina Surma - 1:3.5.4-1 -- Update to 3.5.4 -- Fixes rhbz#1949477 - -* Thu Apr 01 2021 Karolina Surma - 1:3.5.3-1 -- Update to 3.5.3 -- Fixes rhbz#1941161 - -* Wed Mar 10 2021 Charalampos Stratakis - 1:3.5.2-1 -- Update 3.5.2 -- Fixes rhbz#1928459 - -* Wed Jan 27 2021 Fedora Release Engineering - 1:3.4.3-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Tue Jan 19 2021 Charalampos Stratakis - 1:3.4.3-1 -- Update to 3.4.3 -- Fixes rhbz#1909494 - -* Sat Dec 05 2020 Mattia Verga - 1:3.3.1-2 -- Unset -s from python shebang -- Fixes: rhbz#1903763 - -* Mon Nov 23 2020 Miro Hrončok - 1:3.3.1-1 -- Update to 3.3.1 -- Fixes: rhbz#1893752 - -* Wed Oct 14 2020 Tomas Hrnciar - 1:3.2.1-2 -- Backport commit to fix python-sphinx with python-pygments v2.7.1 - -* Tue Aug 18 2020 Miro Hrončok - 1:3.2.1-1 -- Update to 3.2.1 -- Remove compatibility symbolic links from /usr/libexec/ -- Fixes rhbz#1867294 - -* Fri Aug 07 2020 Miro Hrončok - 1:3.1.2-1 -- Update to 3.1.2 -- Fixes rhbz#1853901 - -* Wed Jul 29 2020 Fedora Release Engineering - 1:3.1.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Tue Jun 30 2020 Charalampos Stratakis - 1:3.1.1-1 -- Update to 3.1.1 (#1783776) - -* Sat May 23 2020 Miro Hrončok - 1:2.2.2-4 -- Rebuilt for Python 3.9 - -* Fri May 22 2020 Miro Hrončok - 1:2.2.2-3 -- Bootstrap for Python 3.9 - -* Thu Jan 30 2020 Fedora Release Engineering - 1:2.2.2-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - -* Tue Dec 10 2019 Miro Hrončok - 1:2.2.2-1 -- Update to 2.2.2 (rhbz#1743018) - -* Thu Oct 03 2019 Miro Hrončok - 1:2.1.2-6 -- Rebuilt for Python 3.8.0rc1 (#1748018) - -* Fri Aug 16 2019 Miro Hrončok - 1:2.1.2-5 -- Rebuilt for Python 3.8 - -* Thu Aug 15 2019 Miro Hrončok - 1:2.1.2-4 -- Bootstrap for Python 3.8 - -* Thu Aug 15 2019 Richard Shaw - 1:2.1.2-3 -- Rebuild for Python 3.8. - -* Fri Jul 26 2019 Fedora Release Engineering - 1:2.1.2-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Sun Jun 23 2019 Miro Hrončok - 1:2.1.2-1 -- Update to 2.1.2 (#1716158) - -* Wed Apr 10 2019 Miro Hrončok - 1:2.0.1-1 -- Update to 2.0.1 (#1697544) -- Own the sphinxcontrib directory (#1669790) - -* Wed Mar 27 2019 Charalampos Stratakis - 1:2.0.0~b2-1 -- Update to 2.0.0b2 - -* Wed Feb 27 2019 Miro Hrončok - 1:2.0.0~b1-1 -- Update to 2.0.0b1 -- Drop Python 2 package -- https://fedoraproject.org/wiki/Changes/Sphinx2 - -* Thu Feb 07 2019 Alfredo Moralejo - 1:1.8.4-1 -- Update to 1.8.4. - -* Sat Feb 02 2019 Fedora Release Engineering - 1:1.7.6-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Sun Nov 18 2018 Zbigniew Jędrzejewski-Szmek - 1:1.7.6-2 -- Drop explicit locale setting for python3, use C.UTF-8 for python2 - See https://fedoraproject.org/wiki/Changes/Remove_glibc-langpacks-all_from_buildroot - -* Mon Jul 23 2018 Marcel Plch - 1:1.7.6-1 -- Update to 1.7.6 - -* Fri Jul 13 2018 Miro Hrončok - 1:1.7.5-6 -- Remove unused dependencies on xapian and simplejson - -* Thu Jul 5 2018 Zbigniew Jędrzejewski-Szmek - 1:1.7.5-5 -- Add patch to fix build if alabaster theme is installed -- Add patch for #1589868 - -* Mon Jul 02 2018 Miro Hrončok - 1:1.7.5-4 -- Enable tests - -* Mon Jul 02 2018 Miro Hrončok - 1:1.7.5-3 -- Enable websupport - -* Mon Jul 02 2018 Miro Hrončok - 1:1.7.5-2 -- Rebuilt for Python 3.7 - -* Tue Jun 19 2018 Charalampos Stratakis - 1:1.7.5-1 -- Update to 1.7.5 (bz#1570451) - -* Mon Jun 18 2018 Miro Hrončok - 1:1.7.2-5 -- Rebuilt for Python 3.7 - -* Fri Jun 15 2018 Miro Hrončok - 1:1.7.2-4 -- Bootstrap for Python 3.7 - -* Thu Jun 14 2018 Miro Hrončok - 1:1.7.2-3 -- Bootstrap for Python 3.7 - -* Wed Apr 11 2018 Petr Viktorin - 1:1.7.2-2 -- Conditionalize the ImageMagick build dependency & tests - -* Wed Apr 11 2018 Petr Viktorin - 1:1.7.2-1 -- Update to 1.7.2 (bz#1558968) - -* Tue Mar 13 2018 Charalampos Stratakis - 1:1.7.1-1 -- Update to 1.7.1 (bz#1534802) - -* Fri Feb 09 2018 Fedora Release Engineering - 1:1.6.6-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild - -* Tue Jan 09 2018 Charalampos Stratakis - 1:1.6.6-1 -- Update to 1.6.6 (bz#1532435) - -* Mon Dec 11 2017 Iryna Shcherbina - 1:1.6.5-2 -- Fix ambiguous Python 2 dependency declarations - (See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3) - -* Mon Nov 06 2017 Charalampos Stratakis - 1:1.6.5-1 -- Update to 1.6.5 (bz#1508237) - -* Mon Oct 09 2017 Troy Dawson - 1:1.6.4-2 -- Cleanup spec file conditionals - -* Tue Sep 26 2017 Charalampos Stratakis - 1:1.6.4-1 -- Update to 1.6.4 (bz#1426928) - -* Wed Sep 20 2017 Charalampos Stratakis - 1:1.6.3-3 -- Provide the epoch tag in order to keep the upgrade path clean. - -* Thu Jul 27 2017 Fedora Release Engineering - 1.6.3-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild - -* Thu Jul 20 2017 Charalampos Stratakis - - 1.6.3-1 -- Update to 1.6.3 (bz#1426928) - -* Sat Feb 18 2017 Toshio Kuratomi - - 1.5.2-2 -- 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 - - 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 - -* Sat Feb 11 2017 Fedora Release Engineering - 1.5.1-6 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild - -* Tue Jan 31 2017 Toshio Kuratomi - - 1.5.1-5 -- environment-modules is less featureful than Lmod. - - Select the default version in a different way since environment-modules - didn't understand the symlink - - Ignore error messsages in the shell startup script as environment-modules - prints an error message if a module has already been loaded. The command - is doing the right thing for this case except that it's also printing an - error message. - -* Thu Jan 26 2017 Toshio Kuratomi - - 1.5.1-4 -- Add recipe for setting the system default to the README.fedora - -* Wed Jan 18 2017 Toshio Kuratomi - - 1.5.1-3 -- Move the unversioned executables into the python2 package as they are now - using python2 to run - -* Wed Jan 18 2017 Toshio Kuratomi - - 1.5.1-2 -- Add README.fedora so people know how to use environment-modules to switch. -- Change the default to be the python2 version to match with the guidelines -- Switch to generic environment(modules) instead of Lmod specifically. - -* Fri Dec 30 2016 Orion Poplawski - 1.5.1-1 -- Update to 1.5.1 - -* Fri Dec 30 2016 Toshio Kuratomi - 1.4.9-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. - -* Tue Dec 13 2016 Charalampos Stratakis - 1.4.9-1 -- Update to 1.4.9 -- Enable python3 tests - -* Mon Dec 12 2016 Charalampos Stratakis - 1.4.8-3 -- Rebuild for Python 3.6 -- Disable python3 tests for now - -* Thu Oct 6 2016 Avram Lubkin - 1.4.8-2 -- Added tex(luatex85.sty) dependency to support TexLive 2016 - -* Thu Oct 6 2016 Avram Lubkin - 1.4.8-1 -- Update to 1.4.8 -- Alternatives fails for scripts sometimes (bz#1382405) - -* Sun Sep 4 2016 Avram Lubkin - 1.4.6-2 -- Alternatives fails for man pages due to existing files - -* Fri Sep 2 2016 Avram Lubkin - 1.4.6-1 -- Update to 1.4.6 (bz#1370810) -- Fix unversioned Obsoletes -- Add alternatives slaves for man pages - -* Fri Aug 12 2016 Avram Lubkin - 1.4.5-1 -- Update to 1.4.5 (bz#1356336) -- Remove Recommends for latex, locale, and doc subpackages (bz#1366624) -- Remove Requires from locale subpackage (bz#1366624) -- Set executable scripts via alternatives (bz#1321413) -- Change graphviz Requires to Recommends (bz#1366706) - -* Sun Jul 03 2016 Avram Lubkin - 1.4.4-2 -- doc and locale no longer specifically require python2-sphinx -- Colapsed python3-sphinx-latex into python-latex - -* Sun Jun 12 2016 Avram Lubkin - 1.4.4-1 -- Updated to 1.4.4 -- Added python-sphinx-locale for common locale files - -* Thu Feb 04 2016 Fedora Release Engineering - 1.3.1-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild - -* Fri Nov 27 2015 Zbigniew Jędrzejewski-Szmek - 1.3.1-4 -- Obsolete napoleon extension, it is now packaged with sphinx (#1286275) -- Rename python2-Sphinx to python2-sphinx -- Add conflicts to disallow parallel installation of different versions, - which causes file conflicts because of the shared documentation files. - -* Wed Nov 25 2015 Zbigniew Jędrzejewski-Szmek - 1.3.1-3 -- Restore using python2 scripts by default (#1285535) - -* Wed Nov 25 2015 Zbigniew Jędrzejewski-Szmek - 1.3.1-2 -- Fix requirements of python2- subpackage -- Provide sphinx-*-{3.5,3} symlinks for each script - -* Tue Nov 24 2015 Julien Enselme - 1.3.1-1 -- Update to 1.3.1 (#1136284) -- Update to new guidelines -- Make the default executable use python3 - -* Tue Oct 13 2015 Robert Kuska - 1.2.3-5 -- Rebuilt for Python3.5 rebuild -- add patch to reflect that Python3.5 dropped HTMLParserError - -* Mon Jul 20 2015 Michel Alexandre Salim - 1.2.3-4 -- Fix line encoding of bundled jquery.js - -* Mon Jul 20 2015 Michel Alexandre Salim - 1.2.3-3 -- Re-introduce LaTeX subpackage, solely for pulling in LaTeX dependencies - -* Thu Jun 18 2015 Fedora Release Engineering - 1.2.3-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild - -* Thu Feb 5 2015 Michel Alexandre Salim - 1.2.3-1 -- Update to 1.2.3 -- Mark license file with %%license instead of %%doc - -* Thu Feb 5 2015 Michel Alexandre Salim - 1.2.2-10 -- Complete LaTeX builder deps (fixes bz#882166) -- Make test output verbose -- Add BRs needed to enable all tests - -* Tue Feb 3 2015 Michel Alexandre Salim - 1.2.2-9 -- python3-sphinx package also Provides: python3-sphinx-latex - -* Tue Feb 3 2015 Michel Alexandre Salim - 1.2.2-8 -- If a separate LaTeX subpackage is not generated, the main package should have - a virtual Provides: for it (bz#1187989) - -* Tue Jan 27 2015 Michel Alexandre Salim - 1.2.2-7 -- Disable separate LaTeX builder for now (bz#1185574) - -* Thu Jan 22 2015 Michel Alexandre Salim - 1.2.2-6 -- Split off LaTeX builder into its own subpackages, to remove TeXLive - dependencies from the main package. - Thanks to Robert Kuska for feedback -- Clean up python3-sphinx's locale files, they ended up in the python2 package. - Share the locale files in /usr/share instead - -* Sat Jun 07 2014 Fedora Release Engineering - 1.2.2-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild - -* Tue May 27 2014 Bohuslav Kabrda - 1.2.2-4 -- Don't own the -3 scripts by python 2 package - -* Thu May 22 2014 Bohuslav Kabrda - 1.2.2-3 -- Add sphinx-*-3 links to scripts -Resolves: #1098109 - -* Fri May 9 2014 Orion Poplawski - 1.2.2-2 -- Rebuild for Python 3.4 - -* Fri May 9 2014 Orion Poplawski - 1.2.2-1 -- Update to 1.2.2 - -* Thu Feb 13 2014 Michel Salim - 1.2.1-1 -- Update to 1.2.1 - -* Sun Aug 04 2013 Fedora Release Engineering - 1.1.3-8 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild - -* Sat Mar 9 2013 Michel Salim - 1.1.3-7 -- Fix inheritance_diagram quoting bug, exposed by the newer, stricter dot - -* Thu Feb 14 2013 Fedora Release Engineering - 1.1.3-6 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild - -* Tue Aug 21 2012 Toshio Kuratomi - 1.1.3-5 -- Fix for use of sphinx's manpage writer with docutils-0.10 - -* Mon Aug 6 2012 Michel Salim - 1.1.3-4 -- Rebuild for Python 3.3 - -* Fri Aug 3 2012 David Malcolm - 1.1.3-3 -- remove rhel logic from with_python3 conditional - -* Sat Jul 21 2012 Fedora Release Engineering - 1.1.3-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild - -* Thu Apr 5 2012 Michel Salim - 1.1.3-1 -- Update to 1.1.3 - -* Sun Feb 5 2012 Michel Salim - 1.1.2-5 -- Move python3 runtime dependencies to the right subpackage -- Properly exclude python3 binaries - -* Sat Jan 14 2012 Fedora Release Engineering - 1.1.2-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild - -* Sat Dec 17 2011 Michel Salim - 1.1.2-3 -- BR on texlive-latex for LaTeX tests - -* Thu Dec 8 2011 Michel Salim - 1.1.2-2 -- Enable python3 subpackage - -* Mon Nov 28 2011 Toshio Kuratomi - 1.1.2-1 -- Update to upstream 1.1.2 - -* Wed Feb 09 2011 Fedora Release Engineering - 1.0.7-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild - -* Tue Jan 18 2011 Toshio Kuratomi - 1.0.7-1 -- Update to upstream 1.0.7 - -* Mon Jan 17 2011 Toshio Kuratomi - 1.0.6-1 -- Update to upstream 1.0.6 - -* Mon Nov 1 2010 Michel Salim - 1.0.4-3 -- Fix -doc Makefile to allow regeneration of .rst files - -* Mon Nov 1 2010 Michel Salim - 1.0.4-2 -- Actually include *.js locale files -- Generate manpages - -* Fri Sep 17 2010 Michel Salim - 1.0.4-1 -- Update to 1.0.4 -- Remove BuildRoot and %%clean declarations - -* Thu Jul 22 2010 David Malcolm - 1.0-0.1.b2.1 -- Rebuilt for https://fedoraproject.org/wiki/Features/Python_2.7/MassRebuild - -* Mon May 31 2010 Toshio Kuratomi - 1.0-0.2.b2 -- Update to 1.0 beta 2 -- Fixes problem building html documentation in non-English locales - -* Wed May 26 2010 Michel Salim - 1.0-0.1.b1 -- Update to 1.0 beta 1 - -* Tue May 25 2010 Michel Salim - 0.6.6-1 -- Update to 0.6.6 - -* Fri May 21 2010 Toshio Kuratomi - 0.6.5-2 -- Few minor tweaks to Gareth's spec file update - -* Mon May 10 2010 Gareth Armstrong - 0.6.5-1.hp -- Update to 0.6.5 -- Initial import of python-sphinx from Fedora Rawhide for use in HP CMS -- Enforce that Sphinx requires Python 2.4 or later via an explicit BR -- Minor tweaks to spec file -- Move language files to %%{_datadir}, idea borrowed from Debian's sphinx - package -- Deliver man pages for sphinx-build & sphinx-quickstart -- Deliver rst documentation files to reST directory in doc sub-package -- Add %%check section for Python2 and add BR on python-nose - -* Wed Jan 13 2010 Toshio Kuratomi - 0.6.4-1 -- Update to 0.6.4 -- Fixes a problem using autodoc with pylons projects. - -* Fri Sep 4 2009 Michel Salim - 0.6.3-1 -- Update to 0.6.3 - -* Mon Aug 17 2009 Toshio Kuratomi - 0.6.2-1 -- Update to 0.6.2 -- upstream bugfix requested inside bz#512438 - -* Sun Jul 26 2009 Fedora Release Engineering - 0.6.1-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild - -* Fri Jun 05 2009 Luke Macken - 0.6.1-2 -- Add a patch to use our own setuptools package - -* Fri Apr 17 2009 Michel Salim - 0.6.1-1 -- Update to 0.6.1 - -* Thu Feb 26 2009 Fedora Release Engineering - 0.5.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild - -* Fri Jan 2 2009 Michel Salim - 0.5.1-1 -- Update to 0.5.1 - -* Sat Nov 29 2008 Ignacio Vazquez-Abrams - 0.5-2 -- Rebuild for Python 2.6 - -* Mon Nov 24 2008 Michel Salim - 0.5-1 -- Update to 0.5 - -* Fri Oct 10 2008 Michel Salim - 0.4.3-1 -- Update to 0.4.3 - -* Wed Aug 27 2008 Toshio Kuratomi - 0.4.2-1.1 -- Fix for EL-5 build. - -* Mon Aug 25 2008 Michel Salim - 0.4.2-1 -- Update to 0.4.2 - -* Mon May 26 2008 Michel Salim - 0.3-1 -- Update to 0.3 - -* Fri May 2 2008 Michel Salim - 0.1.61950-3 -- Split documentation into subpackage -- Exclude C files (not built by default anyway) - -* Wed Apr 16 2008 José Matos - 0.1.61950-2 -- Build html documentation, include it and include the rst - documentation. - -* Thu Mar 27 2008 Michel Salim 0.1.61950-1 -- Initial package +%autochangelog From 8f5d120071e73be80449448d1625f85a17ec0209 Mon Sep 17 00:00:00 2001 From: Python Maint Date: Fri, 7 Jun 2024 13:47:26 +0200 Subject: [PATCH 32/56] Bootstrap for Python 3.13 --- python-sphinx.spec | 2 ++ 1 file changed, 2 insertions(+) diff --git a/python-sphinx.spec b/python-sphinx.spec index fd0c7e6..a3bf722 100644 --- a/python-sphinx.spec +++ b/python-sphinx.spec @@ -1,3 +1,5 @@ +%global _without_sphinxcontrib 1 +%global _without_tests 1 # When bootstrapping sphinx in Fedora, we don't yet have sphinxcontrib-* # Without the packages, we have warnings in docs, but it's not a hard dependency # We don't want to support sphinxcontrib-* in RHEL, hence disabling the dependencies From cc540171662858573bab59fcd6d396e95b0e5521 Mon Sep 17 00:00:00 2001 From: Python Maint Date: Sun, 9 Jun 2024 16:49:43 +0200 Subject: [PATCH 33/56] Rebuilt for Python 3.13 --- python-sphinx.spec | 2 -- 1 file changed, 2 deletions(-) diff --git a/python-sphinx.spec b/python-sphinx.spec index a3bf722..fd0c7e6 100644 --- a/python-sphinx.spec +++ b/python-sphinx.spec @@ -1,5 +1,3 @@ -%global _without_sphinxcontrib 1 -%global _without_tests 1 # When bootstrapping sphinx in Fedora, we don't yet have sphinxcontrib-* # Without the packages, we have warnings in docs, but it's not a hard dependency # We don't want to support sphinxcontrib-* in RHEL, hence disabling the dependencies From fa05224c3931da7a4cbd5630ae336c5161720a3b Mon Sep 17 00:00:00 2001 From: Karolina Surma Date: Fri, 26 Apr 2024 10:19:02 +0200 Subject: [PATCH 34/56] Update to 7.3.7 Upstream dropped the dependency on filelock and html5lib, so the relevant conditionals in the specfile were removed. sphinx-test_theming.patch needed to be rebased, so it is now a proper git patch. The pytest --import-mode=importlib problem was fixed upstream. --- .gitignore | 1 + 11774.patch | 69 --------- 12362.patch | 37 +++++ 12373.patch | 145 ++++++++++++++++++ ...-the-first-party-extensions-optional.patch | 121 +++++++-------- python-sphinx.spec | 58 +++---- sources | 2 +- sphinx-test_theming.diff | 12 -- sphinx-test_theming.patch | 25 +++ 9 files changed, 288 insertions(+), 182 deletions(-) delete mode 100644 11774.patch create mode 100644 12362.patch create mode 100644 12373.patch delete mode 100644 sphinx-test_theming.diff create mode 100644 sphinx-test_theming.patch diff --git a/.gitignore b/.gitignore index fd204f3..816d1b8 100644 --- a/.gitignore +++ b/.gitignore @@ -46,3 +46,4 @@ /Sphinx-7.0.1.tar.gz /sphinx-7.1.2.tar.gz /sphinx-7.2.6.tar.gz +/sphinx-7.3.7.tar.gz diff --git a/11774.patch b/11774.patch deleted file mode 100644 index 47370b2..0000000 --- a/11774.patch +++ /dev/null @@ -1,69 +0,0 @@ -From bc8939b34037f81b8610f3b26caec128ee20a2f4 Mon Sep 17 00:00:00 2001 -From: Karolina Surma -Date: Tue, 28 Nov 2023 14:43:58 +0100 -Subject: [PATCH] Adjust the expected string to match Python 3.11+ changed - output - ---- - tests/test_ext_autodoc_configs.py | 21 +++++++++++++++++---- - 1 file changed, 17 insertions(+), 4 deletions(-) - -diff --git a/tests/test_ext_autodoc_configs.py b/tests/test_ext_autodoc_configs.py -index 45bc729b73e..0994c08e899 100644 ---- a/tests/test_ext_autodoc_configs.py -+++ b/tests/test_ext_autodoc_configs.py -@@ -11,6 +11,7 @@ - from .test_ext_autodoc import do_autodoc - - IS_PYPY = platform.python_implementation() == 'PyPy' -+IS_PY311_AND_LATER = sys.version_info >= (3, 11) - - - @contextmanager -@@ -1627,7 +1628,10 @@ def test_autodoc_default_options(app): - assert ' Iterate squares of each value.' in actual - if not IS_PYPY: - assert ' .. py:attribute:: CustomIter.__weakref__' in actual -- assert ' list of weak references to the object (if defined)' in actual -+ if IS_PY311_AND_LATER: -+ assert ' list of weak references to the object' in actual -+ else: -+ assert ' list of weak references to the object (if defined)' in actual - - # :exclude-members: None - has no effect. Unlike :members:, - # :special-members:, etc. where None == "include all", here None means -@@ -1651,7 +1655,10 @@ def test_autodoc_default_options(app): - assert ' Iterate squares of each value.' in actual - if not IS_PYPY: - assert ' .. py:attribute:: CustomIter.__weakref__' in actual -- assert ' list of weak references to the object (if defined)' in actual -+ if IS_PY311_AND_LATER: -+ assert ' list of weak references to the object' in actual -+ else: -+ assert ' list of weak references to the object (if defined)' in actual - assert ' .. py:method:: CustomIter.snafucate()' in actual - assert ' Makes this snafucated.' in actual - -@@ -1698,7 +1705,10 @@ def test_autodoc_default_options_with_values(app): - assert ' Iterate squares of each value.' in actual - if not IS_PYPY: - assert ' .. py:attribute:: CustomIter.__weakref__' not in actual -- assert ' list of weak references to the object (if defined)' not in actual -+ if IS_PY311_AND_LATER: -+ assert ' list of weak references to the object' not in actual -+ else: -+ assert ' list of weak references to the object (if defined)' not in actual - - # with :exclude-members: - app.config.autodoc_default_options = { -@@ -1722,6 +1732,9 @@ def test_autodoc_default_options_with_values(app): - assert ' Iterate squares of each value.' in actual - if not IS_PYPY: - assert ' .. py:attribute:: CustomIter.__weakref__' not in actual -- assert ' list of weak references to the object (if defined)' not in actual -+ if IS_PY311_AND_LATER: -+ assert ' list of weak references to the object' not in actual -+ else: -+ assert ' list of weak references to the object (if defined)' not in actual - assert ' .. py:method:: CustomIter.snafucate()' not in actual - assert ' Makes this snafucated.' not in actual diff --git a/12362.patch b/12362.patch new file mode 100644 index 0000000..d3ca3f7 --- /dev/null +++ b/12362.patch @@ -0,0 +1,37 @@ +From 12f63b3a0425841f2bdcda3f08e656453ea59297 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= +Date: Wed, 8 May 2024 14:38:35 +0200 +Subject: [PATCH] Move `defusedxml` import into the function using it + +Import `defusedxml` inside the `etree_parse()` function rather than +in global scope of `sphinx.testing.util`. This makes it possible +for reverse dependencies (such as `breathe`) to use this module without +adding an unnecessary transitive dependency on `defusedxml` when it's +not actually used. + +See also issue #12339. +--- + sphinx/testing/util.py | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/sphinx/testing/util.py b/sphinx/testing/util.py +index d1de8ea2b74..b2df709eea8 100644 +--- a/sphinx/testing/util.py ++++ b/sphinx/testing/util.py +@@ -11,7 +11,6 @@ + from types import MappingProxyType + from typing import TYPE_CHECKING + +-from defusedxml.ElementTree import parse as xml_parse + from docutils import nodes + from docutils.parsers.rst import directives, roles + +@@ -73,6 +72,8 @@ def assert_node(node: Node, cls: Any = None, xpath: str = "", **kwargs: Any) -> + # keep this to restrict the API usage and to have a correct return type + def etree_parse(path: str | os.PathLike[str]) -> ElementTree: + """Parse a file into a (safe) XML element tree.""" ++ from defusedxml.ElementTree import parse as xml_parse ++ + return xml_parse(path) + + diff --git a/12373.patch b/12373.patch new file mode 100644 index 0000000..2cb3c12 --- /dev/null +++ b/12373.patch @@ -0,0 +1,145 @@ +From 14da0bb6073a1ec60432340035d17948b3adb22a Mon Sep 17 00:00:00 2001 +From: Chris Sewell +Date: Wed, 15 May 2024 06:20:54 +0200 +Subject: [PATCH] =?UTF-8?q?=F0=9F=A7=AA=20Fix=20python=203.13=20tests?= +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +--- + tests/test_extensions/test_ext_autodoc.py | 2 +- + .../test_ext_autodoc_configs.py | 31 +++++++++++++------ + 2 files changed, 22 insertions(+), 11 deletions(-) + +diff --git a/tests/test_extensions/test_ext_autodoc.py b/tests/test_extensions/test_ext_autodoc.py +index a88d111bdb3..5a2e91cb5e9 100644 +--- a/tests/test_extensions/test_ext_autodoc.py ++++ b/tests/test_extensions/test_ext_autodoc.py +@@ -838,7 +838,7 @@ def test_autodoc_special_members(app): + "special-members": None, + } + if sys.version_info >= (3, 13, 0, 'alpha', 5): +- options["exclude-members"] = "__static_attributes__" ++ options["exclude-members"] = "__static_attributes__,__firstlineno__" + actual = do_autodoc(app, 'class', 'target.Class', options) + assert list(filter(lambda l: '::' in l, actual)) == [ + '.. py:class:: Class(arg)', +diff --git a/tests/test_extensions/test_ext_autodoc_configs.py b/tests/test_extensions/test_ext_autodoc_configs.py +index 6c2af5a0652..1262b15162b 100644 +--- a/tests/test_extensions/test_ext_autodoc_configs.py ++++ b/tests/test_extensions/test_ext_autodoc_configs.py +@@ -679,6 +679,10 @@ def test_autodoc_typehints_signature(app): + type_o = "~typing.Any | None" + else: + type_o = "~typing.Any" ++ if sys.version_info[:2] >= (3, 13): ++ type_ppp = "pathlib._local.PurePosixPath" ++ else: ++ type_ppp = "pathlib.PurePosixPath" + + options = {"members": None, + "undoc-members": None} +@@ -703,7 +707,7 @@ def test_autodoc_typehints_signature(app): + '', + '.. py:data:: CONST3', + ' :module: target.typehints', +- ' :type: ~pathlib.PurePosixPath', ++ f' :type: ~{type_ppp}', + " :value: PurePosixPath('/a/b/c')", + '', + ' docstring', +@@ -726,7 +730,7 @@ def test_autodoc_typehints_signature(app): + '', + ' .. py:attribute:: Math.CONST3', + ' :module: target.typehints', +- ' :type: ~pathlib.PurePosixPath', ++ f' :type: ~{type_ppp}', + " :value: PurePosixPath('/a/b/c')", + '', + '', +@@ -748,7 +752,7 @@ def test_autodoc_typehints_signature(app): + '', + ' .. py:property:: Math.path', + ' :module: target.typehints', +- ' :type: ~pathlib.PurePosixPath', ++ f' :type: ~{type_ppp}', + '', + '', + ' .. py:property:: Math.prop', +@@ -773,7 +777,7 @@ def test_autodoc_typehints_signature(app): + '', + ' docstring', + '', +- " alias of TypeVar('T', bound=\\ :py:class:`~pathlib.PurePosixPath`)", ++ f" alias of TypeVar('T', bound=\\ :py:class:`~{type_ppp}`)", + '', + '', + '.. py:function:: complex_func(arg1: str, arg2: List[int], arg3: Tuple[int, ' +@@ -802,6 +806,10 @@ def test_autodoc_typehints_signature(app): + @pytest.mark.sphinx('html', testroot='ext-autodoc', + confoverrides={'autodoc_typehints': "none"}) + def test_autodoc_typehints_none(app): ++ if sys.version_info[:2] >= (3, 13): ++ type_ppp = "pathlib._local.PurePosixPath" ++ else: ++ type_ppp = "pathlib.PurePosixPath" + options = {"members": None, + "undoc-members": None} + actual = do_autodoc(app, 'module', 'target.typehints', options) +@@ -887,7 +895,7 @@ def test_autodoc_typehints_none(app): + '', + ' docstring', + '', +- " alias of TypeVar('T', bound=\\ :py:class:`~pathlib.PurePosixPath`)", ++ f" alias of TypeVar('T', bound=\\ :py:class:`~{type_ppp}`)", + '', + '', + '.. py:function:: complex_func(arg1, arg2, arg3=None, *args, **kwargs)', +@@ -1417,7 +1425,10 @@ def test_autodoc_typehints_format_fully_qualified(app): + type_o = "typing.Any | None" + else: + type_o = "typing.Any" +- ++ if sys.version_info[:2] >= (3, 13): ++ type_ppp = "pathlib._local.PurePosixPath" ++ else: ++ type_ppp = "pathlib.PurePosixPath" + options = {"members": None, + "undoc-members": None} + actual = do_autodoc(app, 'module', 'target.typehints', options) +@@ -1441,7 +1452,7 @@ def test_autodoc_typehints_format_fully_qualified(app): + '', + '.. py:data:: CONST3', + ' :module: target.typehints', +- ' :type: pathlib.PurePosixPath', ++ f' :type: {type_ppp}', + " :value: PurePosixPath('/a/b/c')", + '', + ' docstring', +@@ -1464,7 +1475,7 @@ def test_autodoc_typehints_format_fully_qualified(app): + '', + ' .. py:attribute:: Math.CONST3', + ' :module: target.typehints', +- ' :type: pathlib.PurePosixPath', ++ f' :type: {type_ppp}', + " :value: PurePosixPath('/a/b/c')", + '', + '', +@@ -1486,7 +1497,7 @@ def test_autodoc_typehints_format_fully_qualified(app): + '', + ' .. py:property:: Math.path', + ' :module: target.typehints', +- ' :type: pathlib.PurePosixPath', ++ f' :type: {type_ppp}', + '', + '', + ' .. py:property:: Math.prop', +@@ -1511,7 +1522,7 @@ def test_autodoc_typehints_format_fully_qualified(app): + '', + ' docstring', + '', +- " alias of TypeVar('T', bound=\\ :py:class:`pathlib.PurePosixPath`)", ++ f" alias of TypeVar('T', bound=\\ :py:class:`{type_ppp}`)", + '', + '', + '.. py:function:: complex_func(arg1: str, arg2: List[int], arg3: Tuple[int, ' diff --git a/Make-the-first-party-extensions-optional.patch b/Make-the-first-party-extensions-optional.patch index ad3985a..8cb1801 100644 --- a/Make-the-first-party-extensions-optional.patch +++ b/Make-the-first-party-extensions-optional.patch @@ -1,25 +1,25 @@ -From 9699465414515f0eba76d05069e755b5bcf34eef Mon Sep 17 00:00:00 2001 +From b74128966fe4edf77a0c3a7936f6a6216833c9ed Mon Sep 17 00:00:00 2001 From: Karolina Surma -Date: Mon, 15 Jan 2024 16:19:32 +0100 +Date: Thu, 25 Apr 2024 15:58:03 +0200 Subject: [PATCH] Make the first party extensions optional, add [extensions] extra Co-authored-by: Miro Hrončok --- - pyproject.toml | 33 +++++++++++++++++++++++++++------ - sphinx/application.py | 6 +++--- - sphinx/registry.py | 9 ++++++--- - sphinx/testing/fixtures.py | 6 ++++++ - tests/test_api_translator.py | 2 ++ - tests/test_build_html.py | 3 +++ - 6 files changed, 47 insertions(+), 12 deletions(-) + pyproject.toml | 33 ++++++++++++++++---- + sphinx/application.py | 6 ++-- + sphinx/registry.py | 9 ++++-- + sphinx/testing/fixtures.py | 7 +++++ + tests/test_builders/test_build_html_maths.py | 3 ++ + tests/test_writers/test_api_translator.py | 2 ++ + 6 files changed, 48 insertions(+), 12 deletions(-) diff --git a/pyproject.toml b/pyproject.toml -index 8f93701..41c28c5 100644 +index 8aa49aa..10fa20e 100644 --- a/pyproject.toml +++ b/pyproject.toml -@@ -55,12 +55,6 @@ classifiers = [ +@@ -56,12 +56,6 @@ classifiers = [ "Topic :: Utilities", ] dependencies = [ @@ -31,8 +31,8 @@ index 8f93701..41c28c5 100644 - "sphinxcontrib-qthelp", "Jinja2>=3.0", "Pygments>=2.14", - "docutils>=0.18.1,<0.21", -@@ -76,8 +70,35 @@ dependencies = [ + "docutils>=0.18.1,<0.22", +@@ -78,8 +72,35 @@ dependencies = [ dynamic = ["version"] [project.optional-dependencies] @@ -69,10 +69,10 @@ index 8f93701..41c28c5 100644 lint = [ "flake8>=3.5.0", diff --git a/sphinx/application.py b/sphinx/application.py -index d5fbaa9..b030dab 100644 +index 7d16d9a..2a71074 100644 --- a/sphinx/application.py +++ b/sphinx/application.py -@@ -226,7 +226,7 @@ class Sphinx: +@@ -222,7 +222,7 @@ class Sphinx: # load all built-in extension modules, first-party extension modules, # and first-party themes for extension in builtin_extensions: @@ -81,7 +81,7 @@ index d5fbaa9..b030dab 100644 # load all user-given extension modules for extension in self.config.extensions: -@@ -395,7 +395,7 @@ class Sphinx: +@@ -391,7 +391,7 @@ class Sphinx: # ---- general extensibility interface ------------------------------------- @@ -90,7 +90,7 @@ index d5fbaa9..b030dab 100644 """Import and setup a Sphinx extension module. Load the extension given by the module *name*. Use this if your -@@ -403,7 +403,7 @@ class Sphinx: +@@ -399,7 +399,7 @@ class Sphinx: called twice. """ logger.debug('[app] setting up extension: %r', extname) @@ -100,10 +100,10 @@ index d5fbaa9..b030dab 100644 @staticmethod def require_sphinx(version: tuple[int, int] | str) -> None: diff --git a/sphinx/registry.py b/sphinx/registry.py -index 501661d..96d4554 100644 +index 7887858..ca95960 100644 --- a/sphinx/registry.py +++ b/sphinx/registry.py -@@ -430,7 +430,7 @@ class SphinxComponentRegistry: +@@ -436,7 +436,7 @@ class SphinxComponentRegistry: def add_html_theme(self, name: str, theme_path: str) -> None: self.html_themes[name] = theme_path @@ -112,7 +112,7 @@ index 501661d..96d4554 100644 """Load a Sphinx extension.""" if extname in app.extensions: # already loaded return -@@ -446,9 +446,12 @@ class SphinxComponentRegistry: +@@ -452,9 +452,12 @@ class SphinxComponentRegistry: try: mod = import_module(extname) except ImportError as err: @@ -125,24 +125,25 @@ index 501661d..96d4554 100644 - err) from err + raise ExtensionError(msg % extname, err) from err - setup = getattr(mod, 'setup', None) + setup: _ExtensionSetupFunc | None = getattr(mod, 'setup', None) if setup is None: diff --git a/sphinx/testing/fixtures.py b/sphinx/testing/fixtures.py -index 0cc4882..f57f709 100644 +index 6e1a122..f3fe743 100644 --- a/sphinx/testing/fixtures.py +++ b/sphinx/testing/fixtures.py -@@ -22,6 +22,7 @@ DEFAULT_ENABLED_MARKERS = [ - 'sphinx(builder, testroot=None, freshenv=False, confoverrides=None, tags=None,' - ' docutilsconf=None, parallel=0): arguments to initialize the sphinx test application.' +@@ -31,6 +31,7 @@ DEFAULT_ENABLED_MARKERS = [ + 'keep_going=False, builddir=None, docutils_conf=None' + '): arguments to initialize the sphinx test application.' ), + 'sphinxcontrib(...): required sphinxcontrib.* extensions', 'test_params(shared_result=...): test parameters.', ] -@@ -67,6 +68,11 @@ def app_params(request: Any, test_params: dict, shared_result: SharedResult, +@@ -80,6 +81,12 @@ def app_params( + Parameters that are specified by 'pytest.mark.sphinx' for sphinx.application.Sphinx initialization """ - ++ + # ##### process pytest.mark.sphinxcontrib + for info in reversed(list(request.node.iter_markers("sphinxcontrib"))): + for arg in info.args: @@ -150,11 +151,39 @@ index 0cc4882..f57f709 100644 + # ##### process pytest.mark.sphinx - pargs = {} -diff --git a/tests/test_api_translator.py b/tests/test_api_translator.py + pargs: dict[int, Any] = {} +diff --git a/tests/test_builders/test_build_html_maths.py b/tests/test_builders/test_build_html_maths.py +index 900846b..664c86e 100644 +--- a/tests/test_builders/test_build_html_maths.py ++++ b/tests/test_builders/test_build_html_maths.py +@@ -20,6 +20,7 @@ def test_html_math_renderer_is_imgmath(app, status, warning): + assert app.builder.math_renderer_name == 'imgmath' + + ++@pytest.mark.sphinxcontrib('serializinghtml', 'jsmath') + @pytest.mark.sphinx('html', testroot='basic', + confoverrides={'extensions': ['sphinxcontrib.jsmath', + 'sphinx.ext.imgmath']}) +@@ -40,6 +41,7 @@ def test_html_math_renderer_is_duplicated2(app, status, warning): + assert app.builder.math_renderer_name == 'imgmath' # The another one is chosen + + ++@pytest.mark.sphinxcontrib('jsmath') + @pytest.mark.sphinx('html', testroot='basic', + confoverrides={'extensions': ['sphinxcontrib.jsmath', + 'sphinx.ext.imgmath'], +@@ -48,6 +50,7 @@ def test_html_math_renderer_is_chosen(app, status, warning): + assert app.builder.math_renderer_name == 'imgmath' + + ++@pytest.mark.sphinxcontrib('jsmath') + @pytest.mark.sphinx('html', testroot='basic', + confoverrides={'extensions': ['sphinxcontrib.jsmath', + 'sphinx.ext.mathjax'], +diff --git a/tests/test_writers/test_api_translator.py b/tests/test_writers/test_api_translator.py index 9f2bd44..81575b7 100644 ---- a/tests/test_api_translator.py -+++ b/tests/test_api_translator.py +--- a/tests/test_writers/test_api_translator.py ++++ b/tests/test_writers/test_api_translator.py @@ -36,6 +36,7 @@ def test_singlehtml_set_translator_for_singlehtml(app, status, warning): assert translator_class.__name__ == 'ConfSingleHTMLTranslator' @@ -171,34 +200,6 @@ index 9f2bd44..81575b7 100644 @pytest.mark.sphinx('json', testroot='api-set-translator') def test_json_set_translator_for_json(app, status, warning): translator_class = app.builder.get_translator_class() -diff --git a/tests/test_build_html.py b/tests/test_build_html.py -index 07f101d..c512a33 100644 ---- a/tests/test_build_html.py -+++ b/tests/test_build_html.py -@@ -1544,6 +1544,7 @@ def test_html_math_renderer_is_imgmath(app, status, warning): - assert app.builder.math_renderer_name == 'imgmath' - - -+@pytest.mark.sphinxcontrib('serializinghtml', 'jsmath') - @pytest.mark.sphinx('html', testroot='basic', - confoverrides={'extensions': ['sphinxcontrib.jsmath', - 'sphinx.ext.imgmath']}) -@@ -1564,6 +1565,7 @@ def test_html_math_renderer_is_duplicated2(app, status, warning): - assert app.builder.math_renderer_name == 'imgmath' # The another one is chosen - - -+@pytest.mark.sphinxcontrib('jsmath') - @pytest.mark.sphinx('html', testroot='basic', - confoverrides={'extensions': ['sphinxcontrib.jsmath', - 'sphinx.ext.imgmath'], -@@ -1572,6 +1574,7 @@ def test_html_math_renderer_is_chosen(app, status, warning): - assert app.builder.math_renderer_name == 'imgmath' - - -+@pytest.mark.sphinxcontrib('jsmath') - @pytest.mark.sphinx('html', testroot='basic', - confoverrides={'extensions': ['sphinxcontrib.jsmath', - 'sphinx.ext.mathjax'], -- -2.43.0 +2.44.0 diff --git a/python-sphinx.spec b/python-sphinx.spec index fd0c7e6..c47b340 100644 --- a/python-sphinx.spec +++ b/python-sphinx.spec @@ -14,14 +14,12 @@ # Build without BuildRequires ImageMagick, to skip imgconverter tests %bcond imagemagick_tests %{undefined rhel} -# Same for filelock -- we don't want it in RHEL just to run a handful of tests here -%bcond filelock_tests %{undefined rhel} # During texlive updates, sometimes the latex environment is unstable %bcond latex_tests 1 Name: python-sphinx -%global general_version 7.2.6 +%global general_version 7.3.7 #global prerel ... %global upstream_version %{general_version}%{?prerel} Version: %{general_version}%{?prerel:~%{prerel}} @@ -38,7 +36,7 @@ Source: %{pypi_source sphinx %{upstream_version}} # Allow extra themes to exist. We pull in python3-sphinx-theme-alabaster # which causes that test to fail. -Patch: sphinx-test_theming.diff +Patch: sphinx-test_theming.patch # Make the first party extensions optional # This removes the runtime dependencies on: @@ -56,9 +54,11 @@ Patch: sphinx-test_theming.diff # https://github.com/sphinx-doc/sphinx/pull/11747 Patch: Make-the-first-party-extensions-optional.patch -# Fix the expected test docstring to match output in Python 3.11.7, 3.12.1 and later -# Proposed upstream. -Patch: https://github.com/sphinx-doc/sphinx/pull/11774.patch +# Fix tests with Python 3.13+ +Patch: https://github.com/sphinx-doc/sphinx/pull/12373.patch + +# Lazily import defusedxml only when necessary +Patch: https://github.com/sphinx-doc/sphinx/pull/12362.patch BuildArch: noarch @@ -265,26 +265,9 @@ This package contains documentation in the HTML format. %autosetup -n sphinx-%{upstream_version} -p1 %if %{without imagemagick_tests} -rm tests/test_ext_imgconverter.py +rm tests/test_extensions/test_ext_imgconverter.py %endif -%if %{without filelock_tests} -sed -i '/filelock/d' pyproject.toml -rm tests/test_build_linkcheck.py tests/test_ext_intersphinx.py -%endif - -%if %{defined rhel} -# unwanted dependency in RHEL, https://bugzilla.redhat.com/show_bug.cgi?id=1945182 -sed -i '/html5lib/d' pyproject.toml -%endif - -# Sphinx' tests import from each other, this feature is not supported by -# the 'importlib' import mode in pytest. Upstream mitigates this by invoking -# `python -m pytest` rather than `pytest` directly, but in the context of the -# RPM build we explicitly want to test the installed library rather than the -# one from PWD. -# https://github.com/sphinx-doc/sphinx/issues/11740 -sed -i '/"--import-mode=importlib",/d' pyproject.toml %generate_buildrequires %pyproject_buildrequires -r %{?with_tests:-x test} @@ -364,25 +347,20 @@ mkdir %{buildroot}%{python3_sitelib}/sphinxcontrib # Currently, all linkcheck tests and test_latex_images need internet # test_build_latex_doc needs internet to download pictures, # but fails also with it enabled, we decided to skip it entirely -# In RHEL builds, skip tests which use html5lib (excluded above) -%pytest \ -%if %{defined rhel} - --ignore tests/test_build_html.py \ - --ignore tests/test_build_latex.py \ - --ignore tests/test_build_texinfo.py \ - --ignore tests/test_domain_std.py \ - --ignore tests/test_smartquotes.py \ -%endif +# test_autodoc_type_aliases fails with Python 3.12.4, 3.13.0b3 +# skip temporarily until resolved: +# https://github.com/sphinx-doc/sphinx/issues/12430 +k="not test_autodoc_type_aliases" %if %{without internet} - -k "not linkcheck and not test_latex_images and not test_build_latex_doc" \ -%endif -; +k="${k} and not linkcheck and not test_latex_images and not test_build_latex_doc" %endif +%pytest -k "${k}" +%endif %files -n python%{python3_pkgversion}-sphinx -f sphinx.lang -%license LICENSE -%doc AUTHORS CHANGES EXAMPLES README.rst +%license LICENSE.rst +%doc README.rst %{_bindir}/sphinx-* %{python3_sitelib}/sphinx/ %dir %{python3_sitelib}/sphinxcontrib/ @@ -398,7 +376,7 @@ mkdir %{buildroot}%{python3_sitelib}/sphinxcontrib %files doc -%license LICENSE +%license LICENSE.rst %doc html diff --git a/sources b/sources index aaab39a..861235a 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (sphinx-7.2.6.tar.gz) = 9a42e38c3c54429cc008b58892297ade4ccdd67561ee671e42a1fae976955895bb5383d58cb66a4f9f7edd1cc50dc2d1f083efeef036eac9fffc205979d3ccbc +SHA512 (sphinx-7.3.7.tar.gz) = f450eaaa26a0989e9065174e23488a7f647221750238516c5d06d403540eb4277fd480f03857d24acb6b7335458ae4535ad1ad533eff6d3bbba5521d9a6deb14 diff --git a/sphinx-test_theming.diff b/sphinx-test_theming.diff deleted file mode 100644 index 30994a1..0000000 --- a/sphinx-test_theming.diff +++ /dev/null @@ -1,12 +0,0 @@ -diff -ru Sphinx-1.7.6/tests/test_theming.py Sphinx-1.7.6_patched/tests/test_theming.py ---- Sphinx-1.7.6/tests/test_theming.py 2018-07-16 11:24:40.000000000 +0200 -+++ Sphinx-1.7.6_patched/tests/test_theming.py 2018-07-20 15:17:35.049263077 +0200 -@@ -25,7 +25,7 @@ - themes.append('alabaster') - - # test Theme class API -- assert set(app.registry.html_themes.keys()) == set(themes) -+ assert set(app.registry.html_themes.keys()) >= set(themes) - assert app.registry.html_themes['test-theme'] == str(app.srcdir / 'test_theme' / 'test-theme') - assert app.registry.html_themes['ziptheme'] == str(app.srcdir / 'ziptheme.zip') - assert app.registry.html_themes['staticfiles'] == str(app.srcdir / 'test_theme' / 'staticfiles') diff --git a/sphinx-test_theming.patch b/sphinx-test_theming.patch new file mode 100644 index 0000000..c6515f7 --- /dev/null +++ b/sphinx-test_theming.patch @@ -0,0 +1,25 @@ +From 57433d8036ab1e88ad7d6c4c1a45e438f722e276 Mon Sep 17 00:00:00 2001 +From: Karolina Surma +Date: Thu, 25 Apr 2024 16:07:56 +0200 +Subject: [PATCH] Patch test_theming to accomodate for Fedora-added theme + +--- + tests/test_theming/test_theming.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/tests/test_theming/test_theming.py b/tests/test_theming/test_theming.py +index 867f8a0..281bb45 100644 +--- a/tests/test_theming/test_theming.py ++++ b/tests/test_theming/test_theming.py +@@ -50,7 +50,7 @@ def test_theme_api(app, status, warning): + ] + + # test Theme class API +- assert set(app.registry.html_themes.keys()) == set(themes) ++ assert set(app.registry.html_themes.keys()) >= set(themes) + assert app.registry.html_themes['test-theme'] == str( + app.srcdir / 'test_theme' / 'test-theme' + ) +-- +2.44.0 + From 379ab359f3708b91c973ef4c6cf327be48dea881 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 19 Jul 2024 15:58:53 +0000 Subject: [PATCH 35/56] Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild From f1121b8bac0728fb98978c1ee298e9ef859faaaa Mon Sep 17 00:00:00 2001 From: Karolina Surma Date: Thu, 22 Aug 2024 11:20:13 +0200 Subject: [PATCH 36/56] Add a smoke test --- .fmf/version | 1 + plan.fmf | 5 +++++ tests/smoke/main.fmf | 9 +++++++++ tests/smoke/source/conf.py | 5 +++++ tests/smoke/source/index.rst | 15 +++++++++++++++ 5 files changed, 35 insertions(+) create mode 100644 .fmf/version create mode 100644 plan.fmf create mode 100644 tests/smoke/main.fmf create mode 100644 tests/smoke/source/conf.py create mode 100644 tests/smoke/source/index.rst diff --git a/.fmf/version b/.fmf/version new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/.fmf/version @@ -0,0 +1 @@ +1 diff --git a/plan.fmf b/plan.fmf new file mode 100644 index 0000000..94cb32d --- /dev/null +++ b/plan.fmf @@ -0,0 +1,5 @@ +discover: + how: fmf +execute: + how: tmt + diff --git a/tests/smoke/main.fmf b/tests/smoke/main.fmf new file mode 100644 index 0000000..80e8276 --- /dev/null +++ b/tests/smoke/main.fmf @@ -0,0 +1,9 @@ +summary: run the basic documentation build +test: | + sphinx-build -M html source/ build/ && + grep '
' build/html/index.html && + grep '

Test docfile' build/html/index.html && + rm -rf build/ +require: + - python3-sphinx + - python3-sphinx-theme-alabaster diff --git a/tests/smoke/source/conf.py b/tests/smoke/source/conf.py new file mode 100644 index 0000000..3c43798 --- /dev/null +++ b/tests/smoke/source/conf.py @@ -0,0 +1,5 @@ +project = 'Test' +copyright = '2024, Test' +author = 'Test' +release = '0.3.0' +html_theme = 'alabaster' diff --git a/tests/smoke/source/index.rst b/tests/smoke/source/index.rst new file mode 100644 index 0000000..4d6fdff --- /dev/null +++ b/tests/smoke/source/index.rst @@ -0,0 +1,15 @@ +Test docfile +============ + +.. toctree:: + :maxdepth: 2 + :caption: Contents: + + + +Indices and tables +================== + +* :ref:`genindex` +* :ref:`modindex` +* :ref:`search` From 383e230ab05de6c779bbae50f70fc5c2fcc4e69e Mon Sep 17 00:00:00 2001 From: Karolina Surma Date: Fri, 20 Sep 2024 16:10:35 +0200 Subject: [PATCH 37/56] Tests sphinx extensions with the package Tested extensions: - python-sphinx-theme-alabaster - python-sphinx_rtd_theme - python-sphinxcontrib-jquery The tested extensions are the one that we pull to CentOS Stream/RHEL. --- tests/include-sphinxcontrib-jquery/main.fmf | 11 +++++++++++ tests/include-sphinxcontrib-jquery/source/conf.py | 7 +++++++ .../source/index.rst | 0 tests/{smoke => smoke-alabaster}/main.fmf | 1 + tests/{smoke => smoke-alabaster}/source/conf.py | 0 tests/smoke-alabaster/source/index.rst | 15 +++++++++++++++ tests/smoke-rtd-theme/main.fmf | 11 +++++++++++ tests/smoke-rtd-theme/source/conf.py | 8 ++++++++ tests/smoke-rtd-theme/source/index.rst | 15 +++++++++++++++ 9 files changed, 68 insertions(+) create mode 100644 tests/include-sphinxcontrib-jquery/main.fmf create mode 100644 tests/include-sphinxcontrib-jquery/source/conf.py rename tests/{smoke => include-sphinxcontrib-jquery}/source/index.rst (100%) rename tests/{smoke => smoke-alabaster}/main.fmf (83%) rename tests/{smoke => smoke-alabaster}/source/conf.py (100%) create mode 100644 tests/smoke-alabaster/source/index.rst create mode 100644 tests/smoke-rtd-theme/main.fmf create mode 100644 tests/smoke-rtd-theme/source/conf.py create mode 100644 tests/smoke-rtd-theme/source/index.rst diff --git a/tests/include-sphinxcontrib-jquery/main.fmf b/tests/include-sphinxcontrib-jquery/main.fmf new file mode 100644 index 0000000..e447827 --- /dev/null +++ b/tests/include-sphinxcontrib-jquery/main.fmf @@ -0,0 +1,11 @@ +summary: run the basic documentation build +test: | + sphinx-build -M html source/ build/ && + grep '