Änderungsprotokoll

Release 9.0.1 (in Entwicklung)

Behobene Fehler

Release 9.0.0 (veröffentlicht am 30. Nov. 2025)

Abhängigkeiten

  • #13786: Unterstützung für Docutils 0.22. Patch von Adam Turner.

Inkompatible Änderungen

  • #13639: SphinxComponentRegistry.create_source_parser() hat keinen app-Parameter mehr, sondern nimmt stattdessen config und env entgegen. Patch von Adam Turner.

  • #13679: Nicht dekodierbare Zeichen in Quelldateien lösen jetzt einen Fehler aus. Solche Bytes wurden seit Sphinx 2.0 durch „?“ ersetzt, zusammen mit der Protokollierung einer Warnung. Patch von Adam Turner.

  • #13751, #14089: sphinx.ext.autodoc wurde grundlegend überarbeitet. Es kann zu einigen inkompatiblen Änderungen in Grenzbereichen kommen, insbesondere wenn Erweiterungen mit den Interna von autodoc interagieren. Die Option autodoc_use_legacy_class_based wurde hinzugefügt, um die Legacy-Implementierung (vor 9.0) von autodoc zu verwenden. Patches von Adam Turner.

  • #13355: Escapete Titelinhalte nicht in den Suchindex aufnehmen. Patch von Will Lachance.

Veraltet

  • 13627: Verbleibende öffentliche .app-Attribute, einschließlich builder.app, env.app, events.app und SphinxTransform.app, werden als veraltet markiert. Patch von Adam Turner.

  • #13637: Die Methode set_application() von Parser-Objekten wird als veraltet markiert. Patch von Adam Turner.

  • #13644: Die Attribute Parser.config und env werden als veraltet markiert. Patch von Adam Turner.

  • #13665: Die Unterstützung für Quellkodierungen, die nicht UTF-8 sind, wird als veraltet markiert und soll in Sphinx 10 entfernt werden. Patch von Adam Turner.

  • #13682: Das Modul sphinx.io wird als veraltet markiert. Sphinx verwendet die Klassen von sphinx.io nicht mehr und hat sie durch Standard-Python-I/O ersetzt. Das gesamte Modul sphinx.io wird in Sphinx 10 entfernt. Patch von Adam Turner.

  • #13631: sphinx.environment.adapters.toctree.global_toctree_for_doc() und sphinx.environment.BuildEnvironment.get_and_resolve_doctree() erfordern ab Sphinx 11 ein Schlüsselwortargument tags. Es kann optional ab Sphinx 9 übergeben werden. Patch von Adam Turner.

