Sphinx 7.2

Release 7.2.6 (released Sep 13, 2023)

Bugs fixed

  • #11679: Add the SPHINX_AUTODOC_RELOAD_MODULES environment variable, which if set reloads modules when using autodoc with TYPE_CHECKING = True. Patch by Matt Wozniski and Adam Turner.

  • #11679: Use importlib.reload() to reload modules in autodoc. Patch by Matt Wozniski and Adam Turner.

Release 7.2.5 (released Aug 30, 2023)

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 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 source-read events for files read via the include directive.

  • 11620: Add a new include-read for observing and transforming the content of included files via the include directive.

  • #11627: Restore support for copyright lines of the form YYYY when SOURCE_DATE_EPOCH is set.

Release 7.2.4 (released Aug 28, 2023)

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.

Release 7.2.3 (released Aug 23, 2023)

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 classmethod methods when autodoc_preserve_defaults is True.

  • Restore support string methods on path objects. This is deprecated and will be removed in Sphinx 8. Use os.fspath() to convert Path objects to strings, or Path’s methods to work with path objects.

Release 7.2.2 (released Aug 17, 2023)

Bugs fixed

  • Fix the signature of the StateMachine.insert_input() patch, for when calling with keyword arguments.

  • Fixed membership testing (in) for the str interface of the asset classes (_CascadingStyleSheet and _JavaScript), which several extensions relied upon.

  • Fixed a type error in SingleFileHTMLBuilder._get_local_toctree, includehidden may be passed as a string or a boolean.

  • Fix :noindex: for PyModule and JSModule.

Release 7.2.1 (released Aug 17, 2023)

Bugs fixed

  • Restored the the str interface of the asset classes (_CascadingStyleSheet and _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.

Release 7.2.0 (released Aug 17, 2023)

Dependencies

  • #11511: Drop Python 3.8 support.

  • #11576: Require Pygments 2.14 or later.

Deprecated

  • #11512: Deprecate sphinx.util.md5 and sphinx.util.sha1. Use hashlib instead.

  • #11526: Deprecate sphinx.testing.path. Use os.path or pathlib instead.

  • #11528: Deprecate sphinx.util.split_index_msg and sphinx.util.split_into. Use sphinx.util.index_entries.split_index_msg instead.

  • Deprecate sphinx.builders.html.Stylesheet and sphinx.builders.html.Javascript. Use sphinx.application.Sphinx.add_css_file() and sphinx.application.Sphinx.add_js_file() instead.

  • #11582: Deprecate sphinx.builders.html.StandaloneHTMLBuilder.css_files and sphinx.builders.html.StandaloneHTMLBuilder.script_files. Use sphinx.application.Sphinx.add_css_file() and sphinx.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.PathLike types and pathlib.Path objects in many more places.

  • #5474: coverage: Print summary statistics tables. Patch by Jorge Leitao.

  • #6319: viewcode: Add viewcode_line_numbers to 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 doctest_show_successes option. Patch by Trey Hunner.

  • #11533: Add :no-index:, :no-index-entry:, and :no-contents-entry:.

  • #11572: Improve debug logging of reasons why files are detected as out of date. Patch by Eric Larson.

  • #10678: Emit source-read events for files read via the include directive. Patch by Halldor Fannar.

  • #11570: Use short names when using PEP 585 built-in generics. Patch by Riccardo Mori.

  • #11300: Improve SigElementFallbackTransform fallback logic and signature text elements nodes. See the documentation 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 gettext builder. Patch by Alvin Wong.

  • #10795: Raise a descriptive error if graphviz_dot is falsy.

  • #11546: Translated nodes identical to their original text are now marked with the translated=True attribute.

  • #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 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 Literal enumeration values now render correctly. Patch by Bénédikt Tran.

  • #11591: Fix support for C coverage in sphinx.ext.coverage extension. Patch by Stephen Finucane.

  • #11594: HTML Theme: Enhancements to horizontal scrolling on smaller devices in the agogo theme. 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.