To reference or cite the objects present in the Software Heritage archive, permalinks based on SoftWare Heritage persistent IDentifiers (SWHIDs) must be used instead of copying and pasting the url from the address bar of the browser (as there is no guarantee the current URI scheme will remain the same over time).
Select below a type of object currently browsed in order to display its associated SWHID and permalink.
# 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.