cschwan / sage-on-gentoo

(Unofficial) Gentoo Overlay for Sage- and Sage-related ebuilds
84 stars 26 forks source link

9.1.rc1 fails to build the docs #582

Closed strogdon closed 4 years ago

strogdon commented 4 years ago

I'm assuming .rc1 is ready to be built. With sphinx-3.0.2-r1 and matplotlib-2.2.4 in Prefix I see

Building reference manual, first pass.

[reference] Exception occurred:
[reference]   File "/storage/strogdon/gentoo-rap/usr/lib/python3.7/site-packages/matplotlib/sphinxext/plot_directive.py", line 268, in setup
[reference]     app.add_directive('plot', plot_directive, True, (0, 2, False), **options)
[reference] TypeError: add_directive() got an unexpected keyword argument 'alt'
[reference] The full traceback has been saved in /storage/strogdon/gentoo-rap/var/tmp/portage/sci-mathematics/sage-9999/temp/sphinx-err-6c28jewc.log, if you want to report the issue to the developers.
[reference] Please also report this if it was a user error, so that a better error message can be provided next time.
[reference] A bug report can be filed in the tracker at <https://github.com/sphinx-doc/sphinx/issues>. Thanks!
Error building the documentation.
kiwifb commented 4 years ago

I have to bump the version of matplotlib required. 3.1.x is minimum to go with sphinx-3. We observed that in the sphinx update ticket.

kiwifb commented 4 years ago

Dependency update and keyword pushed to the overlay. Let me know if something else needs keywording.

strogdon commented 4 years ago

Looks good. The html docs build in Prefix. However, I'm unable to build the pdf docs. Here is the stopper

Latexmk: applying rule 'pdflatex'...
This is pdfTeX, Version 3.14159265-2.6-1.40.20 (TeX Live 2019 Gentoo Linux) (preloaded format=pdflatex)

kpathsea: Running mktexfmt pdflatex.fmt
/storage/strogdon/gentoo-rap/usr/bin/mktexfmt: kpsewhich -var-value=TEXMFROOT failed, aborting early.
BEGIN failed--compilation aborted at /storage/strogdon/gentoo-rap/usr/bin/mktexfmt line 25.
I can't find the format file `pdflatex.fmt'!
Latexmk: fls file doesn't appear to have been made.
Collected error summary (may duplicate other messages):
  pdflatex: Command for 'pdflatex' gave return code 1
      Refer to 'references.log' for details

I believe something is wrong with my texlive-2019 install.

kpsewhich -var-value=TEXMFROOT

should return

EPREFIX/usr/share

but I get an empty string. mktexfmt is pulled in by texlive-core-2019-r11. For some reason 2019-r10 will not build in Prefix, so I can't downgrade. A Gentoo build is in progress with 2019-r10 where I know

kpsewhich -var-value=TEXMFROOT

works properly.

kiwifb commented 4 years ago

OK I have a pdf generation error with texlive 2020. Difficult to recover the error from a parallel build but here are the identifiable bits so far

! TeX capacity exceeded, sorry [input stack size=5000].
!  ==> Fatal error occurred, no output PDF file produced!
Transcript written on plot3d.log.
Collected error summary (may duplicate other messages):
  pdflatex: Command for 'pdflatex' gave return code 1
      Refer to 'plot3d.log' for details
Latexmk: Errors, so I did not complete making targets
make: *** [Makefile:29: plot3d.pdf] Error 12
Error building the documentation.
Traceback (most recent call last):
  File "sage_setup/docbuild/__main__.py", line 2, in <module>
    main()
  File "/dev/shm/portage/sci-mathematics/sage-9999/work/sage-9999/src-python3_7/sage_setup/docbuild/__init__.py", line 1724, in main
    builder()
  File "/dev/shm/portage/sci-mathematics/sage-9999/work/sage-9999/src-python3_7/sage_setup/docbuild/__init__.py", line 332, in _wrapper
    getattr(get_builder(document), name)(*args, **kwds)
  File "/dev/shm/portage/sci-mathematics/sage-9999/work/sage-9999/src-python3_7/sage_setup/docbuild/__init__.py", line 552, in _wrapper
    self._build_everything_except_bibliography(lang, format, *args, **kwds)
  File "/dev/shm/portage/sci-mathematics/sage-9999/work/sage-9999/src-python3_7/sage_setup/docbuild/__init__.py", line 538, in _build_everything_except_bibliography
    build_many(build_ref_doc, non_references)
  File "/dev/shm/portage/sci-mathematics/sage-9999/work/sage-9999/src-python3_7/sage_setup/docbuild/__init__.py", line 280, in build_many
    _build_many(target, args, processes=NUM_THREADS)
  File "/dev/shm/portage/sci-mathematics/sage-9999/work/sage-9999/src-python3_7/sage_setup/docbuild/utils.py", line 283, in build_many
    raise worker_exc.original_exception
RuntimeError: failed to run $MAKE all-pdf in /dev/shm/portage/sci-mathematics/sage-9999/work/build_doc/latex/en/reference/plot3d

    Note: incremental documentation builds sometimes cause spurious
    error messages. To be certain that these are real errors, run
    "make doc-clean" first and try again.
strogdon commented 4 years ago

With texlive 2019 I have

!  ==> Fatal error occurred, no output PDF file produced!
Transcript written on manifolds.log.
 [546] [547] [548] [549] [550] [551] [552]Latexmk: Index file 'manifolds.idx' was written
 [553]
[554]

And from manifold.log


Writing index file manifolds.idx
(./manifolds.aux)
Runaway argument?
{sage/manifolds/differentiable/vectorframe
! File ended while scanning use of \@newl@bel.
<inserted text>
                \par
l.227 \begin{document}

?
! Emergency stop.
<inserted text>
                \par
l.227 \begin{document}

End of file on the terminal!

Here is how much of TeX's memory you used:
 14609 strings out of 494436
 266638 string characters out of 6173745
 312625 words of memory out of 5000000
 18132 multiletter control sequences out of 15000+600000
 4403 words of font info for 15 fonts, out of 8000000 for 9000
 37 hyphenation exceptions out of 8191
 37i,0n,45p,395b,140s stack positions out of 5000i,500n,10000p,200000b,80000s
!  ==> Fatal error occurred, no output PDF file produced!
kiwifb commented 4 years ago

My failure ends up being in combinat, from the log

[1528]

LaTeX Warning: Hyper reference `sage/combinat/tableau:sage.combinat.tableau.Row
StandardTableaux' on page 1529 undefined on input line 132175.

[1529]
! TeX capacity exceeded, sorry [input stack size=5000].
\font@name ->
             \TS1/ptm/m/n/10 
l.132260 ...ikipedia article Zolotarev’s\_lemma}
                                                  ^^M
If you really absolutely need more capacity,
you can ask a wizard to enlarge me.

Here is how much of TeX's memory you used:
 21911 strings out of 481640
 403969 string characters out of 5928785
 1146413 words of memory out of 5000000
 31270 multiletter control sequences out of 15000+600000
 610234 words of font info for 159 fonts, out of 8000000 for 9000
 817 hyphenation exceptions out of 8191
 5000i,29n,9989p,5239b,810s stack positions out of 5000i,500n,10000p,200000b,80000s
!  ==> Fatal error occurred, no output PDF file produced!

1500+ pages.

kiwifb commented 4 years ago

After increasing one bit of the stack another one gave up in plot3d

Package pdftex.def Info: parametric_plot3d-21.pdf  used on input line 2002.
(pdftex.def)             Requested size: 462.52684pt x 346.89516pt.

! TeX capacity exceeded, sorry [parameter stack size=10000].
\@inmathwarn #1->
                 \ifmmode \@latex@warning {Command \protect #1 invalid in ma...
l.2005 ...ace}{Wikipedia article Boy’s\_surface}
                                                   and \sphinxurl{https://ma...
If you really absolutely need more capacity,
you can ask a wizard to enlarge me.

Here is how much of TeX's memory you used:
 15468 strings out of 481640
 241168 string characters out of 5928785
 882065 words of memory out of 5000000
 30301 multiletter control sequences out of 15000+600000
 580286 words of font info for 92 fonts, out of 8000000 for 9000
 817 hyphenation exceptions out of 8191
 5005i,12n,10001p,863b,650s stack positions out of 10000i,500n,10000p,200000b,80000s
!  ==> Fatal error occurred, no output PDF file produced!
kiwifb commented 4 years ago

Real scary, I increased the stack size twice and have now reached size limits

! TeX capacity exceeded, sorry [parameter stack size=32767].
\@inmathwarn #1->
                 \ifmmode \@latex@warning {Command \protect #1 invalid in ma...
l.2005 ...ace}{Wikipedia article Boy’s\_surface}
                                                   and \sphinxurl{https://ma...
If you really absolutely need more capacity,
you can ask a wizard to enlarge me.

Here is how much of TeX's memory you used:
 15468 strings out of 481640
 241168 string characters out of 5928785
 1769999 words of memory out of 5000000
 30301 multiletter control sequences out of 15000+600000
 580286 words of font info for 92 fonts, out of 8000000 for 9000
 817 hyphenation exceptions out of 8191
 16389i,12n,32768p,863b,650s stack positions out of 30000i,500n,32767p,200000b,80000s
!  ==> Fatal error occurred, no output PDF file produced!

And in the exact same spot.

strogdon commented 4 years ago

Rebuilt on Gentoo with texlive 2019. The failure is now

! TeX capacity exceeded, sorry [input stack size=5000].
\font@name ->
             \T1/pcr/m/n/10
l.2005 ...ace}{Wikipedia article Boy’s\_surface}
                                                   and \sphinxurl{https://ma...

!  ==> Fatal error occurred, no output PDF file produced!
Transcript written on plot3d.log.

which looks like yours.

strogdon commented 4 years ago

If I make this change in plot3d.tex there is then no memory issue:

-Boy’s surface (\sphinxhref{https://en.wikipedia.org/wiki/Boy\textquotesingle{}s\_surface}{Wikipedia article Boy’s\_surface} and \sphinxurl{https://mathcurve.com/surfaces/boy/boy.shtml}):
+Boy’s surface (\sphinxhref{https://en.wikipedia.org/wiki/Boy\%27s\_surface}{Wikipedia article Boy’s\_surface} and \sphinxurl{https://mathcurve.com/surfaces/boy/boy.shtml}):

and I believe things look OK in plot3d.pdf. Not sure what generates the \textquotesingle{}. I made the changes in the plot3d folder and did make clean && make.

strogdon commented 4 years ago

In parametric_plot3d.py there is

Boy's surface (:wikipedia:`Boy's_surface` and https://mathcurve.com/surfaces/boy/boy.shtml)::

and

Maeder's Owl also known as Bour's minimal surface (:wikipedia:`Bour%27s_minimal_surface`)::

I think the former should be changed to look look like the latter relative to the :wikipedia: entry.

kiwifb commented 4 years ago

For the record it is on trac from https://trac.sagemath.org/ticket/28856#comment:104 I'd like to concentrate on trac until it is fixed.

kiwifb commented 4 years ago

Updated sphinx 3.0 patch in the overlay. Testing on my end.

strogdon commented 4 years ago

Everything builds here. Excellent!

strogdon commented 4 years ago

I'll close