Sphinx 4.4

发布 4.4.0 (发布于 2022 年 1 月 17 日)

依赖项

  • #10007: 对 python-3.9 或更旧版本使用 importlib_metadata

  • #10007: 移除 setuptools

新增功能

  • #9075: autodoc: 添加配置变量 autodoc_typehints_format 以抑制函数签名类型提示的前导模块名 (例如 io.StringIO -> StringIO)

  • #9831: 如果 autosummary_ignore_module_all 设置为 False,Autosummary 现在只记录模块 __all__ 属性中指定的成员。默认行为保持不变。Autogen 现在也支持通过 --respect-module-all 开关实现此行为。

  • #9555: autosummary: 改进加载目标对象失败时的错误消息

  • #9800: extlinks: 如果硬编码链接可被 extlink 替换,则发出警告,并建议替换。

  • #9961: html: 支持其他 HTML 构建器中嵌套的 <kbd> HTML 元素

  • #10013: html: 允许通过 Sphinx.add_js_file()loading_method 参数更改 JS 的加载方法

  • #9551: html 搜索:“隐藏搜索匹配”链接从 URL 中移除“highlight”参数

  • #9815: html 主题: 将侧边栏组件封装在 div 中,允许通过 CSS 自定义其布局

  • #9827: i18n: 按翻译术语对词汇表中的项目进行排序

  • #9899: py domain: 允许将交叉引用指定符 (.~) 指定为 :type: 选项

  • #9894: linkcheck: 添加选项 linkcheck_exclude_documents 以禁用匹配文档中的链接检查。

  • #9793: sphinx-build: 允许在 macOS 和 Python3.8+ 上使用 macOS 中的并行构建功能

  • #10055: sphinx-build: 当给定 -w 选项时创建目录

  • #9993: std domain: 允许通过 ref 角色引用内联目标 (例如 _`target name`)

  • #9981: std domain: 从通用索引中剥离选项指令的值部分

  • #9391: texinfo: 改进 samp 角色中的变量

  • #9578: texinfo: 添加 texinfo_cross_references 以禁用交叉引用,以便独立阅读器阅读

  • #9822, #9062: 添加新的 Intersphinx 角色 external,用于在外部项目中进行显式查找,而无需解析到本地项目。

修复的 Bug

  • #9866: autodoc: 导入类的文档注释被忽略

  • #9883: autodoc: 模拟对象的别名的文档注释被忽略

  • #9908: autodoc: 在 Python 3.10 中使用 NewTypes 构建文档时显示调试消息

  • #9968: autodoc: 如果 __init__ 方法有仅位置参数,则不显示实例变量

  • #9194: autodoc: “typing”模块下的类型没有超链接

  • #10009: autodoc: 如果目标对象在获取文档字符串时引发错误,则崩溃

  • #10058: autosummary: 当 autodoc_class_signature = 'separated' 时,不显示导入的成员

  • #9947: i18n: 包含项目符号列表的主题指令无法翻译

  • #9878: mathjax: MathJax 配置放置在加载 MathJax 之后

  • #9932: napoleon: 即使没有描述,也会生成空的“returns”部分

  • #9857: 生成的 RFC 链接使用过时的基本 URL

  • #9909: HTML,防止字面文本中的换行。

  • #10061: html 主题: 主题添加的配置值无法从 conf.py 覆盖

  • #10073: imgconverter: 对“data”URI 调用不必要的可用性检查

  • #9925: LaTeX: 在内联和解析的字面值中,也禁止使用 'xelatex' 在破折号处换行

  • #9944: LaTeX: 某些嵌套声明的额外垂直空白

  • #9940: LaTeX: Python 域中的多函数声明在 latexpdf 输出中垂直间距拥挤

  • #10015: py domain: 信息字段列表中定义的“typing”模块下的类型没有超链接

  • #9390: texinfo: 不在脚注内发出标签

  • #9413: xml: 交叉引用 python 对象时生成了无效的 XML

  • #9979: 错误级别消息显示为警告消息

  • #10057: 如果项目放置在根目录中,则无法扫描文档

  • #9636: code-block: 没有参数的 :dedent: 删除了换行符