Sphinx 7.2

发布 7.2.6 (2023年9月13日发布)

修复的 Bug

  • #11679: 添加 SPHINX_AUTODOC_RELOAD_MODULES 环境变量,如果设置,在使用 autodoc 和 TYPE_CHECKING = True 时重新加载模块。补丁由 Matt Wozniski 和 Adam Turner 提供。

  • #11679: 使用 importlib.reload() 在 autodoc 中重新加载模块。补丁由 Matt Wozniski 和 Adam Turner 提供。

发布 7.2.5 (2023年8月30日发布)

修复的 Bug

  • #11645: 修复了一个回归问题,该问题阻止 autodoc 导入包中使用了 if typing.TYPE_CHECKING: 来保护类型检查器所需的循环导入的模块。补丁由 Matt Wozniski 提供。

  • #11634: 修复了子目录中兄弟文件的继承图相对链接解析问题。补丁由 Albert Shih 提供。

  • #11659: 允许 mathjax_path 中使用 ?config=...

  • #11654: autodoc: 当对象声称是 type 的实例但不是类时,报错并提供更具描述性的错误消息。补丁由 James Braza 提供。

  • 11620: 停止为通过 include 指令读取的文件发出 source-read 事件。

  • 11620: 添加新的 include-read 事件,用于观察和转换通过 include 指令包含的文件内容。

  • #11627: 在设置 SOURCE_DATE_EPOCH 时,恢复对 YYYY 格式版权行的支持。

发布 7.2.4 (2023年8月28日发布)

修复的 Bug

  • #11618: 修复 MoveModuleTargets 转换中的回归,该回归在 #10478 (#9662) 中引入。

  • #11649: linkcheck: 解决伦敦以西时区测试挂起以及从 UTC 到 UNIX 纪元偏移量转换不正确的问题。补丁由 Dmitry Shachnev 和 Adam Turner 提供。

发布 7.2.3 (2023年8月23日发布)

依赖项

  • #11576: 要求 sphinxcontrib-serializinghtml 1.1.9。

修复的 Bug

  • 修复 autodoc.Documenter.parse_name() 中的回归。

  • 修复 JSON 序列化中的回归。

  • #11543: autodoc: 当 autodoc_preserve_defaultsTrue 时,支持 classmethod 方法中的仅限位置参数。

  • 恢复对路径对象上的字符串方法支持。这已弃用,并将在 Sphinx 8 中移除。请使用 os.fspath()Path 对象转换为字符串,或使用 Path 的方法处理路径对象。

发布 7.2.2 (2023年8月17日发布)

修复的 Bug

  • 修复 StateMachine.insert_input() 补丁的签名,用于使用关键字参数调用时。

  • 修复了资产类 (_CascadingStyleSheet_JavaScript) 的 str 接口的成员测试 (in) 问题,许多扩展都依赖于此。

  • 修复了 SingleFileHTMLBuilder._get_local_toctree 中的类型错误,includehidden 可能会作为字符串或布尔值传入。

  • 修复 PyModuleJSModule:noindex:

发布 7.2.1 (2023年8月17日发布)

修复的 Bug

  • 恢复了资产类 (_CascadingStyleSheet_JavaScript) 的 str 接口,许多扩展都依赖于此。这将在 Sphinx 9 中移除。

  • 恢复了对 Builder.add_{css,js}_file() 的调用,许多扩展都依赖于此。

  • 恢复了私有 API TocTree.get_toctree_ancestors(),许多扩展都依赖于此。

发布 7.2.0 (2023年8月17日发布)

依赖项

  • #11511: 放弃 Python 3.8 支持。

  • #11576: 要求 Pygments 2.14 或更高版本。

