Compare commits

...
Sign in to create a new pull request.

134 commits

Author SHA1 Message Date
Karolina Surma
574c5a94d6 Ensure compatibility with python-docutils 0.22+ 2025-11-19 11:48:53 +01:00
Dennis van Raaij
d241286834 Make recommended TeX packages mandatory
Ensure that these packages are installed when building a package that
depends on python-sphinx-latex in a Koji build environment.
2025-10-20 21:18:27 +02:00
Dennis van Raaij
78fa545ec7 Don't build python-sphinx-latex for ELN
See also:
https://src.fedoraproject.org/rpms/python-sphinx/pull-request/74#comment-286281
2025-10-17 10:31:10 +02:00
Dennis van Raaij
0009cf4a25 Update the list of TeX packages required by Sphinx
Commands used to find the dependencies:

$ find ./sphinx -type f -and \( -name "*.sty" -or -name "*.tex*" \) \
    | xargs sed -n -e "s#.*\(RequirePackage.*\}\)#\1#p" \
    | sort | uniq

$ find ./sphinx -type f -and \( -name "*.sty" -or -name "*.tex*" \) \
    | xargs sed -n -e "s#.*\(IfFileExist.*\}\)#\1#p"\
    | sort | uniq

$ find ./sphinx -type f \
    | xargs sed -n -e "s#.*\(usepackage.*\}\).*#\1#p" \
    | sort | uniq
2025-10-14 23:11:35 +02:00
Dennis van Raaij
31b58a6666 Require package latexmk 2025-10-14 23:11:35 +02:00
Dennis van Raaij
bd77693107 Recommend package make 2025-10-14 23:11:25 +02:00
Python Maint
9db66313d0 Rebuilt for Python 3.14.0rc3 bytecode 2025-09-19 14:28:48 +02:00
Python Maint
9848821cbe Rebuilt for Python 3.14.0rc2 bytecode 2025-08-15 14:56:32 +02:00
Fedora Release Engineering
8d9f71877e Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild 2025-07-25 10:29:26 +00:00
Python Maint
5e29644eb4 Rebuilt for Python 3.14 2025-06-05 10:10:38 +02:00
Python Maint
0522916ddc Bootstrap for Python 3.14 2025-06-03 10:42:49 +02:00
Karolina Surma
aa73a643c5 Fix tests with Python 3.14.0a7+ 2025-05-30 15:39:34 +02:00
Yaakov Selkowitz
600e566ce8 Disable snowballstemmer dependency on RHEL
RHEL does not include snowball/libstemmer:

https://gitlab.com/redhat/centos-stream/rpms/python-sphinx/-/merge_requests/9
2025-05-09 13:34:41 -04:00
Yaakov Selkowitz
94392caedd Avoid pytest-xdist dependency on RHEL
python-pytest-xdist is not included in RHEL.
2025-04-10 01:24:22 -04:00
Miro Hrončok
bdccc31518 Drop test-dependency on defusedxml 2025-04-09 11:54:45 +00:00
Karolina Surma
1dedfd6334 Add compatibility with Python 3.14 2025-03-27 08:41:54 +01:00
Karolina Surma
de4dafa39e Update to 8.2.3 2025-03-06 11:06:50 +01:00
Fedora Release Engineering
cca8be3e8b Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild 2025-01-18 19:29:57 +00:00
Tomáš Hrnčiar
c97bb0f3e2 Update to 8.1.3
- Fixes: rhbz#2275375
2025-01-09 08:31:43 +01:00
Karolina Surma
383e230ab0 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.
2024-09-20 17:20:44 +02:00
Karolina Surma
f1121b8bac Add a smoke test 2024-08-22 11:29:18 +02:00
Fedora Release Engineering
379ab359f3 Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild 2024-07-19 15:58:53 +00:00
Karolina Surma
fa05224c39 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.
2024-07-16 09:22:32 +02:00
Python Maint
cc54017166 Rebuilt for Python 3.13 2024-06-09 16:49:43 +02:00
Python Maint
8f5d120071 Bootstrap for Python 3.13 2024-06-07 13:47:26 +02:00
Miro Hrončok
33d7e3b55b Convert to %autorelease and %autochangelog
[skip changelog]
2024-01-29 15:40:09 +01:00
Karolina Surma
854fb579d5 Suppress traceback when importing the weakened sphinxcontrib* dependencies 2024-01-24 11:38:31 +01:00
Fedora Release Engineering
8af563fb2b Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-22 07:19:13 +00:00
Karolina Surma
70abcdbd9f Fix test failures with Python 3.11.7, 3.12.1 and later 2023-12-12 14:14:27 +01:00
Miro Hrončok
3a7f1fc944 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.
2023-11-16 12:46:47 +01:00
Miro Hrončok
3ae8dffd93 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.
2023-11-08 16:37:59 +01:00
Karolina Surma
72bb1987ee Update to 7.2.6 2023-11-02 11:33:46 +01:00
Karolina Surma
5f7ebc734f Fix test_dark_style with python-pygments 2.16+ 2023-09-21 14:09:25 +02:00
Karolina Surma
d3ad84c154 Use sphinx instead of the %{upstream_name} macro
It's easily readable and the upstream name doesn't change that often.
2023-08-14 10:49:35 +02:00
Karolina Surma
55bd0f7f4a Update to 7.1.2 2023-08-14 10:49:35 +02:00
Karolina Surma
b64fb4b5b3 Update to 7.0.1 2023-08-07 16:29:41 +02:00
Miro Hrončok
cd973c604c Don't use filelock to test this package on RHEL 2023-07-27 10:36:15 +02:00
Fedora Release Engineering
d36e4d737b Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-07-21 14:14:17 +00:00
Karolina Surma
f907d7218a Modernize %bconds 2023-07-14 10:30:30 +02:00
Karolina Surma
0896827c70 Don't use sphinxcontrib-websupport to build the documentation on RHEL 2023-07-14 09:16:07 +02:00
Karolina Surma
d236f3e2ec Use the correct SPDX tag for -doc subpackage's license 2023-06-26 19:11:21 +02:00
Karolina Surma
43d6afce76 Update to 6.2.1 2023-06-26 19:08:51 +02:00
Python Maint
44a9235d5a Rebuilt for Python 3.12 2023-06-16 08:19:41 +02:00
Python Maint
4b48db9c79 Bootstrap for Python 3.12 2023-06-14 00:24:40 +02:00
Yaakov Selkowitz
5311862e59 Avoid html5lib test dependency in RHEL builds
python-html5lib is unwanted in RHEL.
2023-05-31 03:09:02 -04:00
Karolina Surma
fd31a7629c Stop enumerating sources and patches 2023-03-17 08:55:12 +01:00
Karolina Surma
e46bed5658 Undefine dedicated macro %_py3_shebang_s
It is more readable and less magical.
2023-03-17 08:49:27 +01:00
Karolina Surma
fa49ab85f0 Convert license to SPDX tag 2023-03-09 14:10:10 +01:00
Karolina Surma
9a29732cf9 Update to 6.1.3 2023-03-09 14:09:19 +01:00
Karolina Surma
84bf048c91 Fix test failures
- fix test failures related to Babel 2.12
- remove the tests that required setuptools in the environment
2023-03-09 09:55:07 +01:00
Karolina Surma
a31453064c Fix tests failures with Pygments 2.14 2023-01-31 16:26:54 +01:00
Fedora Release Engineering
7507893559 Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-01-20 17:26:13 +00:00
Karolina Surma
d24b3b01a9 Update to 5.3.0 2022-11-16 16:54:32 +01:00
Karolina Surma
9c0d32b9af Remove duplicate files from the built documentation 2022-08-22 14:46:37 +02:00
Karolina Surma
9104ffe553 Remove reST docs from the -doc package, ship only HTML 2022-08-22 13:56:02 +02:00
Karolina Surma
2da599dd9a Update to 5.1.1 2022-08-17 10:12:09 +02:00
Fedora Release Engineering
2fbf62bfba Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-07-22 22:27:44 +00:00
Karolina Surma
a0cc515b74 Update to 5.0.2 2022-06-30 10:49:45 +02:00
Python Maint
0b87836124 Rebuilt for Python 3.11 2022-06-13 21:14:17 +02:00
Python Maint
be9e7b1508 Bootstrap for Python 3.11 2022-06-13 18:04:49 +02:00
Karolina Surma
81f3c96c10 Update to 4.5.0 2022-04-20 11:25:50 +02:00
Miro Hrončok
055cf1292a Prepare spec for multiple flags in %py3_shebang_flags
See the relevant change of packaging guidelines:
https://pagure.io/packaging-committee/pull-request/1165

tl;dr If we ever add more flags, we want to remove s here, not all flags.
2022-03-23 12:31:47 +01:00
Karolina Surma
b0978bafd9 Update to 4.4.0 2022-02-11 16:46:34 +01:00
Charalampos Stratakis
ca6027ecf0 Add rpminspect file 2022-02-01 20:24:33 +01:00
Fedora Release Engineering
7dfe865724 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-01-21 15:38:10 +00:00
Karolina Surma
644aef964c Update to 4.3.1 2021-11-29 16:56:13 +01:00
Karolina Surma
2e80cab0b5 Update to 4.3.0 2021-11-19 15:38:40 +01:00
Karolina Surma
8aeee581aa Update to 4.2.0 2021-09-22 12:18:33 +02:00
Karolina Surma
9dc09b9e79 Enable one of previously deselected tests 2021-09-22 12:13:12 +02:00
Karolina Surma
f0f09a5087 Backport bugfixes from upstream 4.1.x branch for compatibility with Python 3.10-rc2 2021-09-22 12:12:55 +02:00
Karolina Surma
cc7f8dfbf3 Fix tests with python-pygments >= 2.10 2021-08-18 12:39:04 +02:00
Karolina Surma
924f1b1e38 Backport a patch to make python-sphinx work with Python 3.10-rc1
types.Union was renamed to types.UnionType, causing Sphinx to crash
2021-08-04 09:56:40 +02:00
Karolina Surma
0453f9e3b7 Update to 4.1.2 2021-08-03 13:53:33 +02:00
Fedora Release Engineering
eb75429039 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-07-23 09:36:24 +00:00
Karolina Surma
d76c73ce9e Update to 4.0.2 2021-06-11 13:25:22 +02:00
Python Maint
04e7c13b7b Rebuilt for Python 3.10 2021-06-03 13:18:32 +02:00
Python Maint
1376b3f859 Bootstrap for Python 3.10 2021-06-02 19:11:49 +02:00
Miro Hrončok
25af7978b4 Temporarily skip test_signature_annotations to unblock Python 3.10 rebuild 2021-05-11 10:36:13 +02:00
Karolina Surma
2fb9084204 Update to 3.5.4 2021-05-10 16:19:46 +02:00
Tomas Hrnciar
12770577f7 Enable runtime dependencies when built without tests
Runtime dependencies are currently brought in only when built with tests
as a part of -x option of %pyproject_buildrequires. But they are also needed
when building without tests, because in-tree sphinx is used to build
the documentation.
2021-04-21 12:46:16 +02:00
Karolina Surma
4459819cfc Update to 3.5.3 2021-04-01 10:30:34 +02:00
Charalampos Stratakis
5c12b53641 Update to 3.5.2 2021-03-10 20:26:20 +01:00
Fedora Release Engineering
f7572144d2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-01-27 13:30:25 +00:00
Charalampos Stratakis
4500554943 Update to 3.4.3 2021-01-19 12:47:35 +00:00
Tom Stellard
82817e3a80 Add BuildRequires: make
https://fedoraproject.org/wiki/Changes/Remove_make_from_BuildRoot
2021-01-08 20:01:30 +00:00
Mattia Verga
daad1311b1 Unset -s from python shebang 2020-12-08 11:07:38 +01:00
Miro Hrončok
67bdc19f10 Convert to pyproject macros
This adds an (optional) test dependency on Cython + gcc.
This removes an unused dependency on mock.

