forked from pool/python-Sphinx
Accepting request 1304238 from devel:languages:python
OBS-URL: https://build.opensuse.org/request/show/1304238 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Sphinx?expand=0&rev=112
This commit is contained in:
@@ -1,3 +1,3 @@
|
|||||||
<multibuild>
|
<multibuild>
|
||||||
<package>test</package>
|
<package>test+doc</package>
|
||||||
</multibuild>
|
</multibuild>
|
||||||
|
|||||||
33
autodoc.patch
Normal file
33
autodoc.patch
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
From 0227606e71dc765ed60cd0ad2c580a43b5ffca4f Mon Sep 17 00:00:00 2001
|
||||||
|
From: James Addison <55152140+jayaddison@users.noreply.github.com>
|
||||||
|
Date: Mon, 12 May 2025 16:52:52 +0000
|
||||||
|
Subject: [PATCH] Fix tests for Python 3.14.0a7 (#13527)
|
||||||
|
|
||||||
|
Authored-by: Adam Turner <9087854+aa-turner@users.noreply.github.com>
|
||||||
|
Co-authored-by: Adam Turner <9087854+aa-turner@users.noreply.github.com>
|
||||||
|
Co-authored-by: James Addison <55152140+jayaddison@users.noreply.github.com>
|
||||||
|
---
|
||||||
|
tests/test_extensions/test_ext_autodoc.py | 6 +++++-
|
||||||
|
tests/test_extensions/test_ext_autodoc_configs.py | 12 ++++++++++--
|
||||||
|
2 files changed, 15 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/tests/test_extensions/test_ext_autodoc.py b/tests/test_extensions/test_ext_autodoc.py
|
||||||
|
index a06c1bbe30d..7aa12db3c32 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):
|
||||||
|
+ ann_attr_name = '__annotations_cache__'
|
||||||
|
+ else:
|
||||||
|
+ ann_attr_name = '__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__',
|
||||||
|
+ f' .. py:attribute:: Class.{ann_attr_name}',
|
||||||
|
' .. py:attribute:: Class.__dict__',
|
||||||
|
' .. py:method:: Class.__init__(arg)',
|
||||||
|
' .. py:attribute:: Class.__module__',
|
||||||
29
autosummary.patch
Normal file
29
autosummary.patch
Normal 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']
|
||||||
50
docutils022.patch
Normal file
50
docutils022.patch
Normal file
@@ -0,0 +1,50 @@
|
|||||||
|
From 68d56109ff50dd81dd31d4a01e3dccbd006c50ee Mon Sep 17 00:00:00 2001
|
||||||
|
From: James Addison <55152140+jayaddison@users.noreply.github.com>
|
||||||
|
Date: Mon, 2 Jun 2025 22:02:48 +0000
|
||||||
|
Subject: [PATCH] Tests: update LaTeX label test expectations from Docutils
|
||||||
|
r10151 (#13610)
|
||||||
|
|
||||||
|
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
|
||||||
|
---
|
||||||
|
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
|
||||||
@@ -1,3 +1,15 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Sep 11 08:42:26 UTC 2025 - Markéta Machová <mmachova@suse.com>
|
||||||
|
|
||||||
|
- Add upstream patches to fix tests with Python 3.14:
|
||||||
|
* autodoc.patch
|
||||||
|
* autosummary.patch
|
||||||
|
* typing.patch
|
||||||
|
- Proactively add upstream patch to fix tests with docutils 0.22:
|
||||||
|
* docutils022.patch
|
||||||
|
- Rename multibuild flavor 'test' to 'test+doc' to better reflect
|
||||||
|
the current behaviour
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Mon Aug 25 12:56:50 UTC 2025 - Markéta Machová <mmachova@suse.com>
|
Mon Aug 25 12:56:50 UTC 2025 - Markéta Machová <mmachova@suse.com>
|
||||||
|
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
|
|
||||||
|
|
||||||
%global flavor @BUILD_FLAVOR@%{nil}
|
%global flavor @BUILD_FLAVOR@%{nil}
|
||||||
%if "%{flavor}" == "test"
|
%if "%{flavor}" == "test+doc"
|
||||||
%define psuffix -test
|
%define psuffix -test
|
||||||
%bcond_without test
|
%bcond_without test
|
||||||
%else
|
%else
|
||||||
@@ -47,6 +47,14 @@ Source3: requests.inv
|
|||||||
Source4: readthedocs.inv
|
Source4: readthedocs.inv
|
||||||
Source5: update-intersphinx.sh
|
Source5: update-intersphinx.sh
|
||||||
Source99: python-Sphinx.keyring
|
Source99: python-Sphinx.keyring
|
||||||
|
# PATCH-FIX-UPSTREAM https://github.com/sphinx-doc/sphinx/pull/13527 Followup-to: Fix tests for Python 3.14a7+
|
||||||
|
Patch0: autodoc.patch
|
||||||
|
# PATCH-FIX-UPSTREAM https://github.com/sphinx-doc/sphinx/commit/8962398b761c3d85a7c74b6f789b3ffb127bde0c autosummary: Update test for Python 3.14.0a5+
|
||||||
|
Patch1: autosummary.patch
|
||||||
|
# PATCH-FIX-UPSTREAM https://github.com/sphinx-doc/sphinx/commit/e01e42f5fc738815b8499c4ede30c6caf130f0a4 Fix INVALID_BUILTIN_CLASSES test for Python 3.14.0a6+
|
||||||
|
Patch2: typing.patch
|
||||||
|
# PATCH-FIX-UPSTREAM https://github.com/sphinx-doc/sphinx/commit/68d56109ff50dd81dd31d4a01e3dccbd006c50ee Tests: update LaTeX label test expectations from Docutils r10151
|
||||||
|
Patch3: docutils022.patch
|
||||||
BuildRequires: %{python_module base}
|
BuildRequires: %{python_module base}
|
||||||
BuildRequires: %{python_module flit-core >= 3.11}
|
BuildRequires: %{python_module flit-core >= 3.11}
|
||||||
BuildRequires: %{python_module pip}
|
BuildRequires: %{python_module pip}
|
||||||
|
|||||||
40
typing.patch
Normal file
40
typing.patch
Normal 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():
|
||||||
Reference in New Issue
Block a user