PSLmodels / Tax-Calculator

USA Federal Individual Income and Payroll Tax Microsimulation Model
https://taxcalc.pslmodels.org
Other
257 stars 156 forks source link

RTD build is failing #305

Closed MattHJensen closed 9 years ago

MattHJensen commented 9 years ago

Here is the trace. I have not had a chance to do much investigation yet.

cc @talumbau, @jlyons871, @martinholmer

Build for taxcalc

Built: July 11, 2015. 10:19 a.m.

State: Finished

Outcome: Failed (Status Code: 1)

Version: latest

Type: html

Commit: 7be74b02e1e4d59d5673195f30db3dd5abea7c99

Length: 22 seconds

Build Standard Output

html

Running Sphinx v1.3.1 making output directory... Build Standard Error

html

Traceback (most recent call last): File "/home/docs/checkouts/readthedocs.org/user_builds/taxcalc/envs/latest/local/lib/python2.7/site-packages/sphinx/cmdline.py", line 244, in main opts.warningiserror, opts.tags, opts.verbosity, opts.jobs) File "/home/docs/checkouts/readthedocs.org/user_builds/taxcalc/envs/latest/local/lib/python2.7/site-packages/sphinx/application.py", line 143, in init self.setup_extension(extension) File "/home/docs/checkouts/readthedocs.org/user_builds/taxcalc/envs/latest/local/lib/python2.7/site-packages/sphinx/application.py", line 433, in setup_extension err) ExtensionError: Could not import extension sphinxcontrib.napoleon (exception: No module named sphinxcontrib.napoleon)

Extension error: Could not import extension sphinxcontrib.napoleon (exception: No module named sphinxcontrib.napoleon) Setup Output

checkout

venv

Using real prefix '/usr' New python executable in /home/docs/checkouts/readthedocs.org/user_builds/taxcalc/envs/latest/bin/python Installing setuptools, pip...done.

doc_builder

Downloading/unpacking sphinx==1.3.1 Downloading/unpacking Pygments==2.0.2 Downloading/unpacking virtualenv==1.10.1 Downloading/unpacking setuptools==1.1 Downloading/unpacking docutils==0.11 Downloading/unpacking mkdocs==0.14.0 Downloading/unpacking mock==1.0.1 Downloading/unpacking pillow==2.6.1 Downloading/unpacking readthedocs-sphinx-ext==0.5.4 Downloading readthedocs_sphinx_ext-0.5.4-py2.py3-none-any.whl Downloading/unpacking sphinx-rtd-theme==0.1.8 Downloading/unpacking alabaster>=0.7,!=0.7.5,<0.8 Downloading alabaster-0.7.6-py2-none-any.whl Downloading/unpacking recommonmark==0.1.1 Downloading recommonmark-0.1.1-py2.py3-none-any.whl Downloading/unpacking Jinja2>=2.3 (from sphinx==1.3.1) Downloading/unpacking babel>=1.3 (from sphinx==1.3.1) Running setup.py (path:/home/docs/checkouts/readthedocs.org/user_builds/taxcalc/envs/latest/build/babel/setup.py) egg_info for package babel

warning: no previously-included files matching '*' found under directory 'docs/_build'
warning: no previously-included files matching '*.pyc' found under directory 'tests'
warning: no previously-included files matching '*.pyo' found under directory 'tests'

Downloading/unpacking six>=1.4 (from sphinx==1.3.1) Downloading six-1.9.0-py2.py3-none-any.whl Downloading/unpacking snowballstemmer>=1.1 (from sphinx==1.3.1) Running setup.py (path:/home/docs/checkouts/readthedocs.org/user_builds/taxcalc/envs/latest/build/snowballstemmer/setup.py) egg_info for package snowballstemmer

warning: no files found matching '*.py' under directory 'src'

Downloading/unpacking tornado>=4.1 (from mkdocs==0.14.0) Running setup.py (path:/home/docs/checkouts/readthedocs.org/user_builds/taxcalc/envs/latest/build/tornado/setup.py) egg_info for package tornado

no previously-included directories found matching 'docs/build'
warning: no files found matching 'tornado/test/README'

Downloading/unpacking Markdown>=2.3.1 (from mkdocs==0.14.0) Downloading/unpacking click>=4.0 (from mkdocs==0.14.0) Downloading/unpacking PyYAML>=3.10 (from mkdocs==0.14.0) Running setup.py (path:/home/docs/checkouts/readthedocs.org/user_builds/taxcalc/envs/latest/build/PyYAML/setup.py) egg_info for package PyYAML

Downloading/unpacking livereload>=2.3.2 (from mkdocs==0.14.0) Downloading livereload-2.4.0-py2.py3-none-any.whl Downloading/unpacking nilsimsa>=0.3.7 (from readthedocs-sphinx-ext==0.5.4) Running setup.py (path:/home/docs/checkouts/readthedocs.org/user_builds/taxcalc/envs/latest/build/nilsimsa/setup.py) egg_info for package nilsimsa

Downloading/unpacking requests (from readthedocs-sphinx-ext==0.5.4) Downloading/unpacking commonmark>=0.5.4 (from recommonmark==0.1.1) Running setup.py (path:/home/docs/checkouts/readthedocs.org/user_builds/taxcalc/envs/latest/build/commonmark/setup.py) egg_info for package commonmark

Downloading/unpacking markupsafe (from Jinja2>=2.3->sphinx==1.3.1) Downloading/unpacking pytz>=0a (from babel>=1.3->sphinx==1.3.1) Downloading/unpacking backports.ssl-match-hostname (from tornado>=4.1->mkdocs==0.14.0) Downloading backports.ssl_match_hostname-3.4.0.2.tar.gz Running setup.py (path:/home/docs/checkouts/readthedocs.org/user_builds/taxcalc/envs/latest/build/backports.ssl-match-hostname/setup.py) egg_info for package backports.ssl-match-hostname

Downloading/unpacking certifi (from tornado>=4.1->mkdocs==0.14.0) Installing collected packages: sphinx, Pygments, virtualenv, setuptools, docutils, mkdocs, mock, pillow, readthedocs-sphinx-ext, sphinx-rtd-theme, alabaster, recommonmark, Jinja2, babel, six, snowballstemmer, tornado, Markdown, click, PyYAML, livereload, nilsimsa, requests, commonmark, markupsafe, pytz, backports.ssl-match-hostname, certifi Running setup.py install for babel

warning: no previously-included files matching '*' found under directory 'docs/_build'
warning: no previously-included files matching '*.pyc' found under directory 'tests'
warning: no previously-included files matching '*.pyo' found under directory 'tests'
Installing pybabel script to /home/docs/checkouts/readthedocs.org/user_builds/taxcalc/envs/latest/bin

Running setup.py install for snowballstemmer

warning: no files found matching '*.py' under directory 'src'

