-
Notifications
You must be signed in to change notification settings - Fork 452
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
Improvement Request: Change documentation format from RST to MD #6311
Comments
GitHub has its own Markdown variant (see https://github.github.com/gfm/), which does not offer the same syntax options as MyST. This means that all of the cool stuff MyST offers will still only render on ReadTheDocs and not on GitHub. For example, things like included files and TOC tree generation will still not render on GitHub*. As the GitHub syntax offers no means for file inclusion or generation from other files, previously auto-generated content will have to be pasted verbatim into a documentation file in order to render on GitHub. However, this is true for both GitHub's RST and MD rendering. Therefore, I see no need to switch documentation language in order to fix the problem of rendering on GitHub. *To prove that MyST really doesn't render correctly on GitHub, here's the output of an example on the MyST website (note things like section labels and comments not working): My nifty titleSome text!
(section-two)= Here's another sectionAnd some more content. % This comment won't make it into the outputs! |
Yes.
You are right. But MD will force you to have another document structure. As an option (in the example above): to merge these documents explicitly or to explicitly use links. |
After bug fixing, we should at some point also give priority to improving the quality of our documentation. Lets schedule docs and .RST matters this after the big push on tagging coming months. |
@synctext #4656 has been open since 2019 for exactly this. Nobody ever gives any love to the documentation. Tribler also evolves way too fast to keep stable documentation without tremendous effort (no matter what format we use). Perhaps we should do something radical and drop all documentation that is not a docstring or installation instructions? Requiring everyone to write docstrings seems like something we can realistically enforce. @drew2a Fair enough. If you accept the required sacrifices to gain GitHub rendering and prefer working in MD, this becomes a matter of taste/personal preference and I have no further comment on this. However, it is important to know what you're "losing out"* on. Some concrete examples that are actually used in IPv8:
That said, on the one hand there is a case to be made that Tribler will never need the above functionality. For example, Tribler's automatic class documentation has been broken for.. years (?) and nobody cares. On the other hand, based on our history (see also my answer to @synctext), I believe nobody will ever properly maintain Tribler documentation anyway and I have come to believe that all of our documentation should solely be automatically generated. *You can still use a hybrid approach and leave some stuff unviewable on GitHub and only viewable on ReadTheDocs. This depends on how puristic you want to be about GitHub being the prime source of documentation. |
We used to have .md format but, as I also commented in our Slack channel, we switched to the .rst format so we can render our documentation on readthedocs. I currently do not see much need to revert this back to Markdown.
True. Much of our documentation is outdated and if updated, gets outdated again very fast. For example, our building/packaging instructions for Windows have changed significantly and requires updating when external packages get updates (e.g., libtorrent/visual studio/brew etc.). |
Going with @devos50, we will stick to RST. |
Now we use RST format for our documentation.
Initially, it was introduced because it was the only format supported by readthedocs. But now, readthedocs supports MD as well.
My proposition is to change this format to MD.
MD is more natural to GitHub and GitHub users than RST. This change can lead to a more accurate and frequent maintance of our documentation base.
MD format also will be rendered more correctly in GitHub.
Here is an example of rendering development.rst. It seems to have no body:
It has been rendered from this code:
References
The text was updated successfully, but these errors were encountered: