Sphinx 4.1

发布版本 4.1.2(发布于 2021 年 7 月 27 日)

不兼容的更改

  • #9435: linkcheck: 禁用对github.com上自动生成的锚点的检查(例如,reST/Markdown文档中的锚点)

修复的错误

  • #9489: autodoc: 使用 typing.NewType 的自定义类型在 3.10 的 HEAD 中显示不佳

  • #9490: autodoc:typing 模块下的某些对象在 3.10 的 HEAD 中显示不佳

  • #9436, #9471: autodoc: 当 autodoc_class_signature = "separated" 时崩溃

  • #9456: html 搜索: html_copy_source 无法控制搜索摘要

  • #9500: LaTeX:在Windows上构建日本文档失败

  • #9435: linkcheck: 无法检查 github.com 中的锚点

版本 4.1.1 (发布于 2021 年 7 月 15 日)

依赖项

  • #9434: sphinxcontrib-htmlhelp-2.0.0 或更高版本

  • #9434: sphinxcontrib-serializinghtml-1.1.5 或更高版本

修复的错误

  • #9438: html: 指定的 HTML 徽标或图标文件在输出时未找到

Release 4.1.0 (发布于 2021年7月12日)

依赖项

  • 支持 jinja2-3.0

过时的

  • The app argument of sphinx.environment.BuildEnvironment becomes required

  • sphinx.application.Sphinx.html_theme

  • sphinx.ext.autosummary._app

  • sphinx.util.docstrings.extract_metadata()

新增功能

  • #8107: autodoc: 为 autoclass 指令添加 class-doc-from 选项,以控制特定类的内容,如 autoclass_content

  • #8588: autodoc: autodoc_type_aliases 现在支持点分名称.它允许您为带有模块名的类定义别名,例如 foo.bar.BazClass

  • #9175: autodoc: 模块中未记录特殊成员

  • #9195: autodoc:typing.Literal 的参数呈现错误

  • #9185: autodoc: autodoc_typehints 允许 'both' 设置,使类型提示既可以包含在签名中,也可以包含在描述中

  • #4257: autodoc: 添加 autodoc_class_signature 以分离类条目与 __init__() 方法的定义

  • #8061, #9218: autodoc: 支持别名类的可变注释

  • #3014: autodoc: 添加 autodoc-process-bases 以修改类定义的基类

  • #9272:autodoc:更好地渲染默认参数值的枚举值

  • #9384: autodoc:autodoc_typehints='none' 现在会清除变量、属性和属性的类型提示

  • #3257: autosummary: 支持类的实例属性

  • #9358: html: 为 toctree 项目添加 “heading” 角色

  • #9225: html: 为方法/函数的返回类型提示添加span标签

  • #9129: html搜索: 当 html_copy_source = False 时显示搜索摘要

  • #9307: html搜索:防止搜索字段中的更正和补全

  • #9120: html 主题: 消除可复制文本中代码块的提示字符

  • #9176: i18n: 如果在 locale_dirs 下找不到消息目录文件,则发出调试消息

  • #9414: LaTeX: 将xeCJKVerbAddon添加到中文文档的默认fvset配置中

  • #9016: linkcheck: 支持检查github.com上的锚点

  • #9016: linkcheck: 添加一个新事件 linkcheck-process-uri 在检查超链接之前修改 URI

  • #6525: linkcheck: 添加 linkcheck_allowed_redirects ,将重定向到预期 URL 的超链接标记为 “有效”

  • #1874: py 域: 在信息字段列表中使用 | 支持联合类型

  • #9268: py 域: python_use_unqualified_type_names 支持 info-field-list 中的类型字段

  • #9097:优化并行构建

  • #9131: 添加 nitpick_ignore_regex 以使用正则表达式忽略挑剔警告

  • #9174: 添加 Sphinx.set_html_assets_policy 以告知扩展在所有页面中包含 HTML 资源.扩展可以通过 Sphinx.registry.html_assets_policy 检查这一点

  • C++,添加支持

    • inline variables,

    • consteval functions,

    • constinit variables,

    • char8_t,

    • explicit(<constant expression>) specifier,

    • 数字字面量中的分隔符,和

    • 在占位符类型说明符中的约束,即形容词语法(例如, Sortable auto &v ).

  • C,增加对数字字面量中数字分隔符的支持.

  • #9166: LaTeX:在LaTeX输出中支持容器

修复的错误

  • #8872: autodoc: 堆叠的单一调度错误渲染

  • #8597: autodoc: 仅包含元数据的文档字符串应视为未文档化

  • #9185: autodoc: 继承的函数和方法的类型提示不准确

  • #9250: autodoc: 继承的方法没有文档字符串被错误解析

  • #9283: autodoc: autoattribute 指令未能为没有任何注释的属性生成文档

  • #9364: autodoc: 默认参数值中的单元素元组错误渲染

  • #9362: autodoc: 处理 Tuple[()] 子类时引发 AttributeError

  • #9404: autodoc: 在通过 autoclass 指令处理类似字典的对象(而非类)时引发 TypeError

  • #9317: html: 在第一页按左键会导致访问下一页

  • #9381: html: html_favicon 和 html_log 的 URL 无法工作

  • #9270: html 主题 : pyramid 主题生成不正确的 logo 链接

  • #9217: manpage: 由 man_make_section_directory 生成的手册页目录名称不正确

  • #9350: 手册页: 修复在samp角色顶部的关键字后字体未重置的问题

  • #9306:当远程服务器在 HEAD 请求上关闭连接时,Linkcheck 报告链接损坏

  • #9280: py 域: “exceptions” 模块未显示

  • #9418: py域:一个没有参数的可调用注解(例如 Callable[[], None] )会渲染为缺少括号( Callable[], None]

  • #9319: 快速入门: 当 conf.py 已经存在时,使 sphinx-quickstart 退出

  • #9387: xml: XML构建器忽略自定义访问者

  • #9224::param::type: 字段不支持包含空格的类型(例如 Dict[str, str]

  • #8945: 在转换带类型的字段时,调用指定的角色,而不是创建单个 xref.对于 C 和 C++,使用 expr 角色处理带类型的字段.