Sphinx 7.4

版本 7.4.7 (发布于 2024 年 7 月 20 日)

修复的 Bug

  • #12096: 在构建目录中文件被覆盖时发出警告。补丁由 Adam Turner 和 Bénédikt Tran 提供。

  • #12620: 确保遵循旧式对象描述选项。补丁由 Adam Turner 提供。

  • #12601, #12625: 在 Python 域中支持 Annotated 类型元数据中的可调用对象。补丁由 Adam Turner 提供。

  • #12601, #12622: 解决 Annotatedsphinx.ext.autodoc 相关的警告,尤其是在使用 dataclasses 作为类型元数据时。补丁由 Adam Turner 提供。

  • #12589, #12626: autosummary: 修复 autolink 的警告。补丁由 Adam Turner 提供。

版本 7.4.6 (发布于 2024 年 7 月 18 日)

修复的 Bug

  • #12589, #9743, #12609: autosummary: 在为包内的模块生成 autosummary 指令时,不要添加包前缀。补丁由 Adam Turner 提供。

  • #12613: 降低库存加载期间歧义检测的日志严重性。补丁由 James Addison 提供。

版本 7.4.5 (发布于 2024 年 7 月 16 日)

修复的 Bug

  • #12593, #12600: 恢复将选定 html_sidebars 值类型强制转换为列表的行为。检测到字符串值时记录错误消息。补丁由 Adam Turner 提供。

  • #12594: LaTeX: 自 7.4.0 版本起,如果 seealso 和其他“轻量级”告诫包含 figure 指令,或者如果它们包含在表格单元格中(由 tabulary 渲染),则会破坏 PDF 构建。补丁由 Jean-François B. 提供。

版本 7.4.4 (发布于 2024 年 7 月 15 日)

修复的 Bug

  • #12585, #12586: 当 intersphinx 清单包含不区分大小写的模糊重复项时,不发出警告。补丁由 James Addison 提供。

版本 7.4.3 (发布于 2024 年 7 月 15 日)

修复的 Bug

  • #12582: 恢复对带有注册解析器的扩展的列表样式 source_suffix 值的支持。补丁由 Adam Turner 提供。

版本 7.4.2 (发布于 2024 年 7 月 15 日)

修复的 Bug

  • #12580, #12583: 解决 Sphinx 7.3.7 及更早版本在使用 C 域进行增量构建时出现的故障。补丁由 Adam Turner 提供。

版本 7.4.1 (发布于 2024 年 7 月 15 日)

修复的 Bug

  • 修复了使用无效 heading-level 的标题节点时生成的无效 HTML。补丁由 Adam Turner 提供。

  • #12579, #12581: 恢复对 autodoc 中 typing.ParamSpec 的支持。补丁由 Adam Turner 提供。

版本 7.4.0 (发布于 2024 年 7 月 15 日)

依赖项

  • #12555: 放弃对 Docutils 0.18.1 和 Docutils 0.19 的支持。补丁由 Adam Turner 提供。

  • LaTeX: 现在需要 xcolor 包(但例如它是 Ubuntu texlive-latex-recommended 的一部分,该软件包一直都是必需的)。

  • LaTeX: PDF 输出中告诫标题现在使用的图标的默认选择需要 fontawesome5 LaTeX 包;但如果不可用,PDF 构建将简单地默默省略渲染这些图标。有关 ‘sphinxsetup’iconpackage 键的更多信息,请查看文档。

已弃用

  • LaTeX: sphinxlightbox 环境不再使用,所有类型的告诫(默认)只使用 sphinxheavybox

