earthlab / matplotcheck

A python package for checking and testing matplotlib plots. We use this for autograding student assignments but there are many other potential use cases including package testing (for packages with plots)!
https://matplotcheck.readthedocs.io
BSD 3-Clause "New" or "Revised" License
18 stars 8 forks source link

RTD build isn't working #23

Closed lwasser closed 5 years ago

lwasser commented 5 years ago

Currently attempting to setup autodoc and such for automated documentation of the base API. however, in that setup running into several build errors including:

  1. :Unexpected section title. errors (when i turn of napoleon) and
  2. when napoleon is "on". seems liked a format issue but am not sure how to begin to troubleshoot!
# Sphinx version: 1.8.0
# Python version: 3.7.2 (CPython)
# Docutils version: 0.14
# Jinja2 version: 2.10
# Last messages:
#   updating environment:
#   0 added, 0 changed, 0 removed
#   looking for now-outdated files...
#   none found
#   pickling environment...
#   done
#   preparing documents...
#   done
#   writing output... [ 33%] index
#   writing output... [ 66%] matplotcheck
# Loaded extensions:
#   sphinx.ext.mathjax (1.8.0) from /anaconda3/envs/matplotcheck-dev/lib/python3.7/site-packages/sphinx/ext/mathjax.py
#   alabaster (0.7.12) from /anaconda3/envs/matplotcheck-dev/lib/python3.7/site-packages/alabaster/__init__.py
#   sphinx.ext.autodoc (1.8.0) from /anaconda3/envs/matplotcheck-dev/lib/python3.7/site-packages/sphinx/ext/autodoc/__init__.py
#   sphinx.ext.doctest (1.8.0) from /anaconda3/envs/matplotcheck-dev/lib/python3.7/site-packages/sphinx/ext/doctest.py
#   sphinx.ext.napoleon (1.8.0) from /anaconda3/envs/matplotcheck-dev/lib/python3.7/site-packages/sphinx/ext/napoleon/__init__.py
#   matplotlib.sphinxext.plot_directive (unknown version) from /anaconda3/envs/matplotcheck-dev/lib/python3.7/site-packages/matplotlib/sphinxext/plot_directive.py
#   sphinx.ext.viewcode (1.8.0) from /anaconda3/envs/matplotcheck-dev/lib/python3.7/site-packages/sphinx/ext/viewcode.py
Traceback (most recent call last):
  File "/anaconda3/envs/matplotcheck-dev/lib/python3.7/site-packages/sphinx/cmd/build.py", line 304, in build_main
    app.build(args.force_all, filenames)
  File "/anaconda3/envs/matplotcheck-dev/lib/python3.7/site-packages/sphinx/application.py", line 341, in build
    self.builder.build_update()
  File "/anaconda3/envs/matplotcheck-dev/lib/python3.7/site-packages/sphinx/builders/__init__.py", line 347, in build_update
    len(to_build))
  File "/anaconda3/envs/matplotcheck-dev/lib/python3.7/site-packages/sphinx/builders/__init__.py", line 412, in build
    self.write(docnames, list(updated_docnames), method)
  File "/anaconda3/envs/matplotcheck-dev/lib/python3.7/site-packages/sphinx/builders/__init__.py", line 593, in write
    self._write_serial(sorted(docnames))
  File "/anaconda3/envs/matplotcheck-dev/lib/python3.7/site-packages/sphinx/builders/__init__.py", line 604, in _write_serial
    self.write_doc(docname, doctree)
  File "/anaconda3/envs/matplotcheck-dev/lib/python3.7/site-packages/sphinx/builders/html.py", line 730, in write_doc
    self.docwriter.write(doctree, destination)
  File "/anaconda3/envs/matplotcheck-dev/lib/python3.7/site-packages/docutils/writers/__init__.py", line 80, in write
    self.translate()
  File "/anaconda3/envs/matplotcheck-dev/lib/python3.7/site-packages/sphinx/writers/html.py", line 58, in translate
    self.document.walkabout(visitor)
  File "/anaconda3/envs/matplotcheck-dev/lib/python3.7/site-packages/docutils/nodes.py", line 174, in walkabout
    if child.walkabout(visitor):
  File "/anaconda3/envs/matplotcheck-dev/lib/python3.7/site-packages/docutils/nodes.py", line 174, in walkabout
    if child.walkabout(visitor):
  File "/anaconda3/envs/matplotcheck-dev/lib/python3.7/site-packages/docutils/nodes.py", line 174, in walkabout
    if child.walkabout(visitor):
  [Previous line repeated 6 more times]
  File "/anaconda3/envs/matplotcheck-dev/lib/python3.7/site-packages/docutils/nodes.py", line 166, in walkabout
    visitor.dispatch_visit(self)
  File "/anaconda3/envs/matplotcheck-dev/lib/python3.7/site-packages/docutils/nodes.py", line 1882, in dispatch_visit
    return method(node)
  File "/anaconda3/envs/matplotcheck-dev/lib/python3.7/site-packages/docutils/writers/html4css1/__init__.py", line 402, in visit_field_body
    self.set_class_on_child(node, 'first', 0)
  File "/anaconda3/envs/matplotcheck-dev/lib/python3.7/site-packages/docutils/writers/_html_base.py", line 399, in set_class_on_child
    child['classes'].append(class_)
TypeError: string indices must be integers
lwasser commented 5 years ago

UPDATE: sphinx v 2.0 fixes this issue! however the actual build is failing now because of certifii... which is likely a conda / pip mixup issue.. docs now build locally however!