-
-
Notifications
You must be signed in to change notification settings - Fork 491
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Meta-ticket: Sage docbuild #20080
Comments
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
comment:6
I would like to mention |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
comment:10
I'm open to PRs, as this seems pretty reasonable - docbuild shouldn't depend on sagenb, though we would still want the doc to work from within it. |
This comment has been minimized.
This comment has been minimized.
comment:12
Could someone clarify what
means? I can't find any reference to a Sphinx multidoc plugin outside of Sage. |
This comment has been minimized.
This comment has been minimized.
comment:13
Fixed :-) |
This comment has been minimized.
This comment has been minimized.
comment:15
I'm having "fun" finally taking the time to fully understand the doc builds system... :) |
comment:16
it would be a good idea to revise this, or perhaps just start from scratch. It's not clear to me whether most/all of this can be achieved with vanilla Sphinx 3 or 4. |
comment:17
Related: #30010 - Split sage_setup.docbuild out to a separate distribution (distutils package) |
comment:18
One of sphinx devs, |
comment:19
Cool! |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
comment:23
Setting new milestone based on a cursory review of ticket status, priority, and last modification date. |
Docbuild tickets:
sage --docbuild
: Add options to list all documentsoptparse
toargparse
make
sage-doc-html
,sage-doc-pdf
sage -docbuild
: error building docs of single file with relative importsSphinx tickets:
sphinx.util.inspect.Signature
notsphinx.ext.autodoc.inspector.formatargspec
sphinx.ext.extlinks
to add Sphinx roles for links to external package docssphinx_autodoc_typehints
See also:
Overview of Sphinx custom code in Sage's documentation build system
The goal of this ticket is to write an overview of the various bits and pieces of custom Sphinx code in Sage, with the long term goal to see which pieces could be:
Here is a list of files with their relative roles:
src/sage/docs
__init__.py
: empty fileconf.py
: standard Sphinx configuration file.src/sage_docbuild (was
src/sage_setup/docbuild
)__init__.py
: top-level docbuilder, contains classes for the various documents (e.g. reference manual).__main__.py
: stub entry point forsage --docbuild
, callsmain()
from__init__.py
build_options.py
: Parse the option for building.sphinxbuild.py
: Sage's version of the sphinx-build scriptmainly deals with logging and error reporting.
src/sage_docbuild/ext (was
src/sage_setup/docbuild/ext
)inventory_builder.py
:A customized HTML builder which only generates intersphinx "object.inv"
inventory files and pickle files. The documentation files are not written.
This is supposed to be used with multidocs below.
multidocs.py
:The goal of this extension is to manage a multi documentation in Sphinx.
To be able to compile Sage's huge documentation in parallel, the
documentation is cut into a bunch of independent documentations called
"subdocs", which are compiled separately. There is a master document which
points to all the subdocs. The intersphinx extension ensures that the
cross-link between the subdocs are correctly resolved. However some work
is needed to build a global index. This is the goal of multidocs.
More precisely this extension ensures the correct merging of
sage_autodoc.py
This is a patched version of sphinx.ext.autodoc, which started to diverge
before 2011. As far as I (Florent) understand, the role here is to
This file probably need to be completely reworked since Sphinx seems to
have now various plugin and Mixin.
src/sage/misc
sphinxify.py
script which calls Sphinx to format a single docstring for help from the
command line or the notebook. Has its own configuration.
CC: @egourgoulhon @jhpalmieri @dimpase @kwankyu @haraldschilly
Component: documentation
Issue created by migration from https://trac.sagemath.org/ticket/20080
The text was updated successfully, but these errors were encountered: