Opened 11 years ago

Closed 11 years ago

Last modified 11 years ago

#10118 closed enhancement (fixed)

upgrade sphinx to version 1.0.4

Reported by: mvngu Owned by: tbd
Priority: blocker Milestone: sage-4.6.1
Component: packages: standard Keywords: sphinx spkg
Cc: hivert, jhpalmieri, sage-combinat, novoselt Merged in: sage-4.6.1.alpha2
Authors: Minh Van Nguyen, Jeroen Demeyer Reviewers: Jeroen Demeyer, Minh Van Nguyen
Report Upstream: N/A Work issues:
Branch: Commit:
Dependencies: Stopgaps:

Status badges

Description (last modified by jdemeyer)

As the subject says. See this sage-devel thread for some background on why we need to upgrade Sphinx.

Apply: (starting from sage-4.6.1.alpha1)

  1. The patch package http://sage.math.washington.edu/home/jdemeyer/spkg/patch-2.5.9.spkg (see #9418)
  2. The Sphinx package at http://sage.math.washington.edu/home/jdemeyer/spkg/sphinx-1.0.4.p3.spkg
  3. Apply 10118_sphinx_sagelib.2.patch to the Sage library.
  4. Apply trac-10118_sagenb.patch to the Sage notebook library.

See also #10290 (Upgrade Pygments to version 1.3.1) for syntax highlighting to work properly.

Follow-up (p4 spkg): #10350

Attachments (10)

trac-10118_sphinx-spkg.patch (141.9 KB) - added by mvngu 11 years ago.
trac-10118_sage-lib.patch (5.7 KB) - added by mvngu 11 years ago.
trac-10118_sagenb.patch (1.2 KB) - added by mvngu 11 years ago.
dochtml.log (117.5 KB) - added by mvngu 11 years ago.
docpdf.log (41.3 KB) - added by mvngu 11 years ago.
sphinx-1.0.4.p1.patch (7.2 KB) - added by jdemeyer 11 years ago.
Reviewer patch, p0 to p1
10118_sphinx_sagelib.patch (1.1 KB) - added by jdemeyer 11 years ago.
10118_sphinx_sagelib.2.patch (6.4 KB) - added by jdemeyer 11 years ago.
Sage library patch, replaces trac-10118_sage-lib.patch
sphinx-1.0.4.p3.patch (189.8 KB) - added by jdemeyer 11 years ago.
Patch from p0 to p3, for review
trac-10118_use-utf8.patch (852 bytes) - added by mvngu 11 years ago.

Download all attachments as: .zip

Change History (56)

comment:1 follow-up: Changed 11 years ago by mpatel

  • Cc hivert added

I think Florent Hivert mentioned possibly working on the Sphinx and Pygments packages. Florent, did you happen to start upgrading them?

comment:2 Changed 11 years ago by jhpalmieri

  • Cc jhpalmieri added

comment:3 Changed 11 years ago by fbissey

Sphinx-1.0.4 works well in sage-4.5.3 and 4.6alpha3 the only problem is it break the following test:

sage -t -force_lib "/usr/lib/python2.6/site-packages/sagenb/misc/sphinxify.py"
File "/usr/lib/python2.6/site-packages/sagenb/misc/sphinxify.py", line 69:
    sage: sphinxify('A test')
Expected:
    '<div class="docstring">\n    \n  <p>A test</p>\n\n\n</div>'
Got:
    '\n<div class="docstring">\n    \n  <p>A test</p>\n\n\n</div>'
**********************************************************************
File "/usr/lib/python2.6/site-packages/sagenb/misc/sphinxify.py", line 71:
    sage: sphinxify('**Testing**\n`monospace`')
Expected:
    '<div class="docstring"...<strong>Testing</strong>\n<span class="math"...</p>\n\n\n</div>'
Got:
    '\n<div class="docstring">\n    \n  <p><strong>Testing</strong>\n<span class="math">monospace</span></p>\n\n\n</div>'
**********************************************************************
File "/usr/lib/python2.6/site-packages/sagenb/misc/sphinxify.py", line 73:
    sage: sphinxify('`x=y`')
Expected:
    '<div class="docstring">\n    \n  <p><span class="math">x=y</span></p>\n\n\n</div>'
Got:
    '\n<div class="docstring">\n    \n  <p><span class="math">x=y</span></p>\n\n\n</div>'File "/usr/lib/python2.6/site-packages/sagenb/misc/sphinxify.py", line 69:
    sage: sphinxify('A test')
Expected:
    '<div class="docstring">\n    \n  <p>A test</p>\n\n\n</div>'
Got:
    '\n<div class="docstring">\n    \n  <p>A test</p>\n\n\n</div>'
**********************************************************************
File "/usr/lib/python2.6/site-packages/sagenb/misc/sphinxify.py", line 71:
    sage: sphinxify('**Testing**\n`monospace`')
Expected:
    '<div class="docstring"...<strong>Testing</strong>\n<span class="math"...</p>\n\n\n</div>'
Got:
    '\n<div class="docstring">\n    \n  <p><strong>Testing</strong>\n<span class="math">monospace</span></p>\n\n\n</div>'
**********************************************************************
File "/usr/lib/python2.6/site-packages/sagenb/misc/sphinxify.py", line 73:
    sage: sphinxify('`x=y`')
Expected:
    '<div class="docstring">\n    \n  <p><span class="math">x=y</span></p>\n\n\n</div>'
Got:
    '\n<div class="docstring">\n    \n  <p><span class="math">x=y</span></p>\n\n\n</div>'

comment:4 in reply to: ↑ 1 Changed 11 years ago by hivert

Replying to mpatel:

I think Florent Hivert mentioned possibly working on the Sphinx and Pygments packages. Florent, did you happen to start upgrading them?

Hi Mitesh,

I didn't had the time to work on it (and even more generally on sage) recently. My previous attempt goes back to July with version 1.0.1 and showed some difficult hard stuff but Sphinx itself seemed to bu the cause. This is very cool if they are solved with 1.0.4. There is a chance that I can find some time in the next two weeks. However, if Francois beat me, I won't complain :-) The broken tests seem so be very easy to solve. My plan is then to solve #9128 (Sphinx should be aware of all.py to find its links).

comment:5 Changed 11 years ago by fbissey

Well the situation for me is that on sage-on-gentoo we use system packages. And sphinx 1.0.4 has been marked stable so all sage-on-gentoo users were automatically updated to it. We test a number of things that way, if there is a real problem we pin sage to use a particular version.

I won't beat you to it, it's kind of crunch time here (the semester and the year is ending in New Zealand with all that implies in terms of marking).

comment:6 follow-up: Changed 11 years ago by ddrake

Can someone post a spkg for this? I can try to review, but I need something to review...

comment:7 in reply to: ↑ 6 Changed 11 years ago by mvngu

Replying to ddrake:

Can someone post a spkg for this? I can try to review, but I need something to review...

I'm currently (just taking a break to answer your comment) working on an upgraded Sphinx package.

Changed 11 years ago by mvngu

Changed 11 years ago by mvngu

Changed 11 years ago by mvngu

comment:8 follow-up: Changed 11 years ago by mvngu

  • Authors set to Minh Van Nguyen
  • Cc sage-combinat added
  • Description modified (diff)
  • Status changed from new to needs_review

See the ticket description for instructions on which patch/spkg to apply. Here are the results of my testing.

  • bsd.math -- Both the HTML and PDF versions of the documentation built OK.
  • cicero.skynet -- The HTML version of the documentation built OK, with numerous warnings regarding a missing LaTeX installation. This also meant that I can't build the PDF version of the documentation.
  • cleo.skynet -- Sage 4.6.1.alpha0 fails to build on this machine, hence can't test building the documentation.
  • eno.skynet -- The HTML version of the documentation built OK, with numerous warnings regarding a missing LaTeX installation. This also meant that I can't build the PDF version of the documentation.
  • flavius.skynet -- The PDF version of the documentation built fine. The HTML version built with numerous warnings due to missing the dvipng command.
  • gcc11 -- The HTML documentation built OK, with some warnings due to an incomplete LaTeX installation. Can't build the PDF version of the documentation due to this reason.
  • gcc16 -- The HTML documentation built OK, with some warnings due to an incomplete LaTeX installation. Can't build the PDF version of the documentation due to this reason.
  • hawk (David Kirkby's OpenSolaris box) -- Both the PDF and HTML versions of the documentation built fine.
  • iras.skynet -- Sage 4.6.1.alpha0 fails to build on this machine, hence can't test building the documentation.
  • lena.skynet -- The HTML version of the documentation built OK, with numerous warnings about a missing LaTeX installation, hence cannot parse math expressions typeset using LaTeX. The missing LaTeX installation also prevents us from building the PDF version of the documentation.
  • rh.math -- Has a LaTeX installation, but missing utf8x.def, hence unable to successfully build the PDF version of the documentation. The HTML version of the documentation built with numerous warnings due to missing utf8x.def.
  • rosemary.math -- Sage 4.6.1.alpha0 fails to build on this machine, hence can't test building the standard documentation.
  • sage.math -- Both the HTML and PDF versions of the documentation built fine.
  • sextus.skynet -- The HTML version of the documentation built OK, with numerous warnings about a missing LaTeX installation, hence cannot parse math expressions typeset using LaTeX. The missing LaTeX installation also prevents us from building the PDF version of the documentation.
  • taurus.skynet -- The HTML documentation built fine. This machine doesn't have a LaTeX installation, so I can't build the PDF version of the documentation.

What the above tests mean is that the HTML documentation can be built without a LaTeX installation, but the resulting documentation would not render LaTeX typeset math expressions. For best result, you should install a LaTeX distribution on your system before building the Sage documentation. Of course, when you compile Sage, the configure script that is first run does warn about having a LaTeX installation if your system doesn't already have a LaTeX installation.

I'm CC'ing the sage-combinat team because trac-10118_sage-lib.patch touches files in the combinatorics module.

comment:9 Changed 11 years ago by novoselt

  • Cc novoselt added

comment:10 follow-up: Changed 11 years ago by mpatel

You should be able to build 4.6.1.alpha0 on cleo with export SAGE_DEBUG=yes (#9897, #10120). This should also help on iras, but you'll likely also have problems with cddlib (#10204).

By the way, do you think we could add rosemary.math as a Sage Buildbot buildslave?

comment:11 in reply to: ↑ 10 Changed 11 years ago by mvngu

Replying to mpatel:

By the way, do you think we could add rosemary.math as a Sage Buildbot buildslave?

See the following sage-devel thread for a follow-up to your question:

http://groups.google.com/group/sage-devel/browse_thread/thread/7cf390f110f6cea6

comment:12 in reply to: ↑ 8 ; follow-up: Changed 11 years ago by jdemeyer

  • Keywords sphinx spkg added

Replying to mvngu:

  • eno.skynet -- The HTML version of the documentation built OK, with numerous warnings regarding a missing LaTeX installation. This also meant that I can't build the PDF version of the documentation.

If possible, I would like to see

  • See the resulting HTML of a Sphinx run without LaTeX.
  • The log file of running Sphinx without LaTeX.

Would it make sense for make doc-html to first test whether latex is installed? If there is no latex, give an error and don't build the documentation.

Changed 11 years ago by mvngu

Changed 11 years ago by mvngu

comment:13 in reply to: ↑ 12 ; follow-up: Changed 11 years ago by mvngu

Replying to jdemeyer:

If possible, I would like to see

  • See the resulting HTML of a Sphinx run without LaTeX.

See the URL

http://mvngu.googlecode.com/hg/10118-sphinx/en/index.html

  • The log file of running Sphinx without LaTeX.

See the log files:

  1. dochtml.log
  2. docpdf.log


Would it make sense for make doc-html to first test whether latex is installed? If there is no latex, give an error and don't build the documentation.

That would result in a user, whose system doesn't have LaTeX but can compile Sage OK, without at least a way to build the vast majority of the Sage standard documentation. Currently, on a system without LaTeX you could still build the HTML version of the Sage documentation, but any expressions typeset in LaTeX could not be rendered using LaTeX. This means that the documentation does build, but you won't be able to see LaTeX math expressions typeset beautifully; you can still read the corresponding LaTeX typesetting, though. However, if you build the HTML version with jsMath rendering of mathematical expressions, then you don't need LaTeX at all. The only case where you really need LaTeX is when you build the PDF version of the documentation.

So LaTeX is not necessary for building the Sage documentation. But if you don't have LaTeX, there's very little reason why the documentation builder should abort and refuse to build the HTML version of the documentation. The resulting "broken" HTML built documentation is still very readable; you just don't get beautifully typeset math expressions. And if you have jsMath installed, build the documentation with jsMath.

comment:14 in reply to: ↑ 13 Changed 11 years ago by jdemeyer

Replying to mvngu:

Replying to jdemeyer:

If possible, I would like to see

  • See the resulting HTML of a Sphinx run without LaTeX.

http://mvngu.googlecode.com/hg/10118-sphinx/en/index.html

Thanks! The output does indeed look quite readable without LaTeX installed.

comment:15 Changed 11 years ago by jdemeyer

  • Priority changed from major to blocker
  • Reviewers set to Jeroen Demeyer

I'm all in favour of making the pdf documentation actually work! I am preparing a .p1 package with some minor changes, hang on...

Changed 11 years ago by jdemeyer

Reviewer patch, p0 to p1

comment:16 Changed 11 years ago by jdemeyer

  • Description modified (diff)

Minh, your patches look fine, I made some minor changes to Makefile and spkg-install.

New spkg: http://sage.math.washington.edu/home/jdemeyer/spkg/sphinx-1.0.4.p1.spkg

spkg patch: sphinx-1.0.4.p1.patch

Works on sage.math.washington.edu, it would probably be good to test on other machines too.

comment:17 follow-up: Changed 11 years ago by jhpalmieri

The patches look okay to me, but I've only glanced at them. However, I don't see why the various .py files in the patches directory are in .hgignore. I don't think this is the usual practice for spkgs.

comment:18 in reply to: ↑ 17 ; follow-up: Changed 11 years ago by jdemeyer

Replying to jhpalmieri:

I don't think this is the usual practice for spkgs.

I agree that this is not the usual practice, but maybe we should make it usual practice? (I've done it for pari and ecm) The point is that I see absolutely no reason to put patched files under revision control. Putting the patches (i.e. the diffs) under revision control makes sense (and that's also what I did). One advantage is that you get smaller diffs between spkg versions. Also the spkgs themselves should be smaller. Putting patched files under revision control is almost the same as putting src/ under revision control and we don't do that either...

comment:19 in reply to: ↑ 18 ; follow-up: Changed 11 years ago by jhpalmieri

Replying to jdemeyer:

Replying to jhpalmieri:

I don't think this is the usual practice for spkgs.

I agree that this is not the usual practice, but maybe we should make it usual practice?

I'm not sure. I hope other people express opinions. Is it worth discussing on sage-devel? Anyway, since it's not the usual practice, I think you should definitely document what you're doing in SPKG.txt. When I'm working on an spkg, in general I find it very helpful to have long descriptions in SPKG.txt, not just very short summaries of what happened.

(I'm also not sure why "patches/Makefile" has an entry in the patch file, since this file is now supposed to be untracked.)

comment:20 follow-up: Changed 11 years ago by jhpalmieri

By the way, the hg repo is not clean:

$ hg status
? .SPKG.txt.swp

comment:21 in reply to: ↑ 19 Changed 11 years ago by jdemeyer

Replying to jhpalmieri:

(I'm also not sure why "patches/Makefile" has an entry in the patch file, since this file is now supposed to be untracked.)

Doing a hg forget did the trick.

comment:22 in reply to: ↑ 20 Changed 11 years ago by jdemeyer

Replying to jhpalmieri:

By the way, the hg repo is not clean:

$ hg status
? .SPKG.txt.swp

Fixed, spkg in same place.

comment:23 Changed 11 years ago by jdemeyer

  • Description modified (diff)

comment:24 Changed 11 years ago by jdemeyer

For what it's worth: build html and pdf documentation of sage-4.6.1.alpha1 with only the following Sphinx WARNINGS:

writing... /mnt/usb1/scratch/jdemeyer/merger/sage-4.6.1.alpha2/devel/sage/doc/en/tutorial/introduction.rst:: WARNING: unusable reference target found: ../installation/index.html
/mnt/usb1/scratch/jdemeyer/merger/sage-4.6.1.alpha2/devel/sage/doc/en/tutorial/sagetex.rst:: WARNING: unusable reference target found: ../installation/index.html
writing... /mnt/usb1/scratch/jdemeyer/merger/sage-4.6.1.alpha2/devel/sage/doc/en/faq/faq-usage.rst:: WARNING: unusable reference target found: about:plugins
writing... /mnt/usb1/scratch/jdemeyer/merger/sage-4.6.1.alpha2/devel/sage/doc/fr/tutorial/introduction.rst:: WARNING: unusable reference target found: ../../en/installation/index.html
/mnt/usb1/scratch/jdemeyer/merger/sage-4.6.1.alpha2/devel/sage/doc/fr/tutorial/sagetex.rst:: WARNING: unusable reference target found: ../../en/installation/index.html

comment:25 follow-up: Changed 11 years ago by jdemeyer

On one particular Linux system, I get the following error during make doc-html:

looking for now-outdated files... none found
pickling environment... done
checking consistency... done
preparing documents... done
writing output... [  0%] algebras
writing output... [  0%] arithgroup
WARNING: display latex u'{\\rm SL}_2(\\ZZ)': latex exited with error:
[stderr]

[stdout]
This is pdfTeXk, Version 3.1415926-1.40.9 (Web2C 7.5.7)
 %&-line parsing enabled.
entering extended mode
(./math.tex
LaTeX2e <2005/12/01>
Babel <v3.8l> and hyphenation patterns for english, usenglishmax, dumylang, noh
yphenation, loaded.
(/usr/share/texmf-dist/tex/latex/base/article.cls
Document Class: article 2005/09/16 v1.4f Standard LaTeX document class
(/usr/share/texmf-dist/tex/latex/base/size12.clo))
(/usr/share/texmf-dist/tex/latex/base/inputenc.sty

! LaTeX Error: File `utf8x.def' not found.

Type X to quit or <RETURN> to proceed,
or enter new name. (Default extension: def)

Enter file name:
! Emergency stop.
<read *>

l.128 \endinput
               ^^M
No pages of output.
Transcript written on math.log.

So it seems that the new Sphinx needs a more recent LaTeX installation with utf8x.def.

comment:26 in reply to: ↑ 25 ; follow-up: Changed 11 years ago by fbissey

Replying to jdemeyer:

So it seems that the new Sphinx needs a more recent LaTeX installation with utf8x.def.

hum... unicode support. Is this linux system still using tetex?

comment:27 in reply to: ↑ 26 Changed 11 years ago by jdemeyer

Replying to fbissey:

hum... unicode support. Is this linux system still using tetex?

Yes (I know it's outdated but probably still widely spread).

comment:28 Changed 11 years ago by jdemeyer

Hmm, sphinx-0.6.3 uses

\usepackage[utf8]{inputenc}

which works with that particular tetex installation.

sphinx-1.0.4 uses

\usepackage[utf8x]{inputenc}

Anybody knows the difference (and would it make sense to patch sphinx to use utf8 instead of utf8x)?

comment:29 follow-up: Changed 11 years ago by jhpalmieri

According to stackoverflow,

utf8 is "supported" by the LaTeX team and covers a fairly specific/limited range 
of unicode input characters. It only defines those symbols that are known to be 
available with the current font encoding.

utf8x, AFAIK, is no longer supported, but covers a much broader range of input 
symbols. I would recommend only trying it if utf8 doesn't do what you need.

We also discussed this for Sage at #8036. In fact, is the difference really in Sphinx 1.0.4? In SAGE_ROOT/devel/sage/doc/common/conf.py, we have the line

latex_elements['inputenc'] = '\\usepackage[utf8x]{inputenc}'

added by #8036. I wonder why this doesn't cause you problems on that particular linux system.

comment:30 in reply to: ↑ 29 Changed 11 years ago by jdemeyer

Replying to jhpalmieri:

We also discussed this for Sage at #8036. In fact, is the difference really in Sphinx 1.0.4? In SAGE_ROOT/devel/sage/doc/common/conf.py, we have the line

latex_elements['inputenc'] = '\\usepackage[utf8x]{inputenc}'

added by #8036. I wonder why this doesn't cause you problems on that particular linux system.

Are we sure that line is actually used? Probably not I guess. Because locate utf8x returns nothing on this system, so utf8x cannot possibly work (but building the HTML documentation works).

comment:31 Changed 11 years ago by jdemeyer

By the way, that system actually uses texlive, not tetex (Gentoo dev-texlive/texlive-latex-2008-r2 to be precise).

comment:32 follow-up: Changed 11 years ago by jhpalmieri

Oh, sorry, my mistake. The line I mentioned does get used when producing the latex/PDF docs, but not the html. For the html docs, the file pngmath.py (in sphinx/ext) has been changed from the old version of Sphinx to use utf8x instead of utf8. We could try a patch like this:

  • pngmath.py

    old new  
    3434
    3535DOC_HEAD = r'''
    3636\documentclass[12pt]{article}
    37 \usepackage[utf8x]{inputenc}
     37\usepackage[utf8]{inputenc}
    3838\usepackage{amsmath}
    3939\usepackage{amsthm}
    4040\usepackage{amssymb}

It also might be worth investigating why the Sphinx people changed this in the first place.

comment:33 Changed 11 years ago by jhpalmieri

The change in Sphinx is documented here. It was patched to allow people to use unicode characters (like a unicode "not equals" sign, rather than using \neq) in math and have them typeset correctly.

comment:34 in reply to: ↑ 32 Changed 11 years ago by jdemeyer

Replying to jhpalmieri:

Oh, sorry, my mistake. The line I mentioned does get used when producing the latex/PDF docs, but not the html. For the html docs, the file pngmath.py (in sphinx/ext) has been changed from the old version of Sphinx to use utf8x instead of utf8. We could try a patch like this:

  • pngmath.py

    old new  
    3434
    3535DOC_HEAD = r'''
    3636\documentclass[12pt]{article}
    37 \usepackage[utf8x]{inputenc}
     37\usepackage[utf8]{inputenc}
    3838\usepackage{amsmath}
    3939\usepackage{amsthm}
    4040\usepackage{amssymb}

It also might be worth investigating why the Sphinx people changed this in the first place.

Sounds like a good idea. I will try it when I have time.

Changed 11 years ago by jdemeyer

comment:35 Changed 11 years ago by jdemeyer

  • Status changed from needs_review to needs_work

comment:36 Changed 11 years ago by jdemeyer

  • Description modified (diff)

Changed 11 years ago by jdemeyer

Sage library patch, replaces trac-10118_sage-lib.patch

comment:37 Changed 11 years ago by jdemeyer

  • Description modified (diff)

Minh, I removed your hunk removing (`this link <../../installation/index.html>`_ should take you to a local copy of the installation guide). because

  1. I like the local link, I think we should try to keep it.
  2. There are other places in the documentation with the same problem, so we might as well fix them all at once in one ticket.

comment:38 Changed 11 years ago by jdemeyer

  • Authors changed from Minh Van Nguyen to Minh Van Nguyen, Jeroen Demeyer
  • Merged in set to sage-4.6.1.alpha2
  • Status changed from needs_work to needs_review

Changed 11 years ago by jdemeyer

Patch from p0 to p3, for review

Changed 11 years ago by mvngu

comment:39 follow-up: Changed 11 years ago by mvngu

Here are some trivial problems in the file SPKG.txt of version ".p3" of the Sphinx package:

  • In the section
    == Dependencies ==
    
    This depends on Jinja >= 2, Pygments >= 0.8, and docutils >= 0.4.
    
    we should have "Pygments >= 1.3.1" due to ticket #10290. But this is no biggy; it's a trivial typo that can either (i) be fixed in a new ticket, or (ii) fixed in the current ticket.
  • In the section
    * patches/pngmath.patch: This replaces \usepackage[utf8x]{inputenc}
      by \usepackage[utf8]{inputenc} in the LaTeX preamble for building
      images in the HTML documentation.  This change is done because some
      LaTeX installations have only utf8, not utf8x (utf8x adds support for
      much more Unicode characters, but these are needed used to typeset the
      mathematics in the Sage documentation).
    
    the fragment
    but these are needed used to typeset the
    
    should be changed to
    but these are used to typeset the
    

Tested on the following platforms:

  • {sage.math, bsd.math, hawk}: Both HTML and PDF versions of documentation built OK. For the PDF version, building the reference manual produced some warnings about "unusable reference target", which are to do with relative links to other documents in the Sage standard documentation.
  • {cleo, iras}.skynet: Sage 4.6.1.alpha2 fails to build on this machine, hence the documentation doesn't get built at all.

  • {cicero, eno, lena, sextus, taurus, t2}: The HTML version of the documentation mostly built OK, but with warnings about a missing LaTeX installation. Consequently, the PDF version of the documentation can't be built.
  • flavius.skynet -- The PDF version of the documentation built fine, but with some warnings about unusable relative links. The HTML version built with numerous warnings due to missing the dvipng command.
  • {gcc11, gcc16}.fsffrance.org: The HTML version of all documents in the standard documentation mostly built OK, but with warnings about the missing command "dvipng". This machine has a LaTeX installation, but it is missing the file titlesec.sty, hence building the PDF version of any document in the standard documentation would hang at the error message:
    Style option: `fancybox' v1.3 <2000/09/19> (tvz)
    )
    
    ! LaTeX Error: File `titlesec.sty' not found.
    
    Type X to quit or <RETURN> to proceed,
    or enter new name. (Default extension: sty)
    
  • rh.math: The HTML version of all documents in the standard documentation mostly built OK, but with warnings about the missing command "dvipng". This means that LaTeX typesetting does not render at all in the HTML version. This machine has a LaTeX installation, but it is missing the file utf8x.def, hence building any document in the standard documentation would hang at the error message that prompts for utf8x.def. Note that we have the patch
    • src/sphinx/ext/pngmath.py

      diff -r -u src.old/sphinx/ext/pngmath.py src/sphinx/ext/pngmath.py              
       
      3434                                                                               
      3535DOC_HEAD = r'''                                                               
      3636\documentclass[12pt]{article}                                                 
      37 \usepackage[utf8x]{inputenc}                                                   
       37\usepackage[utf8]{inputenc}                                                    
      3838\usepackage{amsmath}                                                           
      3939\usepackage{amsthm}                                                           
      4040\usepackage{amssymb}
    to use only utf8 instead of utf8x. The same change needs to be made to the file doc/common/conf.py. See my reviewer patch trac-10118_use-utf8.patch. With this patch, we get pass the issue of the missing utf8x.def, but we now run into the following error:
    Style option: `fancybox' v1.3 <2000/09/19> (tvz)
    )
    
    ! LaTeX Error: File `titlesec.sty' not found.
    
    Type X to quit or <RETURN> to proceed,
    or enter new name. (Default extension: sty)
    

So here are two choices:

  1. Accept sphinx-1.0.4.p3.spkg as is. I'm OK with that package. The issues I pointed out above can be addressed in a follow-up ticket.
  2. Fix the above issues in the current ticket.

comment:40 in reply to: ↑ 39 Changed 11 years ago by jdemeyer

  • Description modified (diff)

Since this ticket is already merged, see #10350.

comment:41 Changed 11 years ago by jdemeyer

  • Reviewers changed from Jeroen Demeyer to Jeroen Demeyer, Minh Van Nguyen
  • Status changed from needs_review to positive_review

Since Minh agreed on this spkg, I'm setting this to positive_review. Further changes are at #10350.

comment:42 Changed 11 years ago by jhpalmieri

Regarding the last patch (trac-10118_use-utf8.patch):

  • this is a bit of a regression: see #8036. Right now, the problematic string from that ticket is not in the reference manual, but if the file schemes/elliptic_curves/BSD.py is added to the reference manual, then the pdf documentation won't build.
  • with this patch, I think that fr/tutorial doesn't build in pdf format. Could someone else please check this?
  • by default, Sphinx uses utf8, so if this patch worked, I think you could actually just comment out the line (in conf.py)
    latex_elements['inputenc'] = '\\usepackage[utf8x]{inputenc}'
    
    rather than replace utf8x with utf8.

comment:43 Changed 11 years ago by jdemeyer

I agree with John. Let's not apply the reviewer patch (it is only needed to build the pdf documentation, so I don't think there is a big issue).

comment:44 Changed 11 years ago by jdemeyer

  • Resolution set to fixed
  • Status changed from positive_review to closed

comment:45 follow-up: Changed 11 years ago by leif

In principle needs work:

Sphinx attempts to download Jinja2 during build, see the follow-up ticket #10350.

comment:46 in reply to: ↑ 45 Changed 11 years ago by leif

Replying to leif:

In principle needs work:

Sphinx attempts to download Jinja2 during build, see the follow-up ticket #10350.

An upgraded Jinja2 spkg (2.2.5.p0), avoiding the download of a version >=2.2, can be found at #10423; needs review.

Note: See TracTickets for help on using tickets.