From b061a012d43496fcec861886944ab8cdb9e49415 Mon Sep 17 00:00:00 2001 From: Eliah Kagan Date: Mon, 15 Jan 2024 15:50:01 -0500 Subject: [PATCH 1/3] Pin Sphinx plugins to compatible versions This fixes version incompatibilities with major version 4 of Sphinx, which GitPython is still using for the time being. Some plugins that previously had depended back on Sphinx have had those dependencies removed to avoid dependency cycles, but the effect is that `pip` no longer is aware of or able to enforce version compatibility, and newer plugin versions than can actually run with Sphinx 4 are installed instead of older, usable versions. This fixes the problem by pinning each of the affected Sphinx plugins' latest actually compatible versions, i.e., latest versions that do not need Sphinx 5 or higher. The alternative of moving to Sphinx 5 or higher should probably be done eventually, but will require addressing a cross-reference ambiguity in type annotations for the `Actor` class. For details on the bug, see: - https://github.com/gitpython-developers/GitPython/pull/1799#discussion_r1451969138 - https://github.com/gitpython-developers/GitPython/issues/1802 --- doc/requirements.txt | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/doc/requirements.txt b/doc/requirements.txt index 41a7c90f1..12cd19c1e 100644 --- a/doc/requirements.txt +++ b/doc/requirements.txt @@ -1,3 +1,8 @@ sphinx==4.3.0 sphinx_rtd_theme +sphinxcontrib-applehelp==1.0.4 +sphinxcontrib-devhelp==1.0.2 +sphinxcontrib-htmlhelp==2.0.1 +sphinxcontrib-qthelp==1.0.3 +sphinxcontrib-serializinghtml==1.1.5 sphinx-autodoc-typehints From 370822cdaa1e46ec9469513f30e4142e15a345fe Mon Sep 17 00:00:00 2001 From: Eliah Kagan Date: Mon, 15 Jan 2024 16:45:01 -0500 Subject: [PATCH 2/3] Extend plugin version ranges down for Python 3.7 This uses narrow ranges, rather than pinning single versions, for two of the Sphinx plugins whose versions are recently pinned. This is so that plugin versions compatible with Python 3.7 (which GitPython still supports) can be selected. --- doc/requirements.txt | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/doc/requirements.txt b/doc/requirements.txt index 12cd19c1e..90449cd02 100644 --- a/doc/requirements.txt +++ b/doc/requirements.txt @@ -1,8 +1,8 @@ -sphinx==4.3.0 +sphinx == 4.3.0 sphinx_rtd_theme -sphinxcontrib-applehelp==1.0.4 -sphinxcontrib-devhelp==1.0.2 -sphinxcontrib-htmlhelp==2.0.1 -sphinxcontrib-qthelp==1.0.3 -sphinxcontrib-serializinghtml==1.1.5 +sphinxcontrib-applehelp >= 1.0.2, <= 1.0.4 +sphinxcontrib-devhelp == 1.0.2 +sphinxcontrib-htmlhelp >= 2.0.0, <= 2.0.1 +sphinxcontrib-qthelp == 1.0.3 +sphinxcontrib-serializinghtml == 1.1.5 sphinx-autodoc-typehints From 74ef6c7447f83265f9981883b62e610340b75e5c Mon Sep 17 00:00:00 2001 From: Eliah Kagan Date: Mon, 15 Jan 2024 18:04:29 -0500 Subject: [PATCH 3/3] Bump Sphinx from 4.3.0 to 4.3.2 Although 4.4.0 or greater do not seem usable for the time being due to finding "more than one target found for cross-reference 'Actor'" as examined in #1802, bugfixes from 4.3.* patch releases are okay. --- doc/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/requirements.txt b/doc/requirements.txt index 90449cd02..7769af5ae 100644 --- a/doc/requirements.txt +++ b/doc/requirements.txt @@ -1,4 +1,4 @@ -sphinx == 4.3.0 +sphinx == 4.3.2 sphinx_rtd_theme sphinxcontrib-applehelp >= 1.0.2, <= 1.0.4 sphinxcontrib-devhelp == 1.0.2