Change History (85)

comment:1 Changed 5 years ago by aapitzsch

  • Branch set to u/aapitzsch/ticket/18497
  • Commit set to c913a28534ba6533d5798e1fa9aa725dfa32a8ea

The given branch misses some dependencies (babel, snowballstemmer). Installing them via pip makes Sphinx build. But documentation failed to build.

comment:2 Changed 5 years ago by git

  • Commit changed from c913a28534ba6533d5798e1fa9aa725dfa32a8ea to 832afb701cfaf6b19a446a0d643ab58b3e5d3808

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

ede0305update sphinx package to 1.3.1
7d29133fix some deprecation warnings
557a33crebase sage_autodoc changes on sphinx.ext.autodoc version 1.3.1
bdf70fefix orphan setting
832afb7fix warning "more than one target found for cross-reference u'groebner_basis'"

comment:3 Changed 5 years ago by aapitzsch

  • Status changed from new to needs_info

Any ideas how to fix

Traceback (most recent call last):
  File "/opt/sage/src/doc/common/builder.py", line 1626, in <module>
    getattr(get_builder(name), type)()
  File "/opt/sage/src/doc/common/builder.py", line 292, in _wrapper
    getattr(get_builder(document), 'inventory')(*args, **kwds)
  File "/opt/sage/src/doc/common/builder.py", line 503, in _wrapper
    x.get(99999)
  File "/opt/sage/local/lib/python/multiprocessing/pool.py", line 558, in get
    raise self._value
OSError: [categorie] /opt/sage/src/doc/en/reference/categories/sage/categories/category.rst:370: WARNING: don't know which module to import for autodocumenting u'_super_categories' (try placing a "module" or "currentmodule" directive in the document, or giving an explicit module name)

without changing

.. automethod:: _super_categories

to

.. automethod:: Category._super_categories

because there are a lot of these warnings.

comment:4 Changed 5 years ago by jdemeyer

  • Description modified (diff)
  • Milestone changed from sage-6.8 to sage-6.9

comment:5 Changed 5 years ago by strogdon

While building sphinx I get:

Installed /64bitdev/storage/sage-git_develop/sage/local/lib/python2.7/site-packages/Sphinx-1.3.1-py2.7.egg
Processing dependencies for Sphinx==1.3.1
Searching for snowballstemmer>=1.1
Reading https://pypi.python.org/simple/snowballstemmer/
Download error on https://pypi.python.org/simple/snowballstemmer/: [Errno 110] Connection timed out -- Some packages may not be found!
Couldn't find index page for 'snowballstemmer' (maybe misspelled?)
Scanning index of all packages (this may take a while)
Reading https://pypi.python.org/simple/
Download error on https://pypi.python.org/simple/: [Errno 110] Connection timed out -- Some packages may not be found!
No local packages or download links found for snowballstemmer>=1.1
error: Could not find suitable distribution for Requirement.parse('snowballstemmer>=1.1')
Error building Sphinx: 'Error installing Sphinx'

wget works just fine in downloading snowballstemmer from pypi.python.org/simple/snowballstemmer

comment:6 follow-up: Changed 5 years ago by strogdon

The inability to download snowballstemmer>=1.1 seems to be because of

export http_proxy=http://192.0.2.0:5187/

in build/bin/sage-spkg. This was supposedly fixed in #14243. Am I the only one getting this?

comment:7 in reply to: ↑ 6 ; follow-up: Changed 5 years ago by jdemeyer

Replying to strogdon:

The inability to download snowballstemmer>=1.1 seems to be because of

export http_proxy=http://192.0.2.0:5187/

in build/bin/sage-spkg. This was supposedly fixed in #14243. Am I the only one getting this?

I don't see how #14243 is related. The proxy is obviously intentional, read the comment.

comment:8 in reply to: ↑ 7 ; follow-up: Changed 5 years ago by strogdon

Replying to jdemeyer:

I don't see how #14243 is related. The proxy is obviously intentional, read the comment.

You're right about #14243 not being related. I was a bit hasty. And I realize the proxy is intentional. But what's the work-around here to allow Sphinx to install correctly? If I'm not mistaken, the proxy is blocking snowballstemmer download. But maybe there is something else.

