Hi all, We use the Sphinx documentation tool for the main Arrow documentation (the format specs, the developer docs) and several of the languages (C++, Python, part of the Java docs). This lives in the /docs subdirectory of the Arrow repo.
Currently, this is a single large sphinx project. The advantage is that this makes it easy to build the full set of docs, but it also has several disadvantages. For one, it makes it harder to contribute to the docs. For example, if you want to contribute a fix to the developer docs, and you want to verify the change locally, you need to build the full docs which 1) requires to have the dev version of C++ Arrow and PyArrow installed, and 2) takes quite some time the first time. My proposal is to split the single sphinx project into multiple projects, that (for development) can easily be built independently. I listed some reasons to do this and how to approach this technically in the following google doc: https://docs.google.com/document/d/1AXDNwU5CSnZ1cSeUISwy_xgvTzoYWeuqWApC8UEv97Q/edit?usp=sharing What would people think of such a change? Feedback very welcome! Joris