- Update to version 6.1.1
* #11091: Fix ``util.nodes.apply_source_workaround`` for ``literal_block`` nodes
with no source information in the node or the node's parents.
* Adopted the `Ruff`_ code linter.
.. _Ruff: https://github.com/charliermarsh/ruff
* #10979: gettext: Removed support for pluralisation in ``get_translation``.
This was unused and complicated other changes to ``sphinx.locale``.
* ``sphinx.util`` functions:
* Renamed ``sphinx.util.typing.stringify()``
to ``sphinx.util.typing.stringify_annotation()``
* Moved ``sphinx.util.xmlname_checker()``
to ``sphinx.builders.epub3._XML_NAME_PATTERN``
Moved to ``sphinx.util.display``:
* ``sphinx.util.status_iterator``
* ``sphinx.util.display_chunk``
* ``sphinx.util.SkipProgressMessage``
* ``sphinx.util.progress_message``
Moved to ``sphinx.util.http_date``:
* ``sphinx.util.epoch_to_rfc1123``
* ``sphinx.util.rfc1123_to_epoch``
Moved to ``sphinx.util.exceptions``:
* ``sphinx.util.save_traceback``
* ``sphinx.util.format_exception_cut_frames``
* Cache doctrees in the build environment during the writing phase.
* Make all writing phase tasks support parallel execution.
* #11072: Use PEP 604 (``X | Y``) display conventions for ``typing.Optional``
and ``typing.Optional`` types within the Python domain and autodoc.
* #10700: autodoc: Document ``typing.NewType()`` types as classes rather than
'data'.
* Cache doctrees between the reading and writing phases.
OBS-URL: https://build.opensuse.org/request/show/1056250
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Sphinx?expand=0&rev=227
- Update to version 6.0.0
* #10468: Drop Python 3.6 support
* #10470: Drop Python 3.7, Docutils 0.14, Docutils 0.15, Docutils 0.16, and
Docutils 0.17 support. Patch by Adam Turner
* #7405: Removed the jQuery and underscore.js JavaScript frameworks.
These frameworks are no longer be automatically injected into themes from
Sphinx 6.0. If you develop a theme or extension that uses the
``jQuery``, ``$``, or ``$u`` global objects, you need to update your
JavaScript to modern standards, or use the mitigation below.
The first option is to use the sphinxcontrib.jquery_ extension, which has been
developed by the Sphinx team and contributors. To use this, add
``sphinxcontrib.jquery`` to the ``extensions`` list in ``conf.py``, or call
``app.setup_extension("sphinxcontrib.jquery")`` if you develop a Sphinx theme
or extension.
The second option is to manually ensure that the frameworks are present.
To re-add jQuery and underscore.js, you will need to copy ``jquery.js`` and
``underscore.js`` from `the Sphinx repository`_ to your ``static`` directory,
and add the following to your ``layout.html``:
.. code-block:: html+jinja
{%- block scripts %}
<script src="{{ pathto('_static/jquery.js', resource=True) }}"></script>
<script src="{{ pathto('_static/underscore.js', resource=True) }}"></script>
{{ super() }}
{%- endblock %}
.. _sphinxcontrib.jquery: https://github.com/sphinx-contrib/jquery/
Patch by Adam Turner.
* #10471, #10565: Removed deprecated APIs scheduled for removal in Sphinx 6.0. See
:ref:`dev-deprecated-apis` for details. Patch by Adam Turner.
* #10901: C Domain: Remove support for parsing pre-v3 style type directives and
roles. Also remove associated configuration variables ``c_allow_pre_v3`` and
OBS-URL: https://build.opensuse.org/request/show/1045890
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Sphinx?expand=0&rev=224
- Update to version 5.2.2
* #10872: Restore link targets for autodoc modules to the top of content.
Patch by Dominic Davis-Foster.
- Update to version 5.2.1
* #10861: Always normalise the ``pycon3`` lexer to ``pycon``.
* Fix using ``sphinx.ext.autosummary`` with modules containing titles in the
module-level docstring.
- Remove unneeded spec hunks.
- Update to version 5.2.0
* #10356: Sphinx now uses declarative metadata with pyproject.toml to create packages,
using PyPA’s build project as a build backend. Patch by Adam Turner.
* #10286: C++, support requires clauses not just between the template parameter lists and the declaration.
* #10755: linkcheck: Check the source URL of raw directives that use the url option.
* #10781: Allow ref role to be used with definitions and fields.
* #10717: HTML Search: Increase priority for full title and subtitle matches in search results
* #10718: HTML Search: Save search result score to the HTML element for debugging
* #10673: Make toctree accept ‘genindex’, ‘modindex’ and ‘search’ docnames
* #6316, #10804: Add domain objects to the table of contents. Patch by Adam Turner
* #6692: HTML Search: Include explicit index directive index entries in the search index and search results. Patch by Adam Turner
* #10816: imgmath: Allow embedding images in HTML as base64
* #10257: C++, ensure consistent non-specialization template argument representation.
* #10729: C++, fix parsing of certain non-type template parameter packs.
* #10715: Revert #10520: “Fix” use of sidebar classes in agogo.css_t
* #10701: Fix ValueError in the new ``deque`` based ``sphinx.ext.napolean``
iterator implementation.
* #10702: Restore compatability with third-party builders.
OBS-URL: https://build.opensuse.org/request/show/1006671
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Sphinx?expand=0&rev=218
- Update to version 5.1.0
* #10656: Support `Docutils 0.19`_. Patch by Adam Turner.
* #10467: Deprecated ``sphinx.util.stemmer`` in favour of ``snowballstemmer``.
Patch by Adam Turner.
* #9856: Deprecated ``sphinx.ext.napoleon.iterators``.
* #10444: html theme: Allow specifying multiple CSS files through the ``stylesheet``
setting in ``theme.conf`` or by setting ``html_style`` to an iterable of strings.
* #10366: std domain: Add support for emphasising placeholders in :rst:dir:`option`
directives through a new :confval:`option_emphasise_placeholders` configuration
option.
* #10439: std domain: Use the repr of some variables when displaying warnings,
making whitespace issues easier to identify.
* #10571: quickstart: Reduce content in the generated ``conf.py`` file. Patch by
Pradyun Gedam.
* #10648: LaTeX: CSS-named-alike additional :ref:`'sphinxsetup' <latexsphinxsetup>`
keys allow to configure four separate border-widths, four paddings, four
corner radii, a shadow (possibly inset), colours for border, background, shadow
for each of the code-block, topic, attention, caution, danger, error and warning
directives.
* #10655: LaTeX: Explain non-standard encoding in LatinRules.xdy
* #10599: HTML Theme: Wrap consecutive footnotes in an ``<aside>`` element when
using Docutils 0.18 or later, to allow for easier styling. This matches the
behaviour introduced in Docutils 0.19. Patch by Adam Turner.
* #10518: config: Add ``include_patterns`` as the opposite of ``exclude_patterns``.
Patch by Adam Turner.
* #10594: HTML Theme: field term colons are doubled if using Docutils 0.18+
* #10596: Build failure if Docutils version is 0.18 (not 0.18.1) due
to missing ``Node.findall()``
* #10506: LaTeX: build error if highlighting inline code role in figure caption
(refs: #10251)
OBS-URL: https://build.opensuse.org/request/show/991054
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Sphinx?expand=0&rev=214
- Update to version 5.0.0:
* #10164: Support `Docutils 0.18`_. Patch by Adam Turner.
* #10031: autosummary: ``sphinx.ext.autosummary.import_by_name()`` now raises
``ImportExceptionGroup`` instead of ``ImportError`` when it failed to import
target object. Please handle the exception if your extension uses the
function to import Python object. As a workaround, you can disable the
behavior via ``grouped_exception=False`` keyword argument until v7.0.
* #9962: texinfo: Customizing styles of emphasized text via ``@definfoenclose``
command was not supported because the command was deprecated since texinfo 6.8
* #2068: :confval:`intersphinx_disabled_reftypes` has changed default value
from an empty list to ``['std:doc']`` as avoid too surprising silent
intersphinx resolutions.
To migrate: either add an explicit inventory name to the references
intersphinx should resolve, or explicitly set the value of this configuration
variable to an empty list.
* #10197: html theme: Reduce ``body_min_width`` setting in basic theme to 360px
* #9999: LaTeX: separate terms from their definitions by a CR (refs: #9985)
* #10062: Change the default language to ``'en'`` if any language is not set in
``conf.py``
* #10474: :confval:`language` does not accept ``None`` as it value. The default
value of ``language`` becomes to ``'en'`` now.
* #10028: jQuery and underscore.js will no longer be automatically injected into
themes from Sphinx 6.0. If you develop a theme or extension that uses the
``jQuery``, ``$``, or ``$u`` global objects, you need to update your
JavaScript or use the mitigation below.
To re-add jQuery and underscore.js, you will need to copy ``jquery.js`` and
``underscore.js`` from `the Sphinx repository`_ to your ``static`` directory,
and add the following to your ``layout.html``:
.. _the Sphinx repository: https://github.com/sphinx-doc/sphinx/tree/v4.3.2/sphinx/themes/basic/static
.. code-block:: html+jinja
OBS-URL: https://build.opensuse.org/request/show/979826
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Sphinx?expand=0&rev=208
- Update to version 4.5.0:
* #10112: extlinks: Disable hardcoded links detector by default
* #9993, #10177: std domain: Disallow to refer an inline target via
:rst:role:`ref` role
* ``sphinx.ext.napoleon.docstring.GoogleDocstring._qualify_name()``
* #10260: Enable ``FORCE_COLOR`` and ``NO_COLOR`` for terminal colouring
* #10234: autosummary: Add "autosummary" CSS class to summary tables
* #10125: extlinks: Improve suggestion message for a reference having title
* #10112: extlinks: Add :confval:`extlinks_detect_hardcoded_links` to enable
hardcoded links detector feature
* #9494, #9456: html search: Add a config variable
:confval:`html_show_search_summary` to enable/disable the search summaries
* #9337: HTML theme, add option ``enable_search_shortcuts`` that enables :kbd:'/' as
a Quick search shortcut and :kbd:`Esc` shortcut that
removes search highlighting.
* #10107: i18n: Allow to suppress translation warnings by adding ``#noqa``
comment to the tail of each translation message
* #10252: C++, support attributes on classes, unions, and enums.
* #10253: :rst:dir:`pep` role now generates URLs based on peps.python.org
* #9876: autodoc: Failed to document an imported class that is built from native
binary module
* #10133: autodoc: Crashed when mocked module is used for type annotation
* #10146: autodoc: :confval:`autodoc_default_options` does not support
``no-value`` option
* #9971: autodoc: TypeError is raised when the target object is annotated by
unhashable object
* #10205: extlinks: Failed to compile regexp on checking hardcoded links
* #10277: html search: Could not search short words (ex. "use")
* #9529: LaTeX: named auto numbered footnote (ex. ``[#named]``) that is referred
multiple times was rendered to a question mark
OBS-URL: https://build.opensuse.org/request/show/965338
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Sphinx?expand=0&rev=206
- Update to version 4.4.0:
* #10007: Use ``importlib_metadata`` for python-3.9 or older
* #10007: Drop ``setuptools``
* #9075: autodoc: Add a config variable :confval:`autodoc_typehints_format`
to suppress the leading module names of typehints of function signatures (ex.
``io.StringIO`` -> ``StringIO``)
* #9831: Autosummary now documents only the members specified in a module's
``__all__`` attribute if :confval:`autosummary_ignore_module_all` is set to
``False``. The default behaviour is unchanged. Autogen also now supports
this behavior with the ``--respect-module-all`` switch.
* #9555: autosummary: Improve error messages on failure to load target object
* #9800: extlinks: Emit warning if a hardcoded link is replaceable
by an extlink, suggesting a replacement.
* #9961: html: Support nested <kbd> HTML elements in other HTML builders
* #10013: html: Allow to change the loading method of JS via ``loading_method``
parameter for :meth:`Sphinx.add_js_file()`
* #9551: html search: "Hide Search Matches" link removes "highlight" parameter
from URL
* #9815: html theme: Wrap sidebar components in div to allow customizing their
layout via CSS
* #9827: i18n: Sort items in glossary by translated terms
* #9899: py domain: Allows to specify cross-reference specifier (``.`` and
``~``) as ``:type:`` option
* #9894: linkcheck: add option ``linkcheck_exclude_documents`` to disable link
checking in matched documents.
* #9793: sphinx-build: Allow to use the parallel build feature in macOS on macOS
and Python3.8+
* #10055: sphinx-build: Create directories when ``-w`` option given
* #9993: std domain: Allow to refer an inline target (ex. ``_`target name```)
via :rst:role:`ref` role
OBS-URL: https://build.opensuse.org/request/show/947122
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Sphinx?expand=0&rev=200