Hinzugefügte Funktionen

  • #13332: Hinzufügen der Option doctest_fail_fast, um nach dem ersten fehlgeschlagenen Test zu beenden. Patch von Till Hoffmann.

  • #13439: linkcheck: Warnung bei jedem Redirect mit linkcheck_allowed_redirects = {} zulassen. Patch von Adam Turner und James Addison.

  • #13497: Unterstützung für C-Domänenobjekte im Inhaltsverzeichnis.

  • #13500: LaTeX: Unterstützung für das Paket fontawesome6 hinzugefügt. Patch von Jean-François B.

  • #13509: autodoc: Erkennung der Dekoratoren typing_extensions.overload und final(). Patch von Spencer Brown.

  • #13535: HTML-Suche: Aktualisierung auf die neueste Version von Snowball (v3.0.1). Patch von Adam Turner.

  • #13647: LaTeX: Erlauben von mehr Fällen von Tabellenverschachtelung. Patch von Jean-François B.

  • #13657: LaTeX: Unterstützung von CSS3-Längeneinheiten. Patch von Jean-François B.

  • #13682: intersphinx: Hinzufügen eines Dateisystem-basierten Caches für entfernte Inventare. Der Speicherort des Cache-Verzeichnisses darf nicht extern zugrunde gelegt werden, da er in zukünftigen Versionen ohne Vorankündigung oder Warnung geändert werden kann. Patch von Adam Turner.

  • #13805: LaTeX: Unterstützung für das Paket fontawesome7 hinzugefügt. Patch von Jean-François B.

  • #13508: autodoc: Anfängliche Unterstützung für PEP 695 Typ-Aliase. Patch von Martin Matouš, Jeremy Maitin-Shepard und Adam Turner.

  • #14023: Hinzufügen der neuen Option mathjax_config_path, um die MathJax-Konfiguration aus einer Datei zu laden. Patch von Randolf Scholz und Adam Turner.

  • #14046: linkcheck: Hinzufügen der Option linkcheck_case_insensitive_urls, um die Vergleiche von URLs ohne Berücksichtigung der Groß- und Kleinschreibung für bestimmte URL-Muster zu ermöglichen. Dies ist nützlich für Links zu Websites, die die Groß-/Kleinschreibung von URLs normalisieren (z. B. GitHub) oder case-insensitive Server. Patch von Fazeel Usmani und James Addison.

  • #14075: autosummary: Bereitstellung von mehr Kontext in den Stack-Traces von Importfehlern. Patch von Philipp A.

  • #13468: Hinzufügen von Konfigurationsoptionen zu sphinx.ext.duration. Patch von Erik Bedard und Adam Turner.

  • #14022: Verwendung von MathJax v4 standardmäßig in der Erweiterung sphinx.ext.mathjax (zuvor v3). Um eine ältere Version weiter zu verwenden, setzen Sie die Option mathjax_path. Hinzufügen der neuen Option mathjax4_config zur Konfiguration von MathJax v4. Beachten Sie, dass MathJax v3 größtenteils mit MathJax v4 kompatibel ist, sodass bestehende Einstellungen für mathjax3_config nicht geändert werden müssen. Patch von Matthias Geier.

  • #14029: intersphinx: Korrektur eines Fehlers bei der Interpolation von Formatzeichenfolgen. Patch von Matthieu de Cibeins.

  • #13894: Hinzufügen des Typs source_code_parser zu suppress_warnings zur Gruppierung von Problemen im Zusammenhang mit den C- und C++-Parsern. Patch von Valentin H.

Behobene Fehler

  • #13926: Mehrere py:type-Direktiven für denselben kanonischen Typ führen nicht mehr zu fehlerhaften doppelten Warnungen bei Objektbeschreibungen. Patch von Jeremy Maitin-Shepard.

  • #1327: LaTeX: Tabellen, die longtable verwenden, lösen einen Fehler aus, wenn tabularcolumns automatische Breiten (L, R, C oder J) angibt. Patch von Jean-François B.

  • #3447: LaTeX: Beim Zuweisen der longtable-Klasse zu einer Tabelle für PDF kann diese „horizontal“ gerendert werden und rechts aus dem Rand laufen. Patch von Jean-François B.

  • #8828: LaTeX: Das Hinzufügen einer Fußnote zu einer longtable-Zelle führt dazu, dass die Tabelle die volle Breite einnimmt. Patch von Jean-François B.

  • #11498: LaTeX: Tabelle in einer Zelle kann nicht erstellt werden, wenn sie viele Zeilen hat. Patch von Jean-François B.

  • #11515: LaTeX: longtable erlaubt keine verschachtelte Tabelle. Patch von Jean-François B.

  • #11973: LaTeX: Links in Tabellenüberschriften funktionieren nicht in PDF. Patch von Jean-François B.

  • #12821: LaTeX: URLs/Links in Abschnittsüberschriften sollten in PDF gerendert werden. Patch von Jean-François B.

  • #13369: Ausgepackte Typannotationen korrekt parsen und querverweisen. Patch von Alicia Garcia-Raboso.

  • #13528: Unterstützung des Tilde-Präfixes ~ für die py:deco. Patch von Shengyu Zhang und Adam Turner.

  • #13597: LaTeX: Eine in einer zusammengeführten Zelle verschachtelte Tabelle führt zu ungültigem LaTeX-Markup und die PDF-Erstellung schlägt fehl. Patch von Jean-François B.

  • #13619: LaTeX: Möglicherweise doppelte Fußnoten in PDF von Objektsignaturen (typischerweise, wenn latex_show_urls = 'footnote'). Patch von Jean-François B.

  • #13635: LaTeX: Wenn eine Zelle eine Tabelle enthält, wird die Zeilenfärbung für die nächsten Tabellenzellen ausgeschaltet. Patch von Jean-François B.

  • #13685: gettext: Nachgestellte Backslashes korrekt ignorieren. Patch von Bénédikt Tran.

  • #13712: intersphinx: Kein „v“-Präfix zu nicht-numerischen Versionen hinzufügen. Patch von Szymon Karpinski.

  • #13688: HTML-Builder: Ersetzen von <em class="property"> durch <span class="property"> für Attributtyp-Annotationen, um die semantische HTML-Struktur zu verbessern. Patch von Mark Ostroth.

  • #13812 (Diskussion): LaTeX: Langer confval-Wert wird in PDF nicht an Leerzeichen umgebrochen. Patch von Jean-François B.

  • #10785: Autodoc: Erlauben, dass Typ-Aliase, die im Projekt definiert sind, korrekt querverwiesen werden, wenn sie als Typannotationen verwendet werden. Dies ermöglicht es, dass Objekte, die als :py:data: dokumentiert sind, in Funktionssignaturen verlinkt werden können.

  • #13858: doctest: doctest-Blöcke werden nun korrekt einer durch die Konfigurationsvariable doctest_test_doctest_blocks definierten Gruppe hinzugefügt.

  • #13885: Coverage-Builder: Behebung eines TypeError beim Warnen vor fehlenden Modulen. Patch von Damien Ayers.

  • #13929: Warnungen vor doppelten Gleichungsbeschriftungen haben nun einen neuen Warnungstyp: ref.equation. Patch von Jared Dillard.

  • #13935: autoclass: Elternklassenmitglieder werden in bestimmten Fällen, abhängig von der Verarbeitungreihenfolge von autodoc, nicht mehr als direkt definiert betrachtet. Patch von Jeremy Maitin-Shepard.

  • #13939: LaTeX: Seitenumbruch kann den Titel der Admonition vom Inhalt trennen. Patch von Jean-François B.

  • #14004: Korrektur von autodoc_type_aliases, wenn sie in PEP 604 Union-Syntax (Alias | Type) vorkommen. Patch von Tamika Nomara.

  • #14059: LaTeX: Fußnoten verursachen einen pdflatex-Fehler bei französischer Sprache (seit einer Upstream-Änderung im späten Juni 2025 an babel-french von LaTeX). Patch von Jean-François B.

  • #13916: HTML-Suche: Textfragmente aus der URL beim Laden der Seite nicht mehr löschen. Patch von Harmen Stoppels.

  • #13944: autodoc: Traceback während des Imports in einer lesbaren Darstellung anzeigen. Patch von Florian Best.

  • #14006: Unterstützung für Bilder mit Data-URIs, die nicht Base64-kodiert sind. Patch von Shengyu Zhang und Adam Turner.

  • #12797: Behebung eines TypeError, wenn von sowohl Generic als auch einer von autodoc gemockten Klasse geerbt wird und dabei Typvariablen nicht in Generic[...] aufgeführt werden. Patch von Ikor Jefocur und Daniel Sperber.

  • #13945: autodoc: Korrigierte Handhabung von undefinierten Namen in Annotationen durch Verwendung des FORWARDREF annotationlib-Formats. Patch von Rui Pinheiro und Adam Turner.

  • #14067: EPUB: Pfadtrennzeichen in Manifestelementen vereinheitlichen auf Schrägstriche; Duplikate im Manifest unter Windows auflösen. Patch von Akihiro Takizawa.

  • #13741: Text-Builder: Behebung einer Endlosschleife bei der Verarbeitung von CSV-Tabellen. Patch von Bénédikt Tran.

  • #13217: Entfernen zusätzlicher Klammern aus den Argumenten und Fehlern von js:function. Patch von Shengyu Zhang.

Tests

Vorherige Versionen