Update dependency sphinx to v7
This MR contains the following updates:
| Package | Update | Change |
|---|---|---|
| sphinx (changelog) | major |
==6.2.1 -> ==7.2.6
|
Release Notes
sphinx-doc/sphinx (sphinx)
v7.2.6
=====================================
Bugs fixed
-
#11679: Add the :envvar:
!SPHINX_AUTODOC_RELOAD_MODULESenvironment variable, which if set reloads modules when using autodoc withTYPE_CHECKING = True. Patch by Matt Wozniski and Adam Turner. -
#11679: Use :py:func:
importlib.reloadto reload modules in autodoc. Patch by Matt Wozniski and Adam Turner.
v7.2.5
=====================================
Bugs fixed
-
#11645: Fix a regression preventing autodoc from importing modules within
packages that make use of
if typing.TYPE_CHECKING:to guard circular imports needed by type checkers. Patch by Matt Wozniski. - #11634: Fixed inheritance diagram relative link resolution for sibling files in a subdirectory. Patch by Albert Shih.
-
#11659: Allow
?config=...in :confval:mathjax_path. -
#11654: autodoc: Fail with a more descriptive error message
when an object claims to be an instance of
type, but is not a class. Patch by James Braza. - 11620: Cease emitting :event:
source-readevents for files read via the :dudir:includedirective. - 11620: Add a new :event:
include-readfor observing and transforming the content of included files via the :dudir:includedirective. -
#11627: Restore support for copyright lines of the form
YYYYwhenSOURCE_DATE_EPOCHis set.
v7.2.4
=====================================
Bugs fixed
- #11618: Fix a regression in the MoveModuleTargets transform, introduced in #10478 (#9662).
- #11649: linkcheck: Resolve hanging tests for timezones west of London and incorrect conversion from UTC to offsets from the UNIX epoch. Patch by Dmitry Shachnev and Adam Turner.
v7.2.3
=====================================
Dependencies
- #11576: Require sphinxcontrib-serializinghtml 1.1.9.
Bugs fixed
- Fix regression in
autodoc.Documenter.parse_name(). - Fix regression in JSON serialisation.
-
#11543: autodoc: Support positional-only parameters in
classmethodmethods whenautodoc_preserve_defaultsisTrue. - Restore support string methods on path objects.
This is deprecated and will be removed in Sphinx 8.
Use :py:func:
os.fspathto convert :py:class:~pathlib.Pathobjects to strings, or :py:class:~pathlib.Path's methods to work with path objects.
v7.2.2
=====================================
Bugs fixed
- Fix the signature of the
StateMachine.insert_input()patch, for when calling with keyword arguments. - Fixed membership testing (
in) for the :py:class:strinterface of the asset classes (_CascadingStyleSheetand_JavaScript), which several extensions relied upon. - Fixed a type error in
SingleFileHTMLBuilder._get_local_toctree,includehiddenmay be passed as a string or a boolean. - Fix
:noindex:forPyModuleandJSModule.
v7.2.1
=====================================
Bugs fixed
- Restored the the :py:class:
strinterface of the asset classes (_CascadingStyleSheetand_JavaScript), which several extensions relied upon. This will be removed in Sphinx 9. - Restored calls to
Builder.add_{css,js}_file(), which several extensions relied upon. - Restored the private API
TocTree.get_toctree_ancestors(), which several extensions relied upon.
v7.2.0
=====================================
Dependencies
Deprecated
-
#11512: Deprecate
sphinx.util.md5andsphinx.util.sha1. Usehashlibinstead. -
#11526: Deprecate
sphinx.testing.path. Useos.pathorpathlibinstead. -
#11528: Deprecate
sphinx.util.split_index_msgandsphinx.util.split_into. Usesphinx.util.index_entries.split_index_msginstead. - Deprecate
sphinx.builders.html.Stylesheetandsphinx.builders.html.Javascript. Usesphinx.application.Sphinx.add_css_file()andsphinx.application.Sphinx.add_js_file()instead. -
#11582: Deprecate
sphinx.builders.html.StandaloneHTMLBuilder.css_filesandsphinx.builders.html.StandaloneHTMLBuilder.script_files. Usesphinx.application.Sphinx.add_css_file()andsphinx.application.Sphinx.add_js_file()instead. -
#11459: Deprecate
sphinx.ext.autodoc.preserve_defaults.get_function_def(). Patch by Bénédikt Tran.
Features added
-
#11526: Support
os.PathLiketypes andpathlib.Pathobjects in many more places. - #5474: coverage: Print summary statistics tables. Patch by Jorge Leitao.
-
#6319: viewcode: Add :confval:
viewcode_line_numbersto control whether line numbers are added to rendered source code. Patch by Ben Krikler. -
#9662: Add the
:no-typesetting:option to suppress textual output and only create a linkable anchor. Patch by Latosha Maltba. - #11221: C++: Support domain objects in the table of contents. Patch by Rouslan Korneychuk.
-
#10938: doctest: Add :confval:
doctest_show_successesoption. Patch by Trey Hunner. -
#11533: Add
:no-index:,:no-index-entry:, and:no-contents-entry:. -
#11572: Improve
debuglogging of reasons why files are detected as out of date. Patch by Eric Larson. -
#10678: Emit :event:
source-readevents for files read via the :dudir:includedirective. Patch by Halldor Fannar. -
#11570: Use short names when using :pep:
585built-in generics. Patch by Riccardo Mori. -
#11300: Improve
SigElementFallbackTransformfallback logic and signature text elements nodes. See :doc:the documentation </extdev/nodes>for more details. Patch by Bénédikt Tran. - Allow running Sphinx with
python -m sphinx build ....
Bugs fixed
- #11077: graphviz: Fix relative links from within the graph. Patch by Ralf Grubenmann.
- #11529: Line Block in LaTeX builder outputs spurious empty token. Patch by Adrian Vollmer.
- #11196: autosummary: Summary line extraction failed with "e.g."
- #10614: Fixed a number of bugs in inheritance diagrams that resulted in missing or broken links. Patch by Albert Shih.
-
#9428: Exclude substitution definitions when running the
gettextbuilder. Patch by Alvin Wong. -
#10795: Raise a descriptive error if
graphviz_dotis falsy. -
#11546: Translated nodes identical to their original text are now marked
with the
translated=Trueattribute. - #10049: html: Change "Permalink" to "Link" for title text in link anchors.
- #4225: Relax Pygments parsing on lexing failures.
-
#11246: Allow inline links in the first line of a docstring and one-line
type comments
#: :meta ...:when using :mod:sphinx.ext.napoleon. Patch by Bénédikt Tran. - #10930: Highlight all search terms on the search results page. Patch by Dmitry Shachnev.
-
#11473: Type annotations containing :py:data:
~typing.Literalenumeration values now render correctly. Patch by Bénédikt Tran. -
#11591: Fix support for C coverage in
sphinx.ext.coverageextension. Patch by Stephen Finucane. -
#11594: HTML Theme: Enhancements to horizontal scrolling on smaller
devices in the
agogotheme. Patch by Lukas Engelter. -
#11459: Fix support for async and lambda functions in
sphinx.ext.autodoc.preserve_defaults. Patch by Bénédikt Tran.
Testing
- #11577: pytest: Fail tests on "XPASS".
- #11577: pytest: Use "importlib" import mode.
- #11577: pytest: Set PYTHONWARNINGS=error.
- #11577: pytest: Set strict config and strict markers.
v7.1.2
=====================================
Bugs fixed
-
#11542: linkcheck: Properly respect :confval:
linkcheck_anchorsand do not spuriously report failures to validate anchors. Patch by James Addison.
v7.1.1
=====================================
Bugs fixed
-
#11514: Fix
SOURCE_DATE_EPOCHin multi-line copyright footer. Patch by Bénédikt Tran.
v7.1.0
=====================================
Incompatible changes
-
Releases are no longer signed, given the
change in PyPI policy_... _change in PyPI policy: https://blog.pypi.org/posts/2023-05-23-removing-pgp/
Deprecated
-
#11412: Emit warnings on using a deprecated Python-specific index entry type
(namely,
module,keyword,operator,object,exception,statement, andbuiltin) in the :rst:dir:indexdirective, and set the removal version to Sphinx 9. Patch by Adam Turner.
Features added
- #11415: Add a checksum to JavaScript and CSS asset URIs included within generated HTML, using the CRC32 algorithm.
- :meth:
~sphinx.application.Sphinx.require_sphinxnow allows the version requirement to be specified as(major, minor). -
#11011: Allow configuring a line-length limit for object signatures, via
:confval:
maximum_signature_line_lengthand the domain-specific variants. If the length of the signature (in characters) is greater than the configured limit, each parameter in the signature will be split to its own logical line. This behaviour may also be controlled by options on object description directives, for example :rst:dir:py:function:single-line-parameter-list. Patch by Thomas Louf, Adam Turner, and Jean-François B. - #10983: Support for multiline copyright statements in the footer block. Patch by Stefanie Molin
-
sphinx.util.display.status_iteratornow clears the current line with ANSI control codes, rather than overprinting with space characters. - #11431: linkcheck: Treat SSL failures as broken links. Patch by James Addison.
-
#11157: Keep the
translatedattribute on translated nodes. -
#11451: Improve the traceback displayed when using :option:
sphinx-build -Tin parallel builds. Patch by Bénédikt Tran - #11324: linkcheck: Use session-basd HTTP requests.
-
#11438: Add support for the :rst:dir:
py:classand :rst:dir:py:functiondirectives for PEP 695 (generic classes and functions declarations) and PEP 696 (default type parameters). Multi-line support (#11011) is enabled for type parameters list and can be locally controlled on object description directives, e.g., :rst:dir:py:function:single-line-type-parameter-list. Patch by Bénédikt Tran. -
#11484: linkcheck: Allow HTML anchors to be ignored on a per-URL basis
via :confval:
linkcheck_anchors_ignore_for_urlwhile still checking the validity of the page itself. Patch by Bénédikt Tran -
#1246: Add translation progress statistics and inspection support,
via a new substitution (
|translation progress|) and a new configuration variable (:confval:translation_progress_classes). These enable determining the percentage of translated elements within a document, and the remaining translated and untranslated elements.
Bugs fixed
-
Restored the
footnote-referenceclass that has been removed in the latest (unreleased) version of Docutils. -
#11486: Use :rfc:
8081font file MIME types in the EPUB builder. Using the correct MIME type will prevent warnings fromepubcheckand will generate a valid EPUB. -
#11435: Use microsecond-resolution timestamps for outdated file detection in
BuildEnvironment.get_outdated_files. -
#11437: Top-level headings starting with a reStructuredText role now render properly when :confval:
rst_prologis set. Previously, a file starting with the below would have improperly rendered due to where the prologue text was inserted into the document... code:: rst
:mod:
lobster-- The lobster module...
Patch by Bénédikt Tran.
-
#11337: Fix a
MemoryErrorinsphinx.ext.intersphinxwhen usingNoneortyping.*as inline type references. Patch by Bénédikt Tran (picnixz)
Testing
-
#11345: Always delete
docutils.confin test directories when runningSphinxTestApp.cleanup().
v7.0.1
=====================================
Dependencies
-
#11411: Support
Docutils 0.20_. Patch by Adam Turner.
.. _Docutils 0.20: https://docutils.sourceforge.io/RELEASE-NOTES.html#release-0-20-2023-05-04
Bugs fixed
-
#11418: Clean up remaining references to
sphinx.setup_commandfollowing the removal of support for setuptools. Patch by Willem Mulder.
v7.0.0
=====================================
Incompatible changes
-
#11359: Remove long-deprecated aliases for
MecabSplitterandDefaultSplitterinsphinx.search.ja. -
#11360: Remove deprecated
make_old_idfunctions in domain object description classes. -
#11363: Remove the Setuptools integration (
build_sphinxhook insetup.py). -
#11364: Remove deprecated
sphinx.ext.napoleon.iteratorsmodule. -
#11365: Remove support for the
jsdumpformat insphinx.search. -
#11366: Make
localea required argument tosphinx.util.i18n.format_date(). -
#11370: Remove deprecated
sphinx.util.stemmermodule. -
#11371: Remove deprecated
sphinx.pycode.ast.parse()function. -
#11372: Remove deprecated
sphinx.io.read_doc()function. -
#11373: Removed deprecated
sphinx.util.get_matching_files()function. -
#11378: Remove deprecated
sphinx.util.docutils.is_html5_writer_available()function. -
#11379: Make the
envargument toBuildersubclasses required. - #11380: autosummary: Always emit grouped import exceptions.
-
#11381: Remove deprecated
stylekey for HTML templates. -
#11382: Remove deprecated
sphinx.writers.latex.LaTeXTranslator.docclassesattribute. -
#11383: Remove deprecated
sphinx.builders.html.html5_readyandsphinx.builders.html.HTMLTranslatorattributes. - #11385: Remove support for HTML 4 output.
Configuration
-
If you want to rebase/retry this MR, check this box