Sphinx 3.2

发布 3.2.1 (发布于 2020 年 8 月 14 日)

新增功能

  • #8095: napoleon: 添加 napoleon_preprocess_types 以启用 numpy 风格文档字符串的类型预处理器

  • #8114: C 和 C++: 在参数和修饰符之后解析函数属性。

修复的 Bug

  • #8074: napoleon: 处理 C 扩展模块时崩溃

  • #8088: napoleon: Numpy 风格参数部分中的“内联文字起始字符串没有结束字符串”警告

  • #8084: autodoc: 在文档化损坏类的属性时引发 KeyError

  • #8091: autodoc: 在 Python 3.5.2 上文档化属性时引发 AttributeError

  • #8099: autodoc: 当目标代码使用 TYPE_CHECKING 时引发 NameError

  • C++: 修复模板模板参数的解析,该问题因 #7944 的修复而导致

发布 3.2.0 (发布于 2020 年 8 月 8 日)

已弃用

  • sphinx.ext.autodoc.members_set_option()

  • sphinx.ext.autodoc.merge_special_members_option()

  • sphinx.writers.texinfo.TexinfoWriter.desc

  • C: 解析 v3 之前的类型指令和角色,以及选项 c_allow_pre_v3c_warn_on_allowed_pre_v3

新增功能

  • #2076: autodoc: 允许在 skip-member 函数中覆盖 exclude-members

  • #8034: autodoc: :private-member: 可以接受一个明确的成员名称列表进行文档化

  • #2024: autosummary: 添加 autosummary_filename_map 以避免两个大小写不同的对象之间的文件名冲突

  • #8011: autosummary: 支持实例属性作为 autosummary 指令的目标

  • #7849: html: 添加 html_codeblock_linenos_style 以更改代码块行号的样式

  • #7853: C 和 C++: 支持带参数的 GNU 风格属性。

  • #7888: napoleon: 添加别名 Warn 和 Raise。

  • #7690: napoleon: 解析类型字符串并尽可能将它们制作成超链接。转换规则可以通过 napoleon_type_aliases 进行更新

  • #8049: napoleon: 当 napoleon_use_paramFalse 时,为每个参数类型创建超链接

  • C: 添加 c:alias 指令用于插入现有声明的副本。

  • #7745: html: 如果文档名包含空格,清单会损坏

  • #7991: html 搜索: 允许搜索数字

  • #7902: html 主题: 添加新选项 globaltoc_maxdepth 以控制侧边栏中 globaltoc 的行为

  • #7840: i18n: 优化引导时的依赖检查

  • #7768: i18n: figure_language_filename 支持 docpath 令牌

  • #5208: linkcheck: 支持本地链接检查

  • #5090: setuptools: 将详细程度链接到 distutils 的 -v 和 -q 选项

  • #6698: doctest: 为 doctest, testcode 和 testoutput 指令添加 :trim-doctest-flags::no-trim-doctest-flags: 选项

  • #7052: 为 Python、C、C++ 和 Javascript 域添加 :noindexentry:。更新文档以更好地反映此选项与 :noindex: 选项之间的关系。

  • #7899: C: 添加解析某些 v3 之前风格类型指令和角色并尝试将其转换为等效 v3 指令/角色的可能性。将新选项 c_allow_pre_v3 设置为 True 以启用此功能。通过将 c_warn_on_allowed_pre_v3 设置为 True 可以抑制此功能打印的警告。此功能立即被弃用。

  • #7999: C: 添加对命名可变宏参数的支持。

  • #8071: 允许抑制“自引用目录树”警告

修复的 Bug

  • #7886: autodoc: 在模拟泛型类型类时引发 TypeError

  • #7935: autodoc: 当函数参数的默认值为 inspect._empty 时,不显示函数签名

  • #7901: autodoc: 重载函数的类型注解未解析

  • #904: autodoc: 实例属性导致 autofunction 指令崩溃

  • #1362: autodoc: private-members 选项不适用于类属性

  • #7983: autodoc: 在 py36 中,Generator 类型注解错误地渲染

  • #8030: autodoc: 当给出 :inherited-members: 选项时,未初始化带注解的实例变量未被文档化

  • #8032: autodoc: 定义在父类中的实例变量的类型提示未在派生类的文档中显示

  • #8041: autodoc: 当派生类有其他带注解的实例变量时,超类中带注解的实例变量未被文档化

  • #7839: autosummary: 无法处理函数名中的变音符号

  • #7865: autosummary: 发现缩写时无法提取摘要行

  • #7866: autosummary: 当文档字符串包含超链接目标时,无法提取正确的摘要行

  • #7469: autosummary: “模块属性”标题不可翻译

  • #7940: apidoc: 如果模块有子模块,则 rst 文件末尾会生成一个额外的换行符

  • #4258: napoleon: 未显示装饰的特殊方法

  • #7799: napoleon: numpydoc 中合并参数的参数未转义

  • #7780: napoleon: 当 napoleon_use_param=True 时,numpydoc 中的多个参数声明被错误识别

  • #7715: LaTeX: numfig_secnum_depth > 1 导致错误的图表链接

  • #7846: html 主题: 生成了 XML 无效文件

  • #7894: gettext: 使用 rst_epilog 时显示错误的源信息

  • #7691: linkcheck: 未使用 HEAD 请求进行检查

  • #4888: i18n: 翻译时无法为 :ref: 角色添加显式标题

  • #7928: py 域: 无法解析属性的类型注解

  • #8008: py 域: 无法解析包含省略号的类型注解

  • #7994: std 域: option 指令未生成与 2.x 或更早版本兼容的旧 node_id

  • #7968: i18n: math 指令的内容在翻译时被解释为 reST

  • #7768: i18n: figure_language_filenameroot 元素不是用户在文档中指定的路径

  • #7993: texinfo: 嵌套对象描述引发 TypeError

  • #7993: texinfo: 显示不支持 desc_signature_line 节点的警告

  • #7869: 不带解释的 abbr 角色将显示前一个 abbr 角色的解释

  • #8048: graphviz: 在构建非 HTML 文档时复制了 graphviz.css

  • C 和 C++: 移除了 noindex 指令选项,因为它没有任何作用。

  • #7619: 如果节点有多个 ID,则会生成重复的节点 ID

  • #2050: 索引页中符号部分出现两次

  • #8017: 修复 sphinx.addnodes 中的循环导入

  • #7986: CSS: 使“highlight”选择器更健壮

  • #7944: C++: 解析以依赖合格名称开头的非类型模板参数。

  • C: 不要每次处理枚举器时都深度复制整个符号表并弄得一团糟。