Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update sphinx to 3.5.4 #134

Open
wants to merge 160 commits into
base: develop
Choose a base branch
from
Open

Conversation

pyup-bot
Copy link
Collaborator

This PR updates Sphinx from 1.6.5 to 3.5.4.

Changelog

3.5.4

=====================================

Dependencies
------------

* 9071: Restrict docutils to 0.16

Bugs fixed
----------

* 9078: autodoc: Async staticmethods and classmethods are considered as non
async coroutine-functions with Python3.10
* 8870, 9001, 9051: html theme: The style are not applied with docutils-0.17

- toctree captions
- The content of ``sidebar`` directive
- figures

3.5.3

=====================================

Features added
--------------

* 8959: using UNIX path separator in image directive confuses Sphinx on Windows

3.5.2

=====================================

Bugs fixed
----------

* 8943: i18n: Crashed by broken translation messages in ES, EL and HR
* 8936: LaTeX: A custom LaTeX builder fails with unknown node error
* 8952: Exceptions raised in a Directive cause parallel builds to hang

3.5.1

=====================================

Bugs fixed
----------

* 8883: autodoc: AttributeError is raised on assigning __annotations__ on
read-only class
* 8884: html: minified js stemmers not included in the distributed package
* 8885: html: AttributeError is raised if CSS/JS files are installed via
:confval:`html_context`
* 8880: viewcode: ExtensionError is raised on incremental build after
unparsable python module found

3.5.0

=====================================

Dependencies
------------

* LaTeX: ``multicol`` (it is anyhow a required part of the official latex2e
base distribution)

Incompatible changes
--------------------

* Update Underscore.js to 1.12.0
* 6550: html: The config variable ``html_add_permalinks`` is replaced by
:confval:`html_permalinks` and :confval:`html_permalinks_icon`

Deprecated
----------

* pending_xref node for viewcode extension
* ``sphinx.builders.linkcheck.CheckExternalLinksBuilder.anchors_ignore``
* ``sphinx.builders.linkcheck.CheckExternalLinksBuilder.auth``
* ``sphinx.builders.linkcheck.CheckExternalLinksBuilder.broken``
* ``sphinx.builders.linkcheck.CheckExternalLinksBuilder.good``
* ``sphinx.builders.linkcheck.CheckExternalLinksBuilder.redirected``
* ``sphinx.builders.linkcheck.CheckExternalLinksBuilder.rqueue``
* ``sphinx.builders.linkcheck.CheckExternalLinksBuilder.to_ignore``
* ``sphinx.builders.linkcheck.CheckExternalLinksBuilder.workers``
* ``sphinx.builders.linkcheck.CheckExternalLinksBuilder.wqueue``
* ``sphinx.builders.linkcheck.node_line_or_0()``
* ``sphinx.ext.autodoc.AttributeDocumenter.isinstanceattribute()``
* ``sphinx.ext.autodoc.directive.DocumenterBridge.reporter``
* ``sphinx.ext.autodoc.importer.get_module_members()``
* ``sphinx.ext.autosummary.generate._simple_info()``
* ``sphinx.ext.autosummary.generate._simple_warn()``
* ``sphinx.writers.html.HTMLTranslator.permalink_text``
* ``sphinx.writers.html5.HTML5Translator.permalink_text``

Features added
--------------

* 8022: autodoc: autodata and autoattribute directives does not show right-hand
value of the variable if docstring contains ``:meta hide-value:`` in
info-field-list
* 8514: autodoc: Default values of overloaded functions are taken from actual
implementation if they're ellipsis
* 8775: autodoc: Support type union operator (PEP-604) in Python 3.10 or above
* 8297: autodoc: Allow to extend :confval:`autodoc_default_options` via
directive options
* 759: autodoc: Add a new configuration :confval:`autodoc_preserve_defaults` as
an experimental feature.  It preserves the default argument values of
functions in source code and keep them not evaluated for readability.
* 8619: html: kbd role generates customizable HTML tags for compound keys
* 8634: html: Allow to change the order of JS/CSS via ``priority`` parameter
for :meth:`Sphinx.add_js_file()` and :meth:`Sphinx.add_css_file()`
* 6241: html: Allow to add JS/CSS files to the specific page when an extension
calls ``app.add_js_file()`` or ``app.add_css_file()`` on
:event:`html-page-context` event
* 6550: html: Allow to use HTML permalink texts via
:confval:`html_permalinks_icon`
* 1638: html: Add permalink icons to glossary terms
* 8868: html search: performance issue with massive lists
* 8867: html search: Update JavaScript stemmer code to the latest version of
Snowball (v2.1.0)
* 8852: i18n: Allow to translate heading syntax in MyST-Parser
* 8649: imgconverter: Skip availability check if builder supports the image
type
* 8573: napoleon: Allow to change the style of custom sections using
:confval:`napoleon_custom_styles`
* 8004: napoleon: Type definitions in Google style docstrings are rendered as
references when :confval:`napoleon_preprocess_types` enabled
* 6241: mathjax: Include mathjax.js only on the document using equations
* 8775: py domain: Support type union operator (PEP-604)
* 8651: std domain: cross-reference for a rubric having inline item is broken
* 7642: std domain: Optimize case-insensitive match of term
* 8681: viewcode: Support incremental build
* 8132: Add :confval:`project_copyright` as an alias of :confval:`copyright`
* 207: Now :confval:`highlight_language` supports multiple languages
* 2030: :rst:dir:`code-block` and :rst:dir:`literalinclude` supports automatic
dedent via no-argument ``:dedent:`` option
* C++, also hyperlink operator overloads in expressions and alias declarations.
* 8247: Allow production lists to refer to tokens from other production groups
* 8813: Show what extension (or module) caused it on errors on event handler
* 8213: C++: add ``maxdepth`` option to :rst:dir:`cpp:alias` to insert nested
declarations.
* C, add ``noroot`` option to :rst:dir:`c:alias` to render only nested
declarations.
* C++, add ``noroot`` option to :rst:dir:`cpp:alias` to render only nested
declarations.

Bugs fixed
----------

* 8727: apidoc: namespace module file is not generated if no submodules there
* 741: autodoc: inherited-members doesn't work for instance attributes on super
class
* 8592: autodoc: ``:meta public:`` does not effect to variables
* 8594: autodoc: empty __all__ attribute is ignored
* 8315: autodoc: Failed to resolve struct.Struct type annotation
* 8652: autodoc: All variable comments in the module are ignored if the module
contains invalid type comments
* 8693: autodoc: Default values for overloaded functions are rendered as string
* 8134: autodoc: crashes when mocked decorator takes arguments
* 8800: autodoc: Uninitialized attributes in superclass are recognized as
undocumented
* 8655: autodoc: Failed to generate document if target module contains an
object that raises an exception on ``hasattr()``
* 8306: autosummary: mocked modules are documented as empty page when using
:recursive: option
* 8232: graphviz: Image node is not rendered if graph file is in subdirectory
* 8618: html: kbd role produces incorrect HTML when compound-key separators (-,
+ or ^) are used as keystrokes
* 8629: html: A type warning for html_use_opensearch is shown twice
* 8714: html: kbd role with "Caps Lock" rendered incorrectly
* 8123: html search: fix searching for terms containing + (Requires a custom
search language that does not split on +)
* 8665: html theme: Could not override globaltoc_maxdepth in theme.conf
* 8446: html: consecutive spaces are displayed as single space
* 8745: i18n: crashes with KeyError when translation message adds a new auto
footnote reference
* 4304: linkcheck: Fix race condition that could lead to checking the
availability of the same URL twice
* 8791: linkcheck: The docname for each hyperlink is not displayed
* 7118: sphinx-quickstart: questionare got Mojibake if libreadline unavailable
* 8094: texinfo: image files on the different directory with document are not
copied
* 8782: todo: Cross references in todolist get broken
* 8720: viewcode: module pages are generated for epub on incremental build
* 8704: viewcode: anchors are generated in incremental build after singlehtml
* 8756: viewcode: highlighted code is generated even if not referenced
* 8671: :confval:`highlight_options` is not working
* 8341: C, fix intersphinx lookup types for names in declarations.
* C, C++: in general fix intersphinx and role lookup types.
* 8683: :confval:`html_last_updated_fmt` does not support UTC offset (%z)
* 8683: :confval:`html_last_updated_fmt` generates wrong time zone for %Z
* 1112: ``download`` role creates duplicated copies when relative path is
specified
* 2616 (fifth item): LaTeX: footnotes from captions are not clickable,
and for manually numbered footnotes only first one with same number is
an hyperlink
* 7576: LaTeX with French babel and memoir crash: "Illegal parameter number
in definition of ``\FNHprefntext``"
* 8055: LaTeX (docs): A potential display bug with the LaTeX generation step
in Sphinx (how to generate one-column index)
* 8072: LaTeX: Directive :rst:dir:`hlist` not implemented in LaTeX
* 8214: LaTeX: The :rst:role:`index` role and the glossary generate duplicate
entries in the LaTeX index (if both used for same term)
* 8735: LaTeX: wrong internal links in pdf to captioned code-blocks when
:confval:`numfig` is not True
* 8442: LaTeX: some indexed terms are ignored when using xelatex engine
(or pdflatex and :confval:`latex_use_xindy` set to True) with memoir class
* 8750: LaTeX: URLs as footnotes fail to show in PDF if originating from
inside function type signatures
* 8780: LaTeX: long words in narrow columns may not be hyphenated
* 8788: LaTeX: ``\titleformat`` last argument in sphinx.sty should be
bracketed, not braced (and is anyhow not needed) 
* 8849: LaTex: code-block printed out of margin (see the opt-in LaTeX syntax
boolean :ref:`verbatimforcewraps <latexsphinxsetupforcewraps>` for use via
the :ref:`'sphinxsetup' <latexsphinxsetup>` key of ``latex_elements``)
* 8183: LaTeX: Remove substitution_reference nodes from doctree only on LaTeX
builds
* 8865: LaTeX: Restructure the index nodes inside title nodes only on LaTeX
builds
* 8796: LaTeX: potentially critical low level TeX coding mistake has gone
unnoticed so far
* C, :rst:dir:`c:alias` skip symbols without explicit declarations
instead of crashing.
* C, :rst:dir:`c:alias` give a warning when the root symbol is not declared.
* C, ``expr`` role should start symbol lookup in the current scope.

3.4.3

=====================================

Bugs fixed
----------

* 8655: autodoc: Failed to generate document if target module contains an
object that raises an exception on ``hasattr()``

3.4.2

=====================================

Bugs fixed
----------

* 8164: autodoc: Classes that inherit mocked class are not documented
* 8602: autodoc: The ``autodoc-process-docstring`` event is emitted to the
non-datadescriptors unexpectedly
* 8616: autodoc: AttributeError is raised on non-class object is passed to
autoclass directive

3.4.1

=====================================

Bugs fixed
----------

* 8559: autodoc: AttributeError is raised when using forward-reference type
annotations
* 8568: autodoc: TypeError is raised on checking slots attribute
* 8567: autodoc: Instance attributes are incorrectly added to Parent class
* 8566: autodoc: The ``autodoc-process-docstring`` event is emitted to the
alias classes unexpectedly
* 8583: autodoc: Unnecessary object comparision via ``__eq__`` method
* 8565: linkcheck: Fix PriorityQueue crash when link tuples are not
comparable

3.4.0

=====================================

Incompatible changes
--------------------

* 8105: autodoc: the signature of class constructor will be shown for decorated
classes, not a signature of decorator

Deprecated
----------

* The ``follow_wrapped`` argument of ``sphinx.util.inspect.signature()``
* The ``no_docstring`` argument of
``sphinx.ext.autodoc.Documenter.add_content()``
* ``sphinx.ext.autodoc.Documenter.get_object_members()``
* ``sphinx.ext.autodoc.DataDeclarationDocumenter``
* ``sphinx.ext.autodoc.GenericAliasDocumenter``
* ``sphinx.ext.autodoc.InstanceAttributeDocumenter``
* ``sphinx.ext.autodoc.SlotsAttributeDocumenter``
* ``sphinx.ext.autodoc.TypeVarDocumenter``
* ``sphinx.ext.autodoc.importer._getannotations()``
* ``sphinx.ext.autodoc.importer._getmro()``
* ``sphinx.pycode.ModuleAnalyzer.parse()``
* ``sphinx.util.osutil.movefile()``
* ``sphinx.util.requests.is_ssl_error()``

Features added
--------------

* 8119: autodoc: Allow to determine whether a member not included in
``__all__`` attribute of the module should be documented or not via
:event:`autodoc-skip-member` event
* 8219: autodoc: Parameters for generic class are not shown when super class is
a generic class and show-inheritance option is given (in Python 3.7 or above)
* autodoc: Add ``Documenter.config`` as a shortcut to access the config object
* autodoc: Add Optional[t] to annotation of function and method if a default
value equal to None is set.
* 8209: autodoc: Add ``:no-value:`` option to :rst:dir:`autoattribute` and
:rst:dir:`autodata` directive to suppress the default value of the variable
* 8460: autodoc: Support custom types defined by typing.NewType
* 8285: napoleon: Add :confval:`napoleon_attr_annotations` to merge type hints
on source code automatically if any type is specified in docstring
* 8236: napoleon: Support numpydoc's "Receives" section
* 6914: Add a new event :event:`warn-missing-reference` to custom warning
messages when failed to resolve a cross-reference
* 6914: Emit a detailed warning when failed to resolve a ``:ref:`` reference
* 6629: linkcheck: The builder now handles rate limits. See
:confval:`linkcheck_retry_on_rate_limit` for details.

Bugs fixed
----------

* 7613: autodoc: autodoc does not respect __signature__ of the class
* 4606: autodoc: the location of the warning is incorrect for inherited method
* 8105: autodoc: the signature of class constructor is incorrect if the class
is decorated
* 8434: autodoc: :confval:`autodoc_type_aliases` does not effect to variables
and attributes
* 8443: autodoc: autodata directive can't create document for PEP-526 based
type annotated variables
* 8443: autodoc: autoattribute directive can't create document for PEP-526
based uninitalized variables
* 8480: autodoc: autoattribute could not create document for __slots__
attributes
* 8503: autodoc: autoattribute could not create document for a GenericAlias as
class attributes correctly
* 8534: autodoc: autoattribute could not create document for a commented
attribute in alias class
* 8452: autodoc: autodoc_type_aliases doesn't work when autodoc_typehints is
set to "description"
* 8541: autodoc: autodoc_type_aliases doesn't work for the type annotation to
instance attributes
* 8460: autodoc: autodata and autoattribute directives do not display type
information of TypeVars
* 8493: autodoc: references to builtins not working in class aliases
* 8522: autodoc:  ``__bool__`` method could be called
* 8067: autodoc: A typehint for the instance variable having type_comment on
super class is not displayed
* 8545: autodoc: a __slots__ attribute is not documented even having docstring
* 741: autodoc: inherited-members doesn't work for instance attributes on super
class
* 8477: autosummary: non utf-8 reST files are generated when template contains
multibyte characters
* 8501: autosummary: summary extraction splits text after "el at." unexpectedly
* 8524: html: Wrong url_root has been generated on a document named "index"
* 8419: html search: Do not load ``language_data.js`` in non-search pages
* 8549: i18n: ``-D gettext_compact=0`` is no longer working
* 8454: graphviz: The layout option for graph and digraph directives don't work
* 8131: linkcheck: Use GET when HEAD requests cause Too Many Redirects, to
accommodate infinite redirect loops on HEAD
* 8437: Makefile: ``make clean`` with empty BUILDDIR is dangerous
* 8365: py domain: ``:type:`` and ``:rtype:`` gives false ambiguous class
lookup warnings
* 8352: std domain: Failed to parse an option that starts with bracket
* 8519: LaTeX: Prevent page brake in the middle of a seealso
* 8520: C, fix copying of AliasNode.

3.3.1

=====================================

Bugs fixed
----------

* 8372: autodoc: autoclass directive became slower than Sphinx-3.2
* 7727: autosummary: raise PycodeError when documenting python package
without __init__.py
* 8350: autosummary: autosummary_mock_imports causes slow down builds
* 8364: C, properly initialize attributes in empty symbols.
* 8399: i18n: Put system locale path after the paths specified by configuration

3.3.0

=====================================

Deprecated
----------

* ``sphinx.builders.latex.LaTeXBuilder.usepackages``
* ``sphinx.builders.latex.LaTeXBuilder.usepackages_afger_hyperref``
* ``sphinx.ext.autodoc.SingledispatchFunctionDocumenter``
* ``sphinx.ext.autodoc.SingledispatchMethodDocumenter``

Features added
--------------

* 8100: html: Show a better error message for failures on copying
html_static_files
* 8141: C: added a ``maxdepth`` option to :rst:dir:`c:alias` to insert
nested declarations.
* 8081: LaTeX: Allow to add LaTeX package via ``app.add_latex_package()`` until
just before writing .tex file
* 7996: manpage: Add :confval:`man_make_section_directory` to make a section
directory on build man page
* 8289: epub: Allow to suppress "duplicated ToC entry found" warnings from epub
builder using :confval:`suppress_warnings`.
* 8298: sphinx-quickstart: Add :option:`sphinx-quickstart --no-sep` option
* 8304: sphinx.testing: Register public markers in sphinx.testing.fixtures
* 8051: napoleon: use the obj role for all See Also items
* 8050: napoleon: Apply :confval:`napoleon_preprocess_types` to every field
* C and C++, show line numbers for previous declarations when duplicates are
detected.
* 8183: Remove substitution_reference nodes from doctree only on LaTeX builds

Bugs fixed
----------

* 8085: i18n: Add support for having single text domain
* 6640: i18n: Failed to override system message translation
* 8143: autodoc: AttributeError is raised when False value is passed to
autodoc_default_options
* 8103: autodoc: functools.cached_property is not considered as a property
* 8190: autodoc: parsing error is raised if some extension replaces docstring
by string not ending with blank lines
* 8142: autodoc: Wrong constructor signature for the class derived from
typing.Generic
* 8157: autodoc: TypeError is raised when annotation has invalid __args__
* 7964: autodoc: Tuple in default value is wrongly rendered
* 8200: autodoc: type aliases break type formatting of autoattribute
* 7786: autodoc: can't detect overloaded methods defined in other file
* 8294: autodoc: single-string __slots__ is not handled correctly
* 7785: autodoc: autodoc_typehints='none' does not effect to overloaded functions
* 8192: napoleon: description is disappeared when it contains inline literals
* 8142: napoleon: Potential of regex denial of service in google style docs
* 8169: LaTeX: pxjahyper loaded even when latex_engine is not platex
* 8215: LaTeX: 'oneside' classoption causes build warning
* 8175: intersphinx: Potential of regex denial of service by broken inventory
* 8277: sphinx-build: missing and redundant spacing (and etc) for console
output on building
* 7973: imgconverter: Check availability of imagemagick many times
* 8255: py domain: number in default argument value is changed from hexadecimal
to decimal
* 8316: html: Prevent arrow keys changing page when button elements are focused
* 8343: html search: Fix unnecessary load of images when parsing the document
* 8254: html theme: Line numbers misalign with code lines
* 8093: The highlight warning has wrong location in some builders (LaTeX,
singlehtml and so on)
* 8215: Eliminate Fancyhdr build warnings for oneside documents
* 8239: Failed to refer a token in productionlist if it is indented
* 8268: linkcheck: Report HTTP errors when ``linkcheck_anchors`` is ``True``
* 8245: linkcheck: take source directory into account for local files
* 8321: linkcheck: ``tel:`` schema hyperlinks are detected as errors
* 8323: linkcheck: An exit status is incorrect when links having unsupported
schema found
* 8188: C, add missing items to internal object types dictionary,
e.g., preventing intersphinx from resolving them.
* C, fix anon objects in intersphinx.
* 8270, C++, properly reject functions as duplicate declarations if a
non-function declaration of the same name already exists.
* C, fix references to function parameters.
Link to the function instead of a non-existing anchor.
* 6914: figure numbers are unexpectedly assigned to uncaptioned items
* 8320: make "inline" line numbers un-selectable

Testing
--------

* 8257: Support parallel build in sphinx.testing

3.2.1

=====================================

Features added
--------------

* 8095: napoleon: Add :confval:`napoleon_preprocess_types` to enable the type
preprocessor for numpy style docstrings
* 8114: C and C++, parse function attributes after parameters and qualifiers.

Bugs fixed
----------

* 8074: napoleon: Crashes during processing C-ext module
* 8088: napoleon: "Inline literal start-string without end-string" warning in
Numpy style Parameters section
* 8084: autodoc: KeyError is raised on documenting an attribute of the broken
class
* 8091: autodoc: AttributeError is raised on documenting an attribute on Python
3.5.2
* 8099: autodoc: NameError is raised when target code uses ``TYPE_CHECKING``
* C++, fix parsing of template template paramters, broken by the fix of 7944

3.2.0

=====================================

Deprecated
----------

* ``sphinx.ext.autodoc.members_set_option()``
* ``sphinx.ext.autodoc.merge_special_members_option()``
* ``sphinx.writers.texinfo.TexinfoWriter.desc``
* C, parsing of pre-v3 style type directives and roles, along with the options
:confval:`c_allow_pre_v3` and :confval:`c_warn_on_allowed_pre_v3`.

Features added
--------------

* 2076: autodoc: Allow overriding of exclude-members in skip-member function
* 8034: autodoc: ``:private-member:`` can take an explicit list of member names
to be documented
* 2024: autosummary: Add :confval:`autosummary_filename_map` to avoid conflict
of filenames between two object with different case
* 8011: autosummary: Support instance attributes as a target of autosummary
directive
* 7849: html: Add :confval:`html_codeblock_linenos_style` to change the style
of line numbers for code-blocks
* 7853: C and C++, support parameterized GNU style attributes.
* 7888: napoleon: Add aliases Warn and Raise.
* 7690: napoleon: parse type strings and make them hyperlinks as possible.  The
conversion rule can be updated via :confval:`napoleon_type_aliases`
* 8049: napoleon: Create a hyperlink for each the type of parameter when
:confval:`napoleon_use_params` is False
* C, added :rst:dir:`c:alias` directive for inserting copies
of existing declarations.
* 7745: html: inventory is broken if the docname contains a space
* 7991: html search: Allow searching for numbers
* 7902: html theme: Add a new option :confval:`globaltoc_maxdepth` to control
the behavior of globaltoc in sidebar
* 7840: i18n: Optimize the dependencies check on bootstrap
* 7768: i18n: :confval:`figure_language_filename` supports ``docpath`` token
* 5208: linkcheck: Support checks for local links
* 5090: setuptools: Link verbosity to distutils' -v and -q option
* 6698: doctest: Add ``:trim-doctest-flags:`` and ``:no-trim-doctest-flags:``
options to doctest, testcode and testoutput directives
* 7052: add ``:noindexentry:`` to the Python, C, C++, and Javascript domains.
Update the documentation to better reflect the relationship between this option
and the ``:noindex:`` option.
* 7899: C, add possibility of parsing of some pre-v3 style type directives and
roles and try to convert them to equivalent v3 directives/roles.
Set the new option :confval:`c_allow_pre_v3` to ``True`` to enable this.
The warnings printed from this functionality can be suppressed by setting
:confval:`c_warn_on_allowed_pre_v3`` to ``True``.
The functionality is immediately deprecated.
* 7999: C, add support for named variadic macro arguments.
* 8071: Allow to suppress "self referenced toctrees" warning

Bugs fixed
----------

* 7886: autodoc: TypeError is raised on mocking generic-typed classes
* 7935: autodoc: function signature is not shown when the function has a
parameter having ``inspect._empty`` as its default value
* 7901: autodoc: type annotations for overloaded functions are not resolved
* 904: autodoc: An instance attribute cause a crash of autofunction directive
* 1362: autodoc: ``private-members`` option does not work for class attributes
* 7983: autodoc: Generator type annotation is wrongly rendered in py36
* 8030: autodoc: An uninitialized annotated instance variable is not documented
when ``:inherited-members:`` option given
* 8032: autodoc: A type hint for the instance variable defined at parent class
is not shown in the document of the derived class
* 8041: autodoc: An annotated instance variable on super class is not
documented when derived class has other annotated instance variables
* 7839: autosummary: cannot handle umlauts in function names
* 7865: autosummary: Failed to extract summary line when abbreviations found
* 7866: autosummary: Failed to extract correct summary line when docstring
contains a hyperlink target
* 7469: autosummary: "Module attributes" header is not translatable
* 7940: apidoc: An extra newline is generated at the end of the rst file if a
module has submodules
* 4258: napoleon: decorated special methods are not shown
* 7799: napoleon: parameters are not escaped for combined params in numpydoc
* 7780: napoleon: multiple paramaters declaration in numpydoc was wrongly
recognized when napoleon_use_params=True
* 7715: LaTeX: ``numfig_secnum_depth > 1`` leads to wrong figure links
* 7846: html theme: XML-invalid files were generated
* 7894: gettext: Wrong source info is shown when using rst_epilog
* 7691: linkcheck: HEAD requests are not used for checking
* 4888: i18n: Failed to add an explicit title to ``:ref:`` role on translation
* 7928: py domain: failed to resolve a type annotation for the attribute
* 8008: py domain: failed to parse a type annotation containing ellipsis
* 7994: std domain: option directive does not generate old node_id compatible
with 2.x or older
* 7968: i18n: The content of ``math`` directive is interpreted as reST on
translation
* 7768: i18n: The ``root`` element for :confval:`figure_language_filename` is
not a path that user specifies in the document
* 7993: texinfo: TypeError is raised for nested object descriptions
* 7993: texinfo: a warning not supporting desc_signature_line node is shown
* 7869: :rst:role:`abbr` role without an explanation will show the explanation
from the previous abbr role
* 8048: graphviz: graphviz.css was copied on building non-HTML document
* C and C++, removed ``noindex`` directive option as it did
nothing.
* 7619: Duplicated node IDs are generated if node has multiple IDs
* 2050: Symbols sections are appeared twice in the index page
* 8017: Fix circular import in sphinx.addnodes
* 7986: CSS: make "highlight" selector more robust
* 7944: C++, parse non-type template parameters starting with
a dependent qualified name.
* C, don't deepcopy the entire symbol table and make a mess every time an
enumerator is handled.

3.1.2

=====================================

Incompatible changes
--------------------

* 7650: autodoc: the signature of base function will be shown for decorated
functions, not a signature of decorator

Bugs fixed
----------

* 7844: autodoc: Failed to detect module when relative module name given
* 7856: autodoc: AttributeError is raised when non-class object is given to
the autoclass directive
* 7850: autodoc: KeyError is raised for invalid mark up when autodoc_typehints
is 'description'
* 7812: autodoc: crashed if the target name matches to both an attribute and
module that are same name
* 7650: autodoc: function signature becomes ``(*args, **kwargs)`` if the
function is decorated by generic decorator
* 7812: autosummary: generates broken stub files if the target code contains
an attribute and module that are same name
* 7806: viewcode: Failed to resolve viewcode references on 3rd party builders
* 7838: html theme: List items have extra vertical space
* 7878: html theme: Undesired interaction between "overflow" and "float"

3.1.1

=====================================

Incompatible changes
--------------------

* 7808: napoleon: a type for attribute are represented as typed field

Features added
--------------

* 7807: autodoc: Show detailed warning when type_comment is mismatched with its
signature

Bugs fixed
----------

* 7808: autodoc: Warnings raised on variable and attribute type annotations
* 7802: autodoc: EOFError is raised on parallel build
* 7821: autodoc: TypeError is raised for overloaded C-ext function
* 7805: autodoc: an object which descriptors returns is unexpectedly documented
* 7807: autodoc: wrong signature is shown for the function using contextmanager
* 7812: autosummary: generates broken stub files if the target code contains
an attribute and module that are same name
* 7808: napoleon: Warnings raised on variable and attribute type annotations
* 7811: sphinx.util.inspect causes circular import problem

3.1.0

=====================================

Dependencies
------------

* 7746: mathjax: Update to 2.7.5

Incompatible changes
--------------------

* 7477: imgconverter: Invoke "magick convert" command by default on Windows

Deprecated
----------

* The first argument for sphinx.ext.autosummary.generate.AutosummaryRenderer has
been changed to Sphinx object
* ``sphinx.ext.autosummary.generate.AutosummaryRenderer`` takes an object type
as an argument
* The ``ignore`` argument of ``sphinx.ext.autodoc.Documenter.get_doc()``
* The ``template_dir`` argument of ``sphinx.ext.autosummary.generate.
AutosummaryRenderer``
* The ``module`` argument of ``sphinx.ext.autosummary.generate.
find_autosummary_in_docstring()``
* The ``builder`` argument of ``sphinx.ext.autosummary.generate.
generate_autosummary_docs()``
* The ``template_dir`` argument of ``sphinx.ext.autosummary.generate.
generate_autosummary_docs()``
* The ``ignore`` argument of ``sphinx.util.docstring.prepare_docstring()``
* ``sphinx.ext.autosummary.generate.AutosummaryRenderer.exists()``
* ``sphinx.util.rpartition()``

Features added
--------------

* LaTeX: Make the ``toplevel_sectioning`` setting optional in LaTeX theme
* LaTeX: Allow to override papersize and pointsize from LaTeX themes
* LaTeX: Add :confval:`latex_theme_options` to override theme options
* 7410: Allow to suppress "circular toctree references detected" warnings using
:confval:`suppress_warnings`
* C, added scope control directives, :rst:dir:`c:namespace`,
:rst:dir:`c:namespace-push`, and :rst:dir:`c:namespace-pop`.
* 2044: autodoc: Suppress default value for instance attributes
* 7473: autodoc: consider a member public if docstring contains
``:meta public:`` in info-field-list
* 7487: autodoc: Allow to generate docs for singledispatch functions by
py:autofunction
* 7143: autodoc: Support final classes and methods
* 7384: autodoc: Support signatures defined by ``__new__()``, metaclasses and
builtin base classes
* 2106: autodoc: Support multiple signatures on docstring
* 4422: autodoc: Support GenericAlias in Python 3.7 or above
* 3610: autodoc: Support overloaded functions
* 7722: autodoc: Support TypeVar
* 7466: autosummary: headings in generated documents are not translated
* 7490: autosummary: Add ``:caption:`` option to autosummary directive to set a
caption to the toctree
* 7469: autosummary: Support module attributes
* 248, 6040: autosummary: Add ``:recursive:`` option to autosummary directive
to generate stub files recursively
* 4030: autosummary: Add :confval:`autosummary_context` to add template
variables for custom templates
* 7530: html: Support nested <kbd> elements
* 7481: html theme: Add right margin to footnote/citation labels
* 7482, 7717: html theme: CSS spacing for code blocks with captions and line
numbers
* 7443: html theme: Add new options :confval:`globaltoc_collapse` and
:confval:`globaltoc_includehidden` to control the behavior of globaltoc in
sidebar
* 7484: html theme: Avoid clashes between sidebar and other blocks
* 7476: html theme: Relbar breadcrumb should contain current page
* 7506: html theme: A canonical URL is not escaped
* 7533: html theme: Avoid whitespace at the beginning of genindex.html
* 7541: html theme: Add a "clearer" at the end of the "body"
* 7542: html theme: Make admonition/topic/sidebar scrollable
* 7543: html theme: Add top and bottom margins to tables
* 7695: html theme: Add viewport meta tag for basic theme
* 7721: html theme: classic: default codetextcolor/codebgcolor doesn't override
Pygments
* C and C++: allow semicolon in the end of declarations.
* C++, parse parameterized noexcept specifiers.
* 7294: C++, parse expressions with user-defined literals.
* C++, parse trailing return types.
* 7143: py domain: Add ``:final:`` option to :rst:dir:`py:class:`,
:rst:dir:`py:exception:` and :rst:dir:`py:method:` directives
* 7596: py domain: Change a type annotation for variables to a hyperlink
* 7770: std domain: :rst:dir:`option` directive support arguments in the form
of ``foo[=bar]``
* 7582: napoleon: a type for attribute are represented like type annotation
* 7734: napoleon: overescaped trailing underscore on attribute
* 7247: linkcheck: Add :confval:`linkcheck_request_headers` to send custom HTTP
headers for specific host
* 7792: setuptools: Support ``--verbosity`` option
* 7683: Add ``allowed_exceptions`` parameter to ``Sphinx.emit()`` to allow
handlers to raise specified exceptions
* 7295: C++, parse (trailing) requires clauses.

Bugs fixed
----------

* 6703: autodoc: incremental build does not work for imported objects
* 7564: autodoc: annotations not to be shown for descriptors
* 6588: autodoc: Decorated inherited method has no documentation
* 7469: autodoc: The change of autodoc-process-docstring for variables is
cached unexpectedly
* 7559: autodoc: misdetects a sync function is async
* 6857: autodoc: failed to detect a classmethod on Enum class
* 7562: autodoc: a typehint contains spaces is wrongly rendered under
autodoc_typehints='description' mode
* 7551: autodoc: failed to import nested class
* 7362: autodoc: does not render correct signatures for built-in functions
* 7654: autodoc: ``Optional[Union[foo, bar]]`` is presented as
``Union[foo, bar, None]``
* 7629: autodoc: autofunction emits an unfriendly warning if an invalid object
specified
* 7650: autodoc: undecorated signature is shown for decorated functions
* 7676: autodoc: typo in the default value of autodoc_member_order
* 7676: autodoc: wrong value for :member-order: option is ignored silently
* 7676: autodoc: member-order="bysource" does not work for C module
* 3673: autodoc: member-order="bysource" does not work for a module having
__all__
* 7668: autodoc: wrong retann value is passed to a handler of
autodoc-proccess-signature
* 7711: autodoc: fails with ValueError when processing numpy objects
* 7791: autodoc: TypeError is raised on documenting singledispatch function
* 7551: autosummary: a nested class is indexed as non-nested class
* 7661: autosummary: autosummary directive emits warnings twices if failed to
import the target module
* 7685: autosummary: The template variable "members" contains imported members
even if :confval:`autossummary_imported_members` is False
* 7671: autosummary: The location of import failure warning is missing
* 7535: sphinx-autogen: crashes when custom template uses inheritance
* 7536: sphinx-autogen: crashes when template uses i18n feature
* 7781: sphinx-build: Wrong error message when outdir is not directory
* 7653: sphinx-quickstart: Fix multiple directory creation for nested relpath
* 2785: html: Bad alignment of equation links
* 7718: html theme: some themes does not respect background color of Pygments
style (agogo, haiku, nature, pyramid, scrolls, sphinxdoc and traditional)
* 7544: html theme: inconsistent padding in admonitions
* 7581: napoleon: bad parsing of inline code in attribute docstrings
* 7628: imgconverter: runs imagemagick once unnecessary for builders not
supporting images
* 7610: incorrectly renders consecutive backslashes for docutils-0.16
* 7646: handle errors on event handlers
* 4187: LaTeX: EN DASH disappears from PDF bookmarks in Japanese documents
* 7701: LaTeX: Anonymous indirect hyperlink target causes duplicated labels
* 7723: LaTeX: pdflatex crashed when URL contains a single quote
* 7756: py domain: The default value for positional only argument is not shown
* 7760: coverage: Add :confval:`coverage_show_missing_items` to show coverage
result to console
* C++, fix rendering and xrefs in nested names explicitly starting
in global scope, e.g., ``::A::B``.
* C, fix rendering and xrefs in nested names explicitly starting
in global scope, e.g., ``.A.B``.
* 7763: C and C++, don't crash during display stringification of unary
expressions and fold expressions.

3.0.4

=====================================

Bugs fixed
----------

* 7567: autodoc: parametrized types are shown twice for generic types
* 7637: autodoc: system defined TypeVars are shown in Python 3.9
* 7696: html: Updated jQuery version from 3.4.1 to 3.5.1 for security reasons
* 7611: md5 fails when OpenSSL FIPS is enabled
* 7626: release package does not contain ``CODE_OF_CONDUCT``

3.0.3

=====================================

Features added
--------------

* C, parse array declarators with static, qualifiers, and VLA specification.

Bugs fixed
----------

* 7516: autodoc: crashes if target object raises an error on accessing
its attributes

3.0.2

=====================================

Features added
--------------

* C, parse attributes and add :confval:`c_id_attributes`
and :confval:`c_paren_attributes` to support user-defined attributes.

Bugs fixed
----------

* 7461: py domain: fails with IndexError for empty tuple in type annotation
* 7510: py domain: keyword-only arguments are documented as having a default of
None
* 7418: std domain: :rst:role:`term` role could not match case-insensitively
* 7461: autodoc: empty tuple in type annotation is not shown correctly
* 7479: autodoc: Sphinx builds has been slower since 3.0.0 on mocking
* C++, fix spacing issue in east-const declarations.
* 7414: LaTeX: Xindy language options were incorrect
* sphinx crashes with ImportError on python3.5.1

3.0.1

=====================================

Incompatible changes
--------------------

* 7418: std domain: :rst:dir:`term` role becomes case sensitive

Bugs fixed
----------

* 7428: py domain: a reference to class ``None`` emits a nitpicky warning
* 7445: py domain: a return annotation ``None`` in the function signature is
not converted to a hyperlink when using intersphinx
* 7418: std domain: duplication warning for glossary terms is case insensitive
* 7438: C++, fix merging overloaded functions in parallel builds.
* 7422: autodoc: fails with ValueError when using autodoc_mock_imports
* 7435: autodoc: ``autodoc_typehints='description'`` doesn't suppress typehints
in signature for classes/methods
* 7451: autodoc: fails with AttributeError when an object returns non-string
object as a ``__doc__`` member
* 7423: crashed when giving a non-string object to logger
* 7479: html theme: Do not include xmlns attribute with HTML 5 doctype
* 7426: html theme: Escape some links in HTML templates

3.0.0

* 7364: autosummary: crashed when :confval:`autosummary_generate` is False
* 7370: autosummary: raises UnboundLocalError when unknown module given
* 7367: C++, alternate operator spellings are now supported.
* C, alternate operator spellings are now supported.
* 7368: C++, comma operator in expressions, pack expansion in template
argument lists, and more comprehensive error messages in some cases.
* C, C++, fix crash and wrong duplicate warnings related to anon symbols.
* 6477: Escape first "!" in a cross reference linking no longer possible
* 7219: py domain: The index entry generated by ``py:function`` directive is
different with one from ``index`` directive with "builtin" type
* 7301: capital characters are not allowed for node_id
* 7301: epub: duplicated node_ids are generated
* 6564: html: a width of table was ignored on HTML builder
* 7401: Incorrect argument is passed for :event:`env-get-outdated` handlers
* 7355: autodoc: a signature of cython-function is not recognized well
* 7222: autodoc: ``__wrapped__`` functions are not documented correctly
* 7409: intersphinx: ValueError is raised when an extension sets up
:confval:`intersphinx_mapping` on :event:`config-inited` event
* 7343: Sphinx builds has been slower since 2.4.0 on debug mode

3.0.0b1

* C++, fix cross reference lookup in certain cases involving
function overloads.
* 5078: C++, fix cross reference lookup when a directive contains multiple
declarations.
* C++, suppress warnings for directly dependent typenames in cross references
generated automatically in signatures.
* 5637: autodoc: Incorrect handling of nested class names on show-inheritance
* 7267: autodoc: error message for invalid directive options has wrong location
* 7329: autodoc: info-field-list is wrongly generated from type hints into the
class description even if ``autoclass_content='class'`` set
* 7331: autodoc: a cython-function is not recognized as a function
* 5637: inheritance_diagram: Incorrect handling of nested class names
* 7139: ``code-block:: guess`` does not work
* 7325: html: source_suffix containing dot leads to wrong source link
* 7357: html: Resizing SVG image fails with ValueError
* 7278: html search: Fix use of ``html_file_suffix`` instead of
``html_link_suffix`` in search results
* 7297: html theme: ``bizstyle`` does not support ``sidebarwidth``
* 3842: singlehtml: Path to images broken when master doc is not in source root
* 7179: std domain: Fix whitespaces are suppressed on referring GenericObject
* 7289: console: use bright colors instead of bold
* 1539: C, parse array types.
* 2377: C, parse function pointers even in complex types.
* 7345: sphinx-build: Sphinx crashes if output directory exists as a file
* 7290: sphinx-build: Ignore bdb.BdbQuit when handling exceptions
* 6240: napoleon: Attributes and Methods sections ignore :noindex: option

2.4.4

=====================================

Bugs fixed
----------

* 7197: LaTeX: platex cause error to build image directive with target url
* 7223: Sphinx builds has been slower since 2.4.0

2.4.3

=====================================

Bugs fixed
----------

* 7184: autodoc: ``*args`` and ``**kwarg`` in type comments are not handled
properly
* 7189: autodoc: classmethod coroutines are not detected
* 7183: intersphinx: ``:attr:`` reference to property is broken
* 6244, 6387: html search: Search breaks/hangs when built with dirhtml builder
* 7195: todo: emit doctree-resolved event with non-document node incorrectly

2.4.2

=====================================

Bugs fixed
----------

* 7138: autodoc: ``autodoc.typehints`` crashed when variable has unbound object
as a value
* 7156: autodoc: separator for keyword only arguments is not shown
* 7146: autodoc: IndexError is raised on suppressed type_comment found
* 7161: autodoc: typehints extension does not support parallel build
* 7178: autodoc: TypeError is raised on fetching type annotations
* 7151: crashed when extension assigns a value to ``env.indexentries``
* 7170: text: Remove debug print
* 7137: viewcode: Avoid to crash when non-python code given

2.4.1

=====================================

Bugs fixed
----------

* 7120: html: crashed when on scaling SVG images which have float dimensions
* 7126: autodoc: TypeError: 'getset_descriptor' object is not iterable

2.4.0

=====================================

Deprecated
----------

* The ``decode`` argument of ``sphinx.pycode.ModuleAnalyzer()``
* ``sphinx.directives.other.Index``
* ``sphinx.environment.temp_data['gloss_entries']``
* ``sphinx.environment.BuildEnvironment.indexentries``
* ``sphinx.environment.collectors.indexentries.IndexEntriesCollector``
* ``sphinx.ext.apidoc.INITPY``
* ``sphinx.ext.apidoc.shall_skip()``
* ``sphinx.io.FiletypeNotFoundError``
* ``sphinx.io.get_filetype()``
* ``sphinx.pycode.ModuleAnalyzer.encoding``
* ``sphinx.roles.Index``
* ``sphinx.util.detect_encoding()``
* ``sphinx.util.get_module_source()``
* ``sphinx.util.inspect.Signature``
* ``sphinx.util.inspect.safe_getmembers()``
* ``sphinx.writers.latex.LaTeXTranslator.settings.author``
* ``sphinx.writers.latex.LaTeXTranslator.settings.contentsname``
* ``sphinx.writers.latex.LaTeXTranslator.settings.docclass``
* ``sphinx.writers.latex.LaTeXTranslator.settings.docname``
* ``sphinx.writers.latex.LaTeXTranslator.settings.title``
* ``sphinx.writers.latex.ADDITIONAL_SETTINGS``
* ``sphinx.writers.latex.DEFAULT_SETTINGS``
* ``sphinx.writers.latex.LUALATEX_DEFAULT_FONTPKG``
* ``sphinx.writers.latex.PDFLATEX_DEFAULT_FONTPKG``
* ``sphinx.writers.latex.XELATEX_DEFAULT_FONTPKG``
* ``sphinx.writers.latex.XELATEX_GREEK_DEFAULT_FONTPKG``

Features added
--------------

* 6910: inheritance_diagram: Make the background of diagrams transparent
* 6446: duration: Add ``sphinx.ext.durations`` to inspect which documents slow
down the build
* 6837: LaTeX: Support a nested table
* 7115: LaTeX: Allow to override LATEXOPTS and LATEXMKOPTS via environment
variable
* 6966: graphviz: Support ``:class:`` option
* 6696: html: ``:scale:`` option of image/figure directive not working for SVG
images (imagesize-1.2.0 or above is required)
* 6994: imgconverter: Support illustrator file (.ai) to .png conversion
* autodoc: Support Positional-Only Argument separator (PEP-570 compliant)
* autodoc: Support type annotations for variables
* 2755: autodoc: Add new event: :event:`autodoc-before-process-signature`
* 2755: autodoc: Support type_comment style (ex. `` type: (str) -> str``)
annotation (python3.8+ or `typed_ast <https://github.com/python/typed_ast>`_
is required)
* 7051: autodoc: Support instance variables without defaults (PEP-526)
* 6418: autodoc: Add a new extension ``sphinx.ext.autodoc.typehints``. It shows
typehints as object description if ``autodoc_typehints = "description"`` set.
This is an experimental extension and it will be integrated into autodoc core
in Sphinx-3.0
* SphinxTranslator now calls visitor/departure method for super node class if
visitor/departure method for original node class not found
* 6418: Add new event: :event:`object-description-transform`
* py domain: :rst:dir:`py:data` and :rst:dir:`py:attribute` take new options
named ``:type:`` and ``:value:`` to describe its type and initial value
* 6785: py domain: ``:py:attr:`` is able to refer properties again
* 6772: apidoc: Add ``-q`` option for quiet mode

