Autos podsumowanie Sphinx „toctree zawiera odniesienia do nieistniejących dokumentów” ostrzeżenia

Próbuję automatycznie utworzyć dokumentację api dla dużego kodu Pythona za pomocą Sphinx.

Próbowałem użyć build_modules.py i sphinx-apidoc. Z każdym z nich mogę uzyskać pierwsze dokumenty pomyślnie utworzone w moim katalogu wyjściowym dla pakietów i modułów najwyższego poziomu.

Jednak gdy buduję za pomocą

make html

daje tysiące błędów tego typu:

<autosummary>:None: WARNING: toctree contains reference to nonexisting document 'rstDocs/src.Example1.class1.method1'

dla każdej pojedynczej klasy i metody w bazie kodu. Z pewnymi eksperymentami myślę, że odkryłem, że dyrektywy autosummary / autoclass tworzą toctrees, które oczekują, że będą pierwsze pliki dla każdej klasy i metody.

Poza ostrzeżeniami dokumentacja wydaje się działać dobrze, ale chciałbym się ich pozbyć i myślę, że mogłem coś źle skonfigurować.

Próbowałem teżnipype / tools do tego samego efektu.

zmodyfikowałemapigen.py ibuild_modref_templates.py aby utworzyć pierwsze odgałęzienia dla każdego z tych „brakujących” dokumentów, odpowiednio z autoclass / autofunction / automethods. Jednak budowa trwa dość długo (10 minut) i ostatecznie ulega awarii z powodu błędów pamięci w ostatnim kroku kompilacji.

Oto przykładowy pierwszy plik modułu, który tworzy wszystkie ostrzeżenia:

src Package
===========

:mod:`src` Package
------------------

.. automodule:: src.__init__
    :members:
    :undoc-members:
    :show-inheritance:

:mod:`Example1` Module
------------------------------------

.. automodule:: src.Example1
    :members:
    :undoc-members:
    :show-inheritance:

:mod:`Example2` Module
------------------

.. automodule:: src.Example2
    :members:
    :undoc-members:
    :show-inheritance:

Dziękujemy za wszelkie porady, jak rozwiązać te ostrzeżenia! Chciałbym trzymać się z daleka od wszelkich rozwiązań, które wymagają modyfikacji plików pakietu sfinksa.

questionAnswers(2)

yourAnswerToTheQuestion