-
Notifications
You must be signed in to change notification settings - Fork 206
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Version our documentation #2016
Comments
I had a look at mkDocs uses jinja, which our templating engine askama is based on :) I failed to find any mdbook themes or sites which had an easy version selector in the content. mkDocs looks very vibrant and functional - should we look into moving to it? |
Do you mean docs.rs? That part is completely self-built, on top of the regular rustdoc output. For mdbook there's nothing ready-to-use that I know of.
Over in Data we use mkdocs in some places as well, e.g. https://mozilla.github.io/bigquery-etl/. |
I edited the description with my vague plan to move forward here. |
https://mozilla.github.io/uniffi-rs is now versioned 🎉 |
[below is from @mhammond who took over the description to track the current status]
Now that #2077 is in-place I had a bit of a look at
mike
- it's conceptually a fairly simple tool - it manages a small amount of metadata about versions in a JSON file in the root of gh-pages, and it wraps themkDocs
build and publish flows to only updates a single directory of docs rather than the entire site. A subtle side-effect of this is thatmike
and the entire docs flow can never recreate the entire site, but instead needs to do updates of the existing gh-pages branch.Another side-effect of this is that it can't really use the
gh-pages/deploy
action - we will need to deploy the old-school way executingmike deploy
manually.So my current plan is something like:
mkDocs deploy
in preparation for switching to mike.mike deploy
0.27 mkDocs generated docs into a directory names0.27
with an alias oflatest
(an alias is just a mike-managed symlink)*.html
files on the site to be a sym-link to a document of the same name in./current
At this stage we should have a functioning site - albeit with only 1 version enabled. All previously existing .html pages should redirect to "current", which itself is currently symlink to 0.27
Then:
mike deploy
the currentmain
docs to a version calledunreleased
mike deploy
the currentmain
docs to a version calledunreleased
current
to the new version)At this stage we should have a function site with 2 versions available to select from,
0.27
andunreleased
, withlatest
being a symlink to0.27
After the next major release we will have 3 versions -
0.27
,0.28
andunreleased
, whichlatest
being a symlink to 0.28.Thoughts welcome!
The text was updated successfully, but these errors were encountered: