Sphinx 4.3

Release 4.3.2 (veröffentlicht am 19. Dez. 2021)

Behobene Fehler

  • #9917: C und C++, grundlegende Typen unabhängig von der Reihenfolge der einfachen Typenspezifizierer parsen.

Release 4.3.1 (veröffentlicht am 28. Nov. 2021)

Hinzugefügte Funktionen

  • #9864: mathjax: Unterstützt das Ändern der Lademethode von MathJax auf „defer“ über mathjax_options

Behobene Fehler

  • #9838: autodoc: AttributeError wird beim Erstellen der Dokumentation für Funktionen ausgelöst, die mit functools.lru_cache dekoriert sind

  • #9879: autodoc: AttributeError wird beim Erstellen der Dokumentation für ein Objekt ausgelöst, das ein ungültiges __doc__-Attribut hat

  • #9844: autodoc: Fehler bei der Verarbeitung einer mit functools.partial umschlossenen Funktion, wenn autodoc_preserve_defaults aktiviert ist

  • #9872: html: Namenskollision zwischen autodoc-Signaturen und Docutils 0.17 in der Klassennamensraum

  • #9868: imgmath: Absturz, wenn der dvisvgm-Befehl die Gleichung nicht konvertieren konnte

  • #9864: mathjax: Fehler beim Rendern von Gleichungen über MathJax v2. Die Lademethode von MathJax ist wieder die „async“-Methode

Release 4.3.0 (veröffentlicht am 11. Nov. 2021)

Abhängigkeiten

  • Unterstützung für Python 3.10

Inkompatible Änderungen

  • #9649: searchindex.js: die eingebetteten Daten haben ihr Format geändert, um Objekte mit demselben Namen in verschiedenen Domänen zu ermöglichen.

  • #9672: Das Rendering von Python-Domänen-Deklarationen wird mit mehr Docutils-Knoten implementiert, um eine bessere CSS-Formatierung zu ermöglichen. Dies kann vorhandene Formatierungen brechen.

  • #9672: Die Signatur von domains.python.PyObject.get_signature_prefix wurde geändert, um eine Liste von Knoten anstelle eines einfachen Strings zurückzugeben.

  • #9695: domains.js.JSObject.display_prefix wurde in eine Methode get_display_prefix geändert, die jetzt eine Liste von Knoten anstelle eines einfachen Strings zurückgibt.

  • #9695: Das Rendering von Javascript-Domänen-Deklarationen wird mit mehr Docutils-Knoten implementiert, um eine bessere CSS-Formatierung zu ermöglichen. Dies kann vorhandene Formatierungen brechen.

  • #9450: mathjax: MathJax über die „defer“-Strategie laden

Veraltet

  • sphinx.ext.autodoc.AttributeDocumenter._datadescriptor

  • sphinx.writers.html.HTMLTranslator._fieldlist_row_index

  • sphinx.writers.html.HTMLTranslator._table_row_index

  • sphinx.writers.html5.HTML5Translator._fieldlist_row_index

  • sphinx.writers.html5.HTML5Translator._table_row_index

Hinzugefügte Funktionen

  • #9639: autodoc: Unterstützung für asynchrone Generatorfunktionen

  • #9664: autodoc: autodoc-process-bases unterstützt das Einfügen von reST-Snippets als Basisklasse

  • #9691: C, neues Info-Feld retval für die Direktive c:function und c:macro hinzugefügt.

  • C++, neues Info-Feld retval für die Direktive cpp:function hinzugefügt.

  • #9618: i18n: gettext_allow_fuzzy_translations hinzugefügt, um „fuzzy“ Nachrichten für die Übersetzung zuzulassen

  • #9672: Mehr CSS-Klassen für Python-Domänenbeschreibungen

  • #9695: Mehr CSS-Klassen für Javascript-Domänenbeschreibungen

  • #9683: Entfernung der add_stylesheet() API rückgängig gemacht. Sie wird bis zur Sphinx 6.0-Version beibehalten

  • #2068, intersphinx_disabled_reftypes hinzugefügt, um die Auflösung von Querverweisen durch Intersphinx zu deaktivieren, die keine explizite Inventarspezifikation haben. Spezifische Arten von Querverweisen können deaktiviert werden, z. B. std:doc oder alle Querverweise in einer bestimmten Domäne, z. B. std:*.

  • #9623: Ermöglicht das Unterdrücken von Warnungen wie „toctree enthält Verweis auf ausgeschlossenes Dokument“ mit suppress_warnings

Behobene Fehler

  • #9630: autodoc: Fehler beim Erstellen von Querverweisen, wenn primary_domain nicht ‚py‘ ist

  • #9644: autodoc: Absturz beim Abrufen von Quellinformationen von problematischen Objekten

  • #9655: autodoc: Mock-Objekte mit Doc-Kommentaren werden unerwartet gewarnt

  • #9651: autodoc: Rückgabetyp-Feld wird nicht generiert, auch wenn autodoc_typehints_description_target auf „documented“ gesetzt ist und die Info-Feldliste ein Feld :returns: enthält

  • #9657: autodoc: Basisklasse für eine Unterklasse eines Mock-Objekts ist falsch

  • #9607: autodoc: Falsche Basisklassenerkennung für Unterklassen der generischen Klasse

  • #9755: autodoc: Speicheradressen werden für Aliase angezeigt

  • #9752: autodoc: Fehler beim Erkennen von Typannotationen für Slots-Attribute

  • #9756: autodoc: Absturz, wenn eine Klassenmethode kein __func__-Attribut hat

  • #9757: autodoc: autodoc_inherit_docstrings wirkt sich nicht auf überschriebene Klassenmethoden aus

  • #9781: autodoc: autodoc_preserve_defaults unterstützt keine hexadezimalen Zahlen

  • #9630: autosummary: Fehler beim Erstellen der Zusammenfassungstabelle, wenn primary_domain nicht ‚py‘ ist

  • #9670: html: Download von Dateien mit Sonderzeichen korrigiert

  • #9710: html: Falsche Stile für gerade/ungerade Zeilen in verschachtelten Tabellen

  • #9763: html: Parameternamen und deren Typannotation sind in HTML nicht getrennt

  • #9649: HTML-Suche: Wenn Objekte denselben Namen, aber in verschiedenen Domänen haben, werden alle als Ergebnis zurückgegeben und nicht nur eines.

  • #7634: intersphinx: Referenzen auf Dateien in Unterverzeichnissen sind kaputt

  • #9737: LaTeX: hlist wird als Liste mit „aggedright“-Text gerendert

  • #9678: linkcheck: Dateiendung wurde in Warnungen zweimal angezeigt

  • #9697: py-Domäne: Ein Indexeintrag mit Klammern wurde für die Direktive py:method mit der Option :property: registriert

  • #9775: py-Domäne: Literal-Typ-Hinweis wurde in einen Querverweis konvertiert, wenn autodoc_typehints='description'

  • #9708: needs_extension hat die Überprüfung von zweistelligen Versionen falsch durchgeführt

  • #9688: Korrigiert, dass Sphinx-gepatchtes code die Option :class: nicht erkennt

  • #9733: Korrektur für das Löschen von Warnungen durch den Logging-Handler mitten im Build-Prozess der Dokumentation

  • #9656: Warnungen ohne Untertyp wurden fälschlicherweise unterdrückt

  • Intersphinx: Bei nicht aufgelösten Verweisen mit einem expliziten Inventar, z. B. proj:myFunc, bleibt das Inventarpräfix im nicht aufgelösten Text erhalten.