chore(deps): update dependency sphinx to v7 - autoclosed
This MR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| Sphinx (changelog) | dev-dependencies | major |
^4.5.0 -> ^4.5.0 || ^7.0.0
|
Release Notes
sphinx-doc/sphinx (Sphinx)
v7.3.7
=====================================
Bugs fixed
- #12299: Defer loading themes defined via entry points until their explicit use by the user or a child theme. Patch by Adam Turner.
-
#12305: Return the default value for
theme.get_config()with an unsupported theme configuration section. Patch by Adam Turner.
v7.3.6
=====================================
Bugs fixed
- #12295: Re-export all AST types in the C and C++ domains. Patch by Adam Turner.
-
#12295: Re-export various objects from
sphinx.domains.python._annotationsinsphinx.domains.python. Patch by Jacob Chesslo and Adam Turner.
v7.3.5
=====================================
Bugs fixed
-
#12295: Re-export various objects from
sphinx.domains.python._objectinsphinx.domains.python. Patch by Jacob Chesslo and Adam Turner.
v7.3.4
=====================================
Bugs fixed
- Handle cases when
Anyis not an instance oftype. Patch by Adam Turner.
v7.3.3
=====================================
Bugs fixed
-
#12290: Fix a false-positive warning when setting a configuration value
with
Anyas the valid type to a type other than the value's default. Patch by Adam Turner.
v7.3.2
=====================================
Bugs fixed
- Preload all themes defined via entry points. Patch by Adam Turner.
- Fix a bad interaction between the
'Furo'theme and the new-style for configuration values. Patch by Adam Turner.
v7.3.1
=====================================
Dependencies
- Require
tomlion Python 3.10 and earlier. Patch by Adam Turner.
v7.3.0
=====================================
Dependencies
-
#11411: Support
Docutils 0.21_. Patch by Adam Turner.
.. _Docutils 0.21: https://docutils.sourceforge.io/RELEASE-NOTES.html#release-0-21-2024-04-09
-
#12012: Use
types-docutilsinstead ofdocutils-stubs.
Deprecated
-
#11693: Support for old-style :file:
Makefileand :file:make.batoutput in :program:sphinx-quickstart, and the associated options :option:!-M, :option:!-m, :option:!--no-use-make-mode, and :option:!--use-make-mode. -
#11285: Direct access to :attr:
!sphinx.testing.util.SphinxTestApp._statusor :attr:!sphinx.testing.util.SphinxTestApp._warningis deprecated. Use the public properties :attr:!sphinx.testing.util.SphinxTestApp.statusand :attr:!sphinx.testing.util.SphinxTestApp.warninginstead. Patch by Bénédikt Tran. - tests: :func:
!sphinx.testing.util.strip_escseqis deprecated in favour of :func:!sphinx.util.console.strip_colors. Patch by Bénédikt Tran.
Features added
-
#12265: Support theme configuration via
theme.toml. -
#11701: HTML Search: Adopt the new
\<search\>_ element. Patch by Bénédikt Tran... _
\<search\>: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/search -
#11803: autodoc: Use an overriden
__repr__()function in an enum, if defined. Patch by Shengyu Zhang. -
#11892: Improved performance when resolving cross references in the C++ domain. Patch by Rouslan Korneychuk.
-
#11981: Improve rendering of signatures using
slicesyntax, e.g.,def foo(arg: np.float64[:,:]) -> None: .... -
The manpage builder now adds
OSC 8_ anchors to hyperlinks, using thegroff_ device control command... _OSC 8: https://gist.github.com/egmontkob/eb114294efbcd5adb1944c9f3cb5feda .. _groff: https://lists.gnu.org/archive/html/groff/2021-10/msg00000.html
-
#11015: Change the text of the :rst:dir:
versionaddeddirective fromNew in [...]toAdded in [...]. Patch by Bénédikt Tran. -
#12131: Added :confval:
show_warning_typesconfiguration option. Patch by Chris Sewell. -
#12193: Improve
externalwarnings for unknown roles. In particular, suggest related role names if an object type is mistakenly used. Patch by Chris Sewell. -
Add public type alias :class:
sphinx.util.typing.ExtensionMetadata. This can be used by extension developers to annotate the return type of theirsetupfunction. Patch by Chris Sewell.
Bugs fixed
-
#11668: Raise a useful error when
theme.confis missing. Patch by Vinay Sajip. -
#11622: Ensure that the order of keys in
searchindex.jsis deterministic. Patch by Pietro Albini. -
#11617: ANSI control sequences are stripped from the output when writing to a warnings file with :option:
-w <sphinx-build -w>. Patch by Bénédikt Tran. -
#11666: Skip all hidden directories in
CatalogRepository.pofiles. Patch by Aryaz Eghbali. -
#9686: html builder: Fix MathJax lazy loading when equations appear in titles. Patch by Bénédikt Tran.
-
#11483: singlehtml builder: Fix MathJax lazy loading when the index does not contain any math equations. Patch by Bénédikt Tran.
-
#11697: HTML Search: add 'noindex' meta robots tag. Patch by James Addison.
-
#11678: Fix a possible
ZeroDivisionErrorinsphinx.ext.coverage. Patch by Stephen Finucane. -
#11756: LaTeX: build error with recent TeXLive due to missing
substitutefontpackage (triggered if usingfontencwithT2Aoption and document language is not a Cyrillic one). Patch by Jean-François B. -
#11675: Fix rendering of progression bars in environments that do not support ANSI control sequences. Patch by Bénédikt Tran.
-
#11715: Apply
tls_verifyandtls_cacertsconfig toImageDownloader. Patch by Nick Touran. -
#11433: Added the :confval:
linkcheck_allow_unauthorizedconfiguration option. Set this option toFalseto report HTTP 401 (unauthorized) server responses as broken. Patch by James Addison. -
#11868: linkcheck: added a distinct
timeoutreporting status code. This can be enabled by setting :confval:linkcheck_report_timeouts_as_brokentoFalse. Patch by James Addison. -
#11869: Refresh the documentation for the
linkcheck_timeoutsetting. Patch by James Addison. -
#11874: Configure a default 30-second value for
linkcheck_timeout. Patch by James Addison. -
#11886: Print the Jinja2 template path chain in
TemplateNotFoundexceptions. Patch by Colin Marquardt. -
#11598: Do not use query components in URLs for assets in EPUB rendering. Patch by David Runge.
-
#11917: Fix rendering of annotated inherited members for Python 3.9. Patch by Janet Carson.
-
#11925: Blacklist the
sphinxprettysearchresultsextension; the functionality it provides was merged into Sphinx v2.0.0. Patch by James Addison. -
#11353: Support enumeration classes inheriting from mixin or data types. Patch by Bénédikt Tran.
-
#11962: Fix target resolution when using
:paramtype:fields. Patch by Bénédikt Tran. -
#12008: Fix case-sensitive lookup of
std:labelnames in intersphinx inventory. Patch by Michael Goerz. -
#11959: Fix multiple term matching when word appears in both title and document. Patch by Will Lachance.
-
#11958: HTML Search: Fix partial matches overwriting full matches. Patch by William Lachance.
-
#11944: Use anchor in search preview. Patch by Will Lachance.
-
#11474: Fix doctrees caching causing files not be rebuilt in some cases, e.g., when :confval:
numfigisTrue. Patch by Bénédikt Tran. -
#11278: autodoc: Fix rendering of :class:
functools.singledispatchmethodcombined with :func:@classmethod <classmethod>. Patch by Bénédikt Tran. -
#11894: Do not add checksums to css files if building using the htmlhelp builder. Patch by mkay.
-
#12052: Remove
<script>and<style>tags from the content of search result summary snippets. Patch by James Addison. -
#11578: HTML Search: Order non-main index entries after other results. Patch by Brad King.
-
#12147: autosummary: Fix a bug whereby the wrong file extension may be used, when multiple suffixes are specified in :confval:
source_suffix. Patch by Sutou Kouhei. -
#10786: improve the error message when a file to be copied (e.g., an asset) is removed during Sphinx execution. Patch by Bénédikt Tran.
-
#12040: HTML Search: Ensure that document titles that are partially-matched by the user search query are included in search results. Patch by James Addison.
-
#11970: singlehtml builder: make target URIs to be same-document references in the sense of :rfc:
RFC 3986, §4.4 <3986#section-4.4>, e.g.,index.html#foobecomes#foo. Patch by eanorige. -
#12271: Partially revert Docutils' r9562__ to fix EPUB files. Patch by Adam Turner.
Testing
-
#11285: :func:
!pytest.mark.sphinxand :class:!sphinx.testing.util.SphinxTestAppaccept warningiserror, keep_going and verbosity as keyword arguments. Patch by Bénédikt Tran. -
#11285: :class:
!sphinx.testing.util.SphinxTestAppstatus and warning arguments are checked to be :class:io.StringIOobjects (the public API incorrectly assumed this without checking it). Patch by Bénédikt Tran. - Report the result of
test_run_epubcheckasskippedinstead ofsuccesswhen either Java orepubcheckare not available. - Use dynamic allocation of unused port numbers for the test HTTP(S) servers.
As a side-effect, this removes the need for test server lockfiles,
meaning that any remaining
tests/test-server.lockfiles can safely be deleted.
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.
v6.2.1
=====================================
Bugs fixed
-
#11355: Revert the default type of :confval:
nitpick_ignoreand :confval:nitpick_ignore_regextolist.
v6.2.0
=====================================
Dependencies
- Require Docutils 0.18.1 or greater.
Incompatible changes
- LaTeX: removal of some internal TeX
\dimenregisters (not previously publicly documented) as per 5.1.0 code comments insphinx.sty:\sphinxverbatimsep,\sphinxverbatimborder,\sphinxshadowsep,\sphinxshadowsize, and\sphinxshadowrule. (refs: #11105) - Remove
.eggsupport from pycodeModuleAnalyser; Python eggs are a now-obsolete binary distribution format -
#11089: Remove deprecated code in
sphinx.builders.linkcheck. Patch by Daniel Eades - Remove internal-only
sphinx.locale.setlocale
Deprecated
-
#11247: Deprecate the legacy
intersphinx_mappingformat -
sphinx.util.osutil.cdis deprecated in favour ofcontextlib.chdir.
Features added
-
#11277: :rst:dir:
autopropertyallows the return type to be specified as a type comment (e.g.,# type: () -> int). Patch by Bénédikt Tran -
#10811: Autosummary: extend
__all__to imported members for template rendering when optionautosummary_ignore_module_allis set toFalse. Patch by Clement Pinard -
#11147: Add a
content_offsetparameter tonested_parse_with_titles(), allowing for correct line numbers during nested parsing. Patch by Jeremy Maitin-Shepard - Update to Unicode CLDR 42
- Add a
--jobssynonym for-j. Patch by Hugo van Kemenade - LaTeX: a command
\sphinxboxfor styling text elements with a (possibly rounded) box, optional background color and shadow, has been added. See :ref:sphinxbox. (refs: #11224) - LaTeX: add
\sphinxstylenotetitle, ...,\sphinxstylewarningtitle, ..., for an extra layer of mark-up freeing up\sphinxstrongfor other uses. See :ref:latex-macros. (refs: #11267) - LaTeX: :dudir:
note, :dudir:hint, :dudir:importantand :dudir:tipcan now each be styled as the other admonitions, i.e. possibly with a background color, individual border widths and paddings, possibly rounded corners, and optional shadow. See :ref:additionalcss. (refs: #11234) - LaTeX: admonitions and :dudir:
topic(and :dudir:contents <table-of-contents>) directives, and not only :rst:dir:code-block, supportbox-decoration-break=slice. - LaTeX: let rounded boxes support up to 4 distinct border-widths (refs: #11243)
- LaTeX: new options
noteTextColor,noteTeXextraset al. See :ref:additionalcss. - LaTeX: support elliptical corners in rounded boxes. (refs: #11254)
- #11150: Include source location in highlighting warnings, when lexing fails. Patch by Jeremy Maitin-Shepard
-
#11281: Support for :confval:
imgmath_latex= 'tectonic'or= 'xelatex'. Patch by Dimitar Dimitrov -
#11109, #9643: Add :confval:
python_display_short_literal_typesoption for condensed rendering ofLiteraltypes.
Bugs fixed
- #11079: LaTeX: figures with align attribute may disappear and strangely impact following lists
-
#11093: LaTeX: fix "multiply-defined references" PDF build warnings when one or
more reST labels directly precede an :rst:dir:
py:moduleor :rst:dir:automoduledirective. Patch by Bénédikt Tran (picnixz) - #11110: LaTeX: Figures go missing from latex pdf if their files have the same base name and they use a post transform. Patch by aaron-cooper
- LaTeX: fix potential color leak from shadow to border of rounded boxes, if shadow color is set but border color is not
- LaTeX: fix unintended 1pt upwards vertical shift of code blocks frames respective to contents (when using rounded corners)
-
#11235: LaTeX: added
\colorin topic (or admonition) contents may cause color leak to the shadow and border at a page break -
#11264: LaTeX: missing space before colon after "Voir aussi" for :rst:dir:
seealsodirective in French - #11268: LaTeX: longtable with left alignment breaks out of current list indentation context in PDF. Thanks to picnixz.
-
#11274: LaTeX: external links are not properly escaped for
\sphinxupquotecompatibility -
#11147: Fix source file/line number info in object description content and in
other uses of
nested_parse_with_titles. Patch by Jeremy Maitin-Shepard. - #11192: Restore correct parallel search index building. Patch by Jeremy Maitin-Shepard
- Use the new Transifex
txclient
Testing
- Fail testing when any Python warnings are emitted
- Migrate remaining
unittest.TestCasestyle test functions to pytest style - Remove tests that rely on setuptools
v6.1.3
=====================================
Bugs fixed
- #11116: Reverted to previous Sphinx 5 node copying method
- #11117: Reverted changes to parallel image processing from Sphinx 6.1.0
-
#11119: Supress
ValueErrorin thelinkcheckbuilder
v6.1.2
=====================================
Bugs fixed
-
#11101: LaTeX:
div.topic_paddingkey of sphinxsetup documented at 5.1.0 was implemented with nametopic_padding -
#11099: LaTeX:
shadowrulekey of sphinxsetup causes PDF build to crash since Sphinx 5.1.0 -
#11096: LaTeX:
shadowsizekey of sphinxsetup causes PDF build to crash since Sphinx 5.1.0 -
#11095: LaTeX: shadow of :dudir:
topicand :dudir:contents <table-of-contents>boxes not in page margin since Sphinx 5.1.0 - #11100: Fix copying images when running under parallel mode.
v6.1.1
=====================================
Bugs fixed
-
#11091: Fix
util.nodes.apply_source_workaroundforliteral_blocknodes with no source information in the node or the node's parents.
v6.1.0
=====================================
Dependencies
-
Adopted the
Ruff_ code linter... _Ruff: https://github.com/charliermarsh/ruff
Incompatible changes
-
#10979: gettext: Removed support for pluralisation in
get_translation. This was unused and complicated other changes tosphinx.locale.
Deprecated
-
sphinx.utilfunctions:- Renamed
sphinx.util.typing.stringify()tosphinx.util.typing.stringify_annotation() - Moved
sphinx.util.xmlname_checker()tosphinx.builders.epub3._XML_NAME_PATTERN
Moved to
sphinx.util.display:sphinx.util.status_iteratorsphinx.util.display_chunksphinx.util.SkipProgressMessagesphinx.util.progress_message
Moved to
sphinx.util.http_date:sphinx.util.epoch_to_rfc1123sphinx.util.rfc1123_to_epoch
Moved to
sphinx.util.exceptions:sphinx.util.save_tracebacksphinx.util.format_exception_cut_frames
- Renamed
Features added
- 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 fortyping.Optionalandtyping.Optionaltypes 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.
Bugs fixed
- #10962: HTML: Fix the multi-word key name lookup table.
- Fixed support for Python 3.12 alpha 3 (changes in the
enummodule). - #11069: HTML Theme: Removed outdated "shortcut" link relation keyword.
- #10952: Properly terminate parallel processes on programme interuption.
-
#10988: Speed up
TocTree.resolve()through more efficient copying. - #6744: LaTeX: support for seealso directive should be via an environment to allow styling.
- #11074: LaTeX: Can't change sphinxnote to use sphinxheavybox starting with 5.1.0
v6.0.1
=====================================
Dependencies
- Require Pygments 2.13 or later.
Bugs fixed
- #10944: imgmath: Fix resolving image paths for files in nested folders.
v6.0.0
=====================================
Dependencies
- #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
Incompatible changes
-
#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$uglobal 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.jqueryto theextensionslist inconf.py, or callapp.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.jsandunderscore.jsfromthe Sphinx repository_ to yourstaticdirectory, and add the following to yourlayout.html:.. code-block:: html+jinja
{%- block scripts %} {{ 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-apisfor 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_v3andc_warn_on_allowed_pre_v3. Patch by Adam Turner.
Features added
-
#10924: LaTeX: adopt better looking defaults for tables and code-blocks.
See :confval:
latex_table_styleand thepre_border-radiusandpre_background-TeXcolor:ref:additionalcssfor the former defaults and how to re-enact them if desired.
Bugs fixed
-
#10984: LaTeX: Document :confval:
latex_additional_filesbehavior for files with.texextension.
v5.3.0
=====================================
-
#10759: LaTeX: add :confval:
latex_table_styleand support the'booktabs','borderless', and'colorrows'styles. (thanks to Stefan Wiehler for initial pull requests #6666, #6671) -
#10840: One can cross-reference including an option value like
:option:`--module=foobar```,:option:--module[=foobar]```, or ``:option:--module foobar```. Patch by Martin Liska. - #10881: autosectionlabel: Record the generated section label to the debug log.
- #10268: Correctly URI-escape image filenames.
-
#10887: domains: Allow sections in all the content of all object description
directives (e.g. :rst:dir:
py:function). Patch by Adam Turner
v5.2.3
=====================================
-
#10878: Fix base64 image embedding in
sphinx.ext.imgmath -
#10886: Add
:nocontentsentry:flag and global domain table of contents entry control option. Patch by Adam Turner
v5.2.2
=====================================
- #10872: Restore link targets for autodoc modules to the top of content. Patch by Dominic Davis-Foster.
v5.2.1
=====================================
Bugs fixed
-
#10861: Always normalise the
pycon3lexer topycon. - Fix using
sphinx.ext.autosummarywith modules containing titles in the module-level docstring.
v5.2.0
===========================================
- Recreated source tarballs for Debian maintainers.
v5.1.1
=====================================
Bugs fixed
-
#10701: Fix ValueError in the new
dequebasedsphinx.ext.napoleaniterator implementation. - #10702: Restore compatability with third-party builders.
v5.1.0
=====================================
Dependencies
-
#10656: Support
Docutils 0.19_. Patch by Adam Turner.
.. _Docutils 0.19: https://docutils.sourceforge.io/RELEASE-NOTES.html#release-0-19-2022-07-05
Deprecated
-
#10467: Deprecated
sphinx.util.stemmerin favour ofsnowballstemmer. Patch by Adam Turner. -
#9856: Deprecated
sphinx.ext.napoleon.iterators.
Features added
-
#10444: html theme: Allow specifying multiple CSS files through the
stylesheetsetting intheme.confor by settinghtml_styleto an iterable of strings. -
#10366: std domain: Add support for emphasising placeholders in :rst:dir:
optiondirectives through a new :confval:option_emphasise_placeholdersconfiguration 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.pyfile. 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_patternsas the opposite ofexclude_patterns. Patch by Adam Turner.
Bugs fixed
- #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)
- #10634: Make -P (pdb) option work better with exceptions triggered from events
-
#10550: py domain: Fix spurious whitespace in unparsing various operators (
+,-,~, and**). Patch by Adam Turner (refs: #10551). - #10460: logging: Always show node source locations as absolute paths.
- HTML Search: HTML tags are displayed as a part of object name
- HTML Search: search snipets should not be folded
- HTML Search: Minor errors are emitted on fetching search snipets
- HTML Search: The markers for header links are shown in the search result
-
#10520: HTML Theme: Fix use of sidebar classes in
agogo.css_t. - #6679: HTML Theme: Fix inclusion of hidden toctrees in the agogo theme.
- #10566: HTML Theme: Fix enable_search_shortcuts does not work
- #8686: LaTeX: Text can fall out of code-block at end of page and leave artifact on next page
-
#10633: LaTeX: user injected
\colorcommands in topic or admonition boxes may cause color leaks in PDF due to upstreamframed.sty <https://ctan.org/pkg/framed>_ bug -
#10638: LaTeX: framed coloured boxes in highlighted code (e.g. highlighted
diffs using Pygments style
'manni') inherit thickness of code-block frame -
#10647: LaTeX: Only one
\labelis generated fordesc_signaturenode even if it has multiple node IDs - #10579: i18n: UnboundLocalError is raised on translating raw directive
-
#9577, #10088: py domain: Fix warning for duplicate Python references when
using
:any:and autodoc. - #10548: HTML Search: fix minor summary issues.
v5.0.2
=====================================
Features added
-
#10523: HTML Theme: Expose the Docutils's version info tuple as a template
variable,
docutils_version_info. Patch by Adam Turner.
Bugs fixed
-
#10538: autodoc: Inherited class attribute having docstring is documented even
if :confval:
autodoc_inherit_docstringis disabled - #10509: autosummary: autosummary fails with a shared library
- #10497: py domain: Failed to resolve strings in Literal. Patch by Adam Turner.
- #10523: HTML Theme: Fix double brackets on citation references in Docutils 0.18+. Patch by Adam Turner.
- #10534: Missing CSS for nav.contents in Docutils 0.18+. Patch by Adam Turner.
v5.0.1
=====================================
Bugs fixed
- #10498: gettext: TypeError is raised when sorting warning messages if a node has no line number. Patch by Adam Turner.
-
#10493: HTML Theme: :dudir:
topicdirective is rendered incorrectly with Docutils 0.18. Patch by Adam Turner. -
#10495: IndexError is raised for a :rst:role:
kbdrole having a separator. Patch by Adam Turner.
v5.0.0
=====================================
Dependencies
5.0.0 b1
-
#10164: Support
Docutils 0.18_. Patch by Adam Turner.
.. _Docutils 0.18: https://docutils.sourceforge.io/RELEASE-NOTES.html#release-0-18-2021-10-26
Incompatible changes
5.0.0 b1
-
#10031: autosummary:
sphinx.ext.autosummary.import_by_name()now raisesImportExceptionGroupinstead ofImportErrorwhen 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 viagrouped_exception=Falsekeyword argument until v7.0. -
#9962: texinfo: Customizing styles of emphasized text via
@definfoenclosecommand was not supported because the command was deprecated since texinfo 6.8 -
#2068: :confval:
intersphinx_disabled_reftypeshas 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_widthsetting 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 inconf.py
5.0.0 final
-
#10474: :confval:
languagedoes not acceptNoneas it value. The default value oflanguagebecomes to'en'now. Patch by Adam Turner and Takeshi KOMIYA.
Deprecated
5.0.0 b1
-
#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$uglobal 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.jsandunderscore.jsfromthe Sphinx repository_ to yourstaticdirectory, and add the following to yourlayout.html:.. _the Sphinx repository: https://github.com/sphinx-doc/sphinx/tree/v5.3.0/sphinx/themes/basic/static .. code-block:: html+jinja
{%- block scripts %} {{ super() }} {%- endblock %}
Patch by Adam Turner.
-
setuptools integration. The
build_sphinxsub-command for setup.py is marked as deprecated to follow the policy of setuptools team. -
The
localeargument ofsphinx.util.i18n:babel_format_date()becomes required -
The
languageargument ofsphinx.util.i18n:format_date()becomes required -
sphinx.builders.html.html5_ready -
sphinx.io.read_doc() -
sphinx.util.docutils.__version_info__ -
sphinx.util.docutils.is_html5_writer_available() -
sphinx.writers.latex.LaTeXWriter.docclasses
Features added
5.0.0 b1
-
#9075: autodoc: The default value of :confval:
autodoc_typehints_formatis changed to'smart'. It will suppress the leading module names of typehints (ex.io.StringIO->StringIO). -
#8417: autodoc:
:inherited-members:option now takes multiple classes. It allows to suppress inherited members of several classes on the module at once by specifying the option to :rst:dir:automoduledirective -
#9792: autodoc: Add new option for
autodoc_typehints_description_targetto include undocumented return values but not undocumented parameters. - #10285: autodoc: singledispatch functions having typehints are not documented
- autodoc: :confval:
autodoc_typehints_formatnow also applies to attributes, data, properties, and type variable bounds. - #10258: autosummary: Recognize a documented attribute of a module as non-imported
-
#10028: Removed internal usages of JavaScript frameworks (jQuery and
underscore.js) and modernised
doctools.jsandsearchtools.jsto EMCAScript 2018. Patch by Adam Turner. -
#10302: C++, add support for conditional expressions (
?:). -
#5157, #10251: Inline code is able to be highlighted via :dudir:
roledirective - #10337: Make sphinx-build faster by caching Publisher object during build. Patch by Adam Turner.
Bugs fixed
5.0.0 b1
- #10200: apidoc: Duplicated submodules are shown for modules having both .pyx and .so files. Patch by Adam Turner and Takeshi KOMIYA.
- #10279: autodoc: Default values for keyword only arguments in overloaded functions are rendered as a string literal
-
#10280: autodoc: :confval:
autodoc_docstring_signatureunexpectedly generates return value typehint for constructors if docstring has multiple signatures -
#10266: autodoc: :confval:
autodoc_preserve_defaultsdoes not work for mixture of keyword only arguments with/without defaults - #10310: autodoc: class methods are not documented when decorated with mocked function
-
#10305: autodoc: Failed to extract optional forward-ref'ed typehints correctly
via :confval:
autodoc_type_aliases -
#10421: autodoc: :confval:
autodoc_preserve_defaultsdoesn't work on class methods -
#10214: html: invalid language tag was generated if :confval:
languagecontains a country code (ex. zh_CN) - #9974: html: Updated jQuery version from 3.5.1 to 3.6.0
- #10236: html search: objects are duplicated in search result
-
#9962: texinfo: Deprecation message for
@definfoenclosecommand on bulding texinfo document - #10000: LaTeX: glossary terms with common definition are rendered with too much vertical whitespace
-
#10188: LaTeX: alternating multiply referred footnotes produce a
?in pdf output -
#10363: LaTeX: make
'howto'title page rule use\linewidthfor compatibility with usage of atwocolumnclass option -
#10318:
:prepend:option of :rst:dir:literalincludedirective does not work with:dedent:option
5.0.0 final
-
#9575: autodoc: The annotation of return value should not be shown when
autodoc_typehints="description" -
#9648: autodoc:
*argsand**kwargsentries are duplicated whenautodoc_typehints="description" - #8180: autodoc: Docstring metadata ignored for attributes
- #10443: epub: EPUB builder can't detect the mimetype of .webp file
- #10104: gettext: Duplicated locations are shown if 3rd party extension does not provide correct information
-
#10456: py domain:
:meta:fields are displayed if docstring contains two or more meta-field - #9096: sphinx-build: the value of progress bar for paralle build is wrong
- #10110: sphinx-build: exit code is not changed when error is raised on builder-finished event
Configuration
-
If you want to rebase/retry this MR, check this box
This MR has been generated by Renovate Bot.