-
Notifications
You must be signed in to change notification settings - Fork 4.9k
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
[RFC] Move developer docs to main docs (or at least to an .rst tree) #13431
Comments
if noone has any objection to this idea, im happy to take it on |
I agree this would be great to move away from MD into a single sphinx tree. My main question is whether it should be an independent sphinx tree, or possibly a separate entry point / index. Meaning, I'm not sure we want end-users to see the dev docs. Even if we build as a single tree can we have different entry points / index for them? |
yep, thats kinda my thought too
rst has a master doc/single root model, so i think we would need to build as a separate doc tree. If we publish the dev docs separately then there is also a question of where we publish them to. |
one downside that im wondering about regarding moving |
We should research this fully, because I do think there may be value in ref linking from dev docs to main docs, though not a requirement.
I think we can publish them to the same site, just under a different path.
I agree, and RST is really not very much different from MD. Also, if we do make it a separate sphinx tree that can be built independently and doesn't require bazel, etc. it should build extremely quickly so I don't think the overhead is a huge deal. |
im thinking there are 2 advantages to having a single tree
|
I agree on a single tree. I think the main issue is whether we can someone have a separate landing page. For example, could we have the dev docs be hidden from the main TOC, link to them directly, and then the rest of it would show up fine? |
ah, i see. i guess we would need to think how it should be in terms of navigation here https://www.envoyproxy.io/docs but then yep, i think we can present the tree as we want in terms of entrypoints the dev docs would still be visible to end users, and vice versa |
reading your question more carefully - no - i dont think we can hide parts of the tree. I may be wrong about that, but a quick search doesnt seem to suggest so |
What about the hidden toc tree approach here? https://github.com/envoyproxy/envoy/blob/master/docs/root/intro/intro.rst#L14-L20. (I think also that could be replaced with your redirect system, but am wondering if we could use that to have a well known path into the tree which doesn't show up in the main index) |
i think i follow - 2 roots both with all pages, but a different set of hidden tocs - might work - i can do some testing to try and figure it out there is a fundamental conceptual problem in my head - the links wont work out-of-the-box - ie internal links will be on the same url/path - but in reality not - i think it would duplicate the entire doc trees (maybe that is why you mention redirects) |
reading the tocs docs more (https://www.sphinx-doc.org/en/1.5/markup/toctree.html) im thinking it would make those pages accessible - ie you could browse to the other pages, even tho they were not included in any tocs not sure whether redirects would override an existing page, but i can check (also checked |
^ Yup exactly. I think this would work out well. The only downside I can see is how long the docs take to test build, but that's a different issue you are tracking, and it should get a lot better once v2 is gone and we can cleanup a bunch of debt there. cc @htuch |
I strongly agree that moving the docs to a single location is a good change. I've thought about doing this before, but never carved out time to do it. |
I agree that we should move to the main docs. I don't think eliminating v2 will make things much faster, maybe 30% would be my guess, the real bottleneck (as I think I mentioned in our other thread on this) is Sphinx itself and the single-threaded docs build (GIL), we should try and figure out how to get it to work in its multiprocessing mode. |
I did a short test on my 6 core 12 thread Ubuntu 20.04 laptop. I can confirm that without modification only a single thread processes the Normal run:
With
The script emits a warning but multiple cores are engaged and the run does look a fair bit faster. Doesn't seem like there is a downside to using The other thread @htuch refers too |
Thanks @moderation. I think the Bazel phase might be a lot longer on less powerful machines (I should stop comparing to my 72-core build machine). Let's just turn on The Bazel-side build time should drop by 50% when we get rid of v2. |
description
At the moment there are a lot of useful dev docs/info spread through files in the repo.
I believe there are several advantages to centralizing the developer docs and bringing them into the main documentation
we could still leave stubs/links in README files or similar
perhaps this pertains differently to code documentation in the actual source etc than to eg ci/tooling/sandbox docs - but even then there maybe a similar argument to collate the developer docs.
The text was updated successfully, but these errors were encountered: