This folder contains the source content of the User Guide
and Contributor Guide. The site root shows the
development documentation built from main. Released versions of the complete
site are available under /versions/<version>/.
Install build dependencies and build the documentation using uv:
uv sync
uv run bash build.shThe docs build regenerates the workspace dependency graph via
docs/scripts/generate_dependency_graph.sh, so ensure cargo, cargo-depgraph
(cargo install cargo-depgraph --version ^1.6 --locked), and Graphviz dot
(brew install graphviz or sudo apt-get install -y graphviz) are available.
Run the provided script to build the HTML pages.
# If using venv, ensure you have activated it
./build.shThe HTML will be generated into a build directory. Open build/html/index.html
in your preferred browser, for example on Linux via
# On macOS
open build/html/index.html
# On Linux with Firefox
firefox build/html/index.htmlNote that some features of the site, such as the version picker, do not work when the pages are opened directly as files. To preview such features, serve the site over HTTP with sphinx-autobuild:
uv run --with sphinx-autobuild sphinx-autobuild source build/html --port 8000And then open http://localhost:8000/ in your browser
To make changes to the docs, simply make a Pull Request with your proposed changes as normal. When the PR is merged the docs will be automatically updated.
This documentation is hosted at https://datafusion.apache.org/
When a PR is merged to the main branch of the DataFusion
repository, a github workflow which:
- Builds the html content
- Pushes the html content to the
asf-sitebranch in this repository.
The Apache Software Foundation provides https://datafusion.apache.org/, which serves content based on the configuration in .asf.yaml, which specifies the target as https://datafusion.apache.org/.
The documentation for previously released versions is served under
/versions/<version>/. The releases in the version picker are listed in
source/_static/versions.json, and older releases that are still published,
but not shown in the picker, are listed in source/_static/old_versions.json.
See the
release instructions
for how it is published.