comment:9 in reply to: ↑ 8 Changed 5 years ago by jdemeyer

Replying to strogdon:

But what's the work-around here to allow Sphinx to install correctly?

Add a snowballstemmer package.

comment:10 Changed 5 years ago by jhpalmieri

This works for me, but not perfectly. In addition to the changes here, I used sage --pip install to install snowballstemmer and alabaster. I also had to change exclude_trees to exclude_patterns wherever it occurred in doc/common: exclude_trees was deprecated before and has now been removed. (This was in src/doc/common/conf.py, src/doc/en/reference/conf.py, src/doc/en/reference/conf_sub.py.)

I ran into the issue mentioned in comment:3, so I made those references more explicit (changed _blah to Category._blah, etc.). Then the file sage/lfunctions/zero_sums.pyx was giving me errors I didn't understand, for example

OSError: [lfunction] docstring of sage.lfunctions.zero_sums.LFunctionZeroSum_EllipticCurve:0: ERROR: Unknown interpreted text role "class".

So I removed it from the reference manual. I'll keep looking at that file, though.

Then in the second pass through the reference manual, the build stopped with complaints about missing references or citations. Maybe Sphinx is pickier now, and wants the reference before any citations to it, so I moved some of them to the top-level docstring in the file, and that helped. There is a few cross-file references, and I don't know what to do about that one except to run Sphinx again and hope it resolves the reference. The build completed this way.

By the way, Sphinx 1.3.2 (a bug-fix release) is supposed to be released in a few days.

comment:11 follow-up: Changed 5 years ago by strogdon

I have tried the same (I missed the exclude_trees deprecation) and I too see in the build log

[lfunction] docstring of sage.lfunctions.zero_sums.LFunctionZeroSum_EllipticCurve:0: ERROR: Unknown interpreted text role "class".
[lfunction] docstring of sage.lfunctions.zero_sums.LFunctionZeroSum_EllipticCurve.analytic_rank_upper_bound:83: ERROR: Unknown interpreted text role "func".
[lfunction] docstring of sage.lfunctions.zero_sums.LFunctionZeroSum_EllipticCurve.analytic_rank_upper_bound:83: ERROR: Unknown interpreted text role "meth".
[lfunction] docstring of sage.lfunctions.zero_sums.LFunctionZeroSum_EllipticCurve.analytic_rank_upper_bound:83: ERROR: Unknown interpreted text role "func".
[lfunction] docstring of sage.lfunctions.zero_sums.LFunctionZeroSum_abstract:0: ERROR: Unknown interpreted text role "class".
[lfunction] docstring of sage.lfunctions.zero_sums.LFunctionZeroSum_abstract.cnlist:19: ERROR: Unknown interpreted text role "meth".
[lfunction] docstring of sage.lfunctions.zero_sums.LFunctionZeroSum_abstract.completed_logarithmic_derivative:39: ERROR: Unknown interpreted text role "meth".
[lfunction] docstring of sage.lfunctions.zero_sums.LFunctionZeroSum_abstract.zerosum:66: ERROR: Unknown interpreted text role "meth".

And I have been searching high and low to figure out the issue. Also, if alabaster is not needed then sphinx will have to be patched to prevent it from being imported. Something like:

--- Sphinx-1.3.1/sphinx/application.py	2015-09-11 22:55:30.000000000 -0500
+++ Sphinx-1.3.1/sphinx/application.py	2015-09-15 17:56:42.000000000 -0500
@@ -135,8 +135,8 @@
         # extension loading support for alabaster theme
         # self.config.html_theme is not set from conf.py at here
         # for now, sphinx always load a 'alabaster' extension.
-        if 'alabaster' not in self.config.extensions:
-            self.config.extensions.append('alabaster')
+        #if 'alabaster' not in self.config.extensions:
+        #    self.config.extensions.append('alabaster')
 
         # load all user-given extension modules
         for extension in self.config.extensions:

comment:12 Changed 5 years ago by jhpalmieri

  • Branch changed from u/aapitzsch/ticket/18497 to u/jhpalmieri/ticket/18497

comment:13 Changed 5 years ago by jhpalmieri

  • Commit changed from 832afb701cfaf6b19a446a0d643ab58b3e5d3808 to 717f4e8a8828ea37b5dfd9410ba67b88ab59b084

