Closed pyup-bot closed 3 years ago
Merging #235 (5ffe1b3) into master (221dbb3) will not change coverage. The diff coverage is
n/a
.
@@ Coverage Diff @@
## master #235 +/- ##
=======================================
Coverage 87.92% 87.92%
=======================================
Files 8 8
Lines 646 646
Branches 134 134
=======================================
Hits 568 568
Misses 51 51
Partials 27 27
Continue to review full report at Codecov.
Legend - Click here to learn more
Δ = absolute <relative> (impact)
,ø = not affected
,? = missing data
Powered by Codecov. Last update 221dbb3...5ffe1b3. Read the comment docs.
Closing this in favor of #243
This PR updates Sphinx from 1.8.5 to 3.3.1.
Changelog
### 3.3.1 ``` ============================== Dependencies ------------ Incompatible changes -------------------- Deprecated ---------- Features added -------------- Bugs fixed ---------- * 8372: autodoc: autoclass directive became slower than Sphinx-3.2 * 7727: autosummary: raise PycodeError when documenting python package without __init__.py * 8364: C, properly initialize attributes in empty symbols. Testing -------- ``` ### 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 * 6311: autosummary: autosummary table gets confused by complex type hints * 6350: autosummary: confused by an argument having some kind of default value * Generated Makefiles lack a final EOL (refs: 6232) * 6375: extlinks: Cannot escape angle brackets in link caption * 6378: linkcheck: Send commonly used User-Agent * 6387: html search: failed to search document with haiku and scrolls themes * 6408: html search: Fix the ranking of search results * 6406: Wrong year is returned for ``SOURCE_DATE_EPOCH`` * 6402: image directive crashes by unknown image format * 6286: C++, allow 8 and 9 in hexadecimal integer literals. * 6305: Fix the string in quickstart for 'path' argument of parser * LaTeX: Figures in admonitions produced errors (refs: 6364) ``` ### 2.0.1 ``` ===================================== Bugs fixed ---------- * LaTeX: some system labels are not translated * RemovedInSphinx30Warning is marked as pending * deprecation warnings are not emitted - sphinx.application.CONFIG_FILENAME - sphinx.builders.htmlhelp - :confval:`viewcode_import` * 6208: C++, properly parse full xrefs that happen to have a short xref as prefix * 6220, 6225: napoleon: AttributeError is raised for raised section having references * 6245: circular import error on importing SerializingHTMLBuilder * 6243: LaTeX: 'releasename' setting for latex_elements is ignored * 6244: html: Search function is broken with 3rd party themes * 6263: html: HTML5Translator crashed with invalid field node * 6262: html theme: The style of field lists has changed in bizstyle theme ``` ### 2.0.0 ``` * 6196: py domain: unexpected prefix is generated Testing -------- ``` ### 2.0.0b2 ``` * Add a helper function: ``sphinx.testing.restructuredtext.parse()`` ``` ### 2.0.0b1 ``` * Stop to use ``SPHINX_TEST_TEMPDIR`` envvar ```Links
- PyPI: https://pypi.org/project/sphinx - Changelog: https://pyup.io/changelogs/sphinx/ - Homepage: http://sphinx-doc.org/