已弃用

  • #11512: 弃用 sphinx.util.md5sphinx.util.sha1。请改用 hashlib

  • #11526: 弃用 sphinx.testing.path。请改用 os.pathpathlib

  • #11528: 弃用 sphinx.util.split_index_msgsphinx.util.split_into。请改用 sphinx.util.index_entries.split_index_msg

  • 弃用 sphinx.builders.html.Stylesheetsphinx.builders.html.Javascript。请改用 sphinx.application.Sphinx.add_css_file()sphinx.application.Sphinx.add_js_file()

  • #11582: 弃用 sphinx.builders.html.StandaloneHTMLBuilder.css_filessphinx.builders.html.StandaloneHTMLBuilder.script_files。请改用 sphinx.application.Sphinx.add_css_file()sphinx.application.Sphinx.add_js_file()

  • #11459: 弃用 sphinx.ext.autodoc.preserve_defaults.get_function_def()。补丁由 Bénédikt Tran 提供。

新增功能

  • #11526: 在更多地方支持 os.PathLike 类型和 pathlib.Path 对象。

  • #5474: coverage: 打印汇总统计表。补丁由 Jorge Leitao 提供。

  • #6319: viewcode: 添加 viewcode_line_numbers 以控制是否将行号添加到渲染的源代码中。补丁由 Ben Krikler 提供。

  • #9662: 添加 :no-typesetting: 选项以抑制文本输出并仅创建可链接的锚点。补丁由 Latosha Maltba 提供。

  • #11221: C++: 支持目录中的领域对象。补丁由 Rouslan Korneychuk 提供。

  • #10938: doctest: 添加 doctest_show_successes 选项。补丁由 Trey Hunner 提供。

  • #11533: 添加 :no-index::no-index-entry::no-contents-entry:

  • #11572: 改进文件被检测为过时的原因的 debug 日志记录。补丁由 Eric Larson 提供。

  • #10678: 为通过 include 指令读取的文件发出 source-read 事件。补丁由 Halldor Fannar 提供。

  • #11570: 使用 PEP 585 内置泛型时使用短名称。补丁由 Riccardo Mori 提供。

  • #11300: 改进 SigElementFallbackTransform 回退逻辑和签名文本元素节点。有关更多详细信息,请参阅文档。补丁由 Bénédikt Tran 提供。

  • 允许使用 python -m sphinx build ... 运行 Sphinx。

修复的 Bug

  • #11077: graphviz: 修复图内的相对链接。补丁由 Ralf Grubenmann 提供。

  • #11529: LaTeX 构建器中的行块输出多余的空标记。补丁由 Adrian Vollmer 提供。

  • #11196: autosummary: 摘要行提取在遇到“e.g.”时失败。

  • #10614: 修复了继承图中的一些错误,这些错误导致链接缺失或损坏。补丁由 Albert Shih 提供。

  • #9428: 在运行 gettext 构建器时排除替换定义。补丁由 Alvin Wong 提供。

  • #10795: 如果 graphviz_dot 为假值,则引发描述性错误。

  • #11546: 与其原始文本相同的翻译节点现在标记有 translated=True 属性。

  • #10049: html: 将链接锚点中的标题文本“Permalink”更改为“Link”。

  • #4225: 放宽 Pygments 在词法分析失败时的解析。

  • #11246: 使用 sphinx.ext.napoleon 时,允许文档字符串的第一行中包含内联链接和单行类型注释 #: :meta ...:。补丁由 Bénédikt Tran 提供。

  • #10930: 在搜索结果页面上高亮显示所有搜索词。补丁由 Dmitry Shachnev 提供。

  • #11473: 包含 Literal 枚举值的类型注释现在可以正确渲染。补丁由 Bénédikt Tran 提供。

  • #11591: 修复 sphinx.ext.coverage 扩展中对 C 覆盖率的支持。补丁由 Stephen Finucane 提供。

  • #11594: HTML 主题: 增强 agogo 主题在较小设备上的水平滚动。补丁由 Lukas Engelter 提供。

  • #11459: 修复 sphinx.ext.autodoc.preserve_defaults 中对异步和 lambda 函数的支持。补丁由 Bénédikt Tran 提供。

测试

  • #11577: pytest: 在“XPASS”时测试失败。

  • #11577: pytest: 使用“importlib”导入模式。

  • #11577: pytest: 设置 PYTHONWARNINGS=error。

  • #11577: pytest: 设置严格配置和严格标记。