sphinx: 5.3.0 -> 7.2.6
Diff: https://github.com/sphinx-doc/sphinx/compare/v5.3.0...v7.2.6 Changelog: https://www.sphinx-doc.org/en/master/changes.html#release-7-2-6-released-sep-13-2023 Co-authored-by: Theodore Ni <3806110+tjni@users.noreply.github.com> Co-authored-by: Anderson Torres <torres.anderson.85@protonmail.com> Co-authored-by: OTABI Tomoya <tomoya.otabi@gmail.com>
This commit is contained in:
parent
08be9a9577
commit
ce209976f5
2 changed files with 47 additions and 101 deletions
|
@ -1,35 +0,0 @@
|
|||
From 181617387841b695ee77b162babf9fb177002fcb Mon Sep 17 00:00:00 2001
|
||||
From: toonn <toonn@toonn.io>
|
||||
Date: Mon, 20 Sep 2021 11:39:46 +0200
|
||||
Subject: [PATCH] test-images: Use normalization equivalent character
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
One of the test images used a combining character `ä` that can be
|
||||
encoded multiple ways. This means the file's name can end up encoded
|
||||
differently depending on whether/which normal form the filesystem uses.
|
||||
|
||||
For Nix this causes a different hash for a FOD depending on the
|
||||
filesystem where it is evaluated. This is problematic because hashes
|
||||
fail to match up when evaluating the FOD across multiple platforms.
|
||||
---
|
||||
tests/roots/test-images/index.rst | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/tests/roots/test-images/index.rst b/tests/roots/test-images/index.rst
|
||||
index 14a2987..219842e 100644
|
||||
--- a/tests/roots/test-images/index.rst
|
||||
+++ b/tests/roots/test-images/index.rst
|
||||
@@ -13,7 +13,7 @@ test-image
|
||||
|
||||
The caption of img
|
||||
|
||||
-.. image:: testimäge.png
|
||||
+.. image:: testimæge.png
|
||||
|
||||
.. image:: rimg.png
|
||||
:target: https://www.sphinx-doc.org/
|
||||
--
|
||||
2.17.2 (Apple Git-113)
|
||||
|
|
@ -1,5 +1,5 @@
|
|||
{ stdenv
|
||||
, lib
|
||||
{ lib
|
||||
, stdenv
|
||||
, buildPythonPackage
|
||||
, pythonOlder
|
||||
, fetchFromGitHub
|
||||
|
@ -30,29 +30,29 @@
|
|||
|
||||
# check phase
|
||||
, cython
|
||||
, filelock
|
||||
, html5lib
|
||||
, pytestCheckHook
|
||||
, typed-ast
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "sphinx";
|
||||
version = "5.3.0";
|
||||
version = "7.2.6";
|
||||
format = "pyproject";
|
||||
|
||||
disabled = pythonOlder "3.6";
|
||||
disabled = pythonOlder "3.9";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "sphinx-doc";
|
||||
repo = pname;
|
||||
repo = "sphinx";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-80bVg1rfBebgSOKbWkzP84vpm39iLgM8lWlVD64nSsQ=";
|
||||
postFetch = ''
|
||||
cd $out
|
||||
mv tests/roots/test-images/testimäge.png \
|
||||
tests/roots/test-images/testimæge.png
|
||||
patch -p1 < ${./0001-test-images-Use-normalization-equivalent-character.patch}
|
||||
# Change ä to æ in file names, since ä can be encoded multiple ways on different
|
||||
# filesystems, leading to different hashes on different platforms.
|
||||
cd "$out";
|
||||
mv tests/roots/test-images/{testimäge,testimæge}.png
|
||||
sed -i 's/testimäge/testimæge/g' tests/{test_build*.py,roots/test-images/index.rst}
|
||||
'';
|
||||
hash = "sha256-IjpRGeGpGfzrEvwIKtuu2l1S74w8W+AbqDOGnWwtRck=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -60,8 +60,8 @@ buildPythonPackage rec {
|
|||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
babel
|
||||
alabaster
|
||||
babel
|
||||
docutils
|
||||
imagesize
|
||||
jinja2
|
||||
|
@ -84,66 +84,22 @@ buildPythonPackage rec {
|
|||
importlib-metadata
|
||||
];
|
||||
|
||||
__darwinAllowLocalNetworking = true;
|
||||
|
||||
nativeCheckInputs = [
|
||||
cython
|
||||
filelock
|
||||
html5lib
|
||||
pytestCheckHook
|
||||
] ++ lib.optionals (pythonOlder "3.8") [
|
||||
typed-ast
|
||||
];
|
||||
|
||||
preCheck = ''
|
||||
export HOME=$(mktemp -d)
|
||||
export HOME=$TMPDIR
|
||||
'';
|
||||
|
||||
disabledTests = [
|
||||
# requires network access
|
||||
"test_anchors_ignored"
|
||||
"test_defaults"
|
||||
"test_defaults_json"
|
||||
"test_latex_images"
|
||||
|
||||
# requires imagemagick (increases build closure size), doesn't
|
||||
# test anything substantial
|
||||
"test_ext_imgconverter"
|
||||
|
||||
# fails with pygments 2.14
|
||||
# TODO remove for sphinx 6
|
||||
"test_viewcode"
|
||||
"test_additional_targets_should_be_translated"
|
||||
"test_additional_targets_should_not_be_translated"
|
||||
|
||||
# sphinx.errors.VersionRequirementError: The alabaster extension
|
||||
# used by this project needs at least Sphinx v1.6; it therefore
|
||||
# cannot be built with this version.
|
||||
"test_needs_sphinx"
|
||||
|
||||
# Likely due to pygments 2.14 update
|
||||
# AssertionError: assert '5:11:17\u202fAM' == '5:11:17 AM'
|
||||
"test_format_date"
|
||||
] ++ lib.optionals stdenv.isDarwin [
|
||||
# Due to lack of network sandboxing can't guarantee port 7777 isn't bound
|
||||
"test_inspect_main_url"
|
||||
"test_auth_header_uses_first_match"
|
||||
"test_linkcheck_allowed_redirects"
|
||||
"test_linkcheck_request_headers"
|
||||
"test_linkcheck_request_headers_no_slash"
|
||||
"test_follows_redirects_on_HEAD"
|
||||
"test_get_after_head_raises_connection_error"
|
||||
"test_invalid_ssl"
|
||||
"test_connect_to_selfsigned_with_tls_verify_false"
|
||||
"test_connect_to_selfsigned_with_tls_cacerts"
|
||||
"test_connect_to_selfsigned_with_requests_env_var"
|
||||
"test_connect_to_selfsigned_nonexistent_cert_file"
|
||||
"test_TooManyRedirects_on_HEAD"
|
||||
"test_too_many_requests_retry_after_int_del"
|
||||
"test_too_many_requests_retry_after_HTTP_date"
|
||||
"test_too_many_requests_retry_after_without_header"
|
||||
"test_too_many_requests_user_timeout"
|
||||
"test_raises_for_invalid_status"
|
||||
"test_auth_header_no_match"
|
||||
"test_follows_redirects_on_GET"
|
||||
"test_connect_to_selfsigned_fails"
|
||||
] ++ lib.optionals isPyPy [
|
||||
# PyPy has not __builtins__ which get asserted
|
||||
# https://doc.pypy.org/en/latest/cpython_differences.html#miscellaneous
|
||||
|
@ -159,14 +115,39 @@ buildPythonPackage rec {
|
|||
"test_partialfunction"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
meta = {
|
||||
description = "Python documentation generator";
|
||||
longDescription = ''
|
||||
A tool that makes it easy to create intelligent and beautiful
|
||||
documentation for Python projects
|
||||
Sphinx makes it easy to create intelligent and beautiful documentation.
|
||||
|
||||
Here are some of Sphinx’s major features:
|
||||
- Output formats: HTML (including Windows HTML Help), LaTeX (for printable
|
||||
PDF versions), ePub, Texinfo, manual pages, plain text
|
||||
- Extensive cross-references: semantic markup and automatic links for
|
||||
functions, classes, citations, glossary terms and similar pieces of
|
||||
information
|
||||
- Hierarchical structure: easy definition of a document tree, with
|
||||
automatic links to siblings, parents and children
|
||||
- Automatic indices: general index as well as a language-specific module
|
||||
indices
|
||||
- Code handling: automatic highlighting using the Pygments highlighter
|
||||
- Extensions: automatic testing of code snippets, inclusion of docstrings
|
||||
from Python modules (API docs) via built-in extensions, and much more
|
||||
functionality via third-party extensions.
|
||||
- Themes: modify the look and feel of outputs via creating themes, and
|
||||
re-use many third-party themes.
|
||||
- Contributed extensions: dozens of extensions contributed by users; most
|
||||
of them installable from PyPI.
|
||||
|
||||
Sphinx uses the reStructuredText markup language by default, and can read
|
||||
MyST markdown via third-party extensions. Both of these are powerful and
|
||||
straightforward to use, and have functionality for complex documentation
|
||||
and publishing workflows. They both build upon Docutils to parse and write
|
||||
documents.
|
||||
'';
|
||||
homepage = "https://www.sphinx-doc.org";
|
||||
license = licenses.bsd3;
|
||||
maintainers = teams.sphinx.members;
|
||||
changelog = "https://www.sphinx-doc.org/en/master/changes.html";
|
||||
license = lib.licenses.bsd3;
|
||||
maintainers = lib.teams.sphinx.members;
|
||||
};
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue