Sphinx 5.0

Release 5.0.2 (veröffentlicht am 17. Jun 2022)

Hinzugefügte Funktionen

  • #10523: HTML-Theme: Die Docutils-Versionsinformation als Template-Variable docutils_version_info bereitstellen. Patch von Adam Turner.

Behobene Fehler

  • #10538: autodoc: Geerbte Klassenattribute mit Docstring werden auch dann dokumentiert, wenn autodoc_inherit_docstring deaktiviert ist

  • #10509: autosummary: autosummary schlägt bei einer Shared Library fehl

  • #10497: py-Domäne: Fehler beim Auflösen von Strings in Literal. Patch von Adam Turner.

  • #10523: HTML-Theme: Doppelte Klammern bei Zitationsreferenzen in Docutils 0.18+ korrigiert. Patch von Adam Turner.

  • #10534: Fehlendes CSS für nav.contents in Docutils 0.18+. Patch von Adam Turner.

Release 5.0.1 (veröffentlicht am 03. Jun 2022)

Behobene Fehler

  • #10498: gettext: TypeError wird beim Sortieren von Warnmeldungen ausgelöst, wenn ein Knoten keine Zeilennummer hat. Patch von Adam Turner.

  • #10493: HTML-Theme: topic-Direktive wird mit Docutils 0.18 falsch gerendert. Patch von Adam Turner.

  • #10495: IndexError wird für eine kbd-Rolle mit einem Trennzeichen ausgelöst. Patch von Adam Turner.

Release 5.0.0 (veröffentlicht am 30. Mai 2022)

Abhängigkeiten

5.0.0 b1

  • #10164: Unterstützung für Docutils 0.18. Patch von Adam Turner.

Inkompatible Änderungen

5.0.0 b1

  • #10031: autosummary: sphinx.ext.autosummary.import_by_name() löst nun ImportExceptionGroup anstelle von ImportError aus, wenn das Zielobjekt nicht importiert werden konnte. Behandeln Sie die Ausnahme, falls Ihre Erweiterung die Funktion zum Importieren von Python-Objekten verwendet. Als Workaround können Sie das Verhalten bis v7.0 über das Schlüsselwortargument grouped_exception=False deaktivieren.

  • #9962: texinfo: Das Anpassen von Stilen für hervorgehobenen Text über den Befehl @definfoenclose wurde nicht unterstützt, da der Befehl seit texinfo 6.8 als veraltet galt

  • #2068: intersphinx_disabled_reftypes hat seinen Standardwert von einer leeren Liste auf ['std:doc'] geändert, um zu überraschende stille Intersphinx-Auflösungen zu vermeiden. Zur Migration: Fügen Sie entweder einen expliziten Inventarnamen zu den Referenzen hinzu, die Intersphinx auflösen soll, oder setzen Sie den Wert dieser Konfigurationsvariable explizit auf eine leere Liste.

  • #10197: HTML-Theme: Reduzierung der body_min_width-Einstellung im Basisthema auf 360px

  • #9999: LaTeX: Trennung von Begriffen von ihren Definitionen durch einen Zeilenumbruch (Referenzen: #9985)

  • #10062: Ändern der Standardsprache auf 'en', wenn in conf.py keine Sprache festgelegt ist

5.0.0 final

  • #10474: language akzeptiert None nicht als Wert. Der Standardwert von language ist nun 'en'. Patch von Adam Turner und Takeshi KOMIYA.

Veraltet

5.0.0 b1

  • #10028: jQuery und underscore.js werden ab Sphinx 6.0 nicht mehr automatisch in Themes eingefügt. Wenn Sie ein Theme oder eine Erweiterung entwickeln, die die globalen Objekte jQuery, $ oder $u verwendet, müssen Sie Ihr JavaScript aktualisieren oder die untenstehende Abhilfemaßnahme verwenden.

    Um jQuery und underscore.js wieder hinzuzufügen, müssen Sie jquery.js und underscore.js aus dem Sphinx-Repository in Ihr static-Verzeichnis kopieren und das Folgende zu Ihrer layout.html hinzufügen

    {%- block scripts %}
        <script src="{{ pathto('_static/jquery.js', resource=True) }}"></script>
        <script src="{{ pathto('_static/underscore.js', resource=True) }}"></script>
        {{ super() }}
    {%- endblock %}
    

    Patch von Adam Turner.

  • Setuptools-Integration. Der Unterbefehl build_sphinx für setup.py ist als veraltet gekennzeichnet, um der Politik des Setuptools-Teams zu folgen.

  • Das Argument locale von sphinx.util.i18n:babel_format_date() wird erforderlich

  • Das Argument language von sphinx.util.i18n:format_date() wird erforderlich

  • 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

Hinzugefügte Funktionen

5.0.0 b1

  • #9075: autodoc: Der Standardwert von autodoc_typehints_format wird auf 'smart' geändert. Dies unterdrückt die führenden Modulnamen von Typ-Hints (z. B. io.StringIO -> StringIO).

  • #8417: autodoc: Die Option :inherited-members: kann jetzt mehrere Klassen aufnehmen. Sie ermöglicht es, geerbte Member mehrerer Klassen in einem Modul auf einmal zu unterdrücken, indem die Option an die automodule-Direktive übergeben wird

  • #9792: autodoc: Neue Option autodoc_typehints_description_target hinzugefügt, um undokumentierte Rückgabewerte, aber keine undokumentierten Parameter einzuschließen.

  • #10285: autodoc: singledispatch-Funktionen mit Typ-Hints werden nicht dokumentiert

  • autodoc: autodoc_typehints_format wird nun auch auf Attribute, Daten, Properties und Typvariablen-Grenzen angewendet.

  • #10258: autosummary: Erkennt ein dokumentiertes Attribut eines Moduls als nicht importiert

  • #10028: Interne Verwendungen von JavaScript-Frameworks (jQuery und underscore.js) entfernt und doctools.js und searchtools.js auf EMCAScript 2018 modernisiert. Patch von Adam Turner.

  • #10302: C++, Unterstützung für bedingte Ausdrücke (?:) hinzugefügt.

  • #5157, #10251: Inline-Code kann über die role-Direktive hervorgehoben werden

  • #10337: Beschleunigung von sphinx-build durch Caching des Publisher-Objekts während des Builds. Patch von Adam Turner.

Behobene Fehler

5.0.0 b1

  • #10200: apidoc: Duplizierte Submodule werden für Module angezeigt, die sowohl .pyx als auch .so-Dateien haben. Patch von Adam Turner und Takeshi KOMIYA.

  • #10279: autodoc: Standardwerte für nur-Schlüsselwort-Argumente in überladenen Funktionen werden als String-Literal gerendert

  • #10280: autodoc: autodoc_docstring_signature generiert unerwartet Rückgabewert-Typ-Hints für Konstruktoren, wenn der Docstring mehrere Signaturen hat

  • #10266: autodoc: autodoc_preserve_defaults funktioniert nicht für eine Mischung aus nur-Schlüsselwort-Argumenten mit/ohne Standardwerte

  • #10310: autodoc: Klassenmethoden werden nicht dokumentiert, wenn sie mit einer Mock-Funktion dekoriert sind

  • #10305: autodoc: Fehler beim korrekten Extrahieren optionaler Forward-Referenced-Typ-Hints über autodoc_type_aliases

  • #10421: autodoc: autodoc_preserve_defaults funktioniert nicht für Klassenmethoden

  • #10214: html: Ungültiger Sprach-Tag wurde generiert, wenn language einen Ländercode enthält (z. B. zh_CN)

  • #9974: html: jQuery-Version von 3.5.1 auf 3.6.0 aktualisiert

  • #10236: html-Suche: Objekte werden im Suchergebnis dupliziert

  • #9962: texinfo: Veraltet-Meldung für den Befehl @definfoenclose beim Erstellen von Texinfo-Dokumenten

  • #10000: LaTeX: Glossarbegriffe mit gemeinsamer Definition werden mit zu viel vertikalem Leerraum gerendert

  • #10188: LaTeX: Abwechselnd mehrfach referenzierte Fußnoten erzeugen ein ? in der PDF-Ausgabe

  • #10363: LaTeX: Erstellen der Regel für Titelseiten von 'howto', die \linewidth verwendet, um die Kompatibilität mit der Verwendung einer twocolumn-Klassenoption zu gewährleisten

  • #10318: Die Option :prepend: der literalinclude-Direktive funktioniert nicht mit der Option :dedent:

5.0.0 final

  • #9575: autodoc: Die Annotation des Rückgabewerts sollte nicht angezeigt werden, wenn autodoc_typehints="description" ist

  • #9648: autodoc: *args und **kwargs Einträge werden dupliziert, wenn autodoc_typehints="description" ist

  • #8180: autodoc: Docstring-Metadaten werden für Attribute ignoriert

  • #10443: epub: EPUB-Builder kann den Mimetype von .webp-Dateien nicht erkennen

  • #10104: gettext: Duplizierte Speicherorte werden angezeigt, wenn eine Drittanbietererweiterung keine korrekten Informationen bereitstellt

  • #10456: py-Domäne: :meta:-Felder werden angezeigt, wenn der Docstring zwei oder mehr Meta-Felder enthält

  • #9096: sphinx-build: Der Wert des Fortschrittsbalkens für parallele Builds ist falsch

  • #10110: sphinx-build: Der Exit-Code wird nicht geändert, wenn beim Builder-Finished-Event ein Fehler auftritt