0006. The deploy tree is organised by builder, not by document =============================================================== Status ------ Accepted. Context ------- Output used to land at ``deploy///``: each document owned a folder, and its HTML, PDF and other builder outputs sat inside it. That groups by the wrong axis for the one operation the tree exists for. Publishing means "put the HTML on the web server" — and under that layout the HTML of a documentation set is scattered across as many folders as there are documents, interleaved with PDFs and LaTeX intermediates that must not be served. Decision -------- The axes are swapped: ``deploy///``. The publish step becomes a single directory sync of ``deploy/html/`` (and optionally ``deploy/pdf/``), and the servable tree contains nothing that is not servable. The ``latex`` builder's folder is named ``pdf``, because what is published from it is the PDF, not the LaTeX intermediates that produced it. The engine also takes control of Doxygen's ``HTML_OUTPUT`` as part of this: a Doxygen document's public directory could not otherwise be reached, because Doxygen's own default nests an ``html/`` level inside whatever output directory it is given.