-
-
Notifications
You must be signed in to change notification settings - Fork 487
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
Build the reference manual incrementally #6495
Comments
Experimental. |
Author: Mitesh Patel |
comment:1
Attachment: trac_6495_ref_pdf_pieces.patch.gz The attached patch is experimental. Notes:
|
comment:2
On cross-PDF document links: It seems that Sphinx does not produce these. This may OK, since |
comment:3
On the
in Sphinx's
in place of
in |
Attachment: trac_6495-reference_breakup.patch.gz Another approach. Depends on #7549. Still experimental. This patch only. sage repo. |
comment:4
The new patch may make it possible to build and update reference manual chapters semi-independently. I think we can use the intersphinx extension to fix the cross-chapter references. But we'll need to build the manual twice, a la LaTeX. To build just a chapter, try, e.g.,
Still to do:
|
comment:5
Another important item:
|
comment:6
If this approach is viable, I suggest leaving many (most?) of the "To Do" items for other tickets. |
comment:7
While I'm here:
|
This comment has been minimized.
This comment has been minimized.
PDF fixes. This patch only. sage repo. |
comment:9
Attachment: trac_6495-reference_breakup_v2.patch.gz Sphinx caches "foreign" object inventories in a document's |
comment:10
Replying to @qed777:
Another sphinx-dev query. |
comment:12
Here's a new patch, rebased to Sage 4.7.1.alpha4. This implements parallel building, and it provides a great speedup, at least on systems with lots of processors. For example, on sage.math, the time to execute Remaining issues:
|
comment:13
In an ideal world sphinx would be multithreaded, but we probably shouldn't wait for that ;-) The remaining issues about disk space, bibliographic references, and needing two runs seem to be unavoidable. Building parallel gets more and more important, so I think the benefits outweigh the disadvantages. I tried the patch on Sage-4.7.1.alpha4 without any other patches applied:
|
Reviewer: Volker Braun |
Changed author from Mitesh Patel to Mitesh Patel, John Palmieri |
Dependencies: 11251 |
comment:14
Replying to @vbraun:
This was a mistake in the previous version: it was supposed to create a link from
Good point. This raises another problem: intersphinx doesn't easily pass todo lists between different documents, so I don't know how to get a master todo list for the Sage library. Right now, I've put the todolist for each module after its table of contents. I think combinat is the only module with any actual to do elements.
Done:
I've tried to do this when doing Other issues:
|
comment:258
I've replaced the bare |
Merged: sage-5.8.beta0 |
comment:260
Hurrah !!! |
comment:261
Could I make one suggestion (perhaps for a later ticket)? Compiling the docs does not say any longer where to look on one's machine for the compiled docs. This was a very useful feature beforehand! Thanks for your work on this! Anne |
comment:262
Replying to @anneschilling:
See #14148. |
comment:263
See #14156 for a blocker follow-up. |
comment:264
See #14199 for another follow-up. |
comment:265
Can somebody here please review blocker ticket #14199? |
comment:266
Another followup #14245: cloning is broken. |
comment:267
Followup #14626: docbuilder hangs if latex fails. |
Building the Sage reference manual can take a significant amount of time. Decreasing this time could speed up Sage development.
The patch is large, but most of it consists of moving files from one location to another, as described below. A summary of the changes:
Changes in
doc/en/reference
— this is where the size of the patch comes from, although the changes are pretty simple:algebras
and movealgebras.rst
toalgebras/index.rst
. Also create a filealgebras/conf.py
for the build configuration. All of these new conf.py files are identical. Deal with the contents of the directoryreference/media
similarly, moving the pictures to the appropriate subdirectory.reference/index.rst
to point to these new files.reference/index.rst
so it is arranged, at least somewhat, by topic.conf.py
— see below. Also add the new subdirectories to the listexclude_trees
.conf_sub.py
, configuration for the pieces of the documentation (as opposed to the mainconf.py
, which is for buildingreference/index.rst
). This file is imported by each of the filesSUBDIRECTORY/conf.py
.Changes to
doc/common/builder.py
:Other changes:
doc/common/conf.py
: add the intersphinx extension to the build process.doc/common/themes/sage/layout.html
: fix a bug where clicking the Sage logo in the upper left corner of the docs wouldn't take you to the right place, at least in the local documentation.doc/common/themes/sageref/
: add a new theme for the pieces of the reference manual. This is almost identical to the "sage" theme, except for a little tinkering to the links along the top and bottom lines.The html docs for Sage 5.4.rc2,
html without MathJax,
html with MathJax, and
pdf,
built after applying the patches here.
Apply:
attachment: trac_6495-part1-moving-files-link.patch (or run attachment: trac_6495-script-jhp-link.sh)
attachment: trac_6495-part2-everything-else.patch
attachment: trac_6495-part3-the-remaining-vs-5.7.beta4.patch
attachment: trac_6495-part4-interrupts.patch
attachment: trac-6495_silence_warning-fh.v2.patch.
attachment: trac_6495-redirect_html.2.patch.
attachment: trac_6495-docstrings.patch.
attachment: trac_6495_separate_inventory.patch
attachment: trac_6495_fixes.patch
attachment: trac_6495-filtering.patch
new Sphinx spkg: http://sage.math.washington.edu/home/palmieri/SPKG/sphinx-1.1.2.p2.spkg
Before building the docs, you should delete the documentation output directory:
rm -rf SAGE_ROOT/devel/sage/doc/output
. To test this, you should runsage --docbuild all html
andsage --docbuild all pdf
. (Note: just runningsage --docbuild reference html
will probably produce many warnings. If you run it a second time, the warnings should go away.)Depends on #13064
Depends on #8327
Depends on #13891
Dependencies: 5.7.beta2 + #13064, #8327, #13891
CC: @jhpalmieri @nexttime @nilesjohnson @hivert @mguaypaq @mwhansen
Component: documentation
Keywords: days38
Author: Mitesh Patel, John Palmieri, Florent Hivert
Reviewer: Volker Braun, Florent Hivert
Merged: sage-5.8.beta0
Issue created by migration from https://trac.sagemath.org/ticket/6495
The text was updated successfully, but these errors were encountered: