Sphinx 3.1¶
发布 3.1.2 (发布于 2020 年 7 月 5 日)¶
不兼容的变更¶
#7650: autodoc: 对于装饰函数,将显示基函数的签名,而不是装饰器的签名
修复的 Bug¶
#7844: autodoc: 给出相对模块名时未能检测到模块
#7856: autodoc: 将非类对象传递给 autoclass 指令时引发 AttributeError
#7850: autodoc: 当 autodoc_typehints 为 ‘description’ 时,对于无效标记会引发 KeyError
#7812: autodoc: 如果目标名称同时与同名的属性和模块匹配,则崩溃
#7650: autodoc: 如果函数由通用装饰器装饰,则函数签名变为
(*args, **kwargs)#7812: autosummary: 如果目标代码包含同名的属性和模块,则生成损坏的存根文件
#7806: viewcode: 未能解决第三方构建器上的 viewcode 引用
#7838: html 主题: 列表项有额外的垂直空间
#7878: html 主题: “overflow” 和 “float” 之间存在不必要的交互
发布 3.1.1 (发布于 2020 年 6 月 14 日)¶
不兼容的更改¶
#7808: napoleon: 属性类型表示为类型化字段
新增功能¶
#7807: autodoc: 当 type_comment 与其签名不匹配时显示详细警告
修复的 Bug¶
#7808: autodoc: 变量和属性类型注解引发警告
#7802: autodoc: 在并行构建时引发 EOFError
#7821: autodoc: 对重载的 C 扩展函数引发 TypeError
#7805: autodoc: 描述符返回的对象被意外地记录
#7807: autodoc: 使用 contextmanager 的函数显示错误的签名
#7812: autosummary: 如果目标代码包含同名的属性和模块,则生成损坏的存根文件
#7808: napoleon: 变量和属性类型注解引发警告
#7811: sphinx.util.inspect 导致循环导入问题
发布 3.1.0 (发布于 2020 年 6 月 8 日)¶
依赖项¶
#7746: mathjax: 更新至 2.7.5
不兼容的更改¶
#7477: imgconverter: 在 Windows 上默认调用 “magick convert” 命令
已弃用¶
sphinx.ext.autosummary.generate.AutosummaryRenderer 的第一个参数已更改为 Sphinx 对象
sphinx.ext.autosummary.generate.AutosummaryRenderer接受对象类型作为参数sphinx.ext.autodoc.Documenter.get_doc()的ignore参数sphinx.ext.autosummary.generate. AutosummaryRenderer的template_dir参数sphinx.ext.autosummary.generate. find_autosummary_in_docstring()的module参数sphinx.ext.autosummary.generate. generate_autosummary_docs()的builder参数sphinx.ext.autosummary.generate. generate_autosummary_docs()的template_dir参数sphinx.util.docstring.prepare_docstring()的ignore参数sphinx.ext.autosummary.generate.AutosummaryRenderer.exists()sphinx.util.rpartition()
新增功能¶
LaTeX: 在 LaTeX 主题中使
toplevel_sectioning设置可选LaTeX: 允许从 LaTeX 主题覆盖纸张大小和字号
LaTeX: 添加
latex_theme_options以覆盖主题选项#7410: 允许使用
suppress_warnings抑制“检测到循环 toctree 引用”警告C,添加了作用域控制指令:
c:namespace、c:namespace-push和c:namespace-pop。#2044: autodoc: 抑制实例属性的默认值
#7473: autodoc: 如果 docstring 在 info-field-list 中包含
:meta public:,则认为成员是公共的#7487: autodoc: 允许通过 py:autofunction 为 singledispatch 函数生成文档
#7143: autodoc: 支持 final 类和方法
#7384: autodoc: 支持由
__new__()、元类和内置基类定义的签名#2106: autodoc: 支持 docstring 上的多个签名
#4422: autodoc: 支持 Python 3.7 或更高版本中的 GenericAlias
#3610: autodoc: 支持重载函数
#7722: autodoc: 支持 TypeVar
#7466: autosummary: 生成文档中的标题未翻译
#7490: autosummary: 为 autosummary 指令添加
:caption:选项以设置 toctree 的标题#7469: autosummary: 支持模块属性
#248, #6040: autosummary: 为 autosummary 指令添加
:recursive:选项以递归生成存根文件#4030: autosummary: 添加
autosummary_context以添加自定义模板的模板变量#7530: html: 支持嵌套的 <kbd> 元素
#7481: html 主题: 为脚注/引用标签添加右边距
#7482, #7717: html 主题: 带标题和行号的代码块的 CSS 间距
#7443: html 主题: 添加新选项
globaltoc_collapse和globaltoc_includehidden以控制侧边栏中 globaltoc 的行为#7484: html 主题: 避免侧边栏与其他块之间的冲突
#7476: html 主题: Relbar 面包屑应包含当前页面
#7506: html 主题: 规范 URL 未转义
#7533: html 主题: 避免 genindex.html 开头的空白
#7541: html 主题: 在“body”末尾添加一个“clearer”
#7542: html 主题: 使 admonition/topic/sidebar 可滚动
#7543: html 主题: 为表格添加上下边距
#7695: html 主题: 为基本主题添加 viewport meta 标签
#7721: html 主题: classic: 默认的 codetextcolor/codebgcolor 不覆盖 Pygments
C 和 C++: 允许声明末尾有分号。
C++: 解析参数化 noexcept 声明符。
#7294: C++: 解析带有用户定义字面量的表达式。
C++: 解析尾随返回类型。
#7143: py domain: 为
py:class、py:exception和py:method指令添加:final:选项#7596: py domain: 将变量的类型注解更改为超链接
#7770: std domain:
option指令支持foo[=bar]形式的参数#7582: napoleon: 属性类型表示为类型注解
#7734: napoleon: 属性上尾随下划线过度转义
#7247: linkcheck: 添加
linkcheck_request_headers以向特定主机发送自定义 HTTP 头#7792: setuptools: 支持
--verbosity选项#7683: 为
Sphinx.emit()添加allowed_exceptions参数以允许处理程序引发指定的异常#7295: C++: 解析(尾随)requires 子句。
修复的 Bug¶
#6703: autodoc: 增量构建对导入对象不起作用
#7564: autodoc: 描述符不显示注解
#6588: autodoc: 装饰的继承方法没有文档
#7469: autodoc: 变量的 autodoc-process-docstring 更改被意外缓存
#7559: autodoc: 错误地将同步函数检测为异步函数
#6857: autodoc: 未能检测到 Enum 类上的 classmethod
#7562: autodoc: 在
autodoc_typehints='description'模式下,包含空格的类型提示渲染错误#7551: autodoc: 未能导入嵌套类
#7362: autodoc: 未能为内置函数渲染正确的签名
#7654: autodoc:
Optional[Union[foo, bar]]显示为Union[foo, bar, None]#7629: autodoc: 如果指定了无效对象,autofunction 会发出不友好的警告
#7650: autodoc: 对于装饰函数显示未装饰的签名
#7676: autodoc: autodoc_member_order 默认值中的拼写错误
#7676: autodoc: :member-order: 选项的错误值被静默忽略
#7676: autodoc: member-order=”bysource” 对 C 模块不起作用
#3673: autodoc: member-order=”bysource” 对具有
__all__的模块不起作用#7668: autodoc: 错误的 retann 值传递给 autodoc-process-signature 的处理程序
#7711: autodoc: 处理 numpy 对象时因 ValueError 失败
#7791: autodoc: 记录 singledispatch 函数时引发 TypeError
#7551: autosummary: 嵌套类被索引为非嵌套类
#7661: autosummary: 如果导入目标模块失败,autosummary 指令会发出两次警告
#7685: autosummary: 即使
autossummary_imported_members为False,模板变量“members”也包含导入成员#7671: autosummary: 缺少导入失败警告的位置
#7535: sphinx-autogen: 当自定义模板使用继承时崩溃
#7536: sphinx-autogen: 当模板使用 i18n 功能时崩溃
#7781: sphinx-build: 当 outdir 不是目录时显示错误的错误消息
#7653: sphinx-quickstart: 修复嵌套相对路径的多个目录创建
#2785: html: 方程式链接对齐不良
#7718: html 主题: 某些主题不尊重 Pygments 样式的背景颜色(agogo, haiku, nature, pyramid, scrolls, sphinxdoc 和 traditional)
#7544: html 主题: admonitions 中的填充不一致
#7581: napoleon: 属性 docstring 中的内联代码解析不良
#7628: imgconverter: 对于不支持图像的构建器,不必要地运行 imagemagick 一次
#7610: 对于 Docutils 0.16 错误地渲染连续的反斜杠
#7646: 处理事件处理程序中的错误
#4187: LaTeX: 日语文档中 PDF 书签中的 EN DASH 消失
#7701: LaTeX: 匿名间接超链接目标导致重复标签
#7723: LaTeX: 当 URL 包含单引号时 pdflatex 崩溃
#7756: py domain: 未显示仅位置参数的默认值
#7760: coverage: 添加
coverage_show_missing_items以向控制台显示覆盖结果C++: 修复在全局作用域中显式开始的嵌套名称(例如
::A::B)的渲染和交叉引用。C: 修复在全局作用域中显式开始的嵌套名称(例如
.A.B)的渲染和交叉引用。#7763: C 和 C++: 在一元表达式和折叠表达式的显示字符串化期间不会崩溃。