Not using %{pyproject_files} because the %install section is a mess.
2020-11-24 21:00:32 +01:00
Miro Hrončok
bcde98f61b Remove old Obsoletes, Provides and Conflicts 2020-11-24 21:00:32 +01:00
Miro Hrončok
9e608a0fa5 Update to 3.3.1 2020-11-23 21:38:34 +01:00
Tomas Hrnciar
976a71363d Backport commit to fix sphinx with latest version of pygments 2020-10-14 10:09:07 +02:00
Miro Hrončok
5bf9c06479 Update to 3.2.1
- Remove compatibility symbolic links from /usr/libexec/
- Use %pytest
2020-08-18 13:30:22 +02:00
Frédéric Pierret (fepitre)
884ff2afc1 spec: replace hardcoded python3
Signed-off-by: Frédéric Pierret (fepitre) <frederic.pierret@qubes-os.org>
2020-08-10 15:26:10 +00:00
Miro Hrončok
1d11fd11e2 Update to 3.1.2
Fixes https://bugzilla.redhat.com/show_bug.cgi?id=1853901
2020-08-08 02:03:30 +02:00
Fedora Release Engineering
39005de2f4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-07-29 03:58:57 +00:00
Miro Hrončok
686ccb777b Fix e-mail address in changelog 2020-06-30 18:28:53 +02:00
Charalampos Stratakis
e4c8578188 Update to 3.1.1 (#1783776) 2020-06-30 17:50:11 +02:00
Miro Hrončok
95033b7db0 Reenable latex tests 2020-05-28 20:46:34 +02:00
Miro Hrončok
1a1e29e5a8 Rebuilt for Python 3.9 2020-05-23 09:21:40 +02:00
Miro Hrončok
19463ebbdd Bootstrap for Python 3.9 2020-05-22 19:20:34 +02:00
Miro Hrončok
23b5cdf21e Backport another patch from upstream for Python 3.9 support 2020-05-20 09:58:45 +02:00
Miro Hrončok
7afb2d61aa Skip latex tests
See https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/message/ILL6SD5U74RTVPDEK4WU743USLSQCIA3/
2020-05-20 09:58:38 +02:00
Miro Hrončok
d237e99bb9 Fix tests for Python3.9.0a5+
Resolves https://bugzilla.redhat.com/show_bug.cgi?id=1829705
2020-05-11 13:19:44 +02:00
Fedora Release Engineering
bf5a2d48d8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-01-30 15:25:27 +00:00
Miro Hrončok
63a8f7aefb Stop skipping some tests that used to fail 2019-12-10 18:15:58 +01:00
Miro Hrončok
153c8a4054 Update to 2.2.2 (rhbz#1743018) 2019-12-10 18:00:39 +01:00
Charalampos Stratakis
3a5b12f688 Update to 2.2.0 (rhbz#1743018) 2019-12-10 17:49:04 +01:00
Miro Hrončok
fea4d52ef1 Rebuilt for Python 3.8.0rc1 (#1748018) 2019-10-03 14:31:05 +02:00
Miro Hrončok
a42c28ce7c Deselect test_gettext_definition_terms, test_text_definition_terms 2019-08-16 16:09:54 +02:00
Miro Hrončok
92839f3f56 Rebuilt for Python 3.8 2019-08-16 15:31:19 +02:00
Miro Hrončok
a06c535b39 Bootstrap for Python 3.8 2019-08-15 17:31:12 +02:00
Richard Shaw
8c43a53ed7 Rebuild for Python 3.8. 2019-08-15 01:28:28 -05:00
Fedora Release Engineering
e85e617e78 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2019-07-26 16:23:39 +00:00
Miro Hrončok
90754897ab Update to 2.1.2 (#1716158) 2019-06-23 12:29:55 +02:00
Miro Hrončok
dbb50a5e0f Own the sphinxcontrib directory (#1669790) 2019-04-10 17:29:29 +02:00
Miro Hrončok
833015ffe7 Update to 2.0.1 (#1697544) 2019-04-10 17:25:24 +02:00
Charalampos Stratakis
7cdc32e4ae Update to version 2.0.0b2 2019-03-27 21:40:25 +01:00
Miro Hrončok
d1c43fc658 Update to 2.0.0b1 and remove pyton2-sphinx
https://fedoraproject.org/wiki/Changes/Sphinx2
2019-03-11 14:06:48 +01:00
Alfredo Moralejo
016c639951 Update to 1.8.4 2019-02-13 10:37:15 +01:00
Fedora Release Engineering
bd7e5f534f - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2019-02-02 09:25:25 +00:00
Igor Gnatenko
d38712d2c8 Remove obsolete Group tag
References: https://fedoraproject.org/wiki/Changes/Remove_Group_Tag
2019-01-28 20:24:42 +01:00
Zbigniew Jędrzejewski-Szmek
de4211c65d Drop explicit locale setting
Python3 now sets unicode locale automatically, this workaround
should not be necessary anymore. For python2, let's use the lighter locale.
2018-11-18 22:08:30 +01:00
Marcel Plch
26b3d1a440 Remove unused patch 2018-07-31 16:56:09 +02:00
Marcel Plch
644e00c17b Update to 1.7.6 2018-07-23 18:00:01 +02:00
Miro Hrončok
9622ed923e Remove unused dependencies on xapian and simplejson 2018-07-13 17:17:13 +02:00
Zbigniew Jędrzejewski-Szmek
10b412f00c Add patch to fix build and another for #1589868 2018-07-05 18:51:53 +02:00
Miro Hrončok
88b03eafc5 Enable tests 2018-07-02 19:46:48 +02:00
Miro Hrončok
334b5cd671 Enable websupport 2018-07-02 19:18:45 +02:00
Miro Hrončok
6a162ce61a Bootstrap for 3.7 once more 2018-07-02 19:04:20 +02:00
Miro Hrončok
80327ebb05 Rebuilt for Python 3.7 2018-07-02 18:23:56 +02:00
Charalampos Stratakis
b037848b60 Update to 1.7.5 (bz#1570451) 2018-06-19 17:50:51 +02:00
Miro Hrončok
46248b49f8 Rebuilt for Python 3.7 2018-06-18 11:14:15 +02:00
Miro Hrončok
6947effe2b Bootstrap for Python 3.7 2018-06-15 11:49:53 +02:00
Miro Hrončok
74c8514689 Bootstrap for Python 3.7 2018-06-14 15:12:54 +02:00
Miro Hrončok
da1eff5e26 Allow bootstrapping sphinx
1. Introduce --without websupport

 Sphinx (build)requires sphinxcontrib-websupport but that
 (build)requires sphinx. This bcond can be used to bootstrap this.

2. Introduce --without tests

 The tests bring a lot of additional dependencies that make
 bootstrapping harder. This allows to build without tests.

3. Build the docs with self

 The documentation was built with 'python', thus importing sphinx
 from python2's sitelib. Sphinx was installed because of the above
 mentioned buildrequirement of sphinxcontrib-websupport.
 Now current sphinx from PWD is used, also python3 is used when
 available, otherwise python2. Never just python.
2018-05-14 21:10:43 +02:00
31 changed files with 1774 additions and 835 deletions

1
.fmf/version Normal file
View file

@ -0,0 +1 @@
1

36
.gitignore vendored
View file

@ -13,3 +13,39 @@
/Sphinx-1.6.6.tar.gz
/Sphinx-1.7.1.tar.gz
/Sphinx-1.7.2.tar.gz
/Sphinx-1.7.5.tar.gz
/Sphinx-1.7.6.tar.gz
/Sphinx-1.8.4.tar.gz
/Sphinx-2.0.0b1.tar.gz
/Sphinx-2.0.0b2.tar.gz
/Sphinx-2.0.1.tar.gz
/Sphinx-2.1.2.tar.gz
/Sphinx-2.2.0.tar.gz
/Sphinx-2.2.2.tar.gz
/Sphinx-3.1.1.tar.gz
/Sphinx-3.1.2.tar.gz
/Sphinx-3.2.1.tar.gz
/Sphinx-3.3.1.tar.gz
/Sphinx-3.4.3.tar.gz
/Sphinx-3.5.2.tar.gz
/Sphinx-3.5.3.tar.gz
/Sphinx-3.5.4.tar.gz
/Sphinx-4.0.2.tar.gz
/Sphinx-4.1.2.tar.gz
/Sphinx-4.2.0.tar.gz
/Sphinx-4.3.0.tar.gz
/Sphinx-4.3.1.tar.gz
/Sphinx-4.4.0.tar.gz
/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
/Sphinx-6.1.3.tar.gz
/Sphinx-6.2.1.tar.gz
/Sphinx-7.0.1.tar.gz
/sphinx-7.1.2.tar.gz
/sphinx-7.2.6.tar.gz
/sphinx-7.3.7.tar.gz
/sphinx-8.1.3.tar.gz
/sphinx-8.2.3.tar.gz

314
13527.patch Normal file
View file

@ -0,0 +1,314 @@
From 93312460e37be0ba1acbbefa553bfc25f4fc5ea9 Mon Sep 17 00:00:00 2001
From: Adam Turner <9087854+aa-turner@users.noreply.github.com>
Date: Sun, 27 Apr 2025 21:00:40 +0100
Subject: [PATCH 1/9] Fix tests for Python 3.14a7+
---
tests/test_extensions/test_ext_autodoc.py | 2 +-
tests/test_extensions/test_ext_autodoc_configs.py | 1 -
2 files changed, 1 insertion(+), 2 deletions(-)
diff --git a/tests/test_extensions/test_ext_autodoc.py b/tests/test_extensions/test_ext_autodoc.py
index a06c1bbe30d..bdcd6ef2b95 100644
--- a/tests/test_extensions/test_ext_autodoc.py
+++ b/tests/test_extensions/test_ext_autodoc.py
@@ -941,7 +941,7 @@ def test_autodoc_special_members(app):
actual = do_autodoc(app, 'class', 'target.Class', options)
assert list(filter(lambda l: '::' in l, actual)) == [
'.. py:class:: Class(arg)',
- ' .. py:attribute:: Class.__annotations__',
+ ' .. py:attribute:: Class.__annotations_cache__',
' .. py:attribute:: Class.__dict__',
' .. py:method:: Class.__init__(arg)',
' .. py:attribute:: Class.__module__',
diff --git a/tests/test_extensions/test_ext_autodoc_configs.py b/tests/test_extensions/test_ext_autodoc_configs.py
index ab7539190e0..d520e7f9cfe 100644
--- a/tests/test_extensions/test_ext_autodoc_configs.py
+++ b/tests/test_extensions/test_ext_autodoc_configs.py
@@ -1368,7 +1368,6 @@ def test_autodoc_type_aliases(app: SphinxTestApp) -> None:
'',
' .. py:attribute:: Foo.attr2',
' :module: target.autodoc_type_aliases',
- ' :type: int',
'',
' docstring',
'',
From 523f290134f644b115e18e347dce093fa0fbd662 Mon Sep 17 00:00:00 2001
From: Adam Turner <9087854+aa-turner@users.noreply.github.com>
Date: Sun, 27 Apr 2025 21:03:35 +0100
Subject: [PATCH 2/9] Fix tests for Python 3.14a7+
---
tests/test_extensions/test_ext_autodoc_configs.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tests/test_extensions/test_ext_autodoc_configs.py b/tests/test_extensions/test_ext_autodoc_configs.py
index d520e7f9cfe..2f8dc75d082 100644
--- a/tests/test_extensions/test_ext_autodoc_configs.py
+++ b/tests/test_extensions/test_ext_autodoc_configs.py
@@ -1368,6 +1368,7 @@ def test_autodoc_type_aliases(app: SphinxTestApp) -> None:
'',
' .. py:attribute:: Foo.attr2',
' :module: target.autodoc_type_aliases',
+ ' :type: int',
'',
' docstring',
'',
@@ -1440,7 +1441,6 @@ def test_autodoc_type_aliases(app: SphinxTestApp) -> None:
'',
' .. py:attribute:: Foo.attr2',
' :module: target.autodoc_type_aliases',
- ' :type: myint',
'',
' docstring',
'',
From a81bcf834822fac1cf96a2ab43c5b0d260ec532b Mon Sep 17 00:00:00 2001
From: James Addison <jay@jp-hosting.net>
Date: Tue, 6 May 2025 22:06:24 +0100
Subject: [PATCH 3/9] Tests: make test expectations pyversion-conditional
Relates-to commits 93312460e37be0ba1acbbefa553bfc25f4fc5ea9, 523f290134f644b115e18e347dce093fa0fbd662.
---
tests/test_extensions/test_ext_autodoc.py | 6 +++++-
tests/test_extensions/test_ext_autodoc_configs.py | 10 +++++++++-
2 files changed, 14 insertions(+), 2 deletions(-)
diff --git a/tests/test_extensions/test_ext_autodoc.py b/tests/test_extensions/test_ext_autodoc.py
index bdcd6ef2b95..d7cef59056e 100644
--- a/tests/test_extensions/test_ext_autodoc.py
+++ b/tests/test_extensions/test_ext_autodoc.py
@@ -938,10 +938,14 @@ def test_autodoc_special_members(app):
}
if sys.version_info >= (3, 13, 0, 'alpha', 5):
options['exclude-members'] = '__static_attributes__,__firstlineno__'
+ if sys.version_info >= (3, 14, 0, 'alpha', 7):
+ annotations_attributes = [' .. py:attribute:: Class.__annotations_cache__']
+ else:
+ annotations_attributes = [' .. py:attribute:: Class.__annotations__']
actual = do_autodoc(app, 'class', 'target.Class', options)
assert list(filter(lambda l: '::' in l, actual)) == [
'.. py:class:: Class(arg)',
- ' .. py:attribute:: Class.__annotations_cache__',
+ ] + annotations_attributes + [
' .. py:attribute:: Class.__dict__',
' .. py:method:: Class.__init__(arg)',
' .. py:attribute:: Class.__module__',
diff --git a/tests/test_extensions/test_ext_autodoc_configs.py b/tests/test_extensions/test_ext_autodoc_configs.py
index 2f8dc75d082..f449bb57809 100644
--- a/tests/test_extensions/test_ext_autodoc_configs.py
+++ b/tests/test_extensions/test_ext_autodoc_configs.py
@@ -1348,6 +1348,10 @@ def test_autodoc_type_aliases(app: SphinxTestApp) -> None:
# default
options = {'members': None}
actual = do_autodoc(app, 'module', 'target.autodoc_type_aliases', options)
+ if sys.version_info >= (3, 14, 0, 'alpha', 7):
+ attr2_typeinfo = []
+ else:
+ attr2_typeinfo = [' :type: int']
assert list(actual) == [
'',
'.. py:module:: target.autodoc_type_aliases',
@@ -1368,7 +1372,6 @@ def test_autodoc_type_aliases(app: SphinxTestApp) -> None:
'',
' .. py:attribute:: Foo.attr2',
' :module: target.autodoc_type_aliases',
- ' :type: int',
'',
' docstring',
'',
@@ -1421,6 +1424,10 @@ def test_autodoc_type_aliases(app: SphinxTestApp) -> None:
'io.StringIO': 'my.module.StringIO',
}
actual = do_autodoc(app, 'module', 'target.autodoc_type_aliases', options)
+ if sys.version_info >= (3, 14, 0, 'alpha', 7):
+ attr2_typeinfo = []
+ else:
+ attr2_typeinfo = [' :type: myint']
assert list(actual) == [
'',
'.. py:module:: target.autodoc_type_aliases',
@@ -1441,6 +1448,7 @@ def test_autodoc_type_aliases(app: SphinxTestApp) -> None:
'',
' .. py:attribute:: Foo.attr2',
' :module: target.autodoc_type_aliases',
+ ] + attr2_typeinfo + [
'',
' docstring',
'',
From 26e7a6435ad9840345455f35f62c063cb588bba7 Mon Sep 17 00:00:00 2001
From: James Addison <jay@jp-hosting.net>
Date: Tue, 6 May 2025 22:16:42 +0100
Subject: [PATCH 4/9] Tests: fixup: actually insert updated expectation
Relates-to commit a81bcf834822fac1cf96a2ab43c5b0d260ec532b.
---
tests/test_extensions/test_ext_autodoc_configs.py | 1 +
1 file changed, 1 insertion(+)
diff --git a/tests/test_extensions/test_ext_autodoc_configs.py b/tests/test_extensions/test_ext_autodoc_configs.py
index f449bb57809..fe2561aea00 100644
--- a/tests/test_extensions/test_ext_autodoc_configs.py
+++ b/tests/test_extensions/test_ext_autodoc_configs.py
@@ -1372,6 +1372,7 @@ def test_autodoc_type_aliases(app: SphinxTestApp) -> None:
'',
' .. py:attribute:: Foo.attr2',
' :module: target.autodoc_type_aliases',
+ ] + attr2_typeinfo + [
'',
' docstring',
'',
From 52c7010c4b673898af115d3a86728274a8dd620d Mon Sep 17 00:00:00 2001
From: James Addison <jay@jp-hosting.net>
Date: Tue, 6 May 2025 22:19:30 +0100
Subject: [PATCH 5/9] Tests: linting: use iterable unpacking as suggested by
`ruff`
---
tests/test_extensions/test_ext_autodoc_configs.py | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/tests/test_extensions/test_ext_autodoc_configs.py b/tests/test_extensions/test_ext_autodoc_configs.py
index fe2561aea00..39fdc454e31 100644
--- a/tests/test_extensions/test_ext_autodoc_configs.py
+++ b/tests/test_extensions/test_ext_autodoc_configs.py
@@ -1372,7 +1372,7 @@ def test_autodoc_type_aliases(app: SphinxTestApp) -> None:
'',
' .. py:attribute:: Foo.attr2',
' :module: target.autodoc_type_aliases',
- ] + attr2_typeinfo + [
+ *attr2_typeinfo,
'',
' docstring',
'',
@@ -1449,7 +1449,7 @@ def test_autodoc_type_aliases(app: SphinxTestApp) -> None:
'',
' .. py:attribute:: Foo.attr2',
' :module: target.autodoc_type_aliases',
- ] + attr2_typeinfo + [
+ *attr2_typeinfo,
'',
' docstring',
'',
From 7b3ce9b642e636fe2ec58f1e090dc79d51b1f2f0 Mon Sep 17 00:00:00 2001
From: James Addison <jay@jp-hosting.net>
Date: Tue, 6 May 2025 22:21:24 +0100
Subject: [PATCH 6/9] Tests: linting: use iterable unpacking as suggested by
`ruff` (uno mas)
---
tests/test_extensions/test_ext_autodoc.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tests/test_extensions/test_ext_autodoc.py b/tests/test_extensions/test_ext_autodoc.py
index d7cef59056e..4f38634cf51 100644
--- a/tests/test_extensions/test_ext_autodoc.py
+++ b/tests/test_extensions/test_ext_autodoc.py
@@ -945,7 +945,7 @@ def test_autodoc_special_members(app):
actual = do_autodoc(app, 'class', 'target.Class', options)
assert list(filter(lambda l: '::' in l, actual)) == [
'.. py:class:: Class(arg)',
- ] + annotations_attributes + [
+ *annotations_attributes,
' .. py:attribute:: Class.__dict__',
' .. py:method:: Class.__init__(arg)',
' .. py:attribute:: Class.__module__',
From 386ba32af878b23c5857be588f932fe2af4a2d88 Mon Sep 17 00:00:00 2001
From: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
Date: Mon, 12 May 2025 17:36:04 +0100
Subject: [PATCH 7/9] Style
---
tests/test_extensions/test_ext_autodoc.py | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/tests/test_extensions/test_ext_autodoc.py b/tests/test_extensions/test_ext_autodoc.py
index 4f38634cf51..012e708a2f3 100644
--- a/tests/test_extensions/test_ext_autodoc.py
+++ b/tests/test_extensions/test_ext_autodoc.py
@@ -939,9 +939,9 @@ def test_autodoc_special_members(app):
if sys.version_info >= (3, 13, 0, 'alpha', 5):
options['exclude-members'] = '__static_attributes__,__firstlineno__'
if sys.version_info >= (3, 14, 0, 'alpha', 7):
- annotations_attributes = [' .. py:attribute:: Class.__annotations_cache__']
+ annotations_attributes = (' .. py:attribute:: Class.__annotations_cache__',)
else:
- annotations_attributes = [' .. py:attribute:: Class.__annotations__']
+ annotations_attributes = (' .. py:attribute:: Class.__annotations__',)
actual = do_autodoc(app, 'class', 'target.Class', options)
assert list(filter(lambda l: '::' in l, actual)) == [
'.. py:class:: Class(arg)',
From 1f381ec05015fcbc695d1f0991e77241daef49c7 Mon Sep 17 00:00:00 2001
From: Adam Turner <9087854+aa-turner@users.noreply.github.com>
Date: Mon, 12 May 2025 17:38:28 +0100
Subject: [PATCH 8/9] fstr
---
tests/test_extensions/test_ext_autodoc.py | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/tests/test_extensions/test_ext_autodoc.py b/tests/test_extensions/test_ext_autodoc.py
index 012e708a2f3..7aa12db3c32 100644
--- a/tests/test_extensions/test_ext_autodoc.py
+++ b/tests/test_extensions/test_ext_autodoc.py
@@ -939,13 +939,13 @@ def test_autodoc_special_members(app):
if sys.version_info >= (3, 13, 0, 'alpha', 5):
options['exclude-members'] = '__static_attributes__,__firstlineno__'
if sys.version_info >= (3, 14, 0, 'alpha', 7):
- annotations_attributes = (' .. py:attribute:: Class.__annotations_cache__',)
+ ann_attr_name = '__annotations_cache__'
else:
- annotations_attributes = (' .. py:attribute:: Class.__annotations__',)
+ ann_attr_name = '__annotations__'
actual = do_autodoc(app, 'class', 'target.Class', options)
assert list(filter(lambda l: '::' in l, actual)) == [
'.. py:class:: Class(arg)',
- *annotations_attributes,
+ f' .. py:attribute:: Class.{ann_attr_name}',
' .. py:attribute:: Class.__dict__',
' .. py:method:: Class.__init__(arg)',
' .. py:attribute:: Class.__module__',
From 0bd1f9d1615c20078677b48a09180c4b68e27796 Mon Sep 17 00:00:00 2001
From: Adam Turner <9087854+aa-turner@users.noreply.github.com>
Date: Mon, 12 May 2025 17:40:13 +0100
Subject: [PATCH 9/9] tuple
---
tests/test_extensions/test_ext_autodoc_configs.py | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/tests/test_extensions/test_ext_autodoc_configs.py b/tests/test_extensions/test_ext_autodoc_configs.py
index 39fdc454e31..c88496ee506 100644
--- a/tests/test_extensions/test_ext_autodoc_configs.py
+++ b/tests/test_extensions/test_ext_autodoc_configs.py
@@ -1349,9 +1349,9 @@ def test_autodoc_type_aliases(app: SphinxTestApp) -> None:
options = {'members': None}
actual = do_autodoc(app, 'module', 'target.autodoc_type_aliases', options)
if sys.version_info >= (3, 14, 0, 'alpha', 7):
- attr2_typeinfo = []
+ attr2_typeinfo = ()
else:
- attr2_typeinfo = [' :type: int']
+ attr2_typeinfo = (' :type: int',)
assert list(actual) == [
'',
'.. py:module:: target.autodoc_type_aliases',
@@ -1426,9 +1426,9 @@ def test_autodoc_type_aliases(app: SphinxTestApp) -> None:
}
actual = do_autodoc(app, 'module', 'target.autodoc_type_aliases', options)
if sys.version_info >= (3, 14, 0, 'alpha', 7):
- attr2_typeinfo = []
+ attr2_typeinfo = ()
else:
- attr2_typeinfo = [' :type: myint']
+ attr2_typeinfo = (' :type: myint',)
assert list(actual) == [
'',
'.. py:module:: target.autodoc_type_aliases',

49
13610.patch Normal file
View file

@ -0,0 +1,49 @@
From 69998bdf8848614eb52ddd80923ffde7af64c0a8 Mon Sep 17 00:00:00 2001
From: James Addison <jay@jp-hosting.net>
Date: Mon, 2 Jun 2025 21:55:15 +0100
Subject: [PATCH] tests: update LaTeX label test expectations from docutils
r10151
---
tests/test_builders/test_build_latex.py | 11 +++++++++--
1 file changed, 9 insertions(+), 2 deletions(-)
diff --git a/tests/test_builders/test_build_latex.py b/tests/test_builders/test_build_latex.py
index 0d1c607462d..37e708a021e 100644
--- a/tests/test_builders/test_build_latex.py
+++ b/tests/test_builders/test_build_latex.py
@@ -12,6 +12,7 @@
from subprocess import CalledProcessError
from typing import TYPE_CHECKING
+import docutils
import pygments
import pytest
@@ -1959,10 +1960,16 @@ def test_latex_labels(app: SphinxTestApp) -> None:
result = (app.outdir / 'projectnamenotset.tex').read_text(encoding='utf8')
+ # ref: docutils r10151
+ if docutils.__version_info__[:2] < (0, 22):
+ figure_id, table_id = 'id1', 'id2'
+ else:
+ figure_id, table_id = 'id2', 'id3'
+
# figures
assert (
r'\caption{labeled figure}'
- r'\label{\detokenize{index:id1}}'
+ r'\label{\detokenize{index:' + figure_id + '}}'
r'\label{\detokenize{index:figure2}}'
r'\label{\detokenize{index:figure1}}'
r'\end{figure}'
@@ -1988,7 +1995,7 @@ def test_latex_labels(app: SphinxTestApp) -> None:
# tables
assert (
r'\sphinxcaption{table caption}'
- r'\label{\detokenize{index:id2}}'
+ r'\label{\detokenize{index:' + table_id + '}}'
r'\label{\detokenize{index:table2}}'
r'\label{\detokenize{index:table1}}'
) in result

30
13883.patch Normal file
View file

@ -0,0 +1,30 @@
From 4d842a2c4909fe360172826a46eb88b442f44858 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?G=C3=BCnter=20Milde?= <milde@users.sf.net>
Date: Tue, 9 Sep 2025 16:17:15 +0200
Subject: [PATCH] Fix test setup for directive tests.
Set the "parent" attribute of RSTState instances to the `document`
instead of None. The attribute holds the state machines "current node"
which is initialized to the `document` in `RSTStateMachine.run()` and
required since Docutils 0.22.1 in `RSTState.nested_parse()` to correctly
support sections in nested parsing.
---
tests/test_util/test_util_docutils_sphinx_directive.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tests/test_util/test_util_docutils_sphinx_directive.py b/tests/test_util/test_util_docutils_sphinx_directive.py
index ecfcab0..7a26e96 100644
--- a/tests/test_util/test_util_docutils_sphinx_directive.py
+++ b/tests/test_util/test_util_docutils_sphinx_directive.py
@@ -38,7 +38,7 @@ def make_directive_and_state(
inliner = Inliner()
inliner.init_customizations(state.document.settings)
state.inliner = inliner
- state.parent = None
+ state.parent = state.document
state.memo = SimpleNamespace(
document=state.document,
language=english,
--
2.51.1

29
8962398b761c3d85a.patch Normal file
View file

@ -0,0 +1,29 @@
From 8962398b761c3d85a7c74b6f789b3ffb127bde0c Mon Sep 17 00:00:00 2001
From: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
Date: Thu, 6 Mar 2025 16:03:44 +0000
Subject: [PATCH] autosummary: Update test for Python 3.14.0a5+ (#13418)
`types.UnionType` and `typing.Union` have been merged.
---
tests/test_extensions/test_ext_autosummary.py | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/tests/test_extensions/test_ext_autosummary.py b/tests/test_extensions/test_ext_autosummary.py
index 35dc7d180ef..c807ddba3d1 100644
--- a/tests/test_extensions/test_ext_autosummary.py
+++ b/tests/test_extensions/test_ext_autosummary.py
@@ -447,8 +447,12 @@ def test_autosummary_generate_content_for_module_imported_members(app):
]
assert context['functions'] == ['bar']
assert context['all_functions'] == ['_quux', 'bar']
- assert context['classes'] == ['Class', 'Foo']
- assert context['all_classes'] == ['Class', 'Foo', '_Baz']
+ if sys.version_info >= (3, 14, 0, 'alpha', 5):
+ assert context['classes'] == ['Class', 'Foo', 'Union']
+ assert context['all_classes'] == ['Class', 'Foo', 'Union', '_Baz']
+ else:
+ assert context['classes'] == ['Class', 'Foo']
+ assert context['all_classes'] == ['Class', 'Foo', '_Baz']
assert context['exceptions'] == ['Exc']
assert context['all_exceptions'] == ['Exc', '_Exc']
assert context['attributes'] == ['CONSTANT1', 'qux', 'quuz', 'non_imported_member']

View file

@ -0,0 +1,205 @@
From f3fba803e1c39232f86acc9a21657cad171ce71b Mon Sep 17 00:00:00 2001
From: Karolina Surma <ksurma@redhat.com>
Date: Wed, 5 Mar 2025 12:14:49 +0100
Subject: [PATCH] Make the first party extensions optional, add [extensions]
extra
Co-authored-by: Miro Hrončok <miro@hroncok.cz>
---
pyproject.toml | 33 ++++++++++++++++----
sphinx/application.py | 6 ++--
sphinx/registry.py | 10 +++---
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(+), 13 deletions(-)
diff --git a/pyproject.toml b/pyproject.toml
index c4b1b6d..4e59e90 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -67,12 +67,6 @@ classifiers = [
"Typing :: Typed",
]
dependencies = [
- "sphinxcontrib-applehelp>=1.0.7",
- "sphinxcontrib-devhelp>=1.0.6",
- "sphinxcontrib-htmlhelp>=2.0.6",
- "sphinxcontrib-jsmath>=1.0.1",
- "sphinxcontrib-qthelp>=1.0.6",
- "sphinxcontrib-serializinghtml>=1.1.9",
"Jinja2>=3.1",
"Pygments>=2.17",
"docutils>=0.20,<0.22",
@@ -88,8 +82,35 @@ dependencies = [
dynamic = ["version"]
[project.optional-dependencies]
+applehelp = [
+ "sphinxcontrib-applehelp>=1.0.7",
+]
+devhelp = [
+ "sphinxcontrib-devhelp>=1.0.6",
+]
+jsmath = [
+ "sphinxcontrib-jsmath>=1.0.1",
+]
+htmlhelp = [
+ "sphinxcontrib-htmlhelp>=2.0.6",
+]
+serializinghtml = [
+ "sphinxcontrib-serializinghtml>=1.1.9",
+]
+qthelp = [
+ "sphinxcontrib-qthelp>=1.0.6",
+]
+extensions = [
+ "sphinx[applehelp]",
+ "sphinx[devhelp]",
+ "sphinx[jsmath]",
+ "sphinx[htmlhelp]",
+ "sphinx[serializinghtml]",
+ "sphinx[qthelp]",
+]
docs = [
"sphinxcontrib-websupport",
+ "sphinx[extensions]",
]
lint = [
"ruff==0.9.9",
diff --git a/sphinx/application.py b/sphinx/application.py
index fe0e8bd..dcb3d75 100644
--- a/sphinx/application.py
+++ b/sphinx/application.py
@@ -284,7 +284,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, skip_nonimportable=extension in _first_party_extensions)
# load all user-given extension modules
for extension in self.config.extensions:
@@ -478,7 +478,7 @@ class Sphinx:
# ---- general extensibility interface -------------------------------------
- def setup_extension(self, extname: str) -> 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
@@ -486,7 +486,7 @@ class Sphinx:
called twice.
"""
logger.debug('[app] setting up extension: %r', extname)
- self.registry.load_extension(self, extname)
+ 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 ce52a03..3bc90d5 100644
--- a/sphinx/registry.py
+++ b/sphinx/registry.py
@@ -519,7 +519,7 @@ class SphinxComponentRegistry:
def add_html_theme(self, name: str, theme_path: str | os.PathLike[str]) -> None:
self.html_themes[name] = _StrPath(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
@@ -540,10 +540,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: _ExtensionSetupFunc | None = getattr(mod, 'setup', None)
if setup is None:
diff --git a/sphinx/testing/fixtures.py b/sphinx/testing/fixtures.py
index ec143fa..e6d9da1 100644
--- a/sphinx/testing/fixtures.py
+++ b/sphinx/testing/fixtures.py
@@ -31,6 +31,7 @@ DEFAULT_ENABLED_MARKERS = [
'builddir=None, docutils_conf=None'
'): arguments to initialize the sphinx test application.'
),
+ 'sphinxcontrib(...): required sphinxcontrib.* extensions',
'test_params(shared_result=...): test parameters.',
]
@@ -79,6 +80,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:
+ pytest.importorskip("sphinxcontrib." + arg)
+
# ##### process pytest.mark.sphinx
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 cc21142..16382e3 100644
--- a/tests/test_builders/test_build_html_maths.py
+++ b/tests/test_builders/test_build_html_maths.py
@@ -37,6 +37,7 @@ def test_html_math_renderer_is_imgmath(app: SphinxTestApp) -> None:
assert app.builder.math_renderer_name == 'imgmath'
+@pytest.mark.sphinxcontrib('serializinghtml', 'jsmath')
@pytest.mark.sphinx(
'html',
testroot='basic',
@@ -62,6 +63,7 @@ def test_html_math_renderer_is_duplicated2(app: SphinxTestApp) -> None:
assert app.builder.math_renderer_name == 'imgmath' # The another one is chosen
+@pytest.mark.sphinxcontrib('jsmath')
@pytest.mark.sphinx(
'html',
testroot='basic',
@@ -75,6 +77,7 @@ def test_html_math_renderer_is_chosen(app: SphinxTestApp) -> None:
assert app.builder.math_renderer_name == 'imgmath'
+@pytest.mark.sphinxcontrib('jsmath')
@pytest.mark.sphinx(
'html',
testroot='basic',
diff --git a/tests/test_writers/test_api_translator.py b/tests/test_writers/test_api_translator.py
index 1220192..8e8bb33 100644
--- a/tests/test_writers/test_api_translator.py
+++ b/tests/test_writers/test_api_translator.py
@@ -47,6 +47,7 @@ def test_singlehtml_set_translator_for_singlehtml(app: SphinxTestApp) -> None:
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: SphinxTestApp) -> None:
translator_class = app.builder.get_translator_class()
@@ -54,6 +55,7 @@ def test_pickle_set_translator_for_pickle(app: SphinxTestApp) -> None:
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: SphinxTestApp) -> None:
translator_class = app.builder.get_translator_class()
--
2.48.1

View file

@ -1,27 +0,0 @@
Sphinx with autodoc is sensitive to whether it is run via Python2 or Python3
as it uses the Python version that it is invoked with to parse the source
files for docstrings. Unfortunately, there's no logic to detect this within
the sphinx commands and the standard Makefiles generated by sphinx-quickstart
don't give the user any hint that it might be a problem.
The Fedora package tries to mitigate this problem by allowing the user to
switch between the Python2 and Python3 versions using environment-modules. To
switch to the Python3 commands, use::
module swap python-sphinx/python3-sphinx
To switch to the Python2 version, use::
module swap python-sphinx/python2-sphinx
The default install uses the python2 version of the modules.
If the system administrator wishes to change the default, edit the
/etc/profile.d/zz-modules-python-sphinx.sh and
/etc/profile.d/zz-modules-python-sphinx.csh files to specify a specific
alternative to use. For instance, to make the python3 version the default,
modify it like so::
@@ -1,2 +1,2 @@
# Add path to the default python-sphinx scripts on this version of Fedora
-module load python-sphinx
+module load python-sphinx/python3-sphinx

608
changelog Normal file
View file

@ -0,0 +1,608 @@
* Wed Jan 24 2024 Karolina Surma <ksurma@redhat.com> - 1:7.2.6-6
- Suppress traceback when importing the weakened sphinxcontrib* dependencies
* Mon Jan 22 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1:7.2.6-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Tue Dec 12 2023 Karolina Surma <ksurma@redhat.com> - 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 <mhroncok@redhat.com> - 1:7.2.6-3
- On Fedora, BuildRequire the sphinxcontrib packages to build the documentation
* Wed Nov 08 2023 Miro Hrončok <mhroncok@redhat.com> - 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 <ksurma@redhat.com> - 1:7.2.6-1
- Update to 7.2.6
- Fixes rhbz#2232469
* Thu Sep 21 2023 Karolina Surma <ksurma@redhat.com> - 1:7.1.2-2
- Fix FTBFS with Pygments 2.16+
* Mon Aug 14 2023 Karolina Surma <ksurma@redhat.com> - 1:7.1.2-1
- Update to 7.1.2
- Fixes rhbz#2225274
* Mon Aug 07 2023 Karolina Surma <ksurma@redhat.com> - 1:7.0.1-1
- Update to 7.0.1
* Thu Jul 27 2023 Miro Hrončok <mhroncok@redhat.com> - 1:6.2.1-4
- Don't use filelock to test this package on RHEL
* Fri Jul 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1:6.2.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Thu Jul 13 2023 Karolina Surma <ksurma@redhat.com> - 1:6.2.1-2
- Don't use websupport to build documentation on RHEL
* Mon Jun 26 2023 Karolina Surma <ksurma@redhat.com> - 1:6.2.1-1
- Update to 6.2.1
- Fixes rhbz#2188968
* Fri Jun 16 2023 Python Maint <python-maint@redhat.com> - 1:6.1.3-4
- Rebuilt for Python 3.12
* Tue Jun 13 2023 Python Maint <python-maint@redhat.com> - 1:6.1.3-3
- Bootstrap for Python 3.12
* Wed May 31 2023 Yaakov Selkowitz <yselkowi@redhat.com> - 1:6.1.3-2
- Avoid html5lib test dependency in RHEL builds
* Fri Mar 10 2023 Karolina Surma <ksurma@redhat.com> - 1:6.1.3-1
- Update to 6.1.3
- Fixes rhbz#2135122
* Thu Mar 09 2023 Karolina Surma <ksurma@redhat.com> - 1:5.3.0-4
- Fix tests related to missing setuptools and Babel 2.12
- Fixes rhbz#2176685
* Tue Jan 31 2023 Karolina Surma <ksurma@redhat.com> - 1:5.3.0-3
- Fix tests with python-pygments 2.14+
* Fri Jan 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1:5.3.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Tue Nov 08 2022 Karolina Surma <ksurma@redhat.com> - 1:5.3.0-1
- Update to 5.3.0
- Fixes rhbz#2129546
* Mon Aug 15 2022 Karolina Surma <ksurma@redhat.com> - 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 <releng@fedoraproject.org> - 1:5.0.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Tue Jun 21 2022 Karolina Surma <ksurma@redhat.com> - 1:5.0.2-1
- Update to 5.0.2
* Mon Jun 13 2022 Python Maint <python-maint@redhat.com> - 1:4.5.0-3
- Rebuilt for Python 3.11
* Mon Jun 13 2022 Python Maint <python-maint@redhat.com> - 1:4.5.0-2
- Bootstrap for Python 3.11
* Fri Apr 01 2022 Karolina Surma <ksurma@redhat.com> - 1:4.5.0-1
- Update to 4.5.0
- Fixes rhbz#2068924
* Tue Feb 01 2022 Karolina Surma <ksurma@redhat.com> - 1:4.4.0-1
- Update to 4.4.0
- Fixes rhbz#2033955
* Fri Jan 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1:4.3.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Mon Nov 29 2021 Karolina Surma <ksurma@redhat.com> - 1:4.3.1-1
- Update to 4.3.1
- Fixes rhbz#2027059
* Fri Nov 19 2021 Karolina Surma <ksurma@redhat.com> - 1:4.3.0-1
- Update to 4.3.0
- Fixes rhbz#2022111
* Fri Sep 17 2021 Karolina Surma <ksurma@redhat.com> - 1:4.2.0-1
- Update to 4.2.0
- Fixes rhbz#2003427
* Thu Sep 16 2021 Karolina Surma <ksurma@redhat.com> - 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 <ksurma@redhat.com> - 1:4.1.2-2
- Patch python-sphinx to work with python-pygments >=2.10
* Mon Aug 02 2021 Karolina Surma <ksurma@redhat.com> - 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 <releng@fedoraproject.org> - 1:4.0.2-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Fri Jun 11 2021 Karolina Surma <ksurma@redhat.com> - 1:4.0.2-1
- Update to 4.0.2
- Fixes rhbz#1948279
* Thu Jun 03 2021 Python Maint <python-maint@redhat.com> - 1:3.5.4-3
- Rebuilt for Python 3.10
* Wed Jun 02 2021 Python Maint <python-maint@redhat.com> - 1:3.5.4-2
- Bootstrap for Python 3.10
* Mon May 10 2021 Karolina Surma <ksurma@redhat.com> - 1:3.5.4-1
- Update to 3.5.4
- Fixes rhbz#1949477
* Thu Apr 01 2021 Karolina Surma <ksurma@redhat.com> - 1:3.5.3-1
- Update to 3.5.3
- Fixes rhbz#1941161
* Wed Mar 10 2021 Charalampos Stratakis <cstratak@redhat.com> - 1:3.5.2-1
- Update 3.5.2
- Fixes rhbz#1928459
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.4.3-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Tue Jan 19 2021 Charalampos Stratakis <cstratak@redhat.com> - 1:3.4.3-1
- Update to 3.4.3
- Fixes rhbz#1909494
* Sat Dec 05 2020 Mattia Verga <mattia.verga@protonmail.com> - 1:3.3.1-2
- Unset -s from python shebang
- Fixes: rhbz#1903763
* Mon Nov 23 2020 Miro Hrončok <mhroncok@redhat.com> - 1:3.3.1-1
- Update to 3.3.1
- Fixes: rhbz#1893752
* Wed Oct 14 2020 Tomas Hrnciar <thrnciar@redhat.com> - 1:3.2.1-2
- Backport commit to fix python-sphinx with python-pygments v2.7.1
* Tue Aug 18 2020 Miro Hrončok <mhroncok@redhat.com> - 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 <mhroncok@redhat.com> - 1:3.1.2-1
- Update to 3.1.2
- Fixes rhbz#1853901
* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.1.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Tue Jun 30 2020 Charalampos Stratakis <cstratak@redhat.com> - 1:3.1.1-1
- Update to 3.1.1 (#1783776)
* Sat May 23 2020 Miro Hrončok <mhroncok@redhat.com> - 1:2.2.2-4
- Rebuilt for Python 3.9
* Fri May 22 2020 Miro Hrončok <mhroncok@redhat.com> - 1:2.2.2-3
- Bootstrap for Python 3.9
* Thu Jan 30 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1:2.2.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Tue Dec 10 2019 Miro Hrončok <mhroncok@redhat.com> - 1:2.2.2-1
- Update to 2.2.2 (rhbz#1743018)
* Thu Oct 03 2019 Miro Hrončok <mhroncok@redhat.com> - 1:2.1.2-6
- Rebuilt for Python 3.8.0rc1 (#1748018)
* Fri Aug 16 2019 Miro Hrončok <mhroncok@redhat.com> - 1:2.1.2-5
- Rebuilt for Python 3.8
* Thu Aug 15 2019 Miro Hrončok <mhroncok@redhat.com> - 1:2.1.2-4
- Bootstrap for Python 3.8
* Thu Aug 15 2019 Richard Shaw <hobbes1069@gmail.com> - 1:2.1.2-3
- Rebuild for Python 3.8.
* Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1:2.1.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Sun Jun 23 2019 Miro Hrončok <mhroncok@redhat.com> - 1:2.1.2-1
- Update to 2.1.2 (#1716158)
* Wed Apr 10 2019 Miro Hrončok <mhroncok@redhat.com> - 1:2.0.1-1
- Update to 2.0.1 (#1697544)
- Own the sphinxcontrib directory (#1669790)
* Wed Mar 27 2019 Charalampos Stratakis <cstratak@redhat.com> - 1:2.0.0~b2-1
- Update to 2.0.0b2
* Wed Feb 27 2019 Miro Hrončok <mhroncok@redhat.com> - 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 <amoralej@redhat.com> - 1:1.8.4-1
- Update to 1.8.4.
* Sat Feb 02 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1:1.7.6-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Sun Nov 18 2018 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 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 <mplch@redhat.com> - 1:1.7.6-1
- Update to 1.7.6
* Fri Jul 13 2018 Miro Hrončok <mhroncok@redhat.com> - 1:1.7.5-6
- Remove unused dependencies on xapian and simplejson
* Thu Jul 5 2018 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 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 <mhroncok@redhat.com> - 1:1.7.5-4
- Enable tests
* Mon Jul 02 2018 Miro Hrončok <mhroncok@redhat.com> - 1:1.7.5-3
- Enable websupport
* Mon Jul 02 2018 Miro Hrončok <mhroncok@redhat.com> - 1:1.7.5-2
- Rebuilt for Python 3.7
* Tue Jun 19 2018 Charalampos Stratakis <cstratak@redhat.com> - 1:1.7.5-1
- Update to 1.7.5 (bz#1570451)
* Mon Jun 18 2018 Miro Hrončok <mhroncok@redhat.com> - 1:1.7.2-5
- Rebuilt for Python 3.7
* Fri Jun 15 2018 Miro Hrončok <mhroncok@redhat.com> - 1:1.7.2-4
- Bootstrap for Python 3.7
* Thu Jun 14 2018 Miro Hrončok <mhroncok@redhat.com> - 1:1.7.2-3
- Bootstrap for Python 3.7
* Wed Apr 11 2018 Petr Viktorin <pviktori@redhat.com> - 1:1.7.2-2
- Conditionalize the ImageMagick build dependency & tests
* Wed Apr 11 2018 Petr Viktorin <pviktori@redhat.com> - 1:1.7.2-1
- Update to 1.7.2 (bz#1558968)
* Tue Mar 13 2018 Charalampos Stratakis <cstratak@redhat.com> - 1:1.7.1-1
- Update to 1.7.1 (bz#1534802)
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1:1.6.6-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Tue Jan 09 2018 Charalampos Stratakis <cstratak@redhat.com> - 1:1.6.6-1
- Update to 1.6.6 (bz#1532435)
* Mon Dec 11 2017 Iryna Shcherbina <ishcherb@redhat.com> - 1:1.6.5-2
- Fix ambiguous Python 2 dependency declarations
(See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3)
* Mon Nov 06 2017 Charalampos Stratakis <cstratak@redhat.com> - 1:1.6.5-1
- Update to 1.6.5 (bz#1508237)
* Mon Oct 09 2017 Troy Dawson <tdawson@redhat.com> - 1:1.6.4-2
- Cleanup spec file conditionals
* Tue Sep 26 2017 Charalampos Stratakis <cstratak@redhat.com> - 1:1.6.4-1
- Update to 1.6.4 (bz#1426928)
* Wed Sep 20 2017 Charalampos Stratakis <cstratak@redhat.com> - 1:1.6.3-3
- Provide the epoch tag in order to keep the upgrade path clean.
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.6.3-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Thu Jul 20 2017 Charalampos Stratakis <cstratak@redhat.com> - - 1.6.3-1
- Update to 1.6.3 (bz#1426928)
* Sat Feb 18 2017 Toshio Kuratomi <toshio@fedoraproject.org> - - 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 <toshio@fedoraproject.org> - - 1.5.2-1
- Update to 1.5.2
- Remove a few latex dependencies that are no longer needed
- Remove xapian patch; now in upstream tarball
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.5.1-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Tue Jan 31 2017 Toshio Kuratomi <toshio@fedoraproject.org> - - 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 <toshio@fedoraproject.org> - - 1.5.1-4
- Add recipe for setting the system default to the README.fedora
* Wed Jan 18 2017 Toshio Kuratomi <toshio@fedoraproject.org> - - 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 <toshio@fedoraproject.org> - - 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 <orion@cora.nwra.com> - 1.5.1-1
- Update to 1.5.1
* Fri Dec 30 2016 Toshio Kuratomi <toshio@fedoraproject.org> - 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 <cstratak@redhat.com> - 1.4.9-1
- Update to 1.4.9
- Enable python3 tests
* Mon Dec 12 2016 Charalampos Stratakis <cstratak@redhat.com> - 1.4.8-3
- Rebuild for Python 3.6
- Disable python3 tests for now
* Thu Oct 6 2016 Avram Lubkin <aviso@fedoraproject.org> - 1.4.8-2
- Added tex(luatex85.sty) dependency to support TexLive 2016
* Thu Oct 6 2016 Avram Lubkin <aviso@fedoraproject.org> - 1.4.8-1
- Update to 1.4.8
- Alternatives fails for scripts sometimes (bz#1382405)
* Sun Sep 4 2016 Avram Lubkin <aviso@fedoraproject.org> - 1.4.6-2
- Alternatives fails for man pages due to existing files
* Fri Sep 2 2016 Avram Lubkin <aviso@fedoraproject.org> - 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 <aviso@fedoraproject.org> - 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 <aviso@fedoraproject.org> - 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 <aviso@fedoraproject.org> - 1.4.4-1
- Updated to 1.4.4
- Added python-sphinx-locale for common locale files
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1.3.1-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Fri Nov 27 2015 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 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 <zbyszek@in.waw.pl> - 1.3.1-3
- Restore using python2 scripts by default (#1285535)
* Wed Nov 25 2015 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 1.3.1-2
- Fix requirements of python2- subpackage
- Provide sphinx-*-{3.5,3} symlinks for each script
* Tue Nov 24 2015 Julien Enselme <jujens@jujens.eu> - 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 <rkuska@redhat.com> - 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 <salimma@fedoraproject.org> - 1.2.3-4
- Fix line encoding of bundled jquery.js
* Mon Jul 20 2015 Michel Alexandre Salim <salimma@fedoraproject.org> - 1.2.3-3
- Re-introduce LaTeX subpackage, solely for pulling in LaTeX dependencies
* Thu Jun 18 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.2.3-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Thu Feb 5 2015 Michel Alexandre Salim <salimma@fedoraproject.org> - 1.2.3-1
- Update to 1.2.3
- Mark license file with %%license instead of %%doc
* Thu Feb 5 2015 Michel Alexandre Salim <salimma@fedoraproject.org> - 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 <salimma@fedoraproject.org> - 1.2.2-9
- python3-sphinx package also Provides: python3-sphinx-latex
* Tue Feb 3 2015 Michel Alexandre Salim <salimma@fedoraproject.org> - 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 <salimma@fedoraproject.org> - 1.2.2-7
- Disable separate LaTeX builder for now (bz#1185574)
* Thu Jan 22 2015 Michel Alexandre Salim <salimma@fedoraproject.org> - 1.2.2-6
- Split off LaTeX builder into its own subpackages, to remove TeXLive
dependencies from the main package.
Thanks to Robert Kuska <rkuska@redhat.com> 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 <rel-eng@lists.fedoraproject.org> - 1.2.2-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Tue May 27 2014 Bohuslav Kabrda <bkabrda@redhat.com> - 1.2.2-4
- Don't own the -3 scripts by python 2 package
* Thu May 22 2014 Bohuslav Kabrda <bkabrda@redhat.com> - 1.2.2-3
- Add sphinx-*-3 links to scripts
Resolves: #1098109
* Fri May 9 2014 Orion Poplawski <orion@cora.nwra.com> - 1.2.2-2
- Rebuild for Python 3.4
* Fri May 9 2014 Orion Poplawski <orion@cora.nwra.com> - 1.2.2-1
- Update to 1.2.2
* Thu Feb 13 2014 Michel Salim <salimma@fedoraproject.org> - 1.2.1-1
- Update to 1.2.1
* Sun Aug 04 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.1.3-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
* Sat Mar 9 2013 Michel Salim <salimma@fedoraproject.org> - 1.1.3-7
- Fix inheritance_diagram quoting bug, exposed by the newer, stricter dot
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.1.3-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
* Tue Aug 21 2012 Toshio Kuratomi <toshio@fedoraproject.org> - 1.1.3-5
- Fix for use of sphinx's manpage writer with docutils-0.10
* Mon Aug 6 2012 Michel Salim <salimma@fedoraproject.org> - 1.1.3-4
- Rebuild for Python 3.3
* Fri Aug 3 2012 David Malcolm <dmalcolm@redhat.com> - 1.1.3-3
- remove rhel logic from with_python3 conditional
* Sat Jul 21 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.1.3-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
* Thu Apr 5 2012 Michel Salim <salimma@fedoraproject.org> - 1.1.3-1
- Update to 1.1.3
* Sun Feb 5 2012 Michel Salim <salimma@fedoraproject.org> - 1.1.2-5
- Move python3 runtime dependencies to the right subpackage
- Properly exclude python3 binaries
* Sat Jan 14 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.1.2-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
* Sat Dec 17 2011 Michel Salim <salimma@fedoraproject.org> - 1.1.2-3
- BR on texlive-latex for LaTeX tests
* Thu Dec 8 2011 Michel Salim <salimma@fedoraproject.org> - 1.1.2-2
- Enable python3 subpackage
* Mon Nov 28 2011 Toshio Kuratomi <toshio@fedoraproject.org> - 1.1.2-1
- Update to upstream 1.1.2
* Wed Feb 09 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.7-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
* Tue Jan 18 2011 Toshio Kuratomi <toshio@fedoraproject.org> - 1.0.7-1
- Update to upstream 1.0.7
* Mon Jan 17 2011 Toshio Kuratomi <toshio@fedoraproject.org> - 1.0.6-1
- Update to upstream 1.0.6
* Mon Nov 1 2010 Michel Salim <salimma@fedoraproject.org> - 1.0.4-3
- Fix -doc Makefile to allow regeneration of .rst files
* Mon Nov 1 2010 Michel Salim <salimma@fedoraproject.org> - 1.0.4-2
- Actually include *.js locale files
- Generate manpages
* Fri Sep 17 2010 Michel Salim <salimma@fedoraproject.org> - 1.0.4-1
- Update to 1.0.4
- Remove BuildRoot and %%clean declarations
* Thu Jul 22 2010 David Malcolm <dmalcolm@redhat.com> - 1.0-0.1.b2.1
- Rebuilt for https://fedoraproject.org/wiki/Features/Python_2.7/MassRebuild
* Mon May 31 2010 Toshio Kuratomi <toshio@fedoraproject.org> - 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 <salimma@fedoraproject.org> - 1.0-0.1.b1
- Update to 1.0 beta 1
* Tue May 25 2010 Michel Salim <salimma@fedoraproject.org> - 0.6.6-1
- Update to 0.6.6
* Fri May 21 2010 Toshio Kuratomi <toshio@fedoraproject.org> - 0.6.5-2
- Few minor tweaks to Gareth's spec file update
* Mon May 10 2010 Gareth Armstrong <gareth.armstrong@hp.com> - 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 <toshio@fedoraproject.org> - 0.6.4-1
- Update to 0.6.4
- Fixes a problem using autodoc with pylons projects.
* Fri Sep 4 2009 Michel Salim <salimma@fedoraproject.org> - 0.6.3-1
- Update to 0.6.3
* Mon Aug 17 2009 Toshio Kuratomi <toshio@fedoraproject.org> - 0.6.2-1
- Update to 0.6.2 -- upstream bugfix requested inside bz#512438
* Sun Jul 26 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.6.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
* Fri Jun 05 2009 Luke Macken <lmacken@redhat.com> - 0.6.1-2
- Add a patch to use our own setuptools package
* Fri Apr 17 2009 Michel Salim <salimma@fedoraproject.org> - 0.6.1-1
- Update to 0.6.1
* Thu Feb 26 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.5.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
* Fri Jan 2 2009 Michel Salim <salimma@fedoraproject.org> - 0.5.1-1
- Update to 0.5.1
* Sat Nov 29 2008 Ignacio Vazquez-Abrams <ivazqueznet+rpm@gmail.com> - 0.5-2
- Rebuild for Python 2.6
* Mon Nov 24 2008 Michel Salim <salimma@fedoraproject.org> - 0.5-1
- Update to 0.5
* Fri Oct 10 2008 Michel Salim <salimma@fedoraproject.org> - 0.4.3-1
- Update to 0.4.3
* Wed Aug 27 2008 Toshio Kuratomi <toshio@fedoraproject.org> - 0.4.2-1.1
- Fix for EL-5 build.
* Mon Aug 25 2008 Michel Salim <salimma@fedoraproject.org> - 0.4.2-1
- Update to 0.4.2
* Mon May 26 2008 Michel Salim <salimma@fedoraproject.org> - 0.3-1
- Update to 0.3
* Fri May 2 2008 Michel Salim <salimma@fedoraproject.org> - 0.1.61950-3
- Split documentation into subpackage
- Exclude C files (not built by default anyway)
* Wed Apr 16 2008 José Matos <jamatos@fc.up.pt> - 0.1.61950-2
- Build html documentation, include it and include the rst
documentation.
* Thu Mar 27 2008 Michel Salim <michel.sylvan@gmail.com> 0.1.61950-1
- Initial package

View file

@ -1,2 +0,0 @@
#%Module1.0
set ModuleVersion "python@PYTHONVER@-sphinx"

40
e01e42f5fc738815b.patch Normal file
View file

@ -0,0 +1,40 @@
From e01e42f5fc738815b8499c4ede30c6caf130f0a4 Mon Sep 17 00:00:00 2001
From: Adam Turner <9087854+aa-turner@users.noreply.github.com>
Date: Wed, 19 Mar 2025 20:11:35 +0000
Subject: [PATCH] Fix ``INVALID_BUILTIN_CLASSES`` test for Python 3.14.0a6+
---
tests/test_util/test_util_typing.py | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/tests/test_util/test_util_typing.py b/tests/test_util/test_util_typing.py
index 35ee240f7b8..8a561c378ed 100644
--- a/tests/test_util/test_util_typing.py
+++ b/tests/test_util/test_util_typing.py
@@ -205,7 +205,7 @@ def test_is_invalid_builtin_class() -> None:
zipfile.Path,
zipfile.CompleteDirs,
)
- if sys.version_info[:2] >= (3, 13):
+ if sys.version_info[:2] == (3, 13):
invalid_types += (
# pathlib
Path,
@@ -217,7 +217,7 @@ def test_is_invalid_builtin_class() -> None:
)
invalid_names = {(cls.__module__, cls.__qualname__) for cls in invalid_types}
- if sys.version_info[:2] < (3, 13):
+ if sys.version_info[:2] != (3, 13):
invalid_names |= {
('pathlib._local', 'Path'),
('pathlib._local', 'PosixPath'),
@@ -231,7 +231,7 @@ def test_is_invalid_builtin_class() -> None:
('zipfile._path', 'Path'),
('zipfile._path', 'CompleteDirs'),
}
- assert _INVALID_BUILTIN_CLASSES.keys() == invalid_names
+ assert set(_INVALID_BUILTIN_CLASSES) == invalid_names
def test_restify_type_hints_containers():

View file

@ -1,32 +0,0 @@
diff --git a/sphinx/util/inspect.py b/sphinx/util/inspect.py
index e8427fd84..492db8700 100644
--- a/sphinx/util/inspect.py
+++ b/sphinx/util/inspect.py
@@ -313,7 +313,10 @@ def __init__(self, subject, bound_method=False):
try:
self.signature = inspect.signature(subject)
except IndexError:
- if hasattr(subject, '_partialmethod'): # partialmethod with no argument
+ # Until python 3.6.4, cpython has been crashed on inspection for
+ # partialmethods not having any arguments.
+ # https://bugs.python.org/issue33009
+ if hasattr(subject, '_partialmethod'):
self.signature = None
self.partialmethod_with_noargs = True
else:
diff --git a/tests/test_autodoc.py b/tests/test_autodoc.py
index 9398edc34..ed6d050fa 100644
--- a/tests/test_autodoc.py
+++ b/tests/test_autodoc.py
@@ -952,7 +952,10 @@ def call_autodoc(objtype, name):
' Update state of cell to *state*.',
' ',
]
- if sys.version_info < (3, 5, 4):
+ if (sys.version_info < (3, 5, 4) or
+ (3, 6, 5) <= sys.version_info < (3, 7) or
+ (3, 7, 0, 'beta', 3) <= sys.version_info):
+ # TODO: this condition should be updated after 3.7-final release.
expected = '\n'.join(expected).replace(' -> None', '').split('\n')
assert call_autodoc('class', 'target.partialmethod.Cell') == expected

5
plan.fmf Normal file
View file

@ -0,0 +1,5 @@
discover:
how: fmf
execute:
how: tmt

File diff suppressed because it is too large Load diff

View file

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

View file

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

4
rpminspect.yaml Normal file
View file

@ -0,0 +1,4 @@
# exclude XML template (not always valid) from XML validity check:
xml:
ignore:
- /usr/lib/python*/site-packages/sphinx/themes/basic/opensearch.xml

View file

@ -1 +1 @@
SHA512 (Sphinx-1.7.2.tar.gz) = 6cb055d969227c727e1cdd8865ddef700d72217e0ef3700383449921e9310f7ed6266d62cf1928ad64372f93468d457c584fac34f6583714cc8a9a3627785ac3
SHA512 (sphinx-8.2.3.tar.gz) = e7cbe251e4f44eb59ef6fd84d3918b1b29941943b75265da75aa9533379746e76331ac8a3ba8c1694840adeebd6886e0fc8eebf5407271aaeddf39594d8e1523

25
sphinx-test_theming.patch Normal file
View file

@ -0,0 +1,25 @@
From 399ae81dfbedb7b8acf84e56b0e4b2d5023432ec Mon Sep 17 00:00:00 2001
From: Karolina Surma <ksurma@redhat.com>
Date: Wed, 26 Feb 2025 10:43:44 +0100
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 173e0c9..515e546 100644
--- a/tests/test_theming/test_theming.py
+++ b/tests/test_theming/test_theming.py
@@ -58,7 +58,7 @@ def test_theme_api(app: SphinxTestApp) -> None:
]
# 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'
)
--
2.48.1

View file

@ -0,0 +1,11 @@
summary: run the basic documentation build
test: |
sphinx-build -M html source/ build/ &&
grep '<script src="_static/jquery.js' build/html/index.html &&
grep '<script src="_static/_sphinx_javascript_frameworks_compat.js' build/html/index.html &&
test -f build/html/_static/jquery.js &&
test -f build/html/_static/_sphinx_javascript_frameworks_compat.js &&
rm -rf build/
require:
- python3-sphinx
- python3-sphinxcontrib-jquery

View file

@ -0,0 +1,7 @@
project = 'Test'
copyright = '2024, Test'
author = 'Test'
release = '0.3.0'
extensions = [
"sphinxcontrib.jquery",
]

View file

@ -0,0 +1,15 @@
Test docfile
============
.. toctree::
:maxdepth: 2
:caption: Contents:
Indices and tables
==================
* :ref:`genindex`
* :ref:`modindex`
* :ref:`search`

View file

@ -0,0 +1,10 @@
summary: run the basic documentation build
test: |
sphinx-build -M html source/ build/ &&
grep '<section id="test-docfile">' build/html/index.html &&
grep '<h1>Test docfile' build/html/index.html &&
grep '_static/alabaster.css' build/html/index.html &&
rm -rf build/
require:
- python3-sphinx
- python3-sphinx-theme-alabaster

View file

@ -0,0 +1,5 @@
project = 'Test'
copyright = '2024, Test'
author = 'Test'
release = '0.3.0'
html_theme = 'alabaster'

View file

@ -0,0 +1,15 @@
Test docfile
============
.. toctree::
:maxdepth: 2
:caption: Contents:
Indices and tables
==================
* :ref:`genindex`
* :ref:`modindex`
* :ref:`search`

View file

@ -0,0 +1,11 @@
summary: run the basic documentation build with sphinx-rtd-theme
test: |
sphinx-build -M html source/ build/ &&
grep '<section id="test-docfile">' build/html/index.html &&
grep '<h1>Test docfile' build/html/index.html &&
grep 'SphinxRtdTheme' build/html/_static/js/theme.js &&
grep '<script src="_static/js/theme.js' build/html/index.html &&
rm -rf build/
require:
- python3-sphinx
- python3-sphinx_rtd_theme

View file

@ -0,0 +1,8 @@
project = 'Test'
copyright = '2024, Test'
author = 'Test'
release = '0.3.0'
html_theme = 'sphinx_rtd_theme'
extensions = [
'sphinx_rtd_theme',
]

View file

@ -0,0 +1,15 @@
Test docfile
============
.. toctree::
:maxdepth: 2
:caption: Contents:
Indices and tables
==================
* :ref:`genindex`
* :ref:`modindex`
* :ref:`search`

View file

@ -1,13 +0,0 @@
diff --git a/tests/test_build_latex.py b/tests/test_build_latex.py
index 55f48cd..78ccecd 100644
--- a/tests/test_build_latex.py
+++ b/tests/test_build_latex.py
@@ -1009,7 +1009,7 @@ def test_latex_raw_directive(app, status, warning):
assert 'HTML: abc ghi' in result
assert 'LaTeX: abc def ghi' in result
-
+@pytest.mark.xfail(reason="this test requires internet connection")
@pytest.mark.sphinx('latex', testroot='images')
def test_latex_remote_images(app, status, warning):
app.builder.build_all()

View file

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

View file

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