Revision 235853956f699c32dcc9ce4c4311724c3f90705a authored by st-- on 15 April 2020, 12:19:00 UTC, committed by GitHub on 15 April 2020, 12:19:00 UTC
Release notes:
- Improve structure of likelihoods subdirectory (#1416)
- Update README.md (#1401) and GPflow 2 upgrade guide (#1414)
- Improved handling of invalid values for constrained Parameters (#1408)
- Improvements on types/function annotations (#1406, #1420)
- Documentation improvements (metalearning with GPs: #1382, coregionalization notebook: #1402, MCMC notebook: #1410, intro to gpflow with tensorflow 2: #1413)
- Minor documentation fixes (#1429, #1430, #1433)
- Fix: move matplotlib import inside ImageToTensorBoard (#1399)
- Fix: tf.function compilation of ndiagquad (#1418)
- Fix: cache tensorboard file writers and re-use them (#1424)
2 parent s 47e788a + 3fc050d
Raw File
README.md
# GPflow documentation

## Read documentation online

[![Documentation Status (master)](https://readthedocs.org/projects/gpflow/badge/?version=master)](http://gpflow.readthedocs.io/en/master/?badge=master)
[![Documentation Status (develop)](https://readthedocs.org/projects/gpflow/badge/?version=develop)](http://gpflow.readthedocs.io/en/develop/?badge=develop)

We use readthedocs to build the online documentation, and have separate versions for the `master` and `develop` branches:
https://gpflow.readthedocs.io/en/master/ (for the latest official release e.g. on PyPI) and
https://gpflow.readthedocs.io/en/develop/ (for the latest cutting-edge code available from the develop branch on github).


## Compile documentation locally

To compile the GPflow documentation locally:

1. Change to this directory (e.g. `cd doc` if you are in the GPflow git repository's base directory)

2. Install doc dependencies
   ```
   pip install sphinx sphinx_rtd_theme numpydoc nbsphinx sphinx_autodoc_typehints ipython jupytext jupyter_client ipywidgets
   ```

3. Install pandoc
   ```
   pip install pandoc
   ```
   If pandoc does not install via pip, or step 5 does not work, go to pandoc.org/installing.html (the PyPI package depends on the external system-wide installation of pandoc executables)

4. Generate auto-generated files
   * Notebooks (.ipynb): run `make -C source/notebooks -j 4` (here with 4 parallel threads)
   * API documentation (.rst): run `python source/generate_module_rst.py`

5. Compile the documentation
   ```
   make html
   ```

6. Check documentation locally by opening (in a browser) build/html/index.html


## Setup for automatic documentation generation

Upon each merge to the `develop` branch, this repository's [CircleCI configuration](../.circleci/config.yml) runs the `trigger-docs-generation` step
which triggers a CircleCI build on the [GPflow/docs repository](https://github.com/GPflow/docs).
This clones the latest GPflow develop branch and compiles all notebooks from jupytext to .ipynb
(setting the `DOCS` environment variable so that notebook optimisations are run to convergence)
and runs the `generate_module_rst.py` script as above to generate the .rst files for API documentation.
(This script is run on CircleCI, instead of ReadTheDocs, as it requires gpflow and hence `tensorflow` and `tensorflow_probability` to be installed, but TensorFlow is too large to be installed inside the ReadTheDocs docker images.)
ReadTheDocs then pulls in these auto-generated files as well as all other files within this doc/ directory to actually build the documentation using Sphinx.
back to top