diff --git a/pygments.patch b/pygments.patch deleted file mode 100644 index 081c351..0000000 --- a/pygments.patch +++ /dev/null @@ -1,224 +0,0 @@ -From 5ff3740063c1ac57f17ecd697bcd06cc1de4e75c Mon Sep 17 00:00:00 2001 -From: Adam Turner <9087854+aa-turner@users.noreply.github.com> -Date: Mon, 6 Jan 2025 06:56:10 +0000 -Subject: [PATCH] Adapt tests for Pygments 2.19 - ---- - tests/test_builders/test_build_html_code.py | 8 +++++++- - tests/test_builders/test_build_latex.py | 9 +++++++-- - tests/test_directives/test_directive_code.py | 15 +++++++++++++-- - tests/test_extensions/test_ext_viewcode.py | 8 +++++++- - tests/test_highlighting.py | 2 +- - tests/test_intl/test_intl.py | 15 +++++++++++++-- - 6 files changed, 48 insertions(+), 9 deletions(-) - -Index: sphinx-8.1.3/tests/test_builders/test_build_html_code.py -=================================================================== ---- sphinx-8.1.3.orig/tests/test_builders/test_build_html_code.py -+++ sphinx-8.1.3/tests/test_builders/test_build_html_code.py -@@ -1,3 +1,4 @@ -+import pygments - import pytest - - -@@ -32,11 +33,16 @@ def test_html_codeblock_linenos_style_in - - @pytest.mark.sphinx('html', testroot='reST-code-role') - def test_html_code_role(app): -+ if tuple(map(int, pygments.__version__.split('.')[:2])) >= (2, 19): -+ sp = ' ' -+ else: -+ sp = ' ' -+ - app.build() - content = (app.outdir / 'index.html').read_text(encoding='utf8') - - common_content = ( -- 'def foo' -+ f'def{sp}foo' - '(' - '1 ' - '+ ' -Index: sphinx-8.1.3/tests/test_builders/test_build_latex.py -=================================================================== ---- sphinx-8.1.3.orig/tests/test_builders/test_build_latex.py -+++ sphinx-8.1.3/tests/test_builders/test_build_latex.py -@@ -8,6 +8,7 @@ from pathlib import Path - from shutil import copyfile - from subprocess import CalledProcessError - -+import pygments - import pytest - - from sphinx.builders.latex import default_latex_documents -@@ -2127,12 +2128,16 @@ def test_latex_container(app): - - @pytest.mark.sphinx('latex', testroot='reST-code-role') - def test_latex_code_role(app): -+ if tuple(map(int, pygments.__version__.split('.')[:2])) >= (2, 19): -+ sp = r'\PYG{+w}{ }' -+ else: -+ sp = ' ' -+ - app.build() - content = (app.outdir / 'projectnamenotset.tex').read_text(encoding='utf8') - - common_content = ( -- r'\PYG{k}{def} ' -- r'\PYG{n+nf}{foo}' -+ r'\PYG{k}{def}' + sp + r'\PYG{n+nf}{foo}' - r'\PYG{p}{(}' - r'\PYG{l+m+mi}{1} ' - r'\PYG{o}{+} ' -Index: sphinx-8.1.3/tests/test_directives/test_directive_code.py -=================================================================== ---- sphinx-8.1.3.orig/tests/test_directives/test_directive_code.py -+++ sphinx-8.1.3/tests/test_directives/test_directive_code.py -@@ -2,6 +2,7 @@ - - import os.path - -+import pygments - import pytest - from docutils import nodes - -@@ -393,6 +394,11 @@ def test_literal_include_block_start_wit - - @pytest.mark.sphinx('html', testroot='directive-code') - def test_literal_include_linenos(app): -+ if tuple(map(int, pygments.__version__.split('.')[:2])) >= (2, 19): -+ sp = ' ' -+ else: -+ sp = ' ' -+ - app.build(filenames=[app.srcdir / 'linenos.rst']) - html = (app.outdir / 'linenos.html').read_text(encoding='utf8') - -@@ -410,7 +416,7 @@ def test_literal_include_linenos(app): - - # :lines: 5-9 - assert ( -- '5class ' -+ f'5class{sp}' - 'Foo:' - ) in html - -@@ -560,12 +566,17 @@ def test_code_block_highlighted(app): - - @pytest.mark.sphinx('html', testroot='directive-code') - def test_linenothreshold(app): -+ if tuple(map(int, pygments.__version__.split('.')[:2])) >= (2, 19): -+ sp = ' ' -+ else: -+ sp = ' ' -+ - app.build(filenames=[app.srcdir / 'linenothreshold.rst']) - html = (app.outdir / 'linenothreshold.html').read_text(encoding='utf8') - - # code-block using linenothreshold - assert ( -- '1class ' -+ f'1class{sp}' - 'Foo:' - ) in html - -Index: sphinx-8.1.3/tests/test_extensions/test_ext_viewcode.py -=================================================================== ---- sphinx-8.1.3.orig/tests/test_extensions/test_ext_viewcode.py -+++ sphinx-8.1.3/tests/test_extensions/test_ext_viewcode.py -@@ -6,6 +6,7 @@ import re - import shutil - from typing import TYPE_CHECKING - -+import pygments - import pytest - - if TYPE_CHECKING: -@@ -13,6 +14,11 @@ if TYPE_CHECKING: - - - def check_viewcode_output(app: SphinxTestApp) -> str: -+ if tuple(map(int, pygments.__version__.split('.')[:2])) >= (2, 19): -+ sp = ' ' -+ else: -+ sp = ' ' -+ - warnings = re.sub(r'\\+', '/', app.warning.getvalue()) - assert re.findall( - r"index.rst:\d+: WARNING: Object named 'func1' not found in include " -@@ -41,7 +47,7 @@ def check_viewcode_output(app: SphinxTes - '[docs]\n' - ) in result - assert '@decorator\n' in result -- assert 'class Class1:\n' in result -+ assert f'class{sp}Class1:\n' in result - assert ' """\n' in result - assert ' this is Class1\n' in result - assert ' """\n' in result -Index: sphinx-8.1.3/tests/test_highlighting.py -=================================================================== ---- sphinx-8.1.3.orig/tests/test_highlighting.py -+++ sphinx-8.1.3/tests/test_highlighting.py -@@ -10,7 +10,7 @@ from pygments.token import Name, Text - - from sphinx.highlighting import PygmentsBridge - --if tuple(map(int, pygments.__version__.split('.')))[:2] < (2, 18): -+if tuple(map(int, pygments.__version__.split('.')[:2])) < (2, 18): - from pygments.formatter import Formatter - - Formatter.__class_getitem__ = classmethod(lambda cls, name: cls) # type: ignore[attr-defined] -Index: sphinx-8.1.3/tests/test_intl/test_intl.py -=================================================================== ---- sphinx-8.1.3.orig/tests/test_intl/test_intl.py -+++ sphinx-8.1.3/tests/test_intl/test_intl.py -@@ -10,6 +10,7 @@ import shutil - import time - from io import StringIO - -+import pygments - import pytest - from babel.messages import mofile, pofile - from babel.messages.catalog import Catalog -@@ -1473,6 +1474,11 @@ def test_xml_strange_markup(app): - @pytest.mark.sphinx('html', testroot='intl') - @pytest.mark.test_params(shared_result='test_intl_basic') - def test_additional_targets_should_not_be_translated(app): -+ if tuple(map(int, pygments.__version__.split('.')[:2])) >= (2, 19): -+ sp = ' ' -+ else: -+ sp = ' ' -+ - app.build() - # [literalblock.txt] - result = (app.outdir / 'literalblock.html').read_text(encoding='utf8') -@@ -1511,7 +1517,7 @@ def test_additional_targets_should_not_b - # doctest block should not be translated but be highlighted - expected_expr = ( - """>>> """ -- """import sys """ -+ f"""import{sp}sys """ - """# sys importing""" - ) - assert_count(expected_expr, result, 1) -@@ -1556,6 +1562,11 @@ def test_additional_targets_should_not_b - }, - ) - def test_additional_targets_should_be_translated(app): -+ if tuple(map(int, pygments.__version__.split('.')[:2])) >= (2, 19): -+ sp = ' ' -+ else: -+ sp = ' ' -+ - app.build() - # [literalblock.txt] - result = (app.outdir / 'literalblock.html').read_text(encoding='utf8') -@@ -1605,7 +1616,7 @@ def test_additional_targets_should_be_tr - # doctest block should not be translated but be highlighted - expected_expr = ( - """>>> """ -- """import sys """ -+ f"""import{sp}sys """ - """# SYS IMPORTING""" - ) - assert_count(expected_expr, result, 1) diff --git a/python-Sphinx.changes b/python-Sphinx.changes index 81e807e..e20b8e0 100644 --- a/python-Sphinx.changes +++ b/python-Sphinx.changes @@ -1,3 +1,149 @@ +------------------------------------------------------------------- +Tue Mar 11 12:20:49 UTC 2025 - Dirk Müller + +- update to 8.2.0: + * #13000: Drop Python 3.10 support. + * #13044: Remove the internal and undocumented has_equations + data from the :py:class:`!MathDomain` domain. The + undocumented :py:meth:`!MathDomain.has_equations` method now + unconditionally returns True. These are replaced by the + has_maths_elements key of the page context dict. Patch by + Adam Turner. + * #13227: HTML output for sequences of keys in the + :rst:role:`kbd` role no longer uses a element to wrap the keys and separators, but + places them directly in the relevant parent node. This means + that CSS rulesets targeting kbd.compound or .kbd.compound + will no longer have any effect. Patch by Adam Turner. + * #13037: Deprecate the SingleHTMLBuilder.fix_refuris method. + Patch by James Addison. + * #13083, #13330: Un-deprecate sphinx.util.import_object. Patch + by Matthias Geier. + * #13173: Add a new duplicate_declaration warning type, with + duplicate_declaration.c and duplicate_declaration.cpp + subtypes. Patch by Julien Lecomte and Adam Turner. + * #11824: linkcode: Allow extensions to add support for a + domain by defining the keys that should be present. Patch by + Nicolas Peugnet. + * #13144: Add a class option to the :rst:dir:`autosummary` + directive. Patch by Tim Hoffmann. + * #13146: Napoleon: Unify the type preprocessing logic to allow + Google-style docstrings to use the optional and default + keywords. Patch by Chris Barrick. + * #13227: Implement the :rst:role:`kbd` role as a SphinxRole. + Patch by Adam Turner. + * #13065: Enable colour by default in when running on CI. Patch + by Adam Turner. + * #13230: Allow supressing warnings from the :rst:dir:`toctree` + directive when a glob pattern doesn't match any documents, + via the new toc.empty_glob warning sub-type. Patch by Slawek + Figiel. + * #9732: Add the new autodoc.mocked_object warnings sub-type. + Patch by Cyril Roelandt. + * #7630, #4824: autodoc: Use :file:`.pyi` type stub files to + auto-document native modules. Patch by Adam Turner, partially + based on work by Allie Fitter. + * #12975: Enable configuration of trailing commas in multi-line + signatures in the Python and Javascript domains, via the new + :confval:`python_trailing_comma_in_multi_line_signatures` and + :confval:`javascript_trailing_comma_in_multi_line_signatures` + configuration options. + * #13264: Rename the :rst:dir:`math` directive's nowrap option + to :rst:dir:`math:no-wrap`. Patch by Adam Turner. + * #13269: Added the option to disable the use of type comments + in via the new :confval:`autodoc_use_type_comments` option, + which defaults to True for backwards compatibility. The + default will change to False in Sphinx 10. Patch by Adam + Turner. + * #9732: Add the new ref.any warnings sub-type to allow + suppressing the ambiguous 'any' cross-reference warning. + Patch by Simão Afonso and Adam Turner. + * #13272: The Python and JavaScript module directives now + support the :no-index-entry: option. Patch by Adam Turner. + * #12233: autodoc: Allow directives to use :no-index-entry: and + include the :no-index: and :no-index-entry: options within + :confval:`autodoc_default_options`. Patch by Jonny Saunders + and Adam Turner. + * #13172: Add support for short signatures in autosummary. + Patch by Tim Hoffmann. + * #13271: Change the signature prefix for abstract methods in + the Python domain to abstractmethod from abstract. Patch by + Adam Turner. + * #13271: Support the :abstract: option for classes, methods, + and properties in the Python domain. Patch by Adam Turner. + * #12507: Add the :ref:`collapsible ` + option to admonition directives. Patch by Chris Sewell. + * #8191, #8159: Add :rst:dir:`inheritance-diagram:include- + subclasses` option to the :rst:dir:`inheritance-diagram` + directive. Patch by Walter Dörwald. + * #11995: autodoc: Add support for + :confval:`python_display_short_literal_types`. Patch by + Bénédikt Tran and Adam Turner. + * #13163: Always print the full context when Sphinx encounters + an internal error. Patch by Kevin Deldycke and Adam Turner. + * #13105: Introduce the :rst:role:`py:deco` role to cross- + reference decorator functions and methods in the Python + domain. Patch by Adam Turner. + * #9169: Add the :confval:`intersphinx_resolve_self` option to + resolve an intersphinx reference to the current project. + Patch by Jakob Lykke Andersen and Adam Turner. + * #11280: Add ability to skip a particular section using the + no-search class. Patch by Will Lachance. + * #13326: Remove hardcoding from handling + :class:`~sphinx.addnodes.productionlist` nodes in all + writers, to improve flexibility. Patch by Adam Turner. + * #13335: Use misc.highlighting_failure subtype for Pygments + unknown lexers. Patch by Bart Kamphorst. + * #13354: Insert abbreviation nodes (hover text) for + positional- and keyword-only separators in Python signatures. + Patch by Adam Turner. + * #13333: Add the :mod:`sphinx.ext.apidoc` extension, to + automate API documentation generation from Python modules. + Patch by Chris Sewell and Adam Turner. + * #12463: autosummary: Respect an empty module __all__. Patch + by Valentin Pratz + * #13060: HTML Search: use Map to store per-file term scores. + Patch by James Addison + * #13130: LaTeX docs: pdflatex index creation may fail for + index entries in French. See :confval:`latex_use_xindy`. + Patch by Jean-François B. + * #13152: LaTeX: fix a typo from v7.4.0 in a default for + \sphinxboxsetup. Patch by Jean-François B. + * #13096: HTML Search: check that query terms exist as + properties in term indices before accessing them. + * #11233: linkcheck: match redirect URIs against + :confval:`linkcheck_ignore` by overriding session-level + requests.get_redirect_target. + * #13195: viewcode: Fix issue where import paths differ from + the directory structure. Patch by Ben Egan and Adam Turner. + * #13188: autodoc: fix detection of class methods implemented + in C. Patch by Bénédikt Tran. + * #1810: Always copy static files when building, regardless of + whether any documents have changed since the previous build. + Patch by Adam Turner. + * #13201: autodoc: fix ordering of members when using groupwise + for :confval:`autodoc_member_order`. Class methods are now + rendered before static methods, which themselves are rendered + before regular methods and attributes. Patch by Bénédikt + Tran. + * #12975: Avoid rendering a trailing comma in C and C++ multi- + line signatures. + * #13178: autodoc: Fix resolution for pathlib types. Patch by + Adam Turner. + * #13136: autodoc: Correctly handle multiple inheritance. Patch + by Pavel Holica + * #13273, #13318: Properly convert command-line overrides for + Boolean types. Patch by Adam Turner. + * #13302, #13319: Use the correct indentation for continuation + lines in :rst:dir:`productionlist` directives. Patch by Adam + Turner. + * #13328: Fix parsing of PEP 695 functions with return + annotations. Patch by Bénédikt Tran. Initial work by Arash + Badie-Modiri. + * #13224: Correctness fixup for test_html_multi_line_copyright. + Patch by Colin Watson, applied by James Addison. +- drop pygments.patch (upstream) + ------------------------------------------------------------------- Fri Jan 17 11:52:23 UTC 2025 - Markéta Machová diff --git a/python-Sphinx.spec b/python-Sphinx.spec index 1ea2d56..0d5cd7b 100644 --- a/python-Sphinx.spec +++ b/python-Sphinx.spec @@ -26,7 +26,7 @@ %endif %{?sle15_python_module_pythons} Name: python-Sphinx%{psuffix} -Version: 8.1.3 +Version: 8.2.0 Release: 0 Summary: Python documentation generator License: BSD-2-Clause @@ -42,8 +42,6 @@ Source3: requests.inv Source4: readthedocs.inv Source5: update-intersphinx.sh Source99: python-Sphinx.keyring -# PATCH-FIX-UPSTREAM https://github.com/sphinx-doc/sphinx/commit/5ff3740063c1ac57f17ecd697bcd06cc1de4e75c Adapt tests for Pygments 2.19 -Patch: pygments.patch BuildRequires: %{python_module base} BuildRequires: %{python_module flit-core} BuildRequires: %{python_module pip} diff --git a/sphinx-8.1.3.tar.gz b/sphinx-8.1.3.tar.gz deleted file mode 100644 index 24015b3..0000000 --- a/sphinx-8.1.3.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:43c1911eecb0d3e161ad78611bc905d1ad0e523e4ddc202a58a821773dc4c927 -size 8184611 diff --git a/sphinx-8.2.0.tar.gz b/sphinx-8.2.0.tar.gz new file mode 100644 index 0000000..5838928 --- /dev/null +++ b/sphinx-8.2.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5b0067853d6e97f3fa87563e3404ebd008fce03525b55b25da90706764da6215 +size 8321764