MMF-1180 we took the huge step of embedding SonarQube's documentation into the platform itself, and creating at the same time a static documentation site from the same content that is ~automatically republished with each new version of SonarQube. That removed one space out of four from Confluence. For the remaining content, we continue to link to Confluence, which can be a little jarring for the reader.
Now it's time to go further and provide embedded documentation for language analyzers and other plugins. This will bring additional consistency to the docs, and ease the user's use and configuration of analyses.
As a first step, we'll simply port the relevant content from the PLUG space in Confluence into the embedded docs. Users with a SonarQube version from this stage of the move will benefit from having analyzer documentation included in their embedded documentation, but will suffer from the fact that those docs will be static and not updated along with the relevant plugins. Specifically if my version of SonarQube shipped with x.1 of an analyzer, it will continue to have the documentation for x.1, even after I've upgraded to z.9.
As the second and third steps, we'll add the ability to pull documentation .md files from plugins and include them in the embedded and static versions of the documentation. For the static site, it means that the docs will include the documentation content for the versions of the analyzers that were shipped in the bundles. For the embedded docs, this means that
- upgrading the analyzer will upgrade its documentation too
- only the analyzers present in the bundle will be represented in the documentation
Note that point #2 introduces a slight inconsistency: if I'm running Community Edition, my embedded documentation will include content on PR analysis (DE), for example, but it will not include documentation on analyzing C/C++ (also DE).