Request for Changes-57: Migrate Cookbook to RST
[Request for Changes - 52] Migrate Cookbook to RST
- Author: Victor Poughon and Rashad Kanavath
- Additional Contributors (if different than authors)
- Submitted on dd.mm.yyyy
- Proposed target release 5.8
- Adopted (if voted for), Rejected (if voted against), Merged in OTB x.y (if merged)
Good documentation is very important! Following RFComments-5, this branch does two things
1. Convert to RST format and the Sphinx build system.
2. Move the sources to OTB main git repository in Documentation/Cookbook
You can see the new cookbook here: https://www.orfeo-toolbox.org/packages/doc/tests-rfc-52/cookbook-20e42e3ac/
The conversion to RST is done to improve the quality of the layout and rendering, to enable easier contributions from outside the core OTB team and to enable use on the readthedocs website : []. Additionally, RST has better html rendering than latex, an easier learning curve, and renders directly on github (as noted in RFComments-5).
The move to the OTB source tree is done for the same reasons we move the Software Guide and Monteverdi. The cookbook follows the same release schedule and procedures as the rest of OTB, and therefore otb-documents has to be kept in sync manually. This will simplify both development and release processes.
The major downside to this migration is that git history is lost.
Building the new cookbook requires Sphinx and is as simple as:
mkdir build-cookbook cd build-cookbook cmake path/to/otb/source/Documentation/Cookbook -DOTB_DIR=path/to/otb/build/lib/cmake/OTB-X.Y make
The conversion was done with pandoc, with manual corrections of some formatting errors. OTB applications documentation is generated at compile time with a script (otbGenerateWrappersRstDoc.py).
Classes and files
Cookbook and application documentation only. This branch also contains some improvements to the cookbook not present in otb-documents: chapter layout, typos and updated images.
- remove otbcb.readthedocs.io and host this on otb packages (trunk and stable)
- Update How to Release procedure
- Update nightly build platforms
- git rm/deprecate cookbook in otb-documents
- impose rst documentation inside otb application docs (future rfc)
- Try to add "edit on github links": https://github.com/snide/sphinx_rtd_theme/issues/314