Sphinx 1.8¶
发布 1.8.6 (发布于 2021 年 11 月 18 日)¶
依赖项¶
#9807: 将 Docutils 限制在 0.17.x 或更旧版本
发布 1.8.5 (发布于 2019 年 3 月 10 日)¶
修复的 Bug¶
LaTeX: 移除 PDF 标题页作者姓名后的多余空格 (参考: #6004)
#6026: LaTeX: 定义列表的交叉引用不起作用
#6046: LaTeX: 给定无效 latex_elements 时抛出
TypeError#6067: LaTeX: 带有目标的图像与下一行连接
#6067: LaTeX: 带有目标的图像即使指定了也不对齐
#6149: LaTeX: 标题中的
:index:角色在 latexpdf 构建时导致Use of \@icentercr doesn't match its definition错误#6019: imgconverter: 包含多页 PDF 失败
#6047: autodoc:
autofunction对方法对象发出警告#6028: graphviz: 确保 graphviz 文件名可重现
#6068: doctest:
skipif选项可能会从文档中删除代码块#6136:
math指令的:name:选项导致崩溃#6139: intersphinx: 报告失败时出现 ValueError
#6135: changes: 修复找到任何模块时 UnboundLocalError
#3859: manpage: 代码块标题显示不正确
发布 1.8.4 (发布于 2019 年 2 月 3 日)¶
修复的 Bug¶
#3707: latex: 没有粗体对勾 (✔) 可用。
#5605: 文档语言设置为中文时,无法搜索英文单词。
#5889: LaTeX: 用户
numfig_format被去除空格,可能导致构建失败C++: 修复涉及 east cv-qualifiers 的声明的超链接。
#5755: C++: 修复返回类型中带有约束的函数模板的重复声明错误。
C++: 解析一元右折叠表达式和二元折叠表达式。
pycode 无法处理 Windows 上的 egg 文件
#5928: 运行构建时 KeyError: ‘DOCUTILSCONFIG’
#5936: LaTeX: 警示框中包含高度超过页面高度的图像导致 PDF 构建中断
#5231: “make html” 不读取和构建 “locale” 目录中的 “po” 文件
#5954:
:scale:图像选项如果图像在警示框中可能会破坏 PDF 构建#5966: MathJax 在增量构建时未加载
#5960: LaTeX: 自 2018 年 9 月 TeXLive 更新
parskip.sty后修改了 PDF 布局#5948: LaTeX: 为章节生成重复的标签
#5958: versionadded 指令导致 Python 3.5.0 崩溃
#5995: autodoc: autodoc_mock_imports 与 Python 3.7 上的元类冲突
#5871: texinfo: 不允许章节标题
.
发布 1.8.3 (发布于 2018 年 12 月 26 日)¶
新增功能¶
LaTeX: 可以插入自定义内容显示在标题页背面,请参阅
latex_elements的'maketitle'键的讨论 (仅限于'manual'docclass)
修复的 Bug¶
#5725: mathjax: 默认使用 CDN URL 获取“最新”版本
#5460: HTML 搜索不适用于某些第三方主题
#5520: LaTeX, 自 Sphinx 1.6 以来与 caption 包不兼容
#5614: autodoc: 导入内置模块时增量构建损坏
#5627: qthelp: QtHelp 中缺少 index.html
#5659: linkcheck: 包含多字节字符的超链接崩溃
#5754: DOC: 修复 LaTeX 定制 中的一些错误
#5810: LaTeX: sphinxVerbatim 自 1.6.6 以来需要显式设置“hllines” (参考: #1238)
#5636: C++: 修复浮点文字的解析。
#5496 (再次): C++: 修复部分构建中重复项的断言。
#5724: quickstart: 当 $LC_ALL 为空时 sphinx-quickstart 失败
#1956: 默认的 conf.py 不符合 PEP8 规范
#5849: LaTeX: 文档类
\maketitle被覆盖,无法使用其原始含义代替 Sphinx 自定义含义#5834: apidoc:
--tocfile的帮助信息错误#5800: todo: 如果 todo 在 TextElement 中定义则崩溃
#5846: htmlhelp: 将 .hhc/.hhk 文件中的十六进制转义转换为十进制转义
htmlhelp: 标题包含双引号时生成损坏的 .hhk 文件
发布 1.8.2 (发布于 2018 年 11 月 11 日)¶
不兼容的变更¶
#5497: 除非真正需要,否则不要包含 MathJax.js 和 jsmath.js
新增功能¶
#5471: 显示适当的弃用警告
修复的 Bug¶
#5490: latex: 枚举列表导致 recommonmark 崩溃
#5492: sphinx-build 无法构建 Python < 3.5.2 的文档
#3704: latex: 带有图例的图形的
\label定位错误#5496: C++: 修复符号声明超过两次时的断言。
#5493: gettext: 损坏的模板导致崩溃
#5495: 包含文件中带有文件选项的 csv-table 指令损坏 (参考: #4821)
#5498: autodoc: 无法找到
functools.partial的类型提示#5480: autodoc: 无法找到无法解析的前向引用的类型提示
#5419: 产生了不兼容的 math_block 节点
#5548: 修复确保目录() 在文件已存在的情况
#5549: graphviz 正确处理不存在的静态目录
#3002: i18n: 多个 footnote_references 指向同一个脚注导致重复的 node_ids
#5563: latex: 扩展生成的 footnote_references 导致 LaTeX 构建器崩溃
#5561: make all-pdf 在旧版 xindy 下失败
#5557: quickstart: –no-batchfile 未被遵守
#3080: texinfo: 多行标语损坏
#3080: texinfo: 多行引文损坏
发布 1.8.1 (发布于 2018 年 9 月 22 日)¶
不兼容的更改¶
LaTeX
\pagestyle命令已移至 LaTeX 模板。PDF 没有变化,除非\sphinxtableofcontents(包含它们) 已在conf.py中自定义。(参考: #5455)
修复的 Bug¶
#5418: sphinx-build -d/doctrees 文件的默认路径不正确
#5421: autodoc 对
autodoc_default_flags发出弃用警告#5422: lambda 对象在存储环境时导致 PicklingError
#5417: Sphinx 在 Python 2.7.5 中由于语法错误导致构建失败
#4911: 为非 make 模式的 make.bat 添加 latexpdf
#5436: Autodoc 不适用于带有属性/方法的枚举子类
#5437: autodoc: 导入 egg 的模块时崩溃
#5433: latex: ImportError: 无法导入名称 ‘DEFAULT_SETTINGS’
#5431: autodoc:
autofunction对可调用对象发出警告#5457: 修复禁止覆盖时错误消息中的 TypeError
#5453: “howto” 文档的 PDF 构建没有页码
#5463: mathbase: math_role 和 MathDirective 在 1.8.0 中消失
#5454: latex: 日文文档的 PDF 中索引消失
#5432: py domain:
:type:字段无法处理:term:引用#5426: py domain: 类属性抛出 TypeError
发布 1.8.0 (发布于 2018 年 9 月 13 日)¶
依赖项¶
1.8.0b1
LaTeX:
latex_use_xindy,如果为True(xelatex/lualatex 的默认值),则指示make latexpdf使用 xindy 进行通用索引。请确保您的 LaTeX 发行版包含它。(参考: #5134)LaTeX: Windows 上
make latexpdf需要latexmk
不兼容的更改¶
1.8.0b2
#5282: html 主题: 优先引用 HTML 主题的
pygments_style设置下载文件的 URL 已更改
#5127: quickstart: 如果存在,
Makefile和make.bat不会被覆盖
1.8.0b1
#5156:
sphinx.ext.graphviz扩展在正在构建的文档的目录中运行dot,而不是在文档的根目录中。#4460: 存储任何数据到环境的扩展应返回其环境数据结构的 版本 作为元数据。详细信息请参阅 扩展元数据。
Sphinx 期望源解析器模块将支持的文件格式作为
Parser.supported属性epub_author和epub_publisher的默认值从'unknown'更改为author的值。这与 sphinx-build 生成的conf.py文件相同。gettext_compact属性已从document.settings对象中删除。请改用config.gettext_compact。读取阶段的处理顺序已更改。smart_quotes、sphinx 域、
doctree-read事件和版本控制 doctrees 比以前更早调用。更多详细信息,请阅读Sphinx.add_transform()的描述#4827: 所有
substitution_definition节点在读取阶段从 doctree 中删除忽略
$HOME或/etc目录中的docutils.conf。只遵守 confdir 中的docutils.conf。#789:
:samp:角色支持用反斜杠转义大括号#4811:
html_static_path下的文件被排除在源文件之外。latex: 引用引用使用
\sphinxcite而不是\hyperref配置值
viewcode_import已重命名为viewcode_follow_imported_members(参考: #4035)#1857: latex:
latex_show_pagerefs不为引用添加页码引用#4648: latex: 现在“rubric”元素呈现为无编号的节标题
#4983: html: productionlist 令牌的锚点已更改
现在允许在模板中修改模板变量
script_files。请改用app.add_js_file()。#5072: 仅在有新文档时也保存环境对象
#5035: qthelp 构建器允许
qthelp_namespace中出现破折号LaTeX: 默认情况下,对于 lualatex 或 xelatex,使用 xindy 作为 UTF-8 兼容的 makeindex 替代品 (参考: #5134)。升级 Sphinx 后,请在新的构建之前清理现有项目的 latex 构建目录。
#5163: html: hlist 项目现在顶部对齐
highlightlang指令在解析阶段处理#4000: LaTeX: 模板已更改。以下元素已移至其中
\begin{document}shorthandoff变量maketitle变量tableofcontents变量
已弃用¶
1.8.0b2
sphinx.io.SphinxI18nReader.set_lineno_for_reporter()已弃用sphinx.io.SphinxI18nReader.line已弃用sphinx.util.i18n.find_catalog_source_file()已更改; gettext_compact 参数已弃用#5403:
sphinx.util.images.guess_mimetype()已更改; content 参数已弃用
1.8.0b1
source_parsers已弃用autodoc_default_flags已弃用quickstart:
--epub选项成为默认值,因此已弃用放弃基于函数的指令支持。目前,Sphinx 只支持基于类的指令 (参见
Directive)sphinx.util.docutils.directive_helper()已弃用sphinx.cmdline已弃用sphinx.make_mode已弃用sphinx.locale.l_()已弃用#2157: HTML 主题的辅助函数
warn()已弃用app.override_domain()已弃用app.add_stylesheet()已弃用app.add_javascript()已弃用app.import_object()已弃用app.add_source_parser()已更改; suffix 参数已弃用sphinx.versioning.prepare()已弃用Config.__init__()已更改; dirname, filename 和 tags 参数已弃用Config.check_types()已弃用Config.check_unicode()已弃用sphinx.application.CONFIG_FILENAME已弃用highlightlang指令已弃用BuildEnvironment.load()已弃用BuildEnvironment.loads()已弃用BuildEnvironment.frompickle()已弃用env.read_doc()已弃用env.update()已弃用env._read_serial()已弃用env._read_parallel()已弃用env.write_doctree()已弃用env._nitpick_ignore已弃用env.versionchanges已弃用env.dump()已弃用env.dumps()已弃用env.topickle()已弃用env.note_versionchange()已弃用sphinx.writers.latex.Table.caption_footnotetexts已弃用sphinx.writers.latex.Table.header_footnotetexts已弃用sphinx.writers.latex.LaTeXTranslator.footnotestack已弃用sphinx.writers.latex.LaTeXTranslator.in_container_literal_block已弃用sphinx.writers.latex.LaTeXTranslator.next_section_ids已弃用sphinx.writers.latex.LaTeXTranslator.next_hyperlink_ids已弃用sphinx.writers.latex.LaTeXTranslator.restrict_footnote()已弃用sphinx.writers.latex.LaTeXTranslator.unrestrict_footnote()已弃用sphinx.writers.latex.LaTeXTranslator.push_hyperlink_ids()已弃用sphinx.writers.latex.LaTeXTranslator.pop_hyperlink_ids()已弃用sphinx.writers.latex.LaTeXTranslator.check_latex_elements()已弃用sphinx.writers.latex.LaTeXTranslator.bibitems已弃用sphinx.writers.latex.LaTeXTranslator.hlsettingstack已弃用sphinx.writers.latex.ExtBabel.get_shorthandoff()已弃用sphinx.writers.html.HTMLTranslator.highlightlang已弃用sphinx.writers.html.HTMLTranslator.highlightlang_base已弃用sphinx.writers.html.HTMLTranslator.highlightlangopts已弃用sphinx.writers.html.HTMLTranslator.highlightlinenothreshold已弃用sphinx.writers.html5.HTMLTranslator.highlightlang已弃用sphinx.writers.html5.HTMLTranslator.highlightlang_base已弃用sphinx.writers.html5.HTMLTranslator.highlightlangopts已弃用sphinx.writers.html5.HTMLTranslator.highlightlinenothreshold已弃用sphinx.ext.mathbase扩展已弃用sphinx.ext.mathbase.math节点已弃用sphinx.ext.mathbase.displaymath节点已弃用sphinx.ext.mathbase.eqref节点已弃用sphinx.ext.mathbase.is_in_section_title()已弃用sphinx.ext.mathbase.MathDomain已弃用sphinx.ext.mathbase.MathDirective已弃用sphinx.ext.mathbase.math_role已弃用sphinx.ext.mathbase.setup_math()已弃用sphinx.directives.other.VersionChanges已弃用sphinx.highlighting.PygmentsBridge.unhighlight()已弃用sphinx.ext.mathbase.get_node_equation_number()已弃用sphinx.ext.mathbase.wrap_displaymath()已弃用sphinx.highlighting.PygmentsBridge的trim_doctest_flags参数已弃用
有关更多详细信息,请参阅 已弃用 API 列表。
新增功能¶
1.8.0b2
#5388: 确保冻结对象描述可重现
#5362: apidoc: 添加
--tocfile选项以更改 ToC 的文件名
1.8.0b1
添加
config-inited事件添加
sphinx.config.Any来表示配置值接受任何类型的值source_suffix允许文件扩展名到文件类型的映射添加
author作为配置值#2852: imgconverter: 支持将 GIF 转换为 PNG
sphinx-build命令支持 i18n 控制台输出添加
app.add_message_catalog()和sphinx.locale.get_translations()以支持第三方扩展的翻译添加了 HTML 主题的辅助函数
warning()添加
Domain.enumerable_nodes以管理域的自己的可枚举节点 (实验性)向 Application API 添加新关键字参数
overrideLaTeX:
latex_elements的新键'fvset'。对于 XeLaTeX/LuaLaTeX,其默认设置fanvyvrb在代码块中使用正常字体大小,而不是小字体大小 (参考: #4793)添加
html_css_files和epub_css_files以从配置中添加 CSS 文件添加
html_js_files以从配置中添加 JS 文件#4834: 确保设置对象描述可重现。
#4828: 允许部分覆盖
numfig_format。不需要完整定义。改进包含期间的警告消息 (参考: #4818)
LaTeX: 分别自定义
guilabel和menuselection(参考: #4830)添加
Config.read()类方法以从配置文件创建新的配置对象#4866: 将 graphviz 图表包装在
<div>标签中viewcode: 添加
viewcode-find-source和viewcode-follow-imported以在不加载的情况下加载源代码#4785: napoleon: 将字符串添加到翻译文件进行本地化
#4927: 当无效值传递给 highlight 指令的 linenothreshold 选项时显示警告
C++
添加
cpp:texpr角色作为cpp:expr的同级。添加对联合的支持。
#3593, #2683: 添加对以
@开头的名称的匿名实体的支持。#5147: 添加对 (大多数) 字符文字的支持。
支持交叉引用主模板中的实体,现在已正确记录。
#1552: 为
cpp:any和cpp:func角色添加新的交叉引用格式,用于引用特定的函数重载。
#3606: MathJax 应异步加载
html: 如果设置了
html_baseurl,则输出canonical_url元数据 (参考: #4193)#5029: autosummary: 将
inherited_members暴露给模板#3784: mathjax: 添加
mathjax_options为 mathjax 的脚本标签提供选项#726, #969: mathjax: 添加
mathjax_config为 mathjax 提供内联配置#4362: latex: 如果文档未更改,则不覆盖 .tex 文件
#1431: latex: 添加字母数字枚举列表支持
添加
latex_use_xindy用于支持 UTF-8 的索引,如果latex_engine为'xelatex'或'lualatex',则默认为True。(参考: #5134, #5192, #5212)#4976:
SphinxLoggerAdapter.info()现在支持location参数#5122: setuptools: 支持 nitpicky 选项
#2820: autoclass 指令支持嵌套类
添加
app.add_html_math_renderer()以注册 HTML 的数学渲染器将
trim_doctest_flags应用于所有构建器 (参见文本、手册页)#5140: linkcheck: 为 HTTP 客户端添加更好的 Accept 头部
#4614: sphinx-build: 添加
--keep-going选项以显示所有警告添加
math:numref角色以引用方程 (与eq相同)quickstart: epub 构建器默认启用
#5246: 添加
singlehtml_sidebars以配置 singlehtml 构建器的侧边栏#5273: doctest: 有条件地跳过 doctest
#5306: autodoc: 对无效的类型提示发出警告
#4075, #5215: autodoc: 添加
autodoc_default_options,它接受选项值作为字典
错误修复¶
1.8.0b2
html: 搜索框在滚动时会覆盖其他元素
i18n: 翻译目录的警告行号错误 (参考: #5321)
#5325: latex: 交叉引用被多重标记对象损坏
C++: 修复符号添加和查找。查找不应再在部分构建中中断。另请参阅 #5337。
#5348: 远程文件的下载引用未显示
#5282: html 主题: 主题的
pygments_style默认被conf.py覆盖#4379: toctree 在文档被排除时显示令人困惑的警告
#2401: autodoc:
:members:导致不显示:special-members:autodoc: ImportError 被 AttributeError 替换为更深层的模块
#2720, #4034:
:download:、重复名称和并行构建的链接不正确#5290: autodoc: 无法分析 egg 包中的源代码
#5399: 如果存在未知 po 文件,Sphinx 崩溃
1.8.0b1
i18n: 消息目录在每次初始化时都被重置
#4850: latex: 脚注内的脚注未渲染
#4945: i18n: 修复 IndexBuilder 的 lang_COUNTRY 未正确回退。感谢 Shengjing Zhu。
#4983: productionlist 指令为令牌生成无效 ID
#5132: lualatex: 如果索引单词以 Unicode 字符开头,PDF 构建失败
#5133: latex: 索引标题“Symbols”和“Numbers”未国际化
#5114: sphinx-build: 处理扫描文档时的错误
epub: 当“self”在 toctree 中列出时,主干已损坏 (参考: #4611)
#344: autosummary 不理解模块级别属性的 docstring
#5191: C++: 防止函数中的嵌套声明以避免查找问题。
#5126: C++: 为某些模板参数类型添加缺少的 isPack 方法。
#5187: C++: 也解析声明符上的属性。
C++: 也解析删除表达式和基本新建表达式。
#5002: graphviz: SVG 不适应列宽
已移除的功能¶
1.8.0b1
sphinx.ext.pngmath扩展
文档¶
1.8.0b1
#5083: 修复 make.bat 国际化选项错误。
#5115: napoleon: 将 #4613 添加的警示框添加到文档中。