Make the navigation sidebar versioned #12708
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes: #6937
This adds versioning support to the navigation sidebar in the default documentation page layout, conditionally loading a sidebar partial based on the current version's major version, or use the latest one in the case for rolling releases. This also means that the navigation sidebar list is extracted out from the
documentation.html
layout file, into an include partial.This gets rid of the many conditionals littered all over the navigation list items.
Currently, the biggest differences are between the groups of v0, v1-3, and master. This implementation allows v1 and v2's sidebar to just be a symlink to v3. For rolling releases, the sidebar is versioned as
master
.We can also allow finer-grained versioning with the full major.minor.patch, but I think major versions are a good enough start.