Bugs fixed
----------

* 6925: html: Remove redundant type="text/javascript" from <script> elements
* 7112: html: SVG image is not layouted as float even if aligned
* 6906, 6907: autodoc: failed to read the source codes encoeded in cp1251
* 6961: latex: warning for babel shown twice
* 7059: latex: LaTeX compilation falls into infinite loop (wrapfig issue)
* 6581: latex: ``:reversed:`` option for toctree does not effect to LaTeX build
* 6559: Wrong node-ids are generated in glossary directive
* 6986: apidoc: misdetects module name for .so file inside module
* 6899: apidoc: private members are not shown even if ``--private`` given
* 6327: apidoc: Support a python package consisted of __init__.so file
* 6999: napoleon: fails to parse tilde in :exc: role
* 7019: gettext: Absolute path used in message catalogs
* 7023: autodoc: nested partial functions are not listed
* 7023: autodoc: partial functions imported from other modules are listed as
module members without :impoprted-members: option
* 6889: autodoc: Trailing comma in ``:members::`` option causes cryptic warning
* 6568: autosummary: ``autosummary_imported_members`` is ignored on generating
a stub file for submodule
* 7055: linkcheck: redirect is treated as an error
* 7088: HTML template: If ``navigation_with_keys`` option is activated,
modifier keys are ignored, which means the feature can interfere with browser
features
* 7090: std domain: Can't assign numfig-numbers for custom container nodes
* 7106: std domain: enumerated nodes are marked as duplicated when extensions
call ``note_explicit_target()``
* 7095: dirhtml: Cross references are broken via intersphinx and ``:doc:`` role
* C++:

- Don't crash when using the ``struct`` role in some cases.
- Don't warn when using the ``var``/``member`` role for function
 parameters.
- Render call and braced-init expressions correctly.
* 7097: Filenames of images generated by
``sphinx.transforms.post_transforms.images.ImageConverter``
or its subclasses (used for latex build) are now sanitized,
to prevent broken paths

2.3.1

=====================================

Bugs fixed
----------

* 6936: sphinx-autogen: raises AttributeError

2.3.0

=====================================

Incompatible changes
--------------------

* 6742: ``end-before`` option of :rst:dir:`literalinclude` directive does not
match the first line of the code block.
* 1331: Change default User-Agent header to ``"Sphinx/X.Y.Z requests/X.Y.Z
python/X.Y.Z"``.  It can be changed via :confval:`user_agent`.
* 6867: text: content of admonitions starts after a blank line

Deprecated
----------

* ``sphinx.builders.gettext.POHEADER``
* ``sphinx.io.SphinxStandaloneReader.app``
* ``sphinx.io.SphinxStandaloneReader.env``
* ``sphinx.util.texescape.tex_escape_map``
* ``sphinx.util.texescape.tex_hl_escape_map_new``
* ``sphinx.writers.latex.LaTeXTranslator.no_contractions``

Features added
--------------

* 6707: C++, support bit-fields.
* 267: html: Eliminate prompt characters of doctest block from copyable text
* 6548: html: Use favicon for OpenSearch if available
* 6729: html theme: agogo theme now supports ``rightsidebar`` option
* 6780: Add PEP-561 Support
* 6762: latex: Allow to load additional LaTeX packages via ``extrapackages`` key
of :confval:`latex_elements`
* 1331: Add new config variable: :confval:`user_agent`
* 6000: LaTeX: have backslash also be an inline literal word wrap break
character
* 4186: LaTeX: Support upLaTeX as a new :confval:`latex_engine` (experimental)
* 6812: Improve a warning message when extensions are not parallel safe
* 6818: Improve Intersphinx performance for multiple remote inventories.
* 2546: apidoc: .so file support
* 6798: autosummary: emit ``autodoc-skip-member`` event on generating stub file
* 6483: i18n: make explicit titles in toctree translatable
* 6816: linkcheck: Add :confval:`linkcheck_auth` option to provide
authentication information when doing ``linkcheck`` builds
* 6872: linkcheck: Handles HTTP 308 Permanent Redirect
* 6613: html: Wrap section number in span tag
* 6781: gettext: Add :confval:`gettext_last_translator' and
:confval:`gettext_language_team` to customize headers of POT file

Bugs fixed
----------

* 6668: LaTeX: Longtable before header has incorrect distance
(refs: `latex3/latex2e173`_)

.. _latex3/latex2e173: https://github.com/latex3/latex2e/issues/173
* 6618: LaTeX: Avoid section names at the end of a page
* 6738: LaTeX: Do not replace unicode characters by LaTeX macros on unicode
supported LaTeX engines: ¶, §, €, ∞, ±, →, ‣, –, superscript and subscript
digits go through "as is" (as default OpenType font supports them)
* 6704: linkcheck: Be defensive and handle newly defined HTTP error code
* 6806: linkcheck: Failure on parsing content
* 6655: image URLs containing ``data:`` causes gettext builder crashed
* 6584: i18n: Error when compiling message catalogs on Hindi
* 6718: i18n: KeyError is raised if section title and table title are same
* 6743: i18n: :confval:`rst_prolog` breaks the translation
* 6708: mathbase: Some deprecated functions have removed
* 6709: autodoc: mock object does not work as a class decorator
* 5070: epub: Wrong internal href fragment links
* 6712: Allow not to install sphinx.testing as runtime (mainly for ALT Linux)
* 6741: html: search result was broken with empty :confval:`html_file_suffix`
* 6001: LaTeX does not wrap long code lines at backslash character
* 6804: LaTeX: PDF build breaks if admonition of danger type contains
code-block long enough not to fit on one page
* 6809: LaTeX: code-block in a danger type admonition can easily spill over
bottom of page
* 6793: texinfo: Code examples broken following "sidebar"
* 6813: An orphan warning is emitted for included document on Windows.  Thanks
to drillan
* 6850: Fix smartypants module calls re.sub() with wrong options
* 6824: HTML search: If a search term is partially matched in the title and
fully matched in a text paragraph on the same page, the search does not
include this match.
* 6848: config.py shouldn't pop extensions from overrides
* 6867: text: extra spaces are inserted to hyphenated words on folding lines
* 6886: LaTeX: xelatex converts straight double quotes into right curly ones
(shows when :confval:`smartquotes` is ``False``)
* 6890: LaTeX: even with smartquotes off, PDF output transforms straight
quotes and consecutive hyphens into curly quotes and dashes
* 6876: LaTeX: multi-line display of authors on title page has ragged edges
* 6887: Sphinx crashes with docutils-0.16b0
* 6920: sphinx-build: A console message is wrongly highlighted
* 6900: sphinx-build: ``-D`` option does not considers ``0`` and ``1`` as a
boolean value

2.2.2

=====================================

Incompatible changes
--------------------

* 6803: For security reason of python, parallel mode is disabled on macOS and
Python3.8+

Bugs fixed
----------

* 6776: LaTeX: 2019-10-01 LaTeX release breaks :file:`sphinxcyrillic.sty`
* 6815: i18n: French, Hindi, Chinese, Japanese and Korean translation messages
has been broken
* 6803: parallel build causes AttributeError on macOS and Python3.8

2.2.1

=====================================

Bugs fixed
----------

* 6641: LaTeX: Undefined control sequence ``\sphinxmaketitle``
* 6710: LaTeX not well configured for Greek language as main language
* 6759: validation of html static paths and extra paths no longer throws
an error if the paths are in different directories

2.2.0

=====================================

Incompatible changes
--------------------

* apidoc: template files are renamed to ``.rst_t``
* html: Field lists will be styled by grid layout

Deprecated
----------

* ``sphinx.domains.math.MathDomain.add_equation()``
* ``sphinx.domains.math.MathDomain.get_next_equation_number()``
* The ``info`` and ``warn`` arguments of
``sphinx.ext.autosummary.generate.generate_autosummary_docs()``
* ``sphinx.ext.autosummary.generate._simple_info()``
* ``sphinx.ext.autosummary.generate._simple_warn()``
* ``sphinx.ext.todo.merge_info()``
* ``sphinx.ext.todo.process_todo_nodes()``
* ``sphinx.ext.todo.process_todos()``
* ``sphinx.ext.todo.purge_todos()``

Features added
--------------

* 5124: graphviz: ``:graphviz_dot:`` option is renamed to ``:layout:``
* 1464: html: emit a warning if :confval:`html_static_path` and
:confval:`html_extra_path` directories are inside output directory
* 6514: html: Add a label to search input for accessability purposes
* 5602: apidoc: Add ``--templatedir`` option
* 6475: Add ``override`` argument to ``app.add_autodocumenter()``
* 6310: imgmath: let :confval:`imgmath_use_preview` work also with the SVG
format for images rendering inline math
* 6533: LaTeX: refactor visit_enumerated_list() to use ``\sphinxsetlistlabels``
* 6628: quickstart: Use ``https://docs.python.org/3/`` for default setting of
:confval:`intersphinx_mapping`
* 6419: sphinx-build: give reasons why rebuilded

Bugs fixed
----------

* py domain: duplicated warning does not point the location of source code
* 6499: html: Sphinx never updates a copy of :confval:`html_logo` even if
original file has changed
* 1125: html theme: scrollbar is hard to see on classic theme and macOS
* 5502: linkcheck: Consider HTTP 503 response as not an error
* 6439: Make generated download links reproducible
* 6486: UnboundLocalError is raised if broken extension installed
* 6567: autodoc: :confval:`autodoc_inherit_docstrings` does not effect to
``__init__()`` and ``__new__()``
* 6574: autodoc: :confval:`autodoc_member_order` does not refer order of
imports when ``'bysource'`` order
* 6574: autodoc: missing type annotation for variadic and keyword parameters
* 6589: autodoc: Formatting issues with autodoc_typehints='none'
* 6605: autodoc: crashed when target code contains custom method-like objects
* 6498: autosummary: crashed with wrong autosummary_generate setting
* 6507: autosummary: crashes without no autosummary_generate setting
* 6511: LaTeX: autonumbered list can not be customized in LaTeX
since Sphinx 1.8.0 (refs: 6533)
* 6531: Failed to load last environment object when extension added
* 736: Invalid sort in pair index
* 6527: :confval:`last_updated` wrongly assumes timezone as UTC
* 5592: std domain: :rst:dir:`option` directive registers an index entry for
each comma separated option
* 6549: sphinx-build: Escaped characters in error messages
* 6545: doctest comments not getting trimmed since Sphinx 1.8.0
* 6561: glossary: Wrong hyperlinks are generated for non alphanumeric terms
* 6620: i18n: classifiers of definition list are not translated with
docutils-0.15
* 6474: ``DocFieldTransformer`` raises AttributeError when given directive is
not a subclass of ObjectDescription

2.1.2

=====================================

Bugs fixed
----------

* 6497: custom lexers fails highlighting when syntax error
* 6478, 6488: info field lists are incorrectly recognized

2.1.1

=====================================

Incompatible changes
--------------------

* 6447: autodoc: Stop to generate document for undocumented module variables

Bugs fixed
----------

* 6442: LaTeX: admonitions of :rst:dir:`note` type can get separated from
immediately preceding section title by pagebreak
* 6448: autodoc: crashed when autodocumenting classes with ``__slots__ = None``
* 6451: autodoc: generates docs for "optional import"ed modules as variables
* 6452: autosummary: crashed when generating document of properties
* 6455: napoleon: docstrings for properties are not processed
* 6436: napoleon: "Unknown target name" error if variable name ends with
underscore
* 6440: apidoc: missing blank lines between modules

2.1.0

=====================================

Incompatible changes
--------------------

* Ignore filenames without file extension given to ``Builder.build_specific()``
API directly
* 6230: The anchor of term in glossary directive is changed if it is consisted
by non-ASCII characters
* 4550: html: Centering tables by default using CSS
* 6239: latex: xelatex and xeCJK are used for Chinese documents by default
* ``Sphinx.add_lexer()`` now takes a Lexer class instead of instance.  An
instance of lexers are still supported until Sphinx-3.x.

Deprecated
----------

* ``sphinx.builders.latex.LaTeXBuilder.apply_transforms()``
* ``sphinx.builders._epub_base.EpubBuilder.esc()``
* ``sphinx.directives.Acks``
* ``sphinx.directives.Author``
* ``sphinx.directives.Centered``
* ``sphinx.directives.Class``
* ``sphinx.directives.CodeBlock``
* ``sphinx.directives.Figure``
* ``sphinx.directives.HList``
* ``sphinx.directives.Highlight``
* ``sphinx.directives.Include``
* ``sphinx.directives.Index``
* ``sphinx.directives.LiteralInclude``
* ``sphinx.directives.Meta``
* ``sphinx.directives.Only``
* ``sphinx.directives.SeeAlso``
* ``sphinx.directives.TabularColumns``
* ``sphinx.directives.TocTree``
* ``sphinx.directives.VersionChange``
* ``sphinx.domains.python.PyClassmember``
* ``sphinx.domains.python.PyModulelevel``
* ``sphinx.domains.std.StandardDomain._resolve_citation_xref()``
* ``sphinx.domains.std.StandardDomain.note_citations()``
* ``sphinx.domains.std.StandardDomain.note_citation_refs()``
* ``sphinx.domains.std.StandardDomain.note_labels()``
* ``sphinx.environment.NoUri``
* ``sphinx.ext.apidoc.format_directive()``
* ``sphinx.ext.apidoc.format_heading()``
* ``sphinx.ext.apidoc.makename()``
* ``sphinx.ext.autodoc.importer.MockFinder``
* ``sphinx.ext.autodoc.importer.MockLoader``
* ``sphinx.ext.autodoc.importer.mock()``
* ``sphinx.ext.autosummary.autolink_role()``
* ``sphinx.ext.imgmath.DOC_BODY``
* ``sphinx.ext.imgmath.DOC_BODY_PREVIEW``
* ``sphinx.ext.imgmath.DOC_HEAD``
* ``sphinx.transforms.CitationReferences``
* ``sphinx.transforms.SmartQuotesSkipper``
* ``sphinx.util.docfields.DocFieldTransformer.preprocess_fieldtypes()``
* ``sphinx.util.node.find_source_node()``
* ``sphinx.util.i18n.find_catalog()``
* ``sphinx.util.i18n.find_catalog_files()``
* ``sphinx.util.i18n.find_catalog_source_files()``

For more details, see :ref:`deprecation APIs list <dev-deprecated-apis>`.

Features added
--------------

* Add a helper class ``sphinx.transforms.post_transforms.SphinxPostTransform``
* Add helper methods

- ``PythonDomain.note_module()``
- ``PythonDomain.note_object()``
- ``SphinxDirective.set_source_info()``

* 6180: Support ``--keep-going`` with BuildDoc setup command
* ``math`` directive now supports ``:class:`` option
* todo: ``todo`` directive now supports ``:name:`` option
* Enable override via environment of ``SPHINXOPTS`` and ``SPHINXBUILD`` Makefile
variables (refs: 6232, 6303)
* 6287: autodoc: Unable to document bound instance methods exported as module
functions
* 6289: autodoc: :confval:`autodoc_default_options` now supports
``imported-members`` option
* 4777: autodoc: Support coroutine
* 744: autodoc: Support abstractmethod
* 6325: autodoc: Support attributes in __slots__.  For dict-style __slots__,
autodoc considers values as a docstring of the attribute
* 6361: autodoc: Add :confval:`autodoc_typehints` to suppress typehints from
signature
* 1063: autodoc: ``automodule`` directive now handles undocumented module level
variables
* 6212 autosummary: Add :confval:`autosummary_imported_members` to display
imported members on autosummary
* 6271: ``make clean`` is catastrophically broken if building into '.'
* 6363: Support ``%O%`` environment variable in make.bat
* 4777: py domain: Add ``:async:`` option to :rst:dir:`py:function` directive
* py domain: Add new options to :rst:dir:`py:method` directive

- ``:abstractmethod:``
- ``:async:``
- ``:classmethod:``
- ``:property:``
- ``:staticmethod:``

* rst domain: Add :rst:dir:`directive:option` directive to describe the option
for directive
* 6306: html: Add a label to search form for accessability purposes
* 4390: html: Consistent and semantic CSS for signatures
* 6358: The ``rawsource`` property of ``production`` nodes now contains the
full production rule
* 6373: autosectionlabel: Allow suppression of warnings
* coverage: Support a new ``coverage_ignore_pyobjects`` option
* 6239: latex: Support to build Chinese documents

Bugs fixed
----------

* 6230: Inappropriate node_id has been generated by glossary directive if term
is consisted by non-ASCII characters
* 6213: ifconfig: contents after headings are not shown
* commented term in glossary directive is wrongly recognized
* 6299: rst domain: rst:directive directive generates waste space
* 6379: py domain: Module index (py-modindex.html) has duplicate titles
* 6331: man: invalid output when doctest follows rubric
* 6351: "Hyperlink target is not referenced" message is shown even if
referenced
* 6165: autodoc: ``tab_width`` setting of docutils has been ignored
* 6347: autodoc: crashes with a plain Tuple on Python 3.6 and 3.5

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants