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_defaults为True时,支持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可能会作为字符串或布尔值传入。修复
PyModule和JSModule的: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.md5和sphinx.util.sha1。请改用hashlib。#11526: 弃用
sphinx.testing.path。请改用os.path或pathlib。#11528: 弃用
sphinx.util.split_index_msg和sphinx.util.split_into。请改用sphinx.util.index_entries.split_index_msg。弃用
sphinx.builders.html.Stylesheet和sphinx.builders.html.Javascript。请改用sphinx.application.Sphinx.add_css_file()和sphinx.application.Sphinx.add_js_file()。#11582: 弃用
sphinx.builders.html.StandaloneHTMLBuilder.css_files和sphinx.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: 设置严格配置和严格标记。