Blog update: I just got an email from PSF regarding the blogging. It appears that all blogs this year must be on the python-gsoc blogs site itself. So the blog for this project will live at https://blogs.python-gsoc.org/aditya-bharti/ . Regards, Aditya On 29 April 2018 at 09:40, Aditya Bharti <adibhar97@gmail.com> wrote:
So I finally got the docs built. Couple of points which I think might be helpful to people building docs in the future:
- You need to have sphinx installed in your working environment (native installation, virtualenv, conda, whatever). I did not see sphinx listed as a dependency online. Maybe it should be included in the HACKING.rst.txt file? - You do *NOT* need to have numpydoc installed on your system. Irrespective of where it is installed, the build process only uses the numpydoc package present under the sphinxext directory. I wasted a lot of hours trying to find which version of numpydoc was being used as I had it installed both in my virtualenv, and native installation; neither of those had the faulty import line. - After using `git submodule update` to get the latest sphinxext directory and numpydoc installation, the faulty import line in file doc/sphinxext/numpydoc/numpydoc.py needs to be changed. From
from sphinx.util.compat import Directive
to
from docutils.parsers.rst import Directive
Thank you Lars for pointing that out. - Finally, and this was my fault entirely, I had my virtual environment running python version 3.5.2, but as python3 or python. Calling python3.5 (as the Makefile was doing when I set PYVER=3.5) called the python executable in /usr/bin/python3.5, which couldn't find the sphinx module itself (as I didn't install it along with my native installation). Setting PYVER=3, or PYTHON=/path/to/python/in/virtualenv fixed this.
On 25 April 2018 at 03:40, Lars G. <lagru@mailbox.org> wrote:
On 24.04.2018 20:36, Aditya Bharti wrote:
Regarding building the documentation, I was able to figure out that I needed to install sphinx separately. The HACKING.rst.txt file only mentions Numpy Cython and pytest as dependencies. I was able to get the make command running with `make html PYVER=3.5`, but I'm getting the follwing error:
Could not import extension numpydoc (exception: cannot import name 'Directive')
Hello Aditya,
I had the same problem with my setup. I'm still a little bit confused but I think the error was due to an old version of numpydoc trying use an import that didn't work with new versions of sphinx. I think got the old version with the git-submodules included in the doc-dirctory (can be downloaded with `git submodule update`).
Anyway I got it to work by modifying the faulty import itself. Try to find the file numpydoc/numpydoc.py and try to find the line:
from sphinx.util.compat import Directive
If you can find that line you may be in luck because replacing that line with:
from docutils.parsers.rst import Directive
fixed it for me. I hope this helps.
By the way, perhaps it would be useful to extend the doc/README.txt with a more thorough explanation of the build process and mention that the submodules can be downloaded with `git submodule update`. I only found out because I looked at guide for NumPy https://github.com/numpy/numpy/blob/master/doc/source/docs/ howto_build_docs.rst while trying to figure out the build process myself.
Best regards, Lars
_______________________________________________ SciPy-Dev mailing list SciPy-Dev@python.org https://mail.python.org/mailman/listinfo/scipy-dev