新增功能

  • #11165: 支持模板文件 官方推荐的 .jinja 后缀。补丁由 James Addison 和 Adam Turner 提供。

  • #12325: 将 Union[Literal[T], Literal[U], ...] 扁平化为 Literal[T, U, ...],以将注解转换为字符串。补丁由 Adam Turner 提供。

  • #12319: sphinx.ext.extlinks: 向链接添加 extlink-{name} CSS 类。补丁由 Hugo van Kemenade 提供。

  • #12387: 改进复制资产时的 CLI 进度消息。补丁由 INADA Naoki 和 Bénédikt Tran 提供。

  • #12361: 添加 BuildEnvironment.parser。补丁由 Chris Sewell 提供。

  • #12358: 添加 Sphinx.fresh_env_used。补丁由 Chris Sewell 提供。

  • #12329: 在加载和解析 Intersphinx 目标期间添加对模糊 std:labelstd:term 引用的检测。补丁由 James Addison 提供。

  • #12422: 在内置主题的 aria-label 中不重复“navigation”。补丁由 Thomas Weißschuh 提供。

  • #12421: 在内置主题的 logo_alt 中包含项目名称。补丁由 Thomas Weißschuh 提供。

  • #12448: 添加 sphinx-apidoc --remove-old 选项。补丁由 Chris Sewell 提供。

  • #12456: 添加 sphinx-autogen --remove-old 选项。补丁由 Chris Sewell 提供。

  • #12479: 添加警告子类型 toc.no_title。补丁由 Ondřej Navrátil 提供。

  • #12492: 添加辅助方法,用于从指令内部解析 reStructuredText 内容到节点。

    补丁由 Adam Turner 提供。

  • #12258: 支持 typing_extensions.Unpack。补丁由 Bénédikt Tran 和 Adam Turner 提供。

  • #12524: 向 toctree 指令添加 class 选项。补丁由 Tim Hoffmann 提供。

  • #12536: 添加 confval 指令。补丁由 Adam Turner 提供。

  • #12537: c_id_attributes, c_paren_attributes, cpp_id_attributescpp_paren_attributes 现在可以是字符串元组。 c_extra_keywords, gettext_additional_targets, html_domain_indices, latex_domain_indicestexinfo_domain_indices 现在可以是字符串集。补丁由 Adam Turner 提供。

  • #12523: 添加了配置选项 math_numsep,用于定义数学编号的分隔符。补丁由 Thomas Fanning 提供。

  • #11592: 向 coverage 构建器添加 coverage_modules 以允许显式指定哪些模块应被文档化。补丁由 Stephen Finucane 提供。

  • #7896, #11989: 添加 py:type 指令用于文档类型别名,以及 py:type 角色用于链接到它们。补丁由 Ashley Whetter 提供。

  • #12549: 向 Sphinx.add_config_value() 添加可选的 description 参数。补丁由 Chris Sewell 提供。

  • #6792: 禁止 sphinx.ext.autosummary 中的模块导入循环。补丁由 Trevor Bekolay 提供。

  • #12508: LaTeX: 所有告诫的样式都已修改,并添加了带图标的标题行。补丁由 Jean-François B. 提供。

  • #11773: 在 Python 域中显示带元数据的 Annotated 注解。补丁由 Adam Turner 和 David Stansby 提供。

  • #12506: 向 rubric 指令添加 heading-level 选项。补丁由 Chris Sewell 提供。

  • #12567: 添加 write-started 事件。补丁由 Chris Sewell 提供。

修复的 Bug

  • #12314: 正确格式化注解中的 collections.abc.Callable。补丁由 Adam Turner 提供。

  • #12162: 修复了自 3.0.0 版本以来 C 域中存在的性能回归。补丁由 Donald Hunter 提供。

  • #12320: 修复了搜索摘要中锚点移除的问题(7.3.0 中的回归)。补丁由 Will Lachance 提供。

  • #12251: 修复 sphinx.ext.duration 中的 merge_domaindata()。补丁由 Matthias Geier 提供。

  • #12224: 正确检测 WebP 文件。补丁由 Benjamin Cabé 提供。

  • #12380: LaTeX: 避免当 N 已经是当前页码时,脚注标记显示 Page N。补丁由 Jean-François B. 提供。

  • #12410: LaTeX: 对于法语和 'lualatex' 作为 latex_engine,像 'xelatex' 一样使用 babel(而不是 polyglossia)。补丁由 Jean-François B. 提供。

  • #8807, #12520: LaTeX: 让 todolist 在 PDF 中生成正确的超链接。补丁由 Jean-François B. 提供。

  • #12416: 确保当其中一个值被修改时,配置设置别名始终同步。补丁由 Bénédikt Tran 提供。

  • #12220: 修复 en 语言环境加载自定义模板翻译的问题。补丁由 Nicolas Peugnet 提供。

  • #12459: 为 linkcheck_rate_limit_timeout 配置设置添加有效类型参数。补丁由 James Addison 提供。

  • #12331: 解决 v7.3.0 中影响输出格式不支持数据 URI 的构建器的 data-URI-image-extraction 回归。补丁由 James Addison 提供。

  • #12494: 修复翻译文档生成无效 genindex.html 文件的问题(7.1.0 中的回归)。补丁由 Nicolas Peugnet 提供。

  • #11961: 从搜索索引中的文档标题条目中省略锚点引用,从而消除搜索结果的重复。补丁由 James Addison 提供。

  • #12425: 在 HTML 构建器中使用 Docutils 的 SVG 处理,并删除 Sphinx 的自定义逻辑。补丁由 Tunç Başar Köse 提供。

  • #12391: 调整 HTML 搜索期间匹配的评分,使文档主标题倾向于排名高于小节标题。此外,相对于标题/副标题匹配,提高编程域对象名称上的匹配得分。补丁由 James Addison 和 Will Lachance 提供。

  • #9634: 不通过删除国家代码来添加备用语言。补丁由 Alvin Wong 提供。

  • #12352: 按照文档中定义的顺序将域对象添加到目录中。以前,每个域都使用特定于语言的嵌套规则,这剥夺了文档作者的控制权。补丁由 Jakob Lykke Andersen 和 Adam Turner 提供。

  • #11041: linkcheck: 忽略响应非 Unicode 内容的 URL。补丁由 James Addison 提供。

  • #12543: 修复 LaTeX 输出的 PEP 695 格式。补丁由 Bénédikt Tran 提供。

测试

  • karma: 重构 HTML 搜索测试以使用 Sphinx 生成的 fixture。补丁由 James Addison 提供。