Sphinx 3.4

Release 3.4.3 (released Jan 08, 2021)

Bugs fixed

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

Release 3.4.2 (released Jan 04, 2021)

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

Release 3.4.1 (released Dec 25, 2020)

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 comparison via __eq__ method

  • #8565: linkcheck: Fix PriorityQueue crash when link tuples are not comparable

Release 3.4.0 (released Dec 20, 2020)

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 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 autoattribute and autodata directive to suppress the default value of the variable

  • #8460: autodoc: Support custom types defined by typing.NewType

  • #8285: napoleon: Add 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 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 linkcheck_rate_limit_timeout 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: 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 uninitialized 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.