dask-sql icon indicating copy to clipboard operation
dask-sql copied to clipboard

[DOC] API docs not rendering

Open ayushdg opened this issue 3 years ago • 2 comments

Report incorrect documentation

Location of incorrect documentation The api documentations page returns a blank page on the docs site.

Might be similar to #215


ayushdg avatar Feb 14 '22 22:02 ayushdg

Attempting to build the docs, it looks like we fail when trying to load in a non-existent function:

Running Sphinx v4.4.0
loading pickled environment... done
building [mo]: targets for 0 po files that are out of date
building [html]: targets for 15 source files that are out of date
updating environment: 0 added, 15 changed, 0 removed
reading sources... [100%] sql/select                                                                                                                                                                                                                                                                                  
WARNING: autodoc: failed to import function 'fsql' from module 'dask_sql.integrations.fugue'; the following exception was raised:
Traceback (most recent call last):
  File "/datasets/charlesb/miniconda3/envs/dask-sql-docs/lib/python3.9/site-packages/sphinx/util/inspect.py", line 448, in safe_getattr
    return getattr(obj, name, *defargs)
AttributeError: module 'dask_sql.integrations.fugue' has no attribute 'fsql'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/datasets/charlesb/miniconda3/envs/dask-sql-docs/lib/python3.9/site-packages/sphinx/ext/autodoc/importer.py", line 110, in import_object
    obj = attrgetter(obj, mangled_name)
  File "/datasets/charlesb/miniconda3/envs/dask-sql-docs/lib/python3.9/site-packages/sphinx/ext/autodoc/__init__.py", line 332, in get_attr
    return autodoc_attrgetter(self.env.app, obj, name, *defargs)
  File "/datasets/charlesb/miniconda3/envs/dask-sql-docs/lib/python3.9/site-packages/sphinx/ext/autodoc/__init__.py", line 2828, in autodoc_attrgetter
    return safe_getattr(obj, name, *defargs)
  File "/datasets/charlesb/miniconda3/envs/dask-sql-docs/lib/python3.9/site-packages/sphinx/util/inspect.py", line 464, in safe_getattr
    raise AttributeError(name) from exc
AttributeError: fsql

Looks like dask_sql.integrations.fugue.fsql might have been relocated to fsql_dask? If that's the only issue then it should be a hypothetically easy fix, although I'm interested in why this wouldn't have cause the RTD builds to fail outright.

Think this is a good motivator to add RTD builds to PRs, which should give us a better idea of when code changes will break the docs.

charlesbluca avatar Feb 14 '22 23:02 charlesbluca

It looks like this breakage in particular is because of https://github.com/dask-contrib/dask-sql/pull/396, as python setup.py install no longer builds the Java extensions, which are needed for the API docs.

I will see if we can customize the build script for dask-sql, otherwise we may need to make a custom build_ext step as suggested in https://github.com/dask-contrib/dask-sql/issues/400 so that the Java / Python builds are consolidated

charlesbluca avatar Feb 15 '22 00:02 charlesbluca