Sphinx 2.4

版本 2.4.5 (发布于 2021 年 11 月 18 日)

依赖项

  • #9807: 将 Docutils 限制为 0.17.x 或更早版本

版本 2.4.4 (发布于 2020 年 3 月 5 日)

修复的 Bug

  • #7197: LaTeX: platex 导致带有目标 URL 的图像指令构建错误

  • #7223: Sphinx 构建自 2.4.0 以来变得更慢

版本 2.4.3 (发布于 2020 年 2 月 22 日)

修复的 Bug

  • #7184: autodoc: 类型注释中的 *args**kwarg 未正确处理

  • #7189: autodoc: classmethod 协程未被检测到

  • #7183: intersphinx: :attr: 对属性的引用已损坏

  • #6244, #6387: html 搜索: 使用 dirhtml 构建器构建时搜索中断/挂起

  • #7195: todo: 错误地使用非文档节点发出 doctree-resolved 事件

版本 2.4.2 (发布于 2020 年 2 月 19 日)

修复的 Bug

  • #7138: autodoc: 当变量将未绑定对象作为值时,autodoc.typehints 崩溃

  • #7156: autodoc: 未显示仅关键字参数的分隔符

  • #7146: autodoc: 在找到被抑制的 type_comment 时引发 IndexError

  • #7161: autodoc: typehints 扩展不支持并行构建

  • #7178: autodoc: 在获取类型注释时引发 TypeError

  • #7151: 扩展将值赋给 env.indexentries 时崩溃

  • #7170: text: 删除调试打印

  • #7137: viewcode: 避免在给定非 python 代码时崩溃

版本 2.4.1 (发布于 2020 年 2 月 11 日)

修复的 Bug

  • #7120: html: 在缩放具有浮点尺寸的 SVG 图像时崩溃

  • #7126: autodoc: TypeError: 'getset_descriptor' 对象不可迭代

版本 2.4.0 (发布于 2020 年 2 月 9 日)

已弃用

  • sphinx.pycode.ModuleAnalyzer()decode 参数

  • sphinx.directives.other.Index

  • sphinx.environment.temp_data['gloss_entries']

  • sphinx.environment.BuildEnvironment.indexentries

  • sphinx.environment.collectors.indexentries.IndexEntriesCollector

  • sphinx.ext.apidoc.INITPY

  • sphinx.ext.apidoc.shall_skip()

  • sphinx.io.FiletypeNotFoundError

  • sphinx.io.get_filetype()

  • sphinx.pycode.ModuleAnalyzer.encoding

  • sphinx.roles.Index

  • sphinx.util.detect_encoding()

  • sphinx.util.get_module_source()

  • sphinx.util.inspect.Signature

  • sphinx.util.inspect.safe_getmembers()

  • sphinx.writers.latex.LaTeXTranslator.settings.author

  • sphinx.writers.latex.LaTeXTranslator.settings.contentsname

  • sphinx.writers.latex.LaTeXTranslator.settings.docclass

  • sphinx.writers.latex.LaTeXTranslator.settings.docname

  • sphinx.writers.latex.LaTeXTranslator.settings.title

  • sphinx.writers.latex.ADDITIONAL_SETTINGS

  • sphinx.writers.latex.DEFAULT_SETTINGS

  • sphinx.writers.latex.LUALATEX_DEFAULT_FONTPKG

  • sphinx.writers.latex.PDFLATEX_DEFAULT_FONTPKG

  • sphinx.writers.latex.XELATEX_DEFAULT_FONTPKG

  • sphinx.writers.latex.XELATEX_GREEK_DEFAULT_FONTPKG

新增功能

  • #6910: inheritance_diagram: 使图表背景透明

  • #6446: duration: 添加 sphinx.ext.durations 以检查哪些文档使构建变慢

  • #6837: LaTeX: 支持嵌套表格

  • #7115: LaTeX: 允许通过环境变量覆盖 LATEXOPTS 和 LATEXMKOPTS

  • #6966: graphviz: 支持 :class: 选项

  • #6696: html: 图像/图形指令的 :scale: 选项对 SVG 图像不起作用 (需要 imagesize-1.2.0 或更高版本)

  • #6994: imgconverter: 支持 Illustrator 文件 (.ai) 到 .png 转换

  • autodoc: 支持仅位置参数分隔符 (符合 PEP-570)

  • autodoc: 支持变量的类型注释

  • #2755: autodoc: 添加新事件: autodoc-before-process-signature

  • #2755: autodoc: 支持 type_comment 样式 (例如 # type: (str) -> str) 注释 (需要 python3.8+ 或 typed_ast)

  • #7051: autodoc: 支持没有默认值的实例变量 (PEP-526)

  • #6418: autodoc: 添加新扩展 sphinx.ext.autodoc.typehints。如果设置了 autodoc_typehints = "description",它将类型提示显示为对象描述。这是一个实验性扩展,将在 Sphinx 3.0 中集成到 autodoc 核心中

  • 如果未找到原始节点类的 visitor/departure 方法,SphinxTranslator 现在会调用父节点类的 visitor/departure 方法

  • #6418: 添加新事件: object-description-transform

  • py 域: py:datapy:attribute 接受名为 :type::value: 的新选项来描述其类型和初始值

  • #6785: py 域: :py:attr: 能够再次引用属性

  • #6772: apidoc: 添加 -q 选项用于安静模式

修复的 Bug

  • #6925: html: 从 <script> 元素中删除冗余的 type="text/javascript"

  • #7112: html: SVG 图像即使对齐也未以浮点数布局

  • #6906, #6907: autodoc: 无法读取 cp1251 编码的源代码

  • #6961: latex: babel 警告显示两次

  • #7059: latex: LaTeX 编译陷入无限循环 (wrapfig 问题)

  • #6581: latex: toctree 的 :reversed: 选项对 LaTeX 构建没有影响

  • #6559: 在词汇表指令中生成了错误的节点 ID

  • #6986: apidoc: 模块内 .so 文件模块名检测错误

  • #6899: apidoc: 即使给定 --private 也不显示私有成员

  • #6327: apidoc: 支持由 __init__.so 文件组成的 python 包

  • #6999: napoleon: 无法解析 :exc: 角色中的波浪号

  • #7019: gettext: 消息目录中使用绝对路径

  • #7023: autodoc: 未列出嵌套的偏函数

  • #7023: autodoc: 从其他模块导入的偏函数作为模块成员列出,没有 :impoprted-members: 选项

  • #6889: autodoc: :members:: 选项中的尾随逗号导致隐晦警告

  • #6568: autosummary: 在为子模块生成存根文件时,autosummary_imported_members 被忽略

  • #7055: linkcheck: 重定向被视为错误

  • #7088: HTML 模板: 如果激活了 navigation_with_keys 选项,则修饰键将被忽略,这意味着该功能可能会干扰浏览器功能

  • #7090: std 域: 无法为自定义容器节点分配 numfig-numbers

  • #7106: std 域: 当扩展调用 note_explicit_target() 时,枚举节点被标记为重复

  • #7095: dirhtml: 交叉引用通过 intersphinx 和 :doc: 角色断裂

  • C++

    • 在某些情况下使用 struct 角色时不会崩溃。

    • 为函数参数使用 var/member 角色时不会发出警告。

    • 正确渲染调用和花括号初始化表达式。

  • #7097: 由 sphinx.transforms.post_transforms.images.ImageConverter 或其子类(用于 latex 构建)生成的图像文件名现在经过清理,以防止路径损坏