Sphinx 3.3

版本 3.3.1 (发布于 2020 年 11 月 12 日)

修复的 Bug

  • #8372: autodoc: autoclass 指令比 Sphinx 3.2 慢

  • #7727: autosummary: 在文档没有 __init__.py 的 python 包时,引发 PycodeError

  • #8350: autosummary: autosummary_mock_imports 导致构建变慢

  • #8364: C, 正确初始化空符号中的属性。

  • #8399: i18n: 将系统语言环境路径放在配置指定的路径之后

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

已弃用

  • sphinx.builders.latex.LaTeXBuilder.usepackages

  • sphinx.builders.latex.LaTeXBuilder.usepackages_afger_hyperref

  • sphinx.ext.autodoc.SingledispatchFunctionDocumenter

  • sphinx.ext.autodoc.SingledispatchMethodDocumenter

新增功能

  • #8100: html: 为复制 html_static_files 失败显示更好的错误消息

  • #8141: C: 为 c:alias 添加了 maxdepth 选项以插入嵌套声明。

  • #8081: LaTeX: 允许通过 app.add_latex_package() 添加 LaTeX 包,直到写入 .tex 文件之前

  • #7996: manpage: 添加 man_make_section_directory 以在构建手册页时创建节目录

  • #8289: epub: 允许使用 suppress_warnings 抑制 epub 构建器发出的“发现重复的 ToC 条目”警告。

  • #8298: sphinx-quickstart: 添加 sphinx-quickstart --no-sep 选项

  • #8304: sphinx.testing: 在 sphinx.testing.fixtures 中注册公共标记

  • #8051: napoleon: 对所有“另请参阅”项使用 obj 角色

  • #8050: napoleon: 将 napoleon_preprocess_types 应用于每个字段

  • C 和 C++,当检测到重复项时,显示先前声明的行号。

  • #8183: 仅在 LaTeX 构建时从 doctree 中删除 substitution_reference 节点

修复的 Bug

  • #8085: i18n: 添加对单个文本域的支持

  • #6640: i18n: 无法覆盖系统消息翻译

  • #8143: autodoc: 当 False 值传递给 autodoc_default_options 时,引发 AttributeError

  • #8103: autodoc: functools.cached_property 未被视为属性

  • #8190: autodoc: 如果某个扩展用不以空行结尾的字符串替换了 docstring,则会引发解析错误

  • #8142: autodoc: 派生自 typing.Generic 的类的构造函数签名错误

  • #8157: autodoc: 当注解的 __args__ 无效时,引发 TypeError

  • #7964: autodoc: 默认值中的元组被错误地渲染

  • #8200: autodoc: 类型别名破坏了 autoattribute 的类型格式

  • #7786: autodoc: 无法检测在其他文件中定义的重载方法

  • #8294: autodoc: 未正确处理单字符串 __slots__

  • #7785: autodoc: autodoc_typehints='none' 对重载函数没有影响

  • #8192: napoleon: 描述中包含行内字面量时会消失

  • #8142: napoleon: google 风格文档中存在正则表达式拒绝服务漏洞

  • #8169: LaTeX: 即使 latex_engine 不是 platex 也加载 pxjahyper

  • #8215: LaTeX: 'oneside' classoption 导致构建警告

  • #8175: intersphinx: 损坏的库存可能导致正则表达式拒绝服务

  • #8277: sphinx-build: 构建时控制台输出缺少和多余的空格(等等)

  • #7973: imgconverter: 多次检查 imagemagick 的可用性

  • #8255: py domain: 默认参数值中的数字从十六进制变为十进制

  • #8316: html: 在按钮元素聚焦时,阻止方向键更改页面

  • #8343: html search: 修复解析文档时不必要的图像加载

  • #8254: html theme: 行号与代码行不对齐

  • #8093: 某些构建器(LaTeX、singlehtml 等)中的高亮警告位置错误

  • #8215: 消除单面文档的 Fancyhdr 构建警告

  • #8239: 如果在 productionlist 中缩进,则无法引用令牌

  • #8268: linkcheck: 当 linkcheck_anchorsTrue 时报告 HTTP 错误

  • #8245: linkcheck: 考虑本地文件的源目录

  • #8321: linkcheck: tel: 方案超链接被检测为错误

  • #8323: linkcheck: 当发现具有不支持方案的链接时,退出状态不正确

  • #8188: C,向内部对象类型字典添加缺失项,例如,防止 intersphinx 解析它们。

  • C,修复 intersphinx 中的匿名对象。

  • #8270, C++,如果同名非函数声明已存在,则正确拒绝函数作为重复声明。

  • C,修复函数参数的引用。链接到函数而不是不存在的锚点。

  • #6914: 图号意外地分配给未加标题的项

  • #8320: 使“行内”行号不可选

测试

  • #8257: 支持 sphinx.testing 中的并行构建