|
1 | | -Release 9.0.3 (in development) |
| 1 | +Release 9.1.0 (in development) |
2 | 2 | ============================== |
3 | 3 |
|
4 | | -Bugs fixed |
5 | | ----------- |
6 | | - |
7 | | - |
8 | | -Release 9.0.2 (released Dec 03, 2025) |
9 | | -===================================== |
10 | | - |
11 | | -Bugs fixed |
12 | | ----------- |
13 | | - |
14 | | -* #14142: autodoc: Restore :mod:`!sphinx.ext.autodoc.mock`. |
15 | | - Patch by Adam Turner. |
16 | | - |
17 | | -Release 9.0.1 (released Dec 01, 2025) |
18 | | -===================================== |
19 | | - |
20 | | -Bugs fixed |
21 | | ----------- |
22 | | - |
23 | | -* #13942: autodoc: Restore the mapping interface for options objects. |
24 | | - Patch by Adam Turner. |
25 | | -* #13942: autodoc: Deprecate the mapping interface for options objects. |
26 | | - Patch by Adam Turner. |
27 | | -* #13387: Update translations. |
28 | | - |
29 | | -Release 9.0.0 (released Nov 30, 2025) |
30 | | -===================================== |
31 | | - |
32 | 4 | Dependencies |
33 | 5 | ------------ |
34 | 6 |
|
35 | | -* #13786: Support `Docutils 0.22`_. Patch by Adam Turner. |
36 | | - |
37 | | - .. _Docutils 0.22: https://docutils.sourceforge.io/RELEASE-NOTES.html#release-0-22-2026-07-29 |
| 7 | +* #14153: Drop Python 3.11 support. |
38 | 8 |
|
39 | 9 | Incompatible changes |
40 | 10 | -------------------- |
41 | 11 |
|
42 | | -* #13639: :py:meth:`!SphinxComponentRegistry.create_source_parser` no longer |
43 | | - has an *app* parameter, instead taking *config* and *env*. |
44 | | - Patch by Adam Turner. |
45 | | -* #13679: Non-decodable characters in source files now raise an error. |
46 | | - Such bytes have been replaced with '?' along with logging a warning |
47 | | - since Sphinx 2.0. |
48 | | - Patch by Adam Turner. |
49 | | -* #13751, #14089: :mod:`sphinx.ext.autodoc` has been substantially rewritten, |
50 | | - and there may be some incompatible changes in edge cases, especially when |
51 | | - extensions interact with autodoc internals. |
52 | | - The :confval:`autodoc_use_legacy_class_based` option has been added to |
53 | | - use the legacy (pre-9.0) implementation of autodoc. |
54 | | - Patches by Adam Turner. |
55 | | -* #13355: Don't include escaped title content in the search index. |
56 | | - Patch by Will Lachance. |
57 | | - |
58 | 12 | Deprecated |
59 | 13 | ---------- |
60 | 14 |
|
61 | | -* 13627: Deprecate remaining public :py:attr:`!.app` attributes, |
62 | | - including ``builder.app``, ``env.app``, ``events.app``, |
63 | | - and ``SphinxTransform.app``. |
64 | | - Patch by Adam Turner. |
65 | | -* #13637: Deprecate the :py:meth:`!set_application` method |
66 | | - of :py:class:`~sphinx.parsers.Parser` objects. |
67 | | - Patch by Adam Turner. |
68 | | -* #13644: Deprecate the :py:attr:`!Parser.config` and :py:attr:`!env` attributes. |
69 | | - Patch by Adam Turner. |
70 | | -* #13665: Deprecate support for non-UTF 8 source encodings, |
71 | | - scheduled for removal in Sphinx 10. |
72 | | - Patch by Adam Turner. |
73 | | -* #13682: Deprecate :py:mod:`!sphinx.io`. |
74 | | - Sphinx no longer uses the :py:mod:`!sphinx.io` classes, |
75 | | - having replaced them with standard Python I/O. |
76 | | - The entire :py:mod:`!sphinx.io` module will be removed in Sphinx 10. |
77 | | - Patch by Adam Turner. |
78 | | -* #13631: :func:`!sphinx.environment.adapters.toctree.global_toctree_for_doc` |
79 | | - and :meth:`!sphinx.environment.BuildEnvironment.get_and_resolve_doctree` |
80 | | - will require a *tags* keyword argument from Sphinx 11. |
81 | | - It may optionally be passed from Sphinx 9 onwards. |
82 | | - Patch by Adam Turner. |
83 | | - |
84 | 15 | Features added |
85 | 16 | -------------- |
86 | 17 |
|
87 | | -* #13332: Add :confval:`doctest_fail_fast` option to exit after the first failed |
88 | | - test. |
89 | | - Patch by Till Hoffmann. |
90 | | -* #13439: linkcheck: Permit warning on every redirect with |
91 | | - ``linkcheck_allowed_redirects = {}``. |
92 | | - Patch by Adam Turner and James Addison. |
93 | | -* #13497: Support C domain objects in the table of contents. |
94 | | -* #13500: LaTeX: add support for ``fontawesome6`` package. |
95 | | - Patch by Jean-François B. |
96 | | -* #13509: autodoc: Detect :py:func:`typing_extensions.overload <typing.overload>` |
97 | | - and :py:func:`~typing.final` decorators. |
98 | | - Patch by Spencer Brown. |
99 | | -* #13535: html search: Update to the latest version of Snowball (v3.0.1). |
100 | | - Patch by Adam Turner. |
101 | | -* #13647: LaTeX: allow more cases of table nesting. |
102 | | - Patch by Jean-François B. |
103 | | -* #13657: LaTeX: support CSS3 length units. |
104 | | - Patch by Jean-François B. |
105 | | -* #13684: intersphinx: Add a file-based cache for remote inventories. |
106 | | - The location of the cache directory must not be relied upon externally, |
107 | | - as it may change without notice or warning in future releases. |
108 | | - Patch by Adam Turner. |
109 | | -* #13805: LaTeX: add support for ``fontawesome7`` package. |
110 | | - Patch by Jean-François B. |
111 | | -* #13508: autodoc: Initial support for :pep:`695` type aliases. |
112 | | - Patch by Martin Matouš, Jeremy Maitin-Shepard, and Adam Turner. |
113 | | -* #14023: Add the new :confval:`mathjax_config_path` option |
114 | | - to load MathJax configuration from a file. |
115 | | - Patch by Randolf Scholz and Adam Turner. |
116 | | -* #14046: linkcheck: Add the :confval:`linkcheck_case_insensitive_urls` option |
117 | | - to allow case-insensitive URL comparison for specific URL patterns. |
118 | | - This is useful for links to websites that normalise URL casing (e.g. GitHub) |
119 | | - or case-insensitive servers. |
120 | | - Patch by Fazeel Usmani and James Addison. |
121 | | -* #14075: autosummary: Provide more context in import exception stack traces. |
122 | | - Patch by Philipp A. |
123 | | -* #13468: Add config options to :mod:`sphinx.ext.duration`. |
124 | | - Patch by Erik Bedard and Adam Turner. |
125 | | -* #14022: Use MathJax v4 by default in the :mod:`sphinx.ext.mathjax` extension, |
126 | | - from v3 previously. |
127 | | - To keep using an older version, set the :confval:`mathjax_path` option. |
128 | | - Also add the new :confval:`mathjax4_config` option to configure MathJax v4. |
129 | | - Note that MathJax v3 is mostly compatible with MathJax v4, so existing |
130 | | - :confval:`mathjax3_config` settings should not need to change. |
131 | | - Patch by Matthias Geier. |
132 | | -* #14029: intersphinx: Fix error in format string interpolation. |
133 | | - Patch by Matthieu de Cibeins. |
134 | | -* #13894: Add ``source_code_parser`` type to :confval:`suppress_warnings` |
135 | | - for grouping issues related to the C and C++ parsers. |
136 | | - Patch by Valentin H. |
137 | | - |
138 | 18 | Bugs fixed |
139 | 19 | ---------- |
140 | 20 |
|
141 | | -* #13926: multiple py:type directives for the same canonical type no |
142 | | - longer result in spurious duplicate object description warnings. |
143 | | - Patch by Jeremy Maitin-Shepard. |
144 | | -* #1327: LaTeX: tables using longtable raise error if |
145 | | - :rst:dir:`tabularcolumns` specifies automatic widths |
146 | | - (``L``, ``R``, ``C``, or ``J``). |
147 | | - Patch by Jean-François B. |
148 | | -* #3447: LaTeX: when assigning longtable class to table for PDF, it may render |
149 | | - "horizontally" and overflow in right margin. |
150 | | - Patch by Jean-François B. |
151 | | -* #8828: LaTeX: adding a footnote to a longtable cell causes table to occupy |
152 | | - full width. |
153 | | - Patch by Jean-François B. |
154 | | -* #11498: LaTeX: Table in cell fails to build if it has many rows. |
155 | | - Patch by Jean-François B. |
156 | | -* #11515: LaTeX: longtable does not allow nested table. |
157 | | - Patch by Jean-François B. |
158 | | -* #11973: LaTeX: links in table captions do not work in PDF. |
159 | | - Patch by Jean-François B. |
160 | | -* #12821: LaTeX: URLs/links in section titles should render in PDF. |
161 | | - Patch by Jean-François B. |
162 | | -* #13369: Correctly parse and cross-reference unpacked type annotations. |
163 | | - Patch by Alicia Garcia-Raboso. |
164 | | -* #13528: Add tilde ``~`` prefix support for :rst:role:`py:deco`. |
165 | | - Patch by Shengyu Zhang and Adam Turner. |
166 | | -* #13597: LaTeX: table nested in a merged cell leads to invalid LaTeX mark-up |
167 | | - and PDF cannot be built. |
168 | | - Patch by Jean-François B. |
169 | | -* #13619: LaTeX: possible duplicated footnotes in PDF from object signatures |
170 | | - (typically if :confval:`latex_show_urls` ``= 'footnote'``). |
171 | | - Patch by Jean-François B. |
172 | | -* #13635: LaTeX: if a cell contains a table, row coloring is turned off for |
173 | | - the next table cells. |
174 | | - Patch by Jean-François B. |
175 | | -* #13685: gettext: Correctly ignore trailing backslashes. |
176 | | - Patch by Bénédikt Tran. |
177 | | -* #13712: intersphinx: Don't add "v" prefix to non-numeric versions. |
178 | | - Patch by Szymon Karpinski. |
179 | | -* #13688: HTML builder: Replace ``<em class="property">`` with |
180 | | - ``<span class="property">`` for attribute type annotations |
181 | | - to improve `semantic HTML structure |
182 | | - <https://html.spec.whatwg.org/multipage/text-level-semantics.html>`__. |
183 | | - Patch by Mark Ostroth. |
184 | | -* #13812 (discussion): LaTeX: long :rst:dir:`confval` value does not wrap at |
185 | | - spaces in PDF. |
186 | | - Patch by Jean-François B. |
187 | | -* #10785: Autodoc: Allow type aliases defined in the project to be properly |
188 | | - cross-referenced when used as type annotations. This makes it possible |
189 | | - for objects documented as ``:py:data:`` to be hyperlinked in function signatures. |
190 | | -* #13858: doctest: doctest blocks are now correctly added to a group defined by the |
191 | | - configuration variable ``doctest_test_doctest_blocks``. |
192 | | -* #13885: Coverage builder: Fix TypeError when warning about missing modules. |
193 | | - Patch by Damien Ayers. |
194 | | -* #13929: Duplicate equation label warnings now have a new warning |
195 | | - sub-type, ``ref.equation``. |
196 | | - Patch by Jared Dillard. |
197 | | -* #13935: autoclass: parent class members no longer considered |
198 | | - directly defined in certain cases, depending on autodoc processing |
199 | | - order. |
200 | | - Patch by Jeremy Maitin-Shepard. |
201 | | -* #13939: LaTeX: page break can separate admonition title from contents. |
202 | | - Patch by Jean-François B. |
203 | | -* #14004: Fix :confval:`autodoc_type_aliases` when they appear in PEP 604 |
204 | | - union syntax (``Alias | Type``). |
205 | | - Patch by Tamika Nomara. |
206 | | -* #14059: LaTeX: Footnotes cause pdflatex error with French language |
207 | | - (since late June 2025 upstream change to LaTeX ``babel-french``). |
208 | | - Patch by Jean-François B. |
209 | | -* #13916: HTML Search: do not clear text fragments from the URL on page load. |
210 | | - Patch by Harmen Stoppels. |
211 | | -* #13944: autodoc: show traceback during import in human readable representation. |
212 | | - Patch by Florian Best. |
213 | | -* #14006: Support images with data URIs that aren't base64-encoded. |
214 | | - Patch by Shengyu Zhang and Adam Turner. |
215 | | -* #12797: Fix ``Some type variables (...) are not listed in Generic[...]`` |
216 | | - TypeError when inheriting from both Generic and autodoc mocked class. |
217 | | - Patch by Ikor Jefocur and Daniel Sperber. |
218 | | -* #13945: autodoc: Fix handling of undefined names in annotations by using |
219 | | - the ``FORWARDREF`` :mod:`annotationlib` format. |
220 | | - Patch by Rui Pinheiro and Adam Turner. |
221 | | -* #14067: EPUB: unify path separators in manifest items to forward slashes; |
222 | | - resolve duplicates in the manifest on Windows. |
223 | | - Patch by Akihiro Takizawa. |
224 | | -* #13741: text builder: fix an infinite loop when processing CSV tables. |
225 | | - Patch by Bénédikt Tran. |
226 | | -* #13217: Remove extra parentheses from :rst:dir:`js:function` arguments and errors. |
227 | | - Patch by Shengyu Zhang. |
228 | | - |
229 | | - |
230 | 21 | Testing |
231 | 22 | ------- |
0 commit comments