Running setup.py install for tornado building 'tornado.speedups' extension x86_64-linux-gnu-gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.7 -c tornado/speedups.c -o build/temp.linux-x86_64-2.7/tornado/speedups.o tornado/speedups.c:49:1: warning: function declaration isn’t a prototype [-Wstrict-prototypes] initspeedups() { ^ x86_64-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions -Wl,-z,relro -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -D_FORTIFY_SOURCE=2 -g -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security build/temp.linux-x86_64-2.7/tornado/speedups.o -o build/lib.linux-x86_64-2.7/tornado/speedups.so

no previously-included directories found matching 'docs/build'
warning: no files found matching 'tornado/test/README'

Running setup.py install for PyYAML checking if libyaml is compilable x86_64-linux-gnu-gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.7 -c build/temp.linux-x86_64-2.7/check_libyaml.c -o build/temp.linux-x86_64-2.7/check_libyaml.o build/temp.linux-x86_64-2.7/check_libyaml.c:2:18: fatal error: yaml.h: No such file or directory

include

                  ^
compilation terminated.
libyaml is not found or a compiler error: forcing --without-libyaml
(if libyaml is installed correctly, you may need to
 specify the option --include-dirs or uncomment and
 modify the parameter include_dirs in setup.cfg)

Running setup.py install for nilsimsa

Running setup.py install for commonmark changing mode of build/scripts-2.7/cmark.py from 644 to 755

changing mode of /home/docs/checkouts/readthedocs.org/user_builds/taxcalc/envs/latest/bin/cmark.py to 755

Running setup.py install for backports.ssl-match-hostname

Successfully installed sphinx Pygments virtualenv setuptools docutils mkdocs mock pillow readthedocs-sphinx-ext sphinx-rtd-theme alabaster recommonmark Jinja2 babel six snowballstemmer tornado Markdown click PyYAML livereload nilsimsa requests commonmark markupsafe pytz backports.ssl-match-hostname certifi Cleaning up...

requirements

Requirement already satisfied (use --upgrade to upgrade): mock in /home/docs/checkouts/readthedocs.org/user_builds/taxcalc/envs/latest/lib/python2.7/site-packages (from -r docs/requirements-docs.txt (line 4)) Requirement already satisfied (use --upgrade to upgrade): numpy in /usr/lib/python2.7/dist-packages (from -r docs/requirements-docs.txt (line 5)) Requirement already satisfied (use --upgrade to upgrade): pandas in /home/docs/checkouts/readthedocs.org/user_builds/taxcalc/envs/latest/lib/python2.7/site-packages/pandas-0.16.2-py2.7-linux-x86_64.egg (from -r docs/requirements-docs.txt (line 6)) Downloading/unpacking numba (from -r docs/requirements-docs.txt (line 7)) Running setup.py (path:/home/docs/checkouts/readthedocs.org/user_builds/taxcalc/envs/latest/build/numba/setup.py) egg_info for package numba

Requirement already satisfied (use --upgrade to upgrade): six in /usr/lib/python2.7/dist-packages (from -r docs/requirements-docs.txt (line 8)) Downloading/unpacking toolz (from -r docs/requirements-docs.txt (line 9)) Downloading toolz-0.7.2.tar.gz Running setup.py (path:/home/docs/checkouts/readthedocs.org/user_builds/taxcalc/envs/latest/build/toolz/setup.py) egg_info for package toolz

Requirement already satisfied (use --upgrade to upgrade): sphinx in /home/docs/checkouts/readthedocs.org/user_builds/taxcalc/envs/latest/lib/python2.7/site-packages (from -r docs/requirements-docs.txt (line 12)) Downloading/unpacking sphinxcontrib-napoleon==0.2.11 (from -r docs/requirements-docs.txt (line 13)) Downloading sphinxcontrib-napoleon-0.2.11.tar.gz Running setup.py (path:/home/docs/checkouts/readthedocs.org/user_builds/taxcalc/envs/latest/build/sphinxcontrib-napoleon/setup.py) egg_info for package sphinxcontrib-napoleon

Requirement already satisfied (use --upgrade to upgrade): python-dateutil in /usr/lib/python2.7/dist-packages (from pandas->-r docs/requirements-docs.txt (line 6)) Requirement already satisfied (use --upgrade to upgrade): pytz>=2011k in /usr/lib/python2.7/dist-packages (from pandas->-r docs/requirements-docs.txt (line 6)) Downloading/unpacking llvmlite (from numba->-r docs/requirements-docs.txt (line 7)) Running setup.py (path:/home/docs/checkouts/readthedocs.org/user_builds/taxcalc/envs/latest/build/llvmlite/setup.py) egg_info for package llvmlite setup.py disabled on readthedocs: called with ['-c', 'egg_info', '--egg-base', 'pip-egg-info'] Complete output from command python setup.py egg_info: setup.py disabled on readthedocs: called with ['-c', 'egg_info', '--egg-base', 'pip-egg-info']


Cleaning up... Command python setup.py egg_info failed with error code 1 in /home/docs/checkouts/readthedocs.org/user_builds/taxcalc/envs/latest/build/llvmlite

install

running install running bdist_egg running egg_info writing requirements to taxcalc.egg-info/requires.txt writing taxcalc.egg-info/PKG-INFO writing top-level names to taxcalc.egg-info/top_level.txt writing dependency_links to taxcalc.egg-info/dependency_links.txt reading manifest file 'taxcalc.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' writing manifest file 'taxcalc.egg-info/SOURCES.txt' installing library code to build/bdist.linux-x86_64/egg running install_lib running build_py creating build/bdist.linux-x86_64/egg creating build/bdist.linux-x86_64/egg/taxcalc copying build/lib.linux-x86_64-2.7/taxcalc/functions.py -> build/bdist.linux-x86_64/egg/taxcalc copying build/lib.linux-x86_64-2.7/taxcalc/WEIGHTS.csv -> build/bdist.linux-x86_64/egg/taxcalc copying build/lib.linux-x86_64-2.7/taxcalc/_version.py -> build/bdist.linux-x86_64/egg/taxcalc copying build/lib.linux-x86_64-2.7/taxcalc/utils.py -> build/bdist.linux-x86_64/egg/taxcalc copying build/lib.linux-x86_64-2.7/taxcalc/calculate.py -> build/bdist.linux-x86_64/egg/taxcalc copying build/lib.linux-x86_64-2.7/taxcalc/init.py -> build/bdist.linux-x86_64/egg/taxcalc copying build/lib.linux-x86_64-2.7/taxcalc/decorators.py -> build/bdist.linux-x86_64/egg/taxcalc copying build/lib.linux-x86_64-2.7/taxcalc/params.json -> build/bdist.linux-x86_64/egg/taxcalc copying build/lib.linux-x86_64-2.7/taxcalc/behavior.py -> build/bdist.linux-x86_64/egg/taxcalc copying build/lib.linux-x86_64-2.7/taxcalc/records.py -> build/bdist.linux-x86_64/egg/taxcalc copying build/lib.linux-x86_64-2.7/taxcalc/parameters.py -> build/bdist.linux-x86_64/egg/taxcalc copying build/lib.linux-x86_64-2.7/taxcalc/StageIFactors.csv -> build/bdist.linux-x86_64/egg/taxcalc byte-compiling build/bdist.linux-x86_64/egg/taxcalc/functions.py to functions.pyc byte-compiling build/bdist.linux-x86_64/egg/taxcalc/_version.py to _version.pyc byte-compiling build/bdist.linux-x86_64/egg/taxcalc/utils.py to utils.pyc byte-compiling build/bdist.linux-x86_64/egg/taxcalc/calculate.py to calculate.pyc byte-compiling build/bdist.linux-x86_64/egg/taxcalc/init.py to init.pyc byte-compiling build/bdist.linux-x86_64/egg/taxcalc/decorators.py to decorators.pyc byte-compiling build/bdist.linux-x86_64/egg/taxcalc/behavior.py to behavior.pyc byte-compiling build/bdist.linux-x86_64/egg/taxcalc/records.py to records.pyc byte-compiling build/bdist.linux-x86_64/egg/taxcalc/parameters.py to parameters.pyc creating build/bdist.linux-x86_64/egg/EGG-INFO copying taxcalc.egg-info/PKG-INFO -> build/bdist.linux-x86_64/egg/EGG-INFO copying taxcalc.egg-info/SOURCES.txt -> build/bdist.linux-x86_64/egg/EGG-INFO copying taxcalc.egg-info/dependency_links.txt -> build/bdist.linux-x86_64/egg/EGG-INFO copying taxcalc.egg-info/requires.txt -> build/bdist.linux-x86_64/egg/EGG-INFO copying taxcalc.egg-info/top_level.txt -> build/bdist.linux-x86_64/egg/EGG-INFO creating 'dist/taxcalc-0.4.9_88_g7be74b0-py2.7.egg' and adding 'build/bdist.linux-x86_64/egg' to it removing 'build/bdist.linux-x86_64/egg' (and everything under it) Processing taxcalc-0.4.9_88_g7be74b0-py2.7.egg removing '/home/docs/checkouts/readthedocs.org/user_builds/taxcalc/envs/latest/lib/python2.7/site-packages/taxcalc-0.4.9_88_g7be74b0-py2.7.egg' (and everything under it) creating /home/docs/checkouts/readthedocs.org/user_builds/taxcalc/envs/latest/lib/python2.7/site-packages/taxcalc-0.4.9_88_g7be74b0-py2.7.egg Extracting taxcalc-0.4.9_88_g7be74b0-py2.7.egg to /home/docs/checkouts/readthedocs.org/user_builds/taxcalc/envs/latest/lib/python2.7/site-packages taxcalc 0.4.9-88-g7be74b0 is already the active version in easy-install.pth

Installed /home/docs/checkouts/readthedocs.org/user_builds/taxcalc/envs/latest/lib/python2.7/site-packages/taxcalc-0.4.9_88_g7be74b0-py2.7.egg Processing dependencies for taxcalc==0.4.9-88-g7be74b0 Searching for pandas==0.16.2 Best match: pandas 0.16.2 Processing pandas-0.16.2-py2.7-linux-x86_64.egg pandas 0.16.2 is already the active version in easy-install.pth

Using /home/docs/checkouts/readthedocs.org/user_builds/taxcalc/envs/latest/lib/python2.7/site-packages/pandas-0.16.2-py2.7-linux-x86_64.egg Searching for numpy==1.8.2 Best match: numpy 1.8.2 numpy 1.8.2 is already the active version in easy-install.pth

Using /usr/lib/python2.7/dist-packages Searching for pytz==2015.4 Best match: pytz 2015.4 Removing pytz 2012c from easy-install.pth file Adding pytz 2015.4 to easy-install.pth file

Using /home/docs/checkouts/readthedocs.org/user_builds/taxcalc/envs/latest/lib/python2.7/site-packages Searching for python-dateutil==1.5 Best match: python-dateutil 1.5 Adding python-dateutil 1.5 to easy-install.pth file

Using /usr/lib/python2.7/dist-packages Finished processing dependencies for taxcalc==0.4.9-88-g7be74b0 Environment Standard Error

checkout

warning: unable to access '/root/.config/git/attributes': Permission denied

venv

doc_builder

requirements

Traceback (most recent call last): File "/home/docs/checkouts/readthedocs.org/user_builds/taxcalc/envs/latest/bin/pip", line 11, in sys.exit(main()) File "/home/docs/checkouts/readthedocs.org/user_builds/taxcalc/envs/latest/local/lib/python2.7/site-packages/pip/init.py", line 185, in main return command.main(cmd_args) File "/home/docs/checkouts/readthedocs.org/user_builds/taxcalc/envs/latest/local/lib/python2.7/site-packages/pip/basecommand.py", line 163, in main log_file_fp = open_logfile(log_file_fn, 'w') File "/home/docs/checkouts/readthedocs.org/user_builds/taxcalc/envs/latest/local/lib/python2.7/site-packages/pip/basecommand.py", line 194, in open_logfile os.makedirs(dirname) File "/home/docs/checkouts/readthedocs.org/user_builds/taxcalc/envs/latest/lib/python2.7/os.py", line 157, in makedirs mkdir(name, mode) OSError: [Errno 13] Permission denied: '/root/.pip'

install

warning: unable to access '/root/.config/git/attributes': Permission denied zip_safe flag not set; analyzing archive contents... taxcalc.records: module references file taxcalc._version: module references file taxcalc.parameters: module references file

martinholmer commented 9 years ago

Does your environment contain the sphinxcontrib.napoleon package? The following from your trace suggests that may be the problem:

Extension error: Could not import extension sphinxcontrib.napoleon (exception: No module named sphinxcontrib.napoleon)

This package is listed in docs/requirements.txt and is not part of the standard Anaconda distribution, but it I is not in the new environment.yaml file. Does that need to be fixed?

talumbau commented 9 years ago

I got curious because the log indicates that the sphinxcontrib.napoleon did install properly, and yet it claims that it is not installed when it tries to import. This is apparently an issue that has come up with RTD before:

https://github.com/rtfd/readthedocs.org/issues/1164

I wonder if we should re-raise it, because the claim in the issue is that it was fixed in sphinx 1.3.1, but we are using 1.3.1 and are seeing the same issue.

talumbau commented 9 years ago

Oh, perhaps we should use an updated version of sphinxcontrib-napoleon. For example, when I did a pip install on that package, my current version is 0.3.10, which is much more recent than the constraint we have in the requirements.txt.

martinholmer commented 9 years ago

I've been using sphinxcontrib-napoleon version 0.3.10 without any problems to execute "make html" in the docs directory (and upgrading to this newest version eliminated a warning about the new default style).

Why does the docs/requirements-docs.txt file call for the old version 0.2.11?

talumbau commented 9 years ago

@martinholmer, it looks like the old version was specified to work around an issue on RTD:

https://github.com/jlyons871/Tax-Calculator/commit/5fd322d28f2eef41a33ad49f7e9594123ecd38da

Now we are having the same issue again, so the workaround is no longer working. Seems worth trying the latest version and seeing if that fixes the issue.

MattHJensen commented 9 years ago

@jlyons871, sorry, just saw that you were handling this. Could you or @talumbau please merge #310 if it looks like the right way to proceed or close it if not.

zgrnk commented 9 years ago

@MattHJensen @martinholmer @talumbau The last workaround was for an older version of Sphinx. Now that Sphinx 1.3 is supported by both pip and conda, this bug can be averted by updating the minimum required version of sphinx and changing the import statement of the napoleon package as in #311.

Also note for local testing and development of the docs, you now only need sphinx>1.3 and do NOT need to pip install sphinxcontrib-napoleon anymore.