I don't know why, but this change fixes the problem with lfunctions/zero_sum.pyx:

  • src/sage/lfunctions/zero_sums.pyx

    diff --git a/src/sage/lfunctions/zero_sums.pyx b/src/sage/lfunctions/zero_sums.pyx
    index 6c4535c..ff1dd86 100644
    a b cdef class LFunctionZeroSum_EllipticCurve(LFunctionZeroSum_abstract): 
    13411341
    13421342        return small_primes, modulus, residue_chunks
    13431343
    1344     @parallel(ncpus=NCPUS)
    13451344    def _sum_over_residues(self, residue_sum_data):
    13461345        r"""
    13471346        Return the p-power sum over residues in a residue chunk

I have created a branch for testing purposes which does this and the other changes I outlined above. It is not at all ready for review. Issues:

  • removing this "parallel" decorator is probably not a good idea.
  • snowballstemmer needs be added as a new package.
  • Maybe alabaster, too? I don't see why not.
  • The issue with missing references needs to be resolved.

New commits:

ad08dd1Merge branch 'develop' into t/18497/ticket/18497
717f4e8trac 18497: in docbuilding, use exclude_patterns instead of exclude_trees.

comment:14 Changed 5 years ago by strogdon

When I first started making changes to deal with the issue mentioned in comment:#3 I only had to make changes to these files

sage/categories/category.py
sage/categories/category_with_axiom.py
sage/sets/cartesian_product.py
sage/combinat/permutation.py

I thought this odd and suspected that something else was the reason requiring the changes.

comment:15 Changed 5 years ago by jhpalmieri

I wouldn't be surprised if something else was causing those problems. I didn't do a careful case-by-case test to see which changes were necessary.

comment:16 Changed 5 years ago by jdemeyer

The huge change to sage_autodoc.py really scares me a lot. I already have several tickets concerning the docbuilding sitting in needs_review and this ticket here will almost certainly cause a lot of conflicts.

I would much prefer to stick with the current version of Sphinx (unless you have a good reason to upgrade) and first clean up the Sphinx mess.

comment:18 Changed 5 years ago by jhpalmieri

Sphinx 1.3.2 has now been released.

comment:19 Changed 5 years ago by jdemeyer

Again: I would much rather first clean up the Sphinx mess before upgrading it.

comment:20 Changed 5 years ago by jhpalmieri

  • Description modified (diff)
  • Summary changed from Update Sphinx to 1.3.1 to Update Sphinx to 1.3.2

I understand that, I'm just adding the link for future reference.

comment:21 Changed 5 years ago by jhpalmieri

  • Description modified (diff)
  • Summary changed from Update Sphinx to 1.3.2 to Update Sphinx to 1.3.3

comment:22 Changed 5 years ago by slelievre

  • Description modified (diff)
  • Summary changed from Update Sphinx to 1.3.3 to Update Sphinx to 1.3.5

comment:23 follow-up: Changed 5 years ago by strogdon

If this ever gets up steam again it appears that the inline-latex.patch may no longer be needed. The following

https://github.com/sphinx-doc/sphinx/issues/1480 https://github.com/sphinx-doc/sphinx/pull/2188

are supposedly addressed in 1.3.5 (actually fixed in 1.3.4).

comment:24 Changed 5 years ago by fbissey

  • Cc fbissey added

comment:25 in reply to: ↑ 23 Changed 5 years ago by jdemeyer

Replying to strogdon:

If this ever gets up steam again

See 19 and also the prospect of Sage Days dedicated to (amongst other things) Sphinx, organized by Nicolas Thiéry.

comment:26 Changed 5 years ago by jdemeyer

  • Authors set to Jeroen Demeyer
  • Dependencies changed from #17313 to #20359
  • Milestone changed from sage-6.9 to sage-7.2
  • Summary changed from Update Sphinx to 1.3.5 to Update Sphinx to 1.4

comment:27 Changed 5 years ago by jdemeyer

  • Authors changed from Jeroen Demeyer to André Apitzsch, Jeroen Demeyer
  • Status changed from needs_info to needs_work

comment:28 Changed 5 years ago by jdemeyer

  • Branch changed from u/jhpalmieri/ticket/18497 to u/jdemeyer/ticket/18497

comment:29 Changed 5 years ago by jdemeyer

  • Commit changed from 717f4e8a8828ea37b5dfd9410ba67b88ab59b084 to 2cb637cd75984f46f84f249983347f50fff1d7bc
  • Description modified (diff)

New commits:

8d9c05aMove upstream changes to autodoc into Sage
90367d8update sphinx package to 1.3.1
6f42e1efix some deprecation warnings
9961661fix orphan setting
f24c34ffix warning "more than one target found for cross-reference u'groebner_basis'"
2cb637ctrac 18497: in docbuilding, use exclude_patterns instead of exclude_trees.

comment:30 Changed 5 years ago by jdemeyer

Rebased on #20359 except for the changes to sage_autodoc.py and the changes to .. automethod::.

Last edited 5 years ago by jdemeyer (previous) (diff)

comment:31 Changed 5 years ago by jdemeyer

  • Description modified (diff)

comment:32 Changed 5 years ago by jdemeyer

  • Description modified (diff)

comment:33 Changed 5 years ago by jdemeyer

  • Description modified (diff)

comment:34 Changed 5 years ago by jdemeyer

  • Dependencies changed from #20359 to #20359, #20374
  • Description modified (diff)

comment:35 Changed 5 years ago by git

  • Commit changed from 2cb637cd75984f46f84f249983347f50fff1d7bc to 8d5347df86ae7b1d50d319388ae440446c821f6e

Branch pushed to git repo; I updated commit sha1. New commits:

8d5347dUpgrade to Sphinx 1.4

comment:36 Changed 5 years ago by jdemeyer

  • Dependencies changed from #20359, #20374 to #20359, #14840

comment:37 Changed 5 years ago by strogdon

I get

Building reference manual, first pass.

Error building the documentation.
Traceback (most recent call last):
  File "/64bitdev/storage/sage-git_develop/sage/local/lib/python/runpy.py", line 162, in _run_module_as_main
    "__main__", fname, loader, pkg_name)
  File "/64bitdev/storage/sage-git_develop/sage/local/lib/python/runpy.py", line 72, in _run_code

  File "/64bitdev/storage/sage-git_develop/sage/local/lib/python2.7/site-packages/sage_setup/docbuild/__main__.py", line 2, in <module>
    main()
  File "/64bitdev/storage/sage-git_develop/sage/local/lib/python2.7/site-packages/sage_setup/docbuild/__init__.py", line 1629, in main
    builder()
  File "/64bitdev/storage/sage-git_develop/sage/local/lib/python2.7/site-packages/sage_setup/docbuild/__init__.py", line 284, in _wrapper
    getattr(get_builder(document), 'inventory')(*args, **kwds)
  File "/64bitdev/storage/sage-git_develop/sage/local/lib/python2.7/site-packages/sage_setup/docbuild/__init__.py", line 495, in _wrapper
    x.get(99999)
  File "/64bitdev/storage/sage-git_develop/sage/local/lib/python/multiprocessing/pool.py", line 567, in get
    raise self._value
TypeError: frompickle() takes exactly 3 arguments (2 given)

In

local/lib/python2.7/site-packages/sage_setup/docbuild/__init__.py

there is

env = BuildEnvironment.frompickle(config, env_pickle)

And in

local/lib/python2.7/site-packages/Sphinx-1.4-py2.7.egg/sphinx/environment.py

there is

def frompickle(srcdir, config, filename):

It looks like the srcdir is new. I believe I've merged everything.

comment:38 Changed 5 years ago by jdemeyer

  • Cc days77 added

comment:39 Changed 5 years ago by git

  • Commit changed from 8d5347df86ae7b1d50d319388ae440446c821f6e to ba6c218334007974eb88427a9ba7a36b64361268

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

161ac3bSplit up the sagenb distribution
100a6dbMerge branch 'ticket/14840' into t/18497/ticket/18497
ba6c218Upgrade to Sphinx 1.4

comment:40 Changed 5 years ago by jdemeyer

This now builds Sphinx correctly. I agree with the problem on 37 but have not investigated yet.

comment:41 Changed 5 years ago by jhpalmieri

I don't know the right fix, but I think the problem is in this line:

  • src/sage_setup/docbuild/__init__.py

    diff --git a/src/sage_setup/docbuild/__init__.py b/src/sage_setup/docbuild/__init__.py
    index 6bfe38e..069c0a9 100644
    a b class ReferenceSubBuilder(DocBuilder): 
    767767
    768768        env_pickle = os.path.join(self._doctrees_dir(), 'environment.pickle')
    769769        try:
    770             env = BuildEnvironment.frompickle(config, env_pickle)
     770            env = BuildEnvironment.frompickle(self.dir, config, env_pickle)
    771771            logger.debug("Opened Sphinx environment: %s", env_pickle)
    772772            return env
    773773        except IOError as err:

With this change I get other errors, one of which can be fixed like this:

  • src/sage_setup/docbuild/ext/sage_autodoc.py

    diff --git a/src/sage_setup/docbuild/ext/sage_autodoc.py b/src/sage_setup/docbuild/ext/sage_autodoc.py
    index 20f7168..e2073a5 100644
    a b from sphinx.application import ExtensionError 
    3838from sphinx.util.nodes import nested_parse_with_titles
    3939from sphinx.util.compat import Directive
    4040from sphinx.util.inspect import getargspec, isdescriptor, safe_getmembers, \
    41      safe_getattr, safe_repr as sphinx_safe_repr, is_builtin_class_method
     41     safe_getattr, object_description as sphinx_safe_repr, is_builtin_class_method
    4242from sphinx.util.pycompat import base_exception, class_types
    4343from sphinx.util.docstrings import prepare_docstring
    4444

I don't know about the others, though.

comment:42 follow-up: Changed 5 years ago by strogdon

Also, sphinx still tries to load alabaster even though it is not installed because of no_alabaster.patch. In Sphinx-1.4/sphinx/application.py there is

        # for now, sphinx always load a 'alabaster' extension.
        if 'alabaster' not in self.config.extensions:
            self.config.extensions.append('alabaster')

comment:43 Changed 5 years ago by jdemeyer

  • Cc days77 removed
  • Keywords days77 added

comment:44 Changed 5 years ago by git

  • Commit changed from ba6c218334007974eb88427a9ba7a36b64361268 to 4d79d4b377961d4fc712347c624e940438331c92

Branch pushed to git repo; I updated commit sha1. New commits:

4d79d4bFix frompickle() call

comment:45 Changed 5 years ago by git

  • Commit changed from 4d79d4b377961d4fc712347c624e940438331c92 to 55b17c7b5315c21a4760c553ddfd202fe5e99ed4

Branch pushed to git repo; I updated commit sha1. New commits:

55b17c7Trivial autodoc changes

comment:46 in reply to: ↑ 42 Changed 5 years ago by jhpalmieri

Replying to strogdon:

Also, sphinx still tries to load alabaster even though it is not installed because of no_alabaster.patch.

Right, I guess that's what I meant by "other errors".

comment:47 Changed 5 years ago by strogdon

So, using MAKE=make -j1 the first failures/warnings are:

[repl     ] /64bitdev/storage/sage-git_develop/sage/src/doc/en/reference/repl/sage/repl/display/fancy_repr.rst:13: WARNING: don't know which module to import for autodocumenting u'__call__' (try placing a "module" or "currentmodule" directive in the document, or giving an explicit module name)
[repl     ] /64bitdev/storage/sage-git_develop/sage/src/doc/en/reference/repl/sage/repl/display/fancy_repr.rst:23: WARNING: don't know which module to import for autodocumenting u'__call__' (try placing a "module" or "currentmodule" directive in the document, or giving an explicit module name)
[repl     ] /64bitdev/storage/sage-git_develop/sage/src/doc/en/reference/repl/sage/repl/display/fancy_repr.rst:53: WARNING: don't know which module to import for autodocumenting u'__call__' (try placing a "module" or "currentmodule" directive in the document, or giving an explicit module name)
[repl     ] /64bitdev/storage/sage-git_develop/sage/src/doc/en/reference/repl/sage/repl/display/fancy_repr.rst:69: WARNING: don't know which module to import for autodocumenting u'__call__' (try placing a "module" or "currentmodule" directive in the document, or giving an explicit module name)
[repl     ] /64bitdev/storage/sage-git_develop/sage/src/doc/en/reference/repl/sage/repl/display/fancy_repr.rst:79: WARNING: don't know which module to import for autodocumenting u'__call__' (try placing a "module" or "currentmodule" directive in the document, or giving an explicit module name)
[repl     ] /64bitdev/storage/sage-git_develop/sage/src/doc/en/reference/repl/sage/repl/display/util.rst:15: WARNING: don't know which module to import for autodocumenting u'__call__' (try placing a "module" or "currentmodule" directive in the document, or giving an explicit module name)

And all occur where there is

    .. automethod:: __call__

which is the same type of error we had way back when. So what's the fix - to include the class name with the method name?

comment:48 Changed 5 years ago by jdemeyer

  • Dependencies changed from #20359, #14840 to #20359, #14840, #20389

comment:49 Changed 5 years ago by jdemeyer

I am working on this, hang on...

comment:50 Changed 5 years ago by git

  • Commit changed from 55b17c7b5315c21a4760c553ddfd202fe5e99ed4 to 44446611df76245bb00bcd8a0090c2480c56b976

Branch pushed to git repo; I updated commit sha1. New commits:

d3d8726Use ref_context instead of temp_data
d87a8b9Fix citation warnings in the first docbuild pass
5eea54eFix documentation formatting
4444661Merge commit '5eea54e3e8c7d9117600a0a2020b881c1415b93f' into t/18497/ticket/18497

comment:51 Changed 5 years ago by strogdon

I see. That's the way it is in the Sphinx autodoc.py.

comment:52 Changed 5 years ago by git

  • Commit changed from 44446611df76245bb00bcd8a0090c2480c56b976 to 73aca63fd0c25b4662a600fa4babaef87bc3c92e

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

046b815update sphinx package to 1.3.1
e6a83cefix some deprecation warnings
8f26547fix orphan setting
490b1bafix warning "more than one target found for cross-reference u'groebner_basis'"
2e872d8trac 18497: in docbuilding, use exclude_patterns instead of exclude_trees.
6202e0fUpgrade to Sphinx 1.4
88ab0b8Fix frompickle() call
fccac05Trivial autodoc changes
7b7a233Use ref_context instead of temp_data
73aca63Fix citation warnings in the first docbuild pass

comment:53 Changed 5 years ago by jdemeyer

  • Dependencies #20359, #14840, #20389 deleted

comment:54 Changed 5 years ago by jdemeyer

  • Description modified (diff)

comment:55 Changed 5 years ago by jdemeyer

  • Description modified (diff)
  • Summary changed from Update Sphinx to 1.4 to Update Sphinx to 1.4.1

comment:56 Changed 5 years ago by git

  • Commit changed from 73aca63fd0c25b4662a600fa4babaef87bc3c92e to 3f44a4846044757fb950baf1896b632807c7bc87

Branch pushed to git repo; I updated commit sha1. This was a forced push. Last 10 new commits:

e19c9cdupdate sphinx package to 1.3.1
687b8d0fix some deprecation warnings
e830471fix orphan setting
f14cee0trac 18497: in docbuilding, use exclude_patterns instead of exclude_trees.
c4bc6ecUpgrade to Sphinx 1.4.1
77f2e25Use object_description() instead of safe_repr()
8fbd81cFix frompickle() call
4899d1bUse ref_context instead of temp_data
dd122ecMerge titles
3f44a48Remove warnings while setting up extensions

comment:57 Changed 5 years ago by git

  • Commit changed from 3f44a4846044757fb950baf1896b632807c7bc87 to 0bf4475d4e79871f48f3313692140c7ad558fc0d

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

0bf4475Remove some warnings

comment:58 Changed 5 years ago by jdemeyer

  • Dependencies set to #20488

comment:59 Changed 5 years ago by strogdon

The html-docs do build once I deal with alabaster.

[tensor_fr] Extension error:
[polynomia] Extension error:
[repl     ] Extension error:
[tensor_fr] Could not import extension alabaster (exception: No module named alabaster)

It seems to me that that either alabaster must be included as a package or it must be neutered (see comment:42). Also there is a typo in /build/pkgs/sphinx/patches/Makefile.patch, epdflatex should be pdflatex which halts building of the latex-docs.

comment:60 Changed 5 years ago by strogdon

I might add that I find it amazing how this has progressed. Initially it was a nightmare.

comment:61 Changed 5 years ago by jdemeyer

The generated documentation doesn't look bad either, there is not much difference with the old version. One thing I noticed is that the sage: prompts are no longer syntax highlighted in a special way. This is probably a bug, in any case it makes the documentation look more boring.

comment:62 Changed 5 years ago by git

  • Commit changed from 0bf4475d4e79871f48f3313692140c7ad558fc0d to fefe126a19438628d17e27a03a0a2c4a84266526

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

59e9128Use exclude_patterns instead of exclude_trees
ec99297Upgrade to Sphinx 1.4.1
a4ac4bdUse object_description() instead of safe_repr()
4fcca56Fix frompickle() call
1b2f057Use ref_context instead of temp_data
cbe7b8aMerge titles
fefe126Remove some warnings

comment:63 Changed 5 years ago by git

  • Commit changed from fefe126a19438628d17e27a03a0a2c4a84266526 to e26d3495e2697933de1012d9890da9be01a65331

Branch pushed to git repo; I updated commit sha1. New commits:

e26d349Fix syntax highlighting

comment:64 Changed 5 years ago by strogdon

Perhaps getting a bit ahead but if I force building the pdf-docs I get

                $
l.6285 \($\prod
               _j=1^{i-1} m_j^{-1} (mod m_i)$\)

which seems to come from

local/share/doc/sage/latex/en/reference/rings_standard/rings_standard.tex

The associated math formulas in

local/share/doc/sage/html/en/reference/rings_standard/sage/ext/multi_modular.html

don't look correct.

WikiFormatting is not working properly for me here. I can't get what I want inside a {{{...}}}

comment:65 follow-up: Changed 5 years ago by jhpalmieri

Is this the formula on line 710 of multi_modular.pyx? That looks like it has extra backticks or dollar signs: the formula should have one or the other, not both.

comment:66 Changed 5 years ago by jdemeyer

  • Description modified (diff)

comment:67 Changed 5 years ago by git

  • Commit changed from e26d3495e2697933de1012d9890da9be01a65331 to 7c2d9d570966b59fd449eb50273242a627eb50f5

Branch pushed to git repo; I updated commit sha1. This was a forced push. Last 10 new commits:

1d1a55efix some deprecation warnings
ad77f32fix orphan setting
0c2d32bUse exclude_patterns instead of exclude_trees
8994b2eUpgrade to Sphinx 1.4.1
d8bd358Use object_description() instead of safe_repr()
eb4b263Fix frompickle() call
496b284Use ref_context instead of temp_data
e16162fMerge titles
039dd29Remove some warnings
7c2d9d5Fix syntax highlighting

comment:68 in reply to: ↑ 11 Changed 5 years ago by jdemeyer

Replying to strogdon:

Also, if alabaster is not needed then sphinx will have to be patched to prevent it from being imported.

I fixed this problem by simply installing alabaster. It's a small package, so it's not worth the trouble to patch Sphinx for it. Also, while Sage doesn't use alabaster, maybe other packages do use it.

comment:69 in reply to: ↑ 65 ; follow-up: Changed 5 years ago by strogdon

Replying to jhpalmieri:

Is this the formula on line 710 of multi_modular.pyx? That looks like it has extra backticks or dollar signs: the formula should have one or the other, not both.

Yes, that's it. And there is a similar problem in src/sage/symbolic/expression.pyx around line 8830.

 There are two square roots of `$(x + 1)^2$`

It appears this version of Sphinx is exposing some sphinx syntax issues in the documentation that now appear when generating the latex files for building the pdf-docs. The older sphinx -> latex must be a bit more forgiving.

comment:70 Changed 5 years ago by git

  • Commit changed from 7c2d9d570966b59fd449eb50273242a627eb50f5 to f1ae5e679cba7b7873c2c2654694e9d04c3e0c81

Branch pushed to git repo; I updated commit sha1. New commits:

f1ae5e6Fix doctest failures with Sphinx 1.4.1

comment:71 in reply to: ↑ 69 Changed 5 years ago by jdemeyer

Replying to strogdon:

Yes, that's it. And there is a similar problem in src/sage/symbolic/expression.pyx around line 8830.

Feel free to add commits to fix such issues. I will stop rebasing this branch to make it easier for other people to push fixes.

Sage now builds and all doctests pass with this branch. On first sight, the documentation looks good too.

comment:72 follow-up: Changed 5 years ago by strogdon

Also, I see two of

! LaTeX Error: Lonely \item--perhaps a missing list environment.

in docpdf.log. After grepping through latex/en/reference it's because of combinat/combinat.tex and graphs/graphs.tex where there is

}, \footnote[2]{\sphinxAtStartFootnote%\begin{enumerate}
\setcounter{enumi}{4}
\item {}
Assmus, J. Key, Designs and their codes, CUP, 1992.

\end{enumerate}

I suspect this should be

}, \footnote[2]{\sphinxAtStartFootnote%
\begin{enumerate}
\setcounter{enumi}{4}
\item {}
Assmus, J. Key, Designs and their codes, CUP, 1992.

\end{enumerate}

which does work. And since this is auto-generated, I suspect a bug?

comment:73 in reply to: ↑ 72 Changed 5 years ago by jdemeyer

Replying to strogdon:

And since this is auto-generated, I suspect a bug?

The real problem is that docutils interprets this as a list item (and that's a feature!):

E. Assmus, J. Key, Designs and their codes, CUP, 1992.

This should work:

-.. [2] E. Assmus, J. Key, Designs and their codes, CUP, 1992.
+.. [2] \E. Assmus, J. Key, Designs and their codes, CUP, 1992.

comment:74 Changed 5 years ago by jdemeyer

See #20496 for this.

comment:75 Changed 5 years ago by jdemeyer

  • Dependencies changed from #20488 to #20496

comment:76 Changed 5 years ago by jdemeyer

  • Dependencies changed from #20496 to #20496, #20498

comment:77 Changed 5 years ago by git

  • Commit changed from f1ae5e679cba7b7873c2c2654694e9d04c3e0c81 to e88c802d410411061c8e3972bbb5e2e2ed72cdfe

Branch pushed to git repo; I updated commit sha1. New commits:

e88c802Fix malformatted mathematics

comment:78 Changed 5 years ago by git

  • Commit changed from e88c802d410411061c8e3972bbb5e2e2ed72cdfe to bdc3f0b8f6be1e0b0bc8e2bbf26067262be90c88

Branch pushed to git repo; I updated commit sha1. New commits:

00722fdEscape abbreviated first names in references
d92eadaAdd documentation
54d3cf8Clean up multi_modular.pyx
ae6192aMove multi_modular to arith
bdc3f0bMerge commit 'd92eadade4c3b6a477a14809adeac3c058458ad3'; commit 'ae6192a2a300f7fb7a1bae3dd8034e4d24767428' into t/18497/ticket/18497

comment:79 Changed 5 years ago by jhpalmieri

Is this ready for review?

comment:80 Changed 5 years ago by strogdon

So I've finally been able to build the pdf-docs without error.

comment:81 Changed 5 years ago by jdemeyer

  • Status changed from needs_work to needs_review

Let's say it's ready for review then.

comment:82 Changed 5 years ago by strogdon

  • Reviewers set to Steven Trogdon
  • Status changed from needs_review to positive_review

This looks good. Everything builds here. I do see

Makefile:27: recipe for target 'all-pdf-ja' failed
make[2]: [all-pdf-ja] Error 255 (ignored)
for f in *.tex; do platex -kanji=utf8  $f; done

when building the Japanese pdfs (the two Japanese pdfs are generated and, as far as I can determine, look OK). Perhaps a consequence of my system Japanese lang installation which took some effort to get it to work.

@jhpalmieri (John) add your name if you concur.

comment:83 Changed 5 years ago by jhpalmieri

  • Reviewers changed from Steven Trogdon to Steven Trogdon, John Palmieri

comment:84 Changed 5 years ago by jdemeyer

I never managed to get the Japanese docs working, so I cannot fully test that either.

comment:85 Changed 5 years ago by vbraun

  • Branch changed from u/jdemeyer/ticket/18497 to bdc3f0b8f6be1e0b0bc8e2bbf26067262be90c88
  • Resolution set to fixed
  • Status changed from positive_review to closed
Note: See TracTickets